Skip to content

Commit 3a17e5b

Browse files
committed
docs(project): close single-node handoff
1 parent e886465 commit 3a17e5b

1 file changed

Lines changed: 28 additions & 26 deletions

File tree

docs/project/current-state.md

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,15 @@ Last updated: 2026-07-28
44

55
## Phase
66

7-
M1 — Sovereign Devnet Alpha. The deterministic in-memory ledger kernel is
8-
merged and verified. The owning storage adapter can now durably create and
9-
validate a height-zero ledger, atomically persist a complete block, and reopen
10-
the identical head through full genesis replay. Deterministic multi-block
11-
restart, snapshot recovery, portable export, new-database archive import, and
12-
fail-closed ambiguous-commit reopen are complete. Expanded interruption and
13-
long seeded recovery sequences are merged and pass the hosted completion
14-
matrix. Issue #22 is the active roadmap slice: deliver the smallest runnable
15-
single-node ABCI++ vertical without moving ledger authority out of C++. The
16-
accepted contract, C++ staged application lifecycle, bounded local protocol,
17-
headless transport, stateless Go bridge, dependency security floors, strict
18-
CometBFT home initializer, and pinned node wrapper are implemented. Local
19-
verification now starts the real node, commits a signed transfer, restarts all
20-
three processes, and continues at the next durable height. The active delivery
21-
branch requires hosted matrix and dependency-alert evidence before merge.
7+
M1 — Sovereign Devnet Alpha. The deterministic C++ ledger kernel, owning
8+
SQLite storage adapter, restart/replay and recovery paths, headless application
9+
process, stateless Go ABCI++ bridge, and pinned CometBFT single-node vertical
10+
are merged and verified. The real integration commits two independently
11+
modelled signed transfers across a complete node, bridge, and application
12+
restart, then confirms the exact height-two C++ durable root and ABCI
13+
receipts. Issue #22 and PR #30 are closed with no active delivery branch. The
14+
nearest incomplete M1 evidence is the documented four-validator local devnet
15+
lifecycle required by `first-goal.md`.
2216

2317
## Verified facts
2418

@@ -32,8 +26,8 @@ branch requires hosted matrix and dependency-alert evidence before merge.
3226
all four GitHub compiler/sanitizer jobs passed.
3327
- Issue #11 completed the M1 replaceable atomic persistence, reopen/replay,
3428
snapshot, corruption-detection, and crash-recovery slice through PR #21.
35-
- Issue #22 tracks the replaceable CometBFT ABCI++ application boundary and
36-
the first runnable single-node networked vertical.
29+
- Issue #22 completed the replaceable CometBFT ABCI++ application boundary and
30+
first runnable single-node networked vertical through PR #30.
3731
- ADR 0001 accepts CometBFT `v0.39.4` at source commit
3832
`f96ff7cc244bfa97f399527d917f22ad81414d25`, ABCI `2.0.0`, and the official
3933
Go `1.25.10` Linux x86-64 toolchain. The exact Go module, module-file,
@@ -444,8 +438,8 @@ branch requires hosted matrix and dependency-alert evidence before merge.
444438
Exact-candidate run 30378111004 and post-merge verification run 30378470647
445439
passed all four jobs; dependency-graph run 30378472171 passed and the
446440
refreshed open Dependabot alert count was zero.
447-
- The active single-node implementation adds a C++ canonical-genesis identity
448-
mode, strict fixed-time CometBFT genesis/configuration initialization,
441+
- The completed single-node implementation adds a C++ canonical-genesis
442+
identity mode, strict fixed-time CometBFT genesis/configuration initialization,
449443
validator and node key persistence, a pinned official full-node start
450444
wrapper, and refusal of mismatched repeated initialization. The runtime
451445
fixes the flood mempool, disables libp2p, PEX, state sync, vote extensions,
@@ -473,6 +467,12 @@ branch requires hosted matrix and dependency-alert evidence before merge.
473467
30385969246. GCC and Clang debug plus both ASan/UBSan jobs passed, including
474468
the live transfer/restart integration. The repeated exact branch dependency
475469
comparison reported zero vulnerabilities.
470+
- PR #30 merged the completed issue #22 vertical into `main` as `e886465`.
471+
Exact-head candidate run 30386416963 and post-merge run 30386965030 passed
472+
GCC and Clang debug plus both ASan/UBSan jobs, including the live
473+
transfer/restart integration. Resolver run 30386416975 and post-merge
474+
dependency-graph run 30386963131 passed; the final open Dependabot alert
475+
count was zero.
476476
- `AGENTS.md` and `docs/engineering/verification.md` now treat the owner
477477
machine as resource-constrained: full verification, expanded dependency
478478
resolution, direct VCS module retrieval, and large reproducible cache
@@ -482,16 +482,18 @@ branch requires hosted matrix and dependency-alert evidence before merge.
482482

483483
## Exact next action
484484

485-
Merge PR #30 after the documentation-only head check passes, fetch and
486-
fast-forward local `main`, remove the merged branch and reproducible artifacts,
487-
and prove local/remote reconciliation. Then open and execute the next M1 slice:
488-
the documented four-validator local devnet lifecycle required by
489-
`first-goal.md`.
485+
From clean synchronized `main`, create and map the smallest remaining M1 issue
486+
for the four-validator local devnet lifecycle required by `first-goal.md`.
487+
Specify the fixed topology and start, health, signed-transfer, stop, and
488+
restart acceptance procedure before implementing it on one delivery branch.
489+
Use focused local checks only and run the full compiler, sanitizer, and live
490+
integration completion gates on GitHub-hosted runners.
490491

491492
## Open autonomous decisions
492493

493-
- None for the accepted issue #22 contract. Implementation details that do not
494-
change the normative boundary remain local engineering choices.
494+
- None. Issue #22 is complete; any consequential topology or compatibility
495+
choice discovered in the four-validator slice must follow the normal
496+
specification or ADR evidence gate.
495497

496498
## Blockers
497499

0 commit comments

Comments
 (0)