← Back to Dashboard

Request Trace

Trace ID
trace_mncntf8y_z8qsfvkz
Log Entries
112
Errors
3
Total Duration
12472ms
Request Timeline
04:00:02.429 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.22"
  },
  "http_path": "/sync-all-devices",
  "http_method": "POST"
}
04:00:02.435 AM
sync-all-devices debug
select on connected_devices
POST /sync-all-devices
Metadata
{
  "table": "connected_devices",
  "operation": "select"
}
04:00:02.438 AM
sync-all-devices info
Supabase client initialized for function invocation
POST /sync-all-devices
04:00:02.534 AM
sync-all-devices info
Processing libre devices
POST /sync-all-devices
Metadata
{
  "count": 1,
  "provider": "libre"
}
04:00:02.542 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"
}
04:00:02.552 AM
sync-all-devices info
Starting daily sync for 3 devices
POST /sync-all-devices
Metadata
{
  "device_count": 3
}
04:00:02.639 AM
sync-all-devices info
Retrieved service role key from vault
POST /sync-all-devices
Metadata
{
  "key_length": 219
}
04:00:02.804 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_mncntf8y_z8qsfvkz",
    "content-type": "application/json",
    "content-length": "144",
    "x-forwarded-for": "54.82.103.121,54.82.103.121, 99.82.165.78"
  },
  "http_path": "/sync-libre",
  "http_method": "POST"
}
04:00:02.805 AM
sync-libre info
Starting Libre sync
POST /sync-libre
Metadata
{
  "device_id": "c253d974-b0e5-4e24-b4ec-5b9b34a17caa",
  "initial_backfill": false
}
04:00:02.958 AM
sync-libre info
Calling libre: /glucose/graph
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/glucose/graph",
  "patient_id": "98f3eaa7-53ed-11ee-b5b3-8a202adda690"
}
04:00:03.308 AM
sync-libre info
libre responded: 200
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/glucose/graph",
  "duration_ms": 314,
  "records_count": 140,
  "response_status": 200
}
04:00:03.345 AM
sync-libre info
Received 140 glucose readings
POST /sync-libre
Metadata
{
  "count": 140
}
04:00:03.423 AM
sync-libre debug
upsert on glucose_data
POST /sync-libre
Metadata
{
  "count": 140,
  "table": "glucose_data",
  "operation": "upsert"
}
04:00:03.463 AM
sync-libre info
Libre derived offset: -240 min
POST /sync-libre
04:00:03.579 AM
sync-libre info
Calling libre: /logbook
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/logbook",
  "patient_id": "98f3eaa7-53ed-11ee-b5b3-8a202adda690"
}
04:00:04.185 AM
sync-libre info
libre responded: 200
POST /sync-libre
Metadata
{
  "service": "libre",
  "endpoint": "/logbook",
  "duration_ms": 573,
  "records_count": 16,
  "response_status": 200
}
04:00:04.218 AM
sync-libre info
Received 16 logbook entries
POST /sync-libre
Metadata
{
  "count": 16
}
04:00:04.255 AM
sync-libre info
Filtered to 15 alarms with glucose values
POST /sync-libre
Metadata
{
  "with_glucose": 15,
  "total_entries": 15
}
04:00:04.289 AM
sync-libre debug
upsert on glucose_alarms
POST /sync-libre
Metadata
{
  "count": 15,
  "table": "glucose_alarms",
  "operation": "upsert"
}
04:00:04.377 AM
sync-libre debug
update on connected_devices
POST /sync-libre
Metadata
{
  "table": "connected_devices",
  "device_id": "c253d974-b0e5-4e24-b4ec-5b9b34a17caa",
  "operation": "update"
}
04:00:04.442 AM
sync-libre info
Sync completed successfully: 155 records
POST /sync-libre
Metadata
{
  "total_records": 155
}
04:00:04.521 AM
sync-libre info
Request completed with status 200
Duration: 1798msHTTP 200POST /sync-libre
Metadata
{
  "duration_ms": 1798,
  "content_type": "application/json"
}
04:00:04.566 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": 2033,
  "response_status": 200
}
04:00:04.566 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"
}
04:00:04.576 AM
sync-all-devices info
Processing fitbit devices
POST /sync-all-devices
Metadata
{
  "count": 1,
  "provider": "fitbit"
}
04:00:04.579 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
}
04:00:04.611 AM
sync-all-devices info
Retrieved service role key from vault
POST /sync-all-devices
Metadata
{
  "key_length": 219
}
04:00:04.769 AM
sync-fitbit info
Starting Fitbit sync
POST /sync-fitbit
Metadata
{
  "device_id": "804f5bd9-992a-45e3-9937-3034bc97c610",
  "sync_type": "all",
  "initial_backfill": false
}
04:00:04.776 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_mncntf8y_z8qsfvkz",
    "content-type": "application/json",
    "content-length": "144",
    "x-forwarded-for": "54.82.103.121,54.82.103.121, 99.82.165.74"
  },
  "http_path": "/sync-fitbit",
  "http_method": "POST"
}
04:00:04.779 AM
sync-fitbit debug
select on connected_devices
POST /sync-fitbit
Metadata
{
  "table": "connected_devices",
  "operation": "select"
}
04:00:04.807 AM
sync-fitbit info
Refreshing tokens
POST /sync-fitbit
04:00:08.017 AM
sync-fitbit info
Updated user timezone: America/New_York
POST /sync-fitbit
04:00:08.018 AM
sync-fitbit info
Calling fitbit: /activities/date/2026-03-30
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/activities/date/2026-03-30"
}
04:00:08.029 AM
sync-fitbit info
Starting summary sync
POST /sync-fitbit
04:00:08.033 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"
  ]
}
04:00:08.472 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": 457,
  "response_status": 200
}
04:00:08.499 AM
sync-fitbit info
Calling fitbit: /hrv/date/2026-03-30
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/hrv/date/2026-03-30"
}
04:00:09.059 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": 585,
  "response_status": 200
}
04:00:09.073 AM
sync-fitbit debug
upsert on daily_summary
POST /sync-fitbit
Metadata
{
  "count": 1,
  "table": "daily_summary",
  "operation": "upsert"
}
04:00:09.113 AM
sync-fitbit info
Starting sleep sync
POST /sync-fitbit
04:00:09.154 AM
sync-fitbit info
Completed summary sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "summary",
    "records_synced": 1
  }
}
04:00:09.154 AM
sync-fitbit info
Calling fitbit: /sleep/date/2026-03-30
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/sleep/date/2026-03-30"
}
04:00:09.453 AM
sync-fitbit info
Starting activities sync
POST /sync-fitbit
04:00:09.454 AM
sync-fitbit info
Completed sleep sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "sleep",
    "records_synced": 0
  }
}
04:00:09.456 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": 341,
  "response_status": 200
}
04:00:09.463 AM
sync-fitbit info
Calling fitbit: /activities/list
POST /sync-fitbit
Metadata
{
  "service": "fitbit",
  "endpoint": "/activities/list"
}
04:00:09.717 AM
sync-fitbit info
Starting intraday sync
POST /sync-fitbit
04:00:09.719 AM
sync-fitbit info
Completed activities sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "activities",
    "records_synced": 0
  }
}
04:00:09.720 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": 261,
  "response_status": 200
}
04:00:09.723 AM
sync-fitbit info
Fetched activities data from Fitbit API
POST /sync-fitbit
Metadata
{
  "activities_count": 0
}
04:00:09.727 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"
}
04:00:09.777 AM
sync-fitbit error
fitbit responded: 500
POST /sync-fitbit
Metadata
{
  "error": true,
  "attempt": 1,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/heart/date/2026-03-30/1d/1min.json",
  "duration_ms": 62,
  "response_status": 500
}
04:00:09.998 AM
sync-fitbit error
fitbit responded: 500
POST /sync-fitbit
Metadata
{
  "error": true,
  "attempt": 2,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/heart/date/2026-03-30/1d/1min.json",
  "duration_ms": 216,
  "response_status": 500
}
04:00:10.082 AM
sync-fitbit warn
Failed to fetch intraday for 2026-03-30
POST /sync-fitbit
Metadata
{
  "error": "Error: Fitbit API error: 500"
}
04:00:10.086 AM
sync-fitbit info
Completed intraday sync
POST /sync-fitbit
Metadata
{
  "result": {
    "success": true,
    "sync_type": "intraday",
    "records_synced": 0
  }
}
04:00:10.092 AM
sync-fitbit debug
update on connected_devices
POST /sync-fitbit
Metadata
{
  "table": "connected_devices",
  "operation": "update"
}
04:00:10.095 AM
sync-fitbit error
fitbit responded: 500
POST /sync-fitbit
Metadata
{
  "error": true,
  "attempt": 3,
  "service": "fitbit",
  "endpoint": "/1/user/-/activities/heart/date/2026-03-30/1d/1min.json",
  "duration_ms": 87,
  "response_status": 500
}
04:00:10.146 AM
sync-fitbit info
Request completed with status 200
Duration: 5429msHTTP 200POST /sync-fitbit
Metadata
{
  "duration_ms": 5429,
  "content_type": "application/json"
}
04:00:10.176 AM
sync-fitbit info
Fitbit sync completed
POST /sync-fitbit
Metadata
{
  "failed_syncs": 0,
  "total_records": 1,
  "successful_syncs": 4
}
04:00:10.202 AM
sync-all-devices info
Processing whoop devices
POST /sync-all-devices
Metadata
{
  "count": 1,
  "provider": "whoop"
}
04:00:10.203 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
}
04:00:10.205 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"
}
04:00:10.207 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": 5637,
  "response_status": 200
}
04:00:10.247 AM
sync-all-devices info
Retrieved service role key from vault
POST /sync-all-devices
Metadata
{
  "key_length": 219
}
04:00:10.408 AM
sync-whoop debug
select on connected_devices
POST /sync-whoop
Metadata
{
  "table": "connected_devices",
  "operation": "select"
}
04:00:10.408 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_mncntf8y_z8qsfvkz",
    "content-type": "application/json",
    "content-length": "144",
    "x-forwarded-for": "54.82.103.121,54.82.103.121, 3.2.51.18"
  },
  "http_path": "/sync-whoop",
  "http_method": "POST"
}
04:00:10.409 AM
sync-whoop info
Starting Whoop sync
POST /sync-whoop
Metadata
{
  "device_id": "1fdec537-3e63-4519-906f-3db96804ae00",
  "sync_type": "all",
  "initial_backfill": false
}
04:00:10.449 AM
sync-whoop info
Refreshing tokens
POST /sync-whoop
04:00:12.924 AM
sync-whoop info
Starting recovery sync
POST /sync-whoop
04:00:12.924 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"
  ]
}
04:00:12.928 AM
sync-whoop info
Calling whoop: /cycle
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/cycle"
}
04:00:12.928 AM
sync-whoop info
Token refresh successful
POST /sync-whoop
Metadata
{
  "expires_at": "2026-03-30T05:00:12.826Z",
  "token_type": "[REDACTED]"
}
04:00:13.072 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": 149,
  "response_status": 200
}
04:00:13.109 AM
sync-whoop info
Calling whoop: /recovery
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/recovery"
}
04:00:13.207 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": 128,
  "response_status": 200
}
04:00:13.243 AM
sync-whoop info
Fetched recovery data from Whoop API
POST /sync-whoop
Metadata
{
  "cycles_count": 4,
  "recoveries_count": 3
}
04:00:13.286 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"
  ]
}
04:00:13.287 AM
sync-whoop debug
upsert on daily_summary
POST /sync-whoop
Metadata
{
  "count": 4,
  "table": "daily_summary",
  "operation": "upsert"
}
04:00:13.324 AM
sync-whoop info
Starting sleep sync
POST /sync-whoop
04:00:13.354 AM
sync-whoop info
Completed recovery sync
POST /sync-whoop
Metadata
{
  "result": {
    "success": true,
    "sync_type": "recovery",
    "records_synced": 4
  }
}
04:00:13.355 AM
sync-whoop info
Calling whoop: /activity/sleep
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/activity/sleep"
}
04:00:13.447 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": 127,
  "response_status": 200
}
04:00:13.455 AM
sync-whoop info
Fetched sleep data from Whoop API
POST /sync-whoop
Metadata
{
  "records_count": 3
}
04:00:13.463 AM
sync-whoop debug
upsert on sleep_sessions
POST /sync-whoop
Metadata
{
  "count": 3,
  "table": "sleep_sessions",
  "operation": "upsert"
}
04:00:13.485 AM
sync-whoop info
Calling whoop: /activity/workout
POST /sync-whoop
Metadata
{
  "service": "whoop",
  "endpoint": "/activity/workout"
}
04:00:13.486 AM
sync-whoop info
Starting workout sync
POST /sync-whoop
04:00:13.496 AM
sync-whoop info
Completed sleep sync
POST /sync-whoop
Metadata
{
  "result": {
    "success": true,
    "sync_type": "sleep",
    "records_synced": 3
  }
}
04:00:13.692 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": 210,
  "response_status": 200
}
04:00:13.697 AM
sync-whoop info
Fetched workout data from Whoop API
POST /sync-whoop
Metadata
{
  "records_count": 4
}
04:00:13.700 AM
sync-whoop debug
upsert on activities
POST /sync-whoop
Metadata
{
  "count": 4,
  "table": "activities",
  "operation": "upsert"
}
04:00:13.764 AM
sync-whoop debug
update on connected_devices
POST /sync-whoop
Metadata
{
  "table": "connected_devices",
  "operation": "update"
}
04:00:13.772 AM
sync-whoop info
Completed workout sync
POST /sync-whoop
Metadata
{
  "result": {
    "success": true,
    "sync_type": "workout",
    "records_synced": 4
  }
}
04:00:13.832 AM
sync-whoop info
Request completed with status 200
Duration: 3453msHTTP 200POST /sync-whoop
Metadata
{
  "duration_ms": 3453,
  "content_type": "application/json"
}
04:00:13.857 AM
sync-whoop info
Whoop sync completed
POST /sync-whoop
Metadata
{
  "failed_syncs": 0,
  "total_records": 11,
  "successful_syncs": 3
}
04:00:13.879 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
}
04:00:13.917 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": 3673,
  "response_status": 200
}
04:00:13.955 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
}
04:00:13.982 AM
sync-all-devices info
Daily sync completed
POST /sync-all-devices
Metadata
{
  "failed": 0,
  "skipped": 0,
  "successful": 3,
  "total_processed": 3
}
04:00:14.379 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"
}
04:00:14.379 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"
}
04:00:14.516 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_mncntf8y_z8qsfvkz",
    "content-type": "application/json",
    "content-length": "50",
    "x-forwarded-for": "54.82.103.121,54.82.103.121, 99.82.165.78"
  },
  "http_path": "/compute-baselines",
  "http_method": "POST"
}
04:00:14.516 AM
compute-baselines info
Starting baseline computation
POST /compute-baselines
Metadata
{
  "user_id": "73f1a17e-eca2-4b92-9bc8-425c93352fce"
}
04:00:14.518 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_mncntf8y_z8qsfvkz",
    "content-type": "application/json",
    "content-length": "50",
    "x-forwarded-for": "54.82.103.121,54.82.103.121, 3.2.51.22"
  },
  "http_path": "/compute-baselines",
  "http_method": "POST"
}
04:00:14.519 AM
compute-baselines info
Starting baseline computation
POST /compute-baselines
Metadata
{
  "user_id": "3597587c-1242-4c31-ac21-ce2768e6fbd8"
}
04:00:14.773 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
}
04:00:14.796 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
}
04:00:14.824 AM
compute-baselines info
Request completed with status 200
Duration: 345msHTTP 200POST /compute-baselines
Metadata
{
  "duration_ms": 345,
  "content_type": "application/json"
}
04:00:14.839 AM
compute-baselines info
Request completed with status 200
Duration: 345msHTTP 200POST /compute-baselines
Metadata
{
  "duration_ms": 345,
  "content_type": "application/json"
}
04:00:14.864 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": 489,
  "response_status": 200
}
04:00:14.882 AM
sync-all-devices info
Baseline recomputation completed
POST /sync-all-devices
Metadata
{
  "failed": 0,
  "attempted": 2,
  "succeeded": 2
}
04:00:14.900 AM
sync-all-devices info
Request completed with status 200
Duration: 12956msHTTP 200POST /sync-all-devices
Metadata
{
  "duration_ms": 12956,
  "content_type": "application/json"
}
04:00:14.901 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": 502,
  "response_status": 200
}