70-001 — Operations and Updates
Purpose
Section titled “Purpose”Make the alarm clock observable, recoverable, and updateable without compromising its primary function or bedroom privacy.
Health
Section titled “Health”Overall state is healthy, degraded, or unhealthy. It aggregates clock,
scheduler, storage, audio, vibration, network, and firmware. Every
capability exposes state, last success, last redacted error, and restart count.
Missing network or requested vibration may make the product degraded; disabled
or unconfigured vibration is not a fault. Camera absence is normal and has no
health entry or startup dependency. Only an unavailable
scheduler, critical storage failure, or crash loop makes it unhealthy.
Logs and telemetry
Section titled “Logs and telemetry”Logs are structured with UTC timestamp, level, component, event code, optional session/alarm ID, and redacted fields. Prohibited content includes pixels, passwords, an SSID marked sensitive, and authentication request bodies.
Minimum metrics: uptime, BEAM memory, process restarts, clock drift/confidence, scheduled/triggered/missed alarms, audio/tactile latency, tactile mode and gain, limiter/cutoff events, snooze, explicit dismissal, timeout, and errors.
Diagnostic bundle
Section titled “Diagnostic bundle”A local export contains versions, non-secret configuration, health, metrics, and recent logs. It never contains a frame or secret. A manifest lists every file and its digest.
Updates
Section titled “Updates”Firmware carries a semantic version, build ID, schema compatibility, and
signature. Before installation, verify signature, target, and space. After boot,
run the validation checks from 10-001. An update does not begin during a wake
session or within 15 minutes before the next alarm, except under an explicit
maintenance command.
Local alerts
Section titled “Local alerts”A critical error appears on the home screen and in diagnostics. If an indicator light exists, patterns remain simple and documented. No cloud service is required to report status.
Requirements
Section titled “Requirements”-
OPS-001— Every capability shall publish an explainable health state. -
OPS-002— Logs and metrics shall be bounded. -
OPS-003— A diagnostic bundle shall exclude pixels and secrets. -
OPS-004— Only authenticated, compatible firmware shall be installable. -
OPS-005— Updates shall avoid the critical window around an alarm. -
OPS-006— Unhealthy new firmware shall not be validated. -
OPS-007— Critical events shall survive a controlled restart. -
OPS-008— Health and diagnostics shall omit camera/detector dependencies and distinguish disabled vibration from failure of an enabled tactile output.
Acceptance criteria
Section titled “Acceptance criteria”Tests cover log saturation, automated inspection of diagnostics, rejection of invalid firmware signatures, simulated rollback, update refusal at T−10 minutes, and a consistent health table for every missing peripheral.