Repository navigation
power: retain bounded asynchronous battery evidence (#439) - #446
Conversation
Deploying spark with
|
| Latest commit: |
dbb7341
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://5115f71d.spark-e11.pages.dev |
| Branch Preview URL: | https://fix-439-bounded-battery-evid.spark-e11.pages.dev |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
2026-10-24 — Merged source and combined CI verified; no live battery operation. #446 merged as The current hardware hold and both start-condition drop-ins are retained exactly. Last readback holds alive/battery inactive; no poller, GPIO/audio, discharge, fault induction, restart, root apply or state-policy change occurred. Source merge is not live ADC acceptance. Next #439 step is operator-authorised hardware recovery, then natural evidence collection and retention/readback before any safety-policy conclusion. The parent remains open. Current runtime checkout was observed at6a2aa588, not claimed upgraded by these merges. Receipts: logs_test/backlog-446-20261024/ and logs_test/backlog-442-20261024/. Unrelated prototype files are hash-unchanged. Local master5b693601 and both remote source merges are integrated; no tracked WIP or temporary worktree remains. |
2026-10-24 — Merged; combined master5b693601 CI verified. This is integrated source, not robot deployment or live hardware acceptance. Operator steps remain on #439.
Related to #439: bounded asynchronous diagnostic retention, not a shutdown fix. Keep the parent open.
Records timestamped raw/rounded ADC voltage and existing rejected/warmup/accepted branches through a bounded64-line queue, current+one older file capped256KiB each and512-byte appended records. Filesystem work stays on the existing background writer. Storage/drop counters remain best-effort; no fsync or decisive-last-sample guarantee. Existing battery decisions/schema, charging/shutdown policy and measured/derived trend labels are unchanged.
2026-10-24 repair: NaN/+infinity now record
conversion_errorbefore re-raising the original percentage-conversion exception. A pure AST-extracted actual poller boundary test proves retention and unchanged exception type; finite7.2 remains50 percent with no extra error event. No GPIO import or poller launch.Final reviewed head
dbb73415306342bc1f48d5421124d76ff74175b2: independent adversarial review PASS;18 focused offline tests pass; current Linux CI and Socket pass. Current master is integrated without the stale-base HAT/API/telemetry reversals; the diff is exactly the four intended files. Bootstrap installer PR#442 is independent.Actual robot readback: HAT hold present, alive/battery units inactive with false start conditions. Live evidence acceptance waits for operator-authorised hardware recovery and natural ADC samples. Do not remove the marker, run diagnostics, start pollers, induce discharge or change shutdown policy to test this feature. No root, service, audio, hardware, live fault or deployment operation occurred.
logs_test/backlog-446-20261024/retains offline receipts. Source integration is within the active backlog goal; the earlier review-only boundary is historical.