feat(mirror): prove the mirror-coin lifecycle on a real machine - #439
feat(mirror): prove the mirror-coin lifecycle on a real machine#439MichaelTaylor3d wants to merge 1 commit into
Conversation
…fecycle The step-7 lifecycle had never been watched on a real machine, which is what both remaining children of dig_ecosystem#3166 were gated on. It was measured against a `dign` built from 9eb8fbd and it works: `mirror bond-states` answers `state: "known"` with epoch 104 and a complete, truthful empty inventory, and the pass publishes. Recorded in DEVELOPMENT_LOG.md rather than left in a ticket comment because three of the facts are the kind a future lane re-derives at the cost of a full build: that a `chain_unreadable` reading is only evidence about the binary that produced it, that `entries: []` under `state: "known"` is a truth rather than a fabricated zero, and that `chain_unreadable` is today the catch-all for five structurally different states of which two are terminal. Also records, from the same session, the two independent blockers on a create/reclaim proof: this node caches zero capsules, so there is no (store, root) to bond, and it has no publishable advertise URL (#426). Refs #433, #412, #411
956c091 to
c2e1504
Compare
Parked, not abandoned — and deliberately queued behind PR #442Reconciled by the 07:14Z wake. The lane that opened this PR is gone (its session ended); this comment This PR is worth landingIt is documentation only —
Why it is not being rebased right nowThe version here is Resume condition, checkableWhen PR #442 has merged: rebase this branch onto the new One correction to the PR bodyIts measurement was taken against a build of |
DRAFT — gate round has not returned. Do not merge.
Outcome: the measurement was taken, and the news is good
The step-7 mirror lifecycle works end to end on a real machine. Built from
9eb8fbd(0.179.0)in this lane's own worktree, run with
RUST_LOG=mirror=debugon port 9779:{"ok":true,"action":"mirror","service":"dig-node","version":"0.179.0","state":"known","entries":[],"complete":true,"cursor":null,"locked_dig_base_units":0,"epoch":104}state: "known"— the pass ran, read chain, and published. None of the fivechain_unreadablerows is in force. #433's headline was an artifact of the measured binary (0.172.0 =
6e8bfa7)predating step 7 (
5df3e34), now confirmed in the affirmative direction rather than only arguedfrom commit ancestry. Full reading: #433 (comment)
What this PR contains
One
DEVELOPMENT_LOG.mdentry and a patch version bump. No behaviour changes, because themeasurement showed there is nothing to fix on the path that was suspect.
The entry exists because three of the facts cost a full build to re-derive: a
chain_unreadablereading is only evidence about the binary that produced it;
entries: []understate: "known"isa truth rather than a fabricated zero; and
chain_unreadableis today the catch-all for fivestructurally different states, two of them terminal.
Blast radius
Zero. No symbol is edited — the diff is
DEVELOPMENT_LOG.mdplus theversionfield in theworkspace
Cargo.toml. Noimpactquery was required because nothing is renamed, removed, orcalled differently. (Recorded rather than skipped silently: the registered gitnexus index for this
repo is ~301 commits stale, so it could not have answered a call-graph question here anyway.)
What is bounded and LEFT, not implied
MirrorBondStatesUnknownReason, so a node in one of them would still saychain_unreadablewhileits chain reads work. Latent, not active — no configuration measured today reaches it. Fixing it
is a release-first change in
dig-node-control-interface(currently 0.27.0), not a dig-node edit.zero capsules, so there is no
(store, root)to bond; and it has no publishable advertise URL(Mirror creates need an advertised URL this node can be fetched at #426). An invented URL is not a workaround — the value is written to chain as a claim about
where this node can be fetched.
Refs #433, #412, #411