OAuth P2: synthetic OEM lifecycle canaries
failedAgent: texture-engineer
Priority: 3
Branch:
talos/oauth-oem-lifecycle-canariesPR: #11161
Linear: BOLT-939
Implement BOLT-939. Scheduled 15-min canaries for onboard -> benign command -> force refresh -> command -> remove for Honeywell/Enphase/Tesla/SolarEdge, metrics/dashboard/Datadog monitor. Branch talos/oauth-oem-lifecycle-canaries.
Event Timeline
created
progress
Migrated task tracking from XENG to BOLT-939 per Victor: XENG board is off-limits/deletion-bound; active tracking is BOLT only.
status_change
queued → in_progress
progress
Heartbeat 2026-05-26 16:05 UTC: picked up queued BOLT-939; added first OAuth lifecycle canary endpoint/tests scaffold on talos/oauth-oem-lifecycle-canaries. Local checks blocked by this checkout missing connect-subgraph node_modules/PnP dependencies (yarn cannot find node_modules state; root jest cannot resolve @texturehq/common/@asteasolutions).
failed
lease expired — re-queued for retry
in_progress → queued
status_change
queued → in_progress
failed
lease expired — re-queued for retry
in_progress → queued
checkpoint
checkpoint saved
status_change
queued → in_progress
progress
Heartbeat 2026-05-26 16:49 UTC: restored deps, fixed TS typing, and verified BOLT-939 targeted lint/tests. Implementation includes 15-min scheduled canary job, endpoint, config, metrics, tests, and runbook; command/remove are safe-skipped pending manufacturer-specific contracts.
failed
lease expired — max retries reached, marking failed (poison pill)
in_progress → failed
status_change
failed → in_progress
progress
Opened PR #11161 for BOLT-939 OAuth lifecycle canaries; CI is running. Committed/pushed implemented canary job, manual endpoint, metrics, tests, and runbook after targeted lint/tests passed.
failed
lease expired — max retries reached, marking failed (poison pill)
in_progress → failed
checkpoint
checkpoint saved
status_change