038-hosted-client
The hosted client: device-grant login, submit and decision against one Statecraft cell
Amends 006 with the CLI's half of the hosted thin path that the Statecraft platform's spec 005 section 3.2 names and its 004 B-3 leaves open. The operator logs in with the OAuth device authorization grant (RFC 8628) against the cell's own issuer, as the public native client that the cell's manifest declares. `hosted submit` registers the revision this product accepted locally and submits its receipt and artifact bytes idempotently. `hosted decision` retrieves the revision's decision bundle and verifies it offline against a root set the operator pinned independently, never against the bundle's own. Tokens never reach a log, a receipt, a repository or a JSON answer. Nothing here dispatches work, records a reviewer's decision, or acts on an approval.
Read the full pinned specification ↗Relationships
depends on
depended on by
amends
amended by
Claimed units
- establishes
{ "kind": "directory", "path": "crates/statecraft-hosted/" } - extends
{ "nature": "additive", "spec": "005-acceptance-and-evidence", "unit": { "kind": "directory", "path": "crates/statecraft-envelope/" } } - extends
{ "nature": "additive", "spec": "006-command-surface", "unit": { "kind": "directory", "path": "crates/statecraft-cli/" } }
Source headings
- 038: The hosted client
- 1. Purpose
- 2. Territory
- 3. Behavior
- 3.1 The cell, and what this product learns from it
- 3.2 Login: the device authorization grant
- 3.3 Holding a credential
- 3.4 Request rules every hosted verb follows
- 3.5 `hosted submit`: register the revision and submit its evidence
- 3.6 `hosted decision`: retrieve and verify offline
- 3.7 Observable negative cases
- 4. Out of scope
- 5. Resolved decisions
- Verification
Frozen anchors
No frozen anchors declared.