Skip to content

feat: pass Courier's NetworkReady state and hook through the Sandbox - #54

Merged
ACEFGI merged 2 commits into
mainfrom
feat/network-ready
Sep 30, 2026
Merged

ACEFGI merged 2 commits into
mainfrom
feat/network-ready

Conversation

@ACEFGI

@ACEFGI ACEFGI commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

Passes Courier 0.9.0's NetworkReady state through the Sandbox.

  • onNetworkReady(cb) is a single-slot passthrough of Courier's blocking network-ready hook. It fires on every entry to NetworkReady: WiFi is up, time sync has been attempted, and no persistent transport is running.
  • enterNetworkReady() forwards to Courier. It returns false without a network.
  • In NetworkReady, the status text reads "Network ready" and the LED is cyan, the same colour as WifiConnected and TransportsConnecting.
  • The Courier floor is now ^0.9.0, and this is version 0.9.0.

This depends on inanimate-tech/courier#33 and its 0.9.0 release. Builds against the registry won't resolve until that release is published. The native tests use the stub Courier.h, which gains the new enum value and hooks. test_sandbox_network_ready is a new suite with 5 tests, and all 230 native tests and cppcheck pass.

🤖 Generated with Claude Code

ACEFGI and others added 2 commits September 30, 2026 14:28
Sandbox::onNetworkReady(cb) forwards Courier 0.9.0's onNetworkReady hook,
Sandbox::enterNetworkReady() forwards Client::enterNetworkReady() (false
without a network), and NetworkReady drives the status text and LED.
Courier floor moves to ^0.9.0; version 0.9.0.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…k pauses

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@ACEFGI

ACEFGI commented Sep 30, 2026

Copy link
Copy Markdown
Contributor Author

Changes since approval, from a release review (60ed43c). Nothing in src/ changes except one header comment.

  • examples/espidf-basic now pins inanimate/courier ^0.9.0, matching Resident's own floor. The ^0.8.0 pin made build-espidf unsolvable.
  • Docs. onNetworkReady now says that app ticks, overlays and extension updates pause while it runs, and that it must not call loop(). Wording now says "time sync attempted", to match Courier.

build-platformio and build-espidf go green once Courier 0.9.0 is published. I'll re-run CI then.

@ACEFGI
ACEFGI merged commit efcefe0 into main Sep 30, 2026
6 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant