← Back to Dashboard

Request Trace

Trace ID
trace_mncwe29s_tfe6mdmv
Log Entries
113
Errors
0
Total Duration
12113ms
Request Timeline
08:00:02.332 AM
sync-all-devices info
Supabase client initialized for function invocation
POST /sync-all-devices
08:00:02.350 AM
sync-all-devices debug
select on connected_devices
POST /sync-all-devices
Metadata
{
  "table": "connected_devices",
  "operation": "select"
}
08:00:02.350 AM
sync-all-devices info
Request started
POST /sync-all-devices
Metadata
{
  "headers": {
    "accept": "*/*",
    "user-agent": "pg_net/0.19.5",
    "content-type": "application/json",
    "content-length": "2",
    "x-forwarded-for": "98.89.138.29,98.89.138.29, 3.2.51.17"
  },
  "http_path": "/sync-all-devices",
  "http_method": "POST"
}
08:00:02.507 AM
sync-all-devices info
Calling edge_function: sync-libre
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "endpoint": "sync-libre",
  "provider": "libre",
  "device_id": "c253d974-b0e5-4e24-b4ec-5b9b34a17caa"
}
08:00:02.518 AM
sync-all-devices info
Starting daily sync for 3 devices
POST /sync-all-devices
Metadata
{
  "device_count": 3
}
08:00:02.530 AM
sync-all-devices info
Processing libre devices
POST /sync-all-devices
Metadata
{
  "count": 1,
  "provider": "libre"
}
08:00:02.578 AM
sync-all-devices info
Retrieved service role key from vault
POST /sync-all-devices
Metadata
{
  "key_length": 219
}
08:00:02.771 AM
sync-libre info
Starting Libre sync
POST /sync-libre
Metadata
{
  "device_id": "c253d974-b0e5-4e24-b4ec-5b9b34a17caa",
  "initial_backfill": false
}
08:00:02.785 AM
sync-libre info
Request started
POST /sync-libre
Metadata
{
  "headers": {
    "accept": "*/*",
    "user-agent": "Deno/2.1.4 (variant; SupabaseEdgeRuntime/1.73.0)",
    "x-trace-id": "trace_mncwe29s_tfe6mdmv",
    "content-type": "application/json",
    "content-length": "144",
    "x-forwarded-for": "54.89.171.225,54.89.171.225, 99.82.165.74"
  },
  "http_path": "/sync-libre",
  "http_method": "POST"
}
08:00:02.918 AM
sync-libre info
Calling libre: /glucose/graph
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/glucose/graph",
  "patient_id": "98f3eaa7-53ed-11ee-b5b3-8a202adda690"
}
08:00:03.290 AM
sync-libre info
libre responded: 200
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/glucose/graph",
  "duration_ms": 328,
  "records_count": 140,
  "response_status": 200
}
08:00:03.336 AM
sync-libre info
Received 140 glucose readings
POST /sync-libre
Metadata
{
  "count": 140
}
08:00:03.412 AM
sync-libre debug
upsert on glucose_data
POST /sync-libre
Metadata
{
  "count": 140,
  "table": "glucose_data",
  "operation": "upsert"
}
08:00:03.440 AM
sync-libre info
Libre derived offset: -240 min
POST /sync-libre
08:00:03.587 AM
sync-libre info
Calling libre: /logbook
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/logbook",
  "patient_id": "98f3eaa7-53ed-11ee-b5b3-8a202adda690"
}
08:00:03.854 AM
sync-libre info
libre responded: 200
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/logbook",
  "duration_ms": 240,
  "records_count": 15,
  "response_status": 200
}
08:00:03.883 AM
sync-libre info
Received 15 logbook entries
POST /sync-libre
Metadata
{
  "count": 15
}
08:00:03.916 AM
sync-libre info
Filtered to 14 alarms with glucose values
POST /sync-libre
Metadata
{
  "with_glucose": 14,
  "total_entries": 14
}
08:00:03.970 AM
sync-libre debug
upsert on glucose_alarms
POST /sync-libre
Metadata
{
  "count": 14,
  "table": "glucose_alarms",
  "operation": "upsert"
}
08:00:04.048 AM
sync-libre debug
update on connected_devices
POST /sync-libre
Metadata
{
  "table": "connected_devices",
  "device_id": "c253d974-b0e5-4e24-b4ec-5b9b34a17caa",
  "operation": "update"
}
08:00:04.112 AM
sync-libre info
Sync completed successfully: 154 records
POST /sync-libre
Metadata
{
  "total_records": 154
}
08:00:04.197 AM
sync-libre info
Request completed with status 200
Duration: 1474msHTTP 200POST /sync-libre
Metadata
{
  "duration_ms": 1474,
  "content_type": "application/json"
}
08:00:04.247 AM
sync-all-devices info
edge_function responded: 200
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "endpoint": "sync-libre",
  "device_id": "c253d974-b0e5-4e24-b4ec-5b9b34a17caa",
  "duration_ms": 1750,
  "response_status": 200
}
08:00:04.255 AM
sync-all-devices info
Calling edge_function: sync-fitbit
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "endpoint": "sync-fitbit",
  "provider": "fitbit",
  "device_id": "804f5bd9-992a-45e3-9937-3034bc97c610"
}
08:00:04.257 AM
sync-all-devices info
Batch completed for libre
POST /sync-all-devices
Metadata
{
  "total": 1,
  "provider": "libre",
  "processed": 1,
  "batch_size": 1,
  "batch_index": 0,
  "batch_success": 1
}
08:00:04.267 AM
sync-all-devices info
Processing fitbit devices
POST /sync-all-devices
Metadata
{
  "count": 1,
  "provider": "fitbit"
}
08:00:04.517 AM
sync-all-devices info
Retrieved service role key from vault
POST /sync-all-devices
Metadata
{
  "key_length": 219
}
08:00:04.692 AM
sync-fitbit info
Request started
POST /sync-fitbit
Metadata
{
  "headers": {
    "accept": "*/*",
    "user-agent": "Deno/2.1.4 (variant; SupabaseEdgeRuntime/1.73.0)",
    "x-trace-id": "trace_mncwe29s_tfe6mdmv",
    "content-type": "application/json",
    "content-length": "144",
    "x-forwarded-for": "54.89.171.225,54.89.171.225, 99.82.165.72"
  },
  "http_path": "/sync-fitbit",
  "http_method": "POST"
}
08:00:04.701 AM
sync-fitbit info
Starting Fitbit sync
POST /sync-fitbit
Metadata
{
  "device_id": "804f5bd9-992a-45e3-9937-3034bc97c610",
  "sync_type": "all",
  "initial_backfill": false
}
08:00:04.704 AM
sync-fitbit debug
select on connected_devices
POST /sync-fitbit
Metadata
{
  "table": "connected_devices",
  "operation": "select"
}
08:00:04.733 AM
sync-fitbit info
Refreshing tokens
POST /sync-fitbit
08:00:05.351 AM
sync-fitbit info
Updated user timezone: America/New_York
POST /sync-fitbit
08:00:05.352 AM
sync-fitbit info
Sync parameters resolved
POST /sync-fitbit
Metadata
{
  "end_date": "2026-03-30",
  "days_count": 1,
  "start_date": "2026-03-30",
  "sync_types": [
    "summary",
    "sleep",
    "activities",
    "intraday"
  ]
}
08:00:05.384 AM
sync-fitbit info
Calling fitbit: /activities/date/2026-03-30
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/activities/date/2026-03-30"
}
08:00:05.386 AM
sync-fitbit info
Starting summary sync
POST /sync-fitbit
08:00:05.954 AM
sync-fitbit info
Calling fitbit: /hrv/date/2026-03-30
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/hrv/date/2026-03-30"
}
08:00:05.987 AM
sync-fitbit info
fitbit responded: 200
POST /sync-fitbit
Metadata
{
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/date/2026-03-30.json",
  "duration_ms": 607,
  "response_status": 200
}
08:00:06.037 AM
sync-fitbit debug
upsert on daily_summary
POST /sync-fitbit
Metadata
{
  "count": 1,
  "table": "daily_summary",
  "operation": "upsert"
}
08:00:06.063 AM
sync-fitbit info
fitbit responded: 200
POST /sync-fitbit
Metadata
{
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1/user/-/hrv/date/2026-03-30.json",
  "duration_ms": 80,
  "response_status": 200
}
08:00:06.124 AM
sync-fitbit info
Starting sleep sync
POST /sync-fitbit
08:00:06.147 AM
sync-fitbit info
Calling fitbit: /sleep/date/2026-03-30
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/sleep/date/2026-03-30"
}
08:00:06.153 AM
sync-fitbit info
Completed summary sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "summary",
    "records_synced": 1
  }
}
08:00:06.410 AM
sync-fitbit info
Calling fitbit: /activities/list
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/activities/list"
}
08:00:06.422 AM
sync-fitbit info
Starting activities sync
POST /sync-fitbit
08:00:06.423 AM
sync-fitbit info
Completed sleep sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "sleep",
    "records_synced": 0
  }
}
08:00:06.870 AM
sync-fitbit info
fitbit responded: 200
POST /sync-fitbit
Metadata
{
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1.2/user/-/sleep/date/2026-03-30.json",
  "duration_ms": 286,
  "response_status": 200
}
08:00:06.883 AM
sync-fitbit info
Calling fitbit: /heart/date/2026-03-30/1d/1min
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/heart/date/2026-03-30/1d/1min"
}
08:00:06.892 AM
sync-fitbit info
Fetched activities data from Fitbit API
POST /sync-fitbit
Metadata
{
  "activities_count": 0
}
08:00:06.898 AM
sync-fitbit info
Completed activities sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "activities",
    "records_synced": 0
  }
}
08:00:06.904 AM
sync-fitbit info
fitbit responded: 200
POST /sync-fitbit
Metadata
{
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/list.json?afterDate=2026-03-30&sort=asc&offset=0&limit=100",
  "duration_ms": 262,
  "response_status": 200
}
08:00:06.908 AM
sync-fitbit info
Starting intraday sync
POST /sync-fitbit
08:00:07.488 AM
sync-fitbit info
fitbit responded: 200
POST /sync-fitbit
Metadata
{
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/heart/date/2026-03-30/1d/1min.json",
  "duration_ms": 803,
  "response_status": 200
}
08:00:07.525 AM
sync-fitbit info
Calling fitbit: /steps/date/2026-03-30/1d/1min
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/steps/date/2026-03-30/1d/1min"
}
08:00:09.550 AM
sync-fitbit info
fitbit responded: 200
POST /sync-fitbit
Metadata
{
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/steps/date/2026-03-30/1d/1min.json",
  "duration_ms": 2072,
  "response_status": 200
}
08:00:09.556 AM
sync-fitbit info
Storing 241 intraday records in 1 chunks
POST /sync-fitbit
08:00:09.556 AM
sync-fitbit debug
upsert on intraday_data
POST /sync-fitbit
Metadata
{
  "count": 241,
  "table": "intraday_data",
  "operation": "upsert",
  "chunk_index": 0
}
08:00:09.763 AM
sync-fitbit debug
update on connected_devices
POST /sync-fitbit
Metadata
{
  "table": "connected_devices",
  "operation": "update"
}
08:00:09.768 AM
sync-fitbit info
Completed intraday sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "intraday",
    "records_synced": 241
  }
}
08:00:09.830 AM
sync-fitbit info
Request completed with status 200
Duration: 5187msHTTP 200POST /sync-fitbit
Metadata
{
  "duration_ms": 5187,
  "content_type": "application/json"
}
08:00:09.857 AM
sync-fitbit info
Fitbit sync completed
POST /sync-fitbit
Metadata
{
  "failed_syncs": 0,
  "total_records": 242,
  "successful_syncs": 4
}
08:00:09.869 AM
sync-all-devices info
Calling edge_function: sync-whoop
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "endpoint": "sync-whoop",
  "provider": "whoop",
  "device_id": "1fdec537-3e63-4519-906f-3db96804ae00"
}
08:00:09.869 AM
sync-all-devices info
Batch completed for fitbit
POST /sync-all-devices
Metadata
{
  "total": 1,
  "provider": "fitbit",
  "processed": 1,
  "batch_size": 1,
  "batch_index": 0,
  "batch_success": 1
}
08:00:09.872 AM
sync-all-devices info
Processing whoop devices
POST /sync-all-devices
Metadata
{
  "count": 1,
  "provider": "whoop"
}
08:00:09.878 AM
sync-all-devices info
edge_function responded: 200
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "endpoint": "sync-fitbit",
  "device_id": "804f5bd9-992a-45e3-9937-3034bc97c610",
  "duration_ms": 5626,
  "response_status": 200
}
08:00:09.936 AM
sync-all-devices info
Retrieved service role key from vault
POST /sync-all-devices
Metadata
{
  "key_length": 219
}
08:00:10.106 AM
sync-whoop info
Request started
POST /sync-whoop
Metadata
{
  "headers": {
    "accept": "*/*",
    "user-agent": "Deno/2.1.4 (variant; SupabaseEdgeRuntime/1.73.0)",
    "x-trace-id": "trace_mncwe29s_tfe6mdmv",
    "content-type": "application/json",
    "content-length": "144",
    "x-forwarded-for": "54.89.171.225,54.89.171.225, 99.82.165.77"
  },
  "http_path": "/sync-whoop",
  "http_method": "POST"
}
08:00:10.119 AM
sync-whoop info
Starting Whoop sync
POST /sync-whoop
Metadata
{
  "device_id": "1fdec537-3e63-4519-906f-3db96804ae00",
  "sync_type": "all",
  "initial_backfill": false
}
08:00:10.152 AM
sync-whoop info
Refreshing tokens
POST /sync-whoop
08:00:10.176 AM
sync-whoop debug
select on connected_devices
POST /sync-whoop
Metadata
{
  "table": "connected_devices",
  "operation": "select"
}
08:00:12.725 AM
sync-whoop info
Sync parameters resolved
POST /sync-whoop
Metadata
{
  "end_date": "2026-03-30",
  "start_date": "2026-03-27",
  "sync_types": [
    "recovery",
    "sleep",
    "workout"
  ]
}
08:00:12.728 AM
sync-whoop info
Starting recovery sync
POST /sync-whoop
08:00:12.730 AM
sync-whoop info
Token refresh successful
POST /sync-whoop
Metadata
{
  "expires_at": "2026-03-30T09:00:12.620Z",
  "token_type": "[REDACTED]"
}
08:00:12.738 AM
sync-whoop info
Calling whoop: /cycle
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/cycle"
}
08:00:12.895 AM
sync-whoop info
whoop responded: 200
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "success": true,
  "endpoint": "/cycle?start=2026-03-27T00%3A00%3A00.000Z&end=2026-03-30T23%3A59%3A59.999Z",
  "duration_ms": 169,
  "response_status": 200
}
08:00:12.927 AM
sync-whoop info
Calling whoop: /recovery
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/recovery"
}
08:00:13.040 AM
sync-whoop info
whoop responded: 200
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "success": true,
  "endpoint": "/recovery?start=2026-03-27T00%3A00%3A00.000Z&end=2026-03-30T23%3A59%3A59.999Z",
  "duration_ms": 144,
  "response_status": 200
}
08:00:13.082 AM
sync-whoop info
Fetched recovery data from Whoop API
POST /sync-whoop
Metadata
{
  "cycles_count": 4,
  "recoveries_count": 3
}
08:00:13.218 AM
sync-whoop debug
upsert on daily_summary
POST /sync-whoop
Metadata
{
  "count": 4,
  "table": "daily_summary",
  "operation": "upsert"
}
08:00:13.235 AM
sync-whoop warn
Overwriting 4 existing recovery records
POST /sync-whoop
Metadata
{
  "device_id": "1fdec537-3e63-4519-906f-3db96804ae00",
  "total_records": 4,
  "existing_dates": [
    "2026-03-28",
    "2026-03-27",
    "2026-03-26",
    "2026-03-25"
  ]
}
08:00:13.255 AM
sync-whoop info
Starting sleep sync
POST /sync-whoop
08:00:13.264 AM
sync-whoop info
Calling whoop: /activity/sleep
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/activity/sleep"
}
08:00:13.265 AM
sync-whoop info
Completed recovery sync
POST /sync-whoop
Metadata
{
  "result": {
    "success": true,
    "sync_type": "recovery",
    "records_synced": 4
  }
}
08:00:13.383 AM
sync-whoop debug
upsert on sleep_sessions
POST /sync-whoop
Metadata
{
  "count": 3,
  "table": "sleep_sessions",
  "operation": "upsert"
}
08:00:13.387 AM
sync-whoop info
whoop responded: 200
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "success": true,
  "endpoint": "/activity/sleep?start=2026-03-27T00%3A00%3A00.000Z&end=2026-03-30T23%3A59%3A59.999Z",
  "duration_ms": 129,
  "response_status": 200
}
08:00:13.392 AM
sync-whoop info
Fetched sleep data from Whoop API
POST /sync-whoop
Metadata
{
  "records_count": 3
}
08:00:13.424 AM
sync-whoop info
Starting workout sync
POST /sync-whoop
08:00:13.455 AM
sync-whoop info
Completed sleep sync
POST /sync-whoop
Metadata
{
  "result": {
    "success": true,
    "sync_type": "sleep",
    "records_synced": 3
  }
}
08:00:13.466 AM
sync-whoop info
Calling whoop: /activity/workout
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/activity/workout"
}
08:00:13.597 AM
sync-whoop info
whoop responded: 200
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "success": true,
  "endpoint": "/activity/workout?start=2026-03-27T00%3A00%3A00.000Z&end=2026-03-30T23%3A59%3A59.999Z",
  "duration_ms": 174,
  "response_status": 200
}
08:00:13.597 AM
sync-whoop debug
upsert on activities
POST /sync-whoop
Metadata
{
  "count": 4,
  "table": "activities",
  "operation": "upsert"
}
08:00:13.599 AM
sync-whoop info
Fetched workout data from Whoop API
POST /sync-whoop
Metadata
{
  "records_count": 4
}
08:00:13.644 AM
sync-whoop debug
update on connected_devices
POST /sync-whoop
Metadata
{
  "table": "connected_devices",
  "operation": "update"
}
08:00:13.668 AM
sync-whoop info
Completed workout sync
POST /sync-whoop
Metadata
{
  "result": {
    "success": true,
    "sync_type": "workout",
    "records_synced": 4
  }
}
08:00:13.726 AM
sync-whoop info
Request completed with status 200
Duration: 3664msHTTP 200POST /sync-whoop
Metadata
{
  "duration_ms": 3664,
  "content_type": "application/json"
}
08:00:13.754 AM
sync-whoop info
Whoop sync completed
POST /sync-whoop
Metadata
{
  "failed_syncs": 0,
  "total_records": 11,
  "successful_syncs": 3
}
08:00:13.772 AM
sync-all-devices info
Batch completed for whoop
POST /sync-all-devices
Metadata
{
  "total": 1,
  "provider": "whoop",
  "processed": 1,
  "batch_size": 1,
  "batch_index": 0,
  "batch_success": 1
}
08:00:13.804 AM
sync-all-devices info
edge_function responded: 200
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "endpoint": "sync-whoop",
  "device_id": "1fdec537-3e63-4519-906f-3db96804ae00",
  "duration_ms": 3900,
  "response_status": 200
}
08:00:13.842 AM
sync-all-devices info
Recomputing baselines for 2 users
POST /sync-all-devices
Metadata
{
  "user_ids": [
    "3597587c-1242-4c31-ac21-ce2768e6fbd8",
    "73f1a17e-eca2-4b92-9bc8-425c93352fce"
  ],
  "user_count": 2
}
08:00:13.864 AM
sync-all-devices info
Daily sync completed
POST /sync-all-devices
Metadata
{
  "failed": 0,
  "skipped": 0,
  "successful": 3,
  "total_processed": 3
}
08:00:13.904 AM
sync-all-devices info
Calling edge_function: compute-baselines
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "user_id": "73f1a17e-eca2-4b92-9bc8-425c93352fce",
  "endpoint": "compute-baselines"
}
08:00:13.905 AM
sync-all-devices info
Calling edge_function: compute-baselines
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "user_id": "3597587c-1242-4c31-ac21-ce2768e6fbd8",
  "endpoint": "compute-baselines"
}
08:00:14.050 AM
compute-baselines info
Starting baseline computation
POST /compute-baselines
Metadata
{
  "user_id": "3597587c-1242-4c31-ac21-ce2768e6fbd8"
}
08:00:14.050 AM
compute-baselines info
Request started
POST /compute-baselines
Metadata
{
  "headers": {
    "accept": "*/*",
    "user-agent": "Deno/2.1.4 (variant; SupabaseEdgeRuntime/1.73.0)",
    "x-trace-id": "trace_mncwe29s_tfe6mdmv",
    "content-type": "application/json",
    "content-length": "50",
    "x-forwarded-for": "54.89.171.225,54.89.171.225, 99.82.165.78"
  },
  "http_path": "/compute-baselines",
  "http_method": "POST"
}
08:00:14.080 AM
compute-baselines info
Starting baseline computation
POST /compute-baselines
Metadata
{
  "user_id": "73f1a17e-eca2-4b92-9bc8-425c93352fce"
}
08:00:14.082 AM
compute-baselines info
Request started
POST /compute-baselines
Metadata
{
  "headers": {
    "accept": "*/*",
    "user-agent": "Deno/2.1.4 (variant; SupabaseEdgeRuntime/1.73.0)",
    "x-trace-id": "trace_mncwe29s_tfe6mdmv",
    "content-type": "application/json",
    "content-length": "50",
    "x-forwarded-for": "54.89.171.225,54.89.171.225, 99.82.165.76"
  },
  "http_path": "/compute-baselines",
  "http_method": "POST"
}
08:00:14.332 AM
compute-baselines info
Baseline computation complete
POST /compute-baselines
Metadata
{
  "safety_flags": [],
  "has_cycle_info": true,
  "metrics_summary": {
    "hrv": {
      "phases": [
        "all",
        "follicular",
        "luteal"
      ],
      "sample_count": 41
    },
    "steps": {
      "phases": [
        "all",
        "follicular",
        "luteal"
      ],
      "sample_count": 42
    },
    "resting_hr": {
      "phases": [
        "all",
        "follicular",
        "luteal"
      ],
      "sample_count": 41
    },
    "sleep_rem_pct": {
      "phases": [
        "all",
        "follicular",
        "luteal"
      ],
      "sample_count": 41
    },
    "sleep_deep_pct": {
      "phases": [
        "all",
        "follicular",
        "luteal"
      ],
      "sample_count": 41
    },
    "sleep_duration": {
      "phases": [
        "all",
        "follicular",
        "luteal"
      ],
      "sample_count": 41
    }
  },
  "baselines_computed": 18
}
08:00:14.357 AM
compute-baselines info
Baseline computation complete
POST /compute-baselines
Metadata
{
  "safety_flags": [],
  "has_cycle_info": false,
  "metrics_summary": {
    "hrv": {
      "phases": [
        "all"
      ],
      "sample_count": 81
    },
    "resting_hr": {
      "phases": [
        "all"
      ],
      "sample_count": 81
    },
    "sleep_rem_pct": {
      "phases": [
        "all"
      ],
      "sample_count": 90
    },
    "sleep_deep_pct": {
      "phases": [
        "all"
      ],
      "sample_count": 90
    },
    "sleep_duration": {
      "phases": [
        "all"
      ],
      "sample_count": 90
    },
    "respiratory_rate": {
      "phases": [
        "all"
      ],
      "sample_count": 90
    }
  },
  "baselines_computed": 6
}
08:00:14.383 AM
compute-baselines info
Request completed with status 200
Duration: 353msHTTP 200POST /compute-baselines
Metadata
{
  "duration_ms": 353,
  "content_type": "application/json"
}
08:00:14.386 AM
compute-baselines info
Request completed with status 200
Duration: 340msHTTP 200POST /compute-baselines
Metadata
{
  "duration_ms": 340,
  "content_type": "application/json"
}
08:00:14.422 AM
sync-all-devices info
edge_function responded: 200
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "user_id": "73f1a17e-eca2-4b92-9bc8-425c93352fce",
  "endpoint": "compute-baselines",
  "duration_ms": 517,
  "response_status": 200
}
08:00:14.434 AM
sync-all-devices info
Baseline recomputation completed
POST /sync-all-devices
Metadata
{
  "failed": 0,
  "attempted": 2,
  "succeeded": 2
}
08:00:14.443 AM
sync-all-devices info
Request completed with status 200
Duration: 12626msHTTP 200POST /sync-all-devices
Metadata
{
  "duration_ms": 12626,
  "content_type": "application/json"
}
08:00:14.445 AM
sync-all-devices info
edge_function responded: 200
POST /sync-all-devices
Metadata
{
  "service": "edge_function",
  "user_id": "3597587c-1242-4c31-ac21-ce2768e6fbd8",
  "endpoint": "compute-baselines",
  "duration_ms": 528,
  "response_status": 200
}