Polish first-run operator workflow

This commit is contained in:
Eric Wendland 2026-05-22 15:00:09 +02:00
commit e6879e8949
6 changed files with 208 additions and 14 deletions

View file

@ -125,6 +125,10 @@ still verified against trusted-admin OpenSSH signatures before import.
Operators can run `geth sync now [node]` to trigger the same best-effort pass
immediately and `geth sync status` to inspect locally recorded last-attempt,
last-success, cursor, import/rejection counts, and errors for each peer stream.
JSON status also includes `state`, `stale`, `stale_after_ms`, and `next_action`
fields so scripts can fail on unhealthy streams. Common daemon errors include a
`next:` recovery line for missing peer cards, missing grants, missing resources,
unavailable endpoints, and missing DB/KV/document registrations.
## Resource Model

View file

@ -60,11 +60,11 @@ Implementation order:
- `[x]` Decide and document whether CAS-backed DB snapshots/batches are part
of the prototype.
6. `[ ]` Finish operational first-run polish.
6. `[x]` Finish operational first-run polish.
Acceptance criteria:
- `[ ]` README has a two-machine walkthrough for the main smoke tests.
- `[ ]` CLI recovery errors tell operators the next command to run.
- `[ ]` JSON sync status is script-friendly for stale/failed peer detection.
- `[x]` README has a two-machine walkthrough for the main smoke tests.
- `[x]` CLI recovery errors tell operators the next command to run.
- `[x]` JSON sync status is script-friendly for stale/failed peer detection.
- `[~]` Two-node operator-flow test coverage.
Acceptance criteria:
@ -123,15 +123,15 @@ Implementation order:
control path and merges received Automerge documents.
- `[x]` Resource authorization gates remote document reads and writes.
- `[~]` Operational first-run polish.
- `[x]` Operational first-run polish.
Acceptance criteria:
- `[ ]` README has a complete two-machine walkthrough for owner init,
- `[x]` README has a complete two-machine walkthrough for owner init,
enrollment, grants, sync status, SSH cert request/approval, SSH proxy, KV,
CAS/file-root, and DB/document smoke tests.
- `[ ]` CLI errors for stale peer cards, missing endpoint bindings, missing
- `[x]` CLI errors for stale peer cards, missing endpoint bindings, missing
grants, unavailable relays, unavailable service managers, and unsupported
platform features tell the operator what command to run next.
- `[ ]` `geth sync status --json` is sufficient for scripts to detect stale
- `[x]` `geth sync status --json` is sufficient for scripts to detect stale
peers and failed streams.
## Phase 0: Bootstrap