Skip to content

docs: define the Echo 1.0 release contract and move live planning to GitHub - #582

Merged
flyingrobots merged 5 commits into
mainfrom
cycle/521-wal-wsc-storage-relationship
Jun 20, 2026
Merged

docs: define the Echo 1.0 release contract and move live planning to GitHub#582
flyingrobots merged 5 commits into
mainfrom
cycle/521-wal-wsc-storage-relationship

Conversation

@flyingrobots

@flyingrobots flyingrobots commented Jun 19, 2026

Copy link
Copy Markdown
Owner

Summary

  • adds docs/releases/echo-1.0-contract.md as the stable Echo 1.0 release constitution
  • recasts the WAL/WSC roadmap packet into durability doctrine and moves live status to GitHub Project merge-train(geom-1): rmg-geom foundation + broad-phase AABB tree #14
  • reduces docs/WorkItems.md and sequencing docs to GitHub-native tracking boundaries instead of issue inventories
  • updates the WAL/WSC doctrine guard and regression test so live roadmap tables fail in repo docs

GitHub release control surface

Validation

  • scripts/check-wal-wsc-doctrine.sh
  • scripts/tests/check_wal_wsc_doctrine_test.sh
  • pnpm exec prettier --check CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md docs/design/work-item-sequencing-and-prioritization.md docs/index.md docs/releases/echo-1.0-contract.md
  • pnpm exec markdownlint-cli2 CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md docs/design/work-item-sequencing-and-prioritization.md docs/index.md docs/releases/echo-1.0-contract.md
  • shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • scripts/check_spdx.sh CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md docs/design/work-item-sequencing-and-prioritization.md docs/index.md docs/releases/echo-1.0-contract.md scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • git diff --check
  • cargo check
  • pre-commit hook: markdownlint touched docs
  • pre-push hook: tooling smoke, bash syntax checks, prettier touched docs

Summary by CodeRabbit

Documentation

  • Added the Echo 1.0 release contract outlining release gates, proof/evidence requirements, and compatibility manifest rules.
  • Published WAL/WSC “durability doctrine” and expanded end-to-end causal WAL/WSC guidance with guarded traceability.
  • Rewrote work tracking guidance to emphasize GitHub as the live state, including updated sequencing/proof policies and work boundary clarifications.
  • Updated “Start Here” and supporting “bearing” documents with the latest boundaries and references.

Chores

  • Added a documentation integrity checker plus a dedicated test harness to validate doctrinal cross-links and prevent stale tracking text.

@coderabbitai

coderabbitai Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 63d6a01f-37a6-4e1c-861c-68dfc9e5ee87

📥 Commits

Reviewing files that changed from the base of the PR and between 1595b05 and caa4c92.

📒 Files selected for processing (9)
  • CHANGELOG.md
  • docs/BEARING.md
  • docs/WorkItems.md
  • docs/design/wal-wsc-durability-roadmap.md
  • docs/design/work-item-sequencing-and-prioritization.md
  • docs/index.md
  • docs/releases/echo-1.0-contract.md
  • scripts/check-wal-wsc-doctrine.sh
  • scripts/tests/check_wal_wsc_doctrine_test.sh

📝 Walkthrough

Walkthrough

Adds the Echo 1.0 release contract (four binary gates with evidence requirements and compatibility policy), the WAL/WSC durability doctrine (durable authority, recovery bootstrap, evidence relationships), GitHub-native sequencing constraints with proof policy, a doctrine validation script with fixture-based test harness, and cross-document wiring to stabilize the release framework and durability model.

Changes

Echo 1.0 Release Contract and Durability Doctrine

Layer / File(s) Summary
Echo 1.0 Release Contract
docs/releases/echo-1.0-contract.md
New document defining four release gates (A–D) as binary conditions with linked issues, compatibility policy requiring a machine-readable pinned manifest (echo-convergence.lock), evidence requirements per gate (deterministic compilation, crash-point matrix, reproducible recovery, idempotent replay, corrupt-evidence rejection), and pass rule (all gates pass, all proofs linked, negative cases exercised, no partial pass).
WAL/WSC Durability Doctrine
docs/design/wal-wsc-durability-roadmap.md
New document establishing durable authority (WAL bytes), evidence relationships (WARP graph nodes as projected facts; WSC as evidence transport), recovery bootstrap from WAL root or storage manifest, CAS byte-identity binding, retained evidence references, GitHub ownership conventions (Goalpost field, issue relationships), GP1 evidence requirements, and non-goals prohibiting task lists, progress trackers, and false semantic authority claims.
GitHub-Native Sequencing and Proof Policy
docs/design/work-item-sequencing-and-prioritization.md
Rewrites the guide to prescribe GitHub-native structures (milestones by release, parent/sub-issue hierarchy, native blocked by/blocking relationships), enumerate required visible fields and allowed custom fields (Track, Goalpost, Target, Risk, Proof, Slice), define proof value semantics (Missing/Unit/Integration/Conformance/Network/Release), constrain Slice: Needs decomposition to require splitting before implementation, and establish operating guardrails (no mutable status in repo docs, no cross-repo milestone duplication, GitHub Apps mandatory).
Doctrine Guard Script
scripts/check-wal-wsc-doctrine.sh
New validation script using fixed-string grep helpers (require_file, require_literal, reject_literal) to assert required doctrine cross-links and reject stale backlog/roadmap text across BEARING, WorkItems, sequencing guide, causal WAL design, release contract, and durability roadmap. Exits non-zero on failure; otherwise prints check-wal-wsc-doctrine: passed.
Doctrine Guard Test Harness
scripts/tests/check_wal_wsc_doctrine_test.sh
New test script with fixture-based testing: copies curated docs into temp directories, runs positive tests against current repo and isolated fixtures, and runs five negative mutation tests (removing bootstrap phrase, appending stale WorkItems link, rewriting release contract URL, appending roadmap section header, appending audit date marker) asserting specific failure diagnostics.
Cross-Document Linkage and Work Item Migration
docs/BEARING.md, docs/WorkItems.md, docs/design/causal-wal-end-to-end.md, docs/index.md, CHANGELOG.md
Updates BEARING.md opening signpost with GitHub projects/issues as live tracker and WAL/WSC reference to #521. Rewrites WorkItems.md from filesystem lane inventories to GitHub-native Canonical Trackers, Local Backlog Boundary, and Query The Live State with gh templates. Adds WAL projection section traceability note and guard script reference to causal WAL design. Links Echo 1.0 Convergence Project in sequencing guide intro. Adds release contract link to Start Here. Documents Unreleased additions in CHANGELOG.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Possibly related issues

  • WAL/WSC Storage Relationship #521: This PR directly implements the acceptance criteria from #521 by creating the WAL/WSC durability doctrine file, adding the doctrine validation script, and updating documentation to explicitly link and enforce the WAL/WSC storage relationship requirements with multiple references to #521 throughout.
  • [GP6-S2] Documentation Truth Gate #580: This PR creates scripts/check-wal-wsc-doctrine.sh and docs/design/wal-wsc-durability-roadmap.md, which are the exact witness script and source documentation referenced in #580's acceptance criteria for the documentation truth gate.
  • Echo 1.0 Release Bar #584: This PR implements the Echo 1.0 release bar framework and roadmap authority principles by introducing the release contract document, enforcing GitHub-native work tracking, establishing WAL/WSC durability doctrine with verification, and restructuring docs as stable design reference rather than live execution tracker.

Suggested labels

tooling

🎯 Binary gates stand firm,
WAL bytes hold truth eternal.
The grep -F checker ensures it:
No stale links in the doctrine.
Proof packets pass or fail — there is no in-between. ✅

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the PR's primary changes: documenting the Echo 1.0 release contract and moving live planning to GitHub, both of which are central objectives.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cycle/521-wal-wsc-storage-relationship

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@flyingrobots

Copy link
Copy Markdown
Owner Author

@codex Self-Code Review findings for PR #582.

Severity File Lines Infraction Recommended mitigation prompt
P3 docs/design/wal-wsc-durability-roadmap.md 41-42, 151-888 The roadmap says slices are PR-sized GitHub issue bodies, and the child issues now exist (#554-#581), but the durable repo document only links parent umbrellas. The PR body and issue comments carry the child map, but the committed roadmap does not. That makes the dedupe/indexing work non-local to the repo and weakens the roadmap as the handoff source. "Update docs/design/wal-wsc-durability-roadmap.md with a compact issue map linking each GP1-GP6 slice to its GitHub issue (#554-#581). Add a short note that GP0 is covered by PR #582/#521. If appropriate, extend scripts/check-wal-wsc-doctrine.sh with sentinel checks for the issue map so future edits do not orphan the child slice links."
P4 docs/WorkItems.md 6, 31 The branch modernizes this file toward GitHub Issues, but the audit metadata still says Last audited: 2026-05-25 and GitHub open issues is 46. Live GitHub open issue count is now 184 after the roadmap child issues were created. This is an inventory document; stale counts are explicitly misleading. "Refresh or remove stale docs/WorkItems.md audit metadata. Either update Last audited and the GitHub issue count from live data, or replace the static GitHub count with a link/instruction to query GitHub so the inventory stops presenting a false number."
P4 docs/design/wal-wsc-durability-roadmap.md 82-88 Goalpost 0 status is tied to the temporary branch name cycle/521-wal-wsc-storage-relationship. Once PR #582 merges, the durable design doc will immediately contain stale branch-state prose. Durable docs should name issue/PR/merge status, not ephemeral local branch state. "Replace the branch-scoped Goalpost 0 status with durable tracker language, e.g. Status: covered by PR #582 under #521; complete when the roadmap/guard PR merges, or omit the branch name entirely."
P5 scripts/tests/check_wal_wsc_doctrine_test.sh 36-41, 44-63, 66-82 Temporary fixture directories are cleaned manually at the end of each function. With set -e, an unexpected failure before rm -rf leaks the fixture directory. This is test hygiene debt, not a functional blocker. "Refactor scripts/tests/check_wal_wsc_doctrine_test.sh so every mktemp -d fixture is cleaned by a trap or shared helper even when a command fails before the explicit rm -rf. Preserve the existing negative-test assertions and shellcheck cleanliness."

Validation run during review:

  • git status --porcelain was clean before review.
  • git fetch origin --prune succeeded.
  • git diff --check origin/main...HEAD passed.
  • scripts/check-wal-wsc-doctrine.sh passed.
  • scripts/tests/check_wal_wsc_doctrine_test.sh passed.
  • pnpm exec markdownlint-cli2 CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/causal-wal-end-to-end.md docs/design/work-item-sequencing-and-prioritization.md docs/design/wal-wsc-durability-roadmap.md passed.
  • pnpm exec prettier --check CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/causal-wal-end-to-end.md docs/design/work-item-sequencing-and-prioritization.md docs/design/wal-wsc-durability-roadmap.md passed.
  • shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh passed.
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh passed.

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

Testing

  • scripts/check-wal-wsc-doctrine.sh
  • scripts/tests/check_wal_wsc_doctrine_test.sh
  • pnpm exec markdownlint-cli2 CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/causal-wal-end-to-end.md docs/design/work-item-sequencing-and-prioritization.md docs/design/wal-wsc-durability-roadmap.md
  • pnpm exec prettier --check CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/causal-wal-end-to-end.md docs/design/work-item-sequencing-and-prioritization.md docs/design/wal-wsc-durability-roadmap.md
  • ⚠️ shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh (warning due to shellcheck not being installed in this environment)
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • git diff --check
  • git diff --cached --check
  • cargo check

View task →

@flyingrobots

Copy link
Copy Markdown
Owner Author

@codex Review-fix update pushed in 2cf7d25.

Resolved the four self-review findings:

Finding Resolution
Roadmap lacked durable child issue map Added a 30-slice issue map: GP0 -> #521 / PR #582, GP1-GP6 -> #554-#581.
WorkItems audit metadata was stale Updated audit date and replaced the stale static GitHub issue count with a repo-qualified live query.
Roadmap named an ephemeral branch Replaced branch-scoped GP0 status with durable #521 / PR #582 tracker language.
Shell test temp fixtures could leak Added EXIT-trap cleanup, shared fixture creation, and a missing-child-issue negative test.

Validation before push:

  • scripts/check-wal-wsc-doctrine.sh
  • scripts/tests/check_wal_wsc_doctrine_test.sh
  • pnpm exec prettier --check docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md
  • pnpm exec markdownlint-cli2 docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md
  • shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • git diff --check
  • scripts/check_spdx.sh docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • pre-commit hook markdownlint
  • pre-push hook tooling smoke, bash -n, prettier touched markdown

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

Testing

  • scripts/check-wal-wsc-doctrine.sh && scripts/tests/check_wal_wsc_doctrine_test.sh
  • pnpm exec prettier --check docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md
  • pnpm exec markdownlint-cli2 docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • git diff --check
  • scripts/check_spdx.sh docs/WorkItems.md docs/design/wal-wsc-durability-roadmap.md scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • cargo check
  • ⚠️ shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh (warning due to shellcheck not being installed in this environment)
  • git status --short

View task →

@flyingrobots

Copy link
Copy Markdown
Owner Author

@codex Second Self-Code Review findings for PR #582 at head 2cf7d25a.

Severity File Lines Infraction Evidence Recommended mitigation prompt
P3 docs/WorkItems.md 6, 21-31 The PR refreshes Last audited to 2026-06-19, but the summary table still contains stale filesystem backlog counts. This is no longer just inherited drift because the branch explicitly claims a fresh audit date. find docs/method/backlog -maxdepth 2 -type f returns only docs/method/backlog/.gitkeep, so the listed docs/method/backlog/asap = 13, v0.1.0 = 21, up-next = 39, inbox = 16, bad-code = 3, and cool-ideas = 29 are false in the current checkout. find backlog/cool-ideas -maxdepth 1 -type f -name '*.md' returns 3 files, while the table says 2. "Fix docs/WorkItems.md so the current audit date does not certify false counts. Either replace the static summary counts with live query commands/status text for legacy filesystem lanes, or update the counts from the current checkout and explicitly say docs/method/backlog/ is now only .gitkeep/legacy marker material. Keep the GitHub live-query wording."
P5 docs/BEARING.md; docs/design/work-item-sequencing-and-prioritization.md 6; 8 Both files are modified by this branch but retain stale Last updated dates. This is a metadata/style defect in active signpost docs. docs/BEARING.md still says Last updated: 2026-06-15; docs/design/work-item-sequencing-and-prioritization.md still says Last updated: 2026-05-25, while this PR updates both files on 2026-06-19. "Update the Last updated metadata in every touched active signpost doc, at minimum docs/BEARING.md and docs/design/work-item-sequencing-and-prioritization.md, to 2026-06-19, or remove these date fields if the repo no longer wants manual freshness metadata."

Validation run during this review:

  • git status --porcelain was clean before review.
  • git fetch origin --prune succeeded.
  • Reviewed git diff origin/main...HEAD.
  • git diff --check origin/main...HEAD passed.
  • scripts/check-wal-wsc-doctrine.sh passed.
  • scripts/tests/check_wal_wsc_doctrine_test.sh passed.
  • pnpm exec prettier --check CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/causal-wal-end-to-end.md docs/design/work-item-sequencing-and-prioritization.md docs/design/wal-wsc-durability-roadmap.md passed.
  • pnpm exec markdownlint-cli2 CHANGELOG.md docs/BEARING.md docs/WorkItems.md docs/design/causal-wal-end-to-end.md docs/design/work-item-sequencing-and-prioritization.md docs/design/wal-wsc-durability-roadmap.md passed.
  • shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh passed.
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh passed.
  • scripts/check_spdx.sh on touched files passed.

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

  • Updated docs/BEARING.md active signpost metadata to 2026-06-19. docs/BEARING.mdL4-L6
  • Replaced stale docs/method/backlog/* lane counts in docs/WorkItems.md with a legacy-marker status noting that docs/method/backlog/ now only contains .gitkeep, while preserving the GitHub live-query wording. docs/WorkItems.mdL21-L26
  • Refreshed local filesystem backlog counts in docs/WorkItems.md for backlog/bad-code/ and backlog/cool-ideas/. docs/WorkItems.mdL23-L26
  • Updated docs/design/work-item-sequencing-and-prioritization.md active signpost metadata to 2026-06-19. docs/design/work-item-sequencing-and-prioritization.mdL4-L8
  • Committed the changes on the current branch with commit 2060c49 docs: refresh work item audit metadata.
  • Created the PR via make_pr titled “Refresh work item audit metadata”.

Testing

  • git diff --check
  • git diff --cached --check
  • pnpm exec prettier --check docs/BEARING.md docs/WorkItems.md docs/design/work-item-sequencing-and-prioritization.md
  • pnpm exec markdownlint-cli2 docs/BEARING.md docs/WorkItems.md docs/design/work-item-sequencing-and-prioritization.md
  • scripts/check_spdx.sh docs/BEARING.md docs/WorkItems.md docs/design/work-item-sequencing-and-prioritization.md
  • cargo check

View task →

@flyingrobots

Copy link
Copy Markdown
Owner Author

@codex Second review closure pushed in 1595b05a (docs: remove stale WorkItems audit residue).

Source Severity Finding Resolution Commit
Self-review P3 docs/WorkItems.md certified false/stale backlog counts and dead docs/method/backlog/* lane links. Replaced the false lane-count table with a truthful legacy-marker row, corrected the local backlog/cool-ideas/ count to 3, removed dead per-lane link sections, added live GitHub query commands, and retained only actual local legacy card links. The doctrine guard now requires the legacy marker text and rejects stale per-lane method/backlog/* links. 1595b05a
Self-review P5 Active signpost docs touched by the branch had stale Last updated metadata. Updated docs/BEARING.md and docs/design/work-item-sequencing-and-prioritization.md to Last updated: 2026-06-20. 1595b05a

Verification run before commit/push:

  • scripts/check-wal-wsc-doctrine.sh
  • scripts/tests/check_wal_wsc_doctrine_test.sh
  • pnpm exec prettier --check docs/WorkItems.md docs/BEARING.md docs/design/work-item-sequencing-and-prioritization.md
  • pnpm exec markdownlint-cli2 docs/WorkItems.md docs/BEARING.md docs/design/work-item-sequencing-and-prioritization.md
  • shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • scripts/check_spdx.sh docs/WorkItems.md docs/BEARING.md docs/design/work-item-sequencing-and-prioritization.md scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • git diff --check

Pre-commit and pre-push hooks also passed on the pushed head.

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

  • Reviewed the pushed closure at 1595b05; I found the requested second-review closure already present, so I made no additional code changes, did not commit, and did not create a new PR.
  • Confirmed docs/WorkItems.md now uses the 2026-06-20 audit date and no longer certifies stale docs/method/backlog/* lane counts; it records the legacy marker status, current local backlog counts, and a live GitHub issue query instead. docs/WorkItems.mdL6-L26
  • Confirmed docs/WorkItems.md retains live GitHub lane query commands instead of stale local per-lane links. docs/WorkItems.mdL88-L104
  • Confirmed docs/BEARING.md active signpost metadata is updated to 2026-06-20. docs/BEARING.mdL4-L6
  • Confirmed docs/design/work-item-sequencing-and-prioritization.md active signpost metadata is updated to 2026-06-20. docs/design/work-item-sequencing-and-prioritization.mdL4-L8
  • Confirmed the doctrine guard requires the legacy marker text, rejects stale method/backlog/* links, and preserves the WAL/WSC roadmap issue-map sentinels. scripts/check-wal-wsc-doctrine.shL70-L95 scripts/check-wal-wsc-doctrine.shL156-L173

Testing

  • scripts/check-wal-wsc-doctrine.sh
  • scripts/tests/check_wal_wsc_doctrine_test.sh
  • pnpm exec prettier --check docs/WorkItems.md docs/BEARING.md docs/design/work-item-sequencing-and-prioritization.md
  • pnpm exec markdownlint-cli2 docs/WorkItems.md docs/BEARING.md docs/design/work-item-sequencing-and-prioritization.md
  • ⚠️ shellcheck scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh (warning due to shellcheck not being installed in this environment)
  • bash -n scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • scripts/check_spdx.sh docs/WorkItems.md docs/BEARING.md docs/design/work-item-sequencing-and-prioritization.md scripts/check-wal-wsc-doctrine.sh scripts/tests/check_wal_wsc_doctrine_test.sh
  • git diff --check
  • cargo check
  • git status --short

View task →

@flyingrobots flyingrobots modified the milestones: Echo 1.0 GP0 - Roadmap Substrate, Echo 1.0 Jun 20, 2026
@flyingrobots flyingrobots added the release:echo-1.0 Echo 1.0 release convergence scope label Jun 20, 2026
@flyingrobots flyingrobots changed the title Document WAL/WSC durability roadmap docs: define the Echo 1.0 release contract and move live planning to GitHub Jun 20, 2026
@flyingrobots

Copy link
Copy Markdown
Owner Author

GP0 pivot pushed in caa4c92e.

@codex please sanity-check the revised shape: this PR now treats the GitHub Project as the live roadmap and the repository as the place for stable release promises and doctrine.

Area Outcome
Release constitution Added docs/releases/echo-1.0-contract.md with four binary gates, definitions, non-goals, compatibility policy, evidence requirements, and pass rule.
Live roadmap removal Recast the WAL/WSC roadmap into durability doctrine and removed live issue tables, progress status, and child-slice inventories from repo docs.
GitHub-native tracking Reduced WorkItems/sequencing docs to Project, milestone, native dependency, parent/sub-issue, field, proof, and closure doctrine.
Executable guard Updated scripts/check-wal-wsc-doctrine.sh and its regression test to require the contract/Project/gate links and reject live roadmap state in docs.
Validation Local guard, fixture test, Prettier check, markdownlint, shellcheck, bash syntax, SPDX check, git diff --check, cargo check, pre-commit, and pre-push all passed.

Intentional follow-up, not folded into this repo commit:

  • Project views are not configured by gh; create/copy the six approved views in the GitHub web UI or from a prepared Project template.
  • Persistent Project automation should not use a repo GITHUB_TOKEN or personal token; model it as a GitHub App follow-up.
  • Organization issue type Epic was not created here because the current owner is the flyingrobots user account surface, not an organization-level repo policy change.
  • echo-convergence.lock is specified as a Gate D release artifact, not created in GP0 before the compatibility set exists.

@flyingrobots
flyingrobots merged commit 6ea04ae into main Jun 20, 2026
36 checks passed
@flyingrobots
flyingrobots deleted the cycle/521-wal-wsc-storage-relationship branch June 20, 2026 10:34

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: caa4c92e08

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +132 to +135
Gate D requires a clean-room reproducible build, exact cross-repository
compatibility set, upgrade and rollback tests, package and documentation
verification, all four gate issues closed by evidence-bearing PRs, and a
release candidate generated only from the pinned compatibility set.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Avoid making Gate D require itself to close

In the Gate D release-candidate path, this makes the contract self-blocking: Gate D cannot be the final release-integrity proof if its own pass criteria require all four gate issues, including Gate D (#588), to already be closed. The earlier dependency statement scopes D to Gates A/B/C, so this should require the prerequisite gates/evidence packets rather than “all four gate issues” being closed before D can pass.

Useful? React with 👍 / 👎.

"Close issues only when their executable exit criteria have passed"

reject_literal "Work boundary removes audit date" "$workitems" "Last audited:"
reject_literal "Work boundary removes source audit table" "$workitems" "| Open count/status |"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Match the actual open-count table header

When a future edit restores the pre-pivot WorkItems open-count table, this guard will not catch it because the removed header was | Source | Open count | Notes |, not | Open count/status |; I verified that appending that table to a fixture still lets check-wal-wsc-doctrine.sh pass. Since the new WorkItems boundary explicitly forbids restoring open-count tables, reject a literal/pattern that matches the actual header or Open count column.

Useful? React with 👍 / 👎.

@@ -0,0 +1,280 @@
#!/usr/bin/env bash

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Wire the doctrine guard into automated checks

This new guard currently is not invoked by any committed hook or CI path: repo-wide search only finds the script itself and its self-test, while verify-local.sh/.github/workflows/ci.yml do not call it. That means the release-contract and Project-link invariants can regress on the next docs edit even though the PR presents this as an executable guard, unless contributors remember to run it manually.

Useful? React with 👍 / 👎.

"Recovery bootstraps from WAL root or storage manifest material"

reject_literal "sequencing removes update date" "$sequencing" "Last updated:"
reject_literal "sequencing removes current chunk" "$sequencing" "## Current Chunk"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reject the removed First Chunk tracker too

The stale sequencing section that was removed was headed ## First Chunk and contained [5/10 slices] checkpoint bars, but this guard only rejects ## Current Chunk; I verified that appending the old First Chunk block to the sequencing doc still lets the checker pass. Since that block is exactly live roadmap state, the guard should reject the actual old heading or its progress-bar/checkpoint literals.

Useful? React with 👍 / 👎.

Comment thread docs/BEARING.md
Comment on lines +71 to +73
The live architecture hardening focus is selected in the GitHub Project and
issues. Repo docs may explain why a boundary exists, but they must not become
the current execution tracker.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Remove the live tracker still embedded in BEARING

This new statement says repo docs must not be the execution tracker, but the same BEARING file still contains a Roadmap Status table and a Causal WAL Forty-Five Slice Plan with “Track progress here” and checked slice inventories below it. Since BEARING is the required context-recovery entrypoint, leaving that live tracker in place still directs readers to repository status instead of the GitHub Project and contradicts the pivot this PR is trying to enforce.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release:echo-1.0 Echo 1.0 release convergence scope

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant