Skip to content

status: the /v1/status document beside its proof - #5

Merged
Ttimmahlax merged 2 commits into
mainfrom
status-document
Oct 18, 2026
Merged

Ttimmahlax merged 2 commits into
mainfrom
status-document

Conversation

@Ttimmahlax

Copy link
Copy Markdown
Contributor

rusty_esp_mid-core::status::StatusDocument (feature alloc) builds the GET /v1/status body of the OEM sidecar status contract v1:

  • plain(): the discovery fields (pair, maker_did, model, device_did, node_id).
  • signed(nonce, sign): plus owner_did, adoption_kind, adoption (base64url, no padding) when adopted, any other fields (health), and device_sig over StatusProof from the caller's sign_prehash.
  • pair is "ready" or {"paired":{"owner_did":…}}; a contract field in extra never replaces the real one.

Tested on the status-v1 vector: the document's device_sig is the vector's signature, and the unadopted form verifies. Builds for riscv32imc-unknown-none-elf with alloc.

🤖 Generated with Claude Code

tim-almond-house and others added 2 commits October 17, 2026 19:22
StatusDocument::plain is the discovery fields; ::signed adds the
adoption, the other (health) fields and device_sig over StatusProof,
from the caller's sign_prehash. pair is "ready" or
{"paired":{"owner_did":...}}. A contract field in extra never replaces
the real one. Tested on the status-v1 vector.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Reads a statement apply() stored, or a v1 envelope the mesh stored,
for this device only; Stored::as_status feeds StatusDocument.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Ttimmahlax
Ttimmahlax merged commit f76dff7 into main Oct 18, 2026
8 checks passed
@Ttimmahlax
Ttimmahlax deleted the status-document branch October 18, 2026 03:07
@Ttimmahlax Ttimmahlax mentioned this pull request Oct 18, 2026
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.

2 participants