Skip to content

docs: record measured state of play, for humans and for machines - #148

Merged
hyperpolymath merged 2 commits into
mainfrom
docs/state-of-play-2026-07-29
Aug 3, 2026
Merged

hyperpolymath merged 2 commits into
mainfrom
docs/state-of-play-2026-07-29

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Documentation only — no behaviour change. Every figure was measured on 2026-07-29 against origin/main 7d964ee and absolute-zero 87902bb7. Nothing here is recalled or inferred.

New

docs/STATE-OF-PLAY-2026-07-29.adoc — human-readable snapshot: CI status, what is actually gated, aletheia's real shape, proof state, recent incidents, the open questions needing a human ruling, and the landmines to read before touching CI or history here.

Updated

.machine_readable/6a2/STATE.a2ml

Had drifted since its 2026-06-12 checkpoint. Corrections:

Was Now
test-result = "ALL PASS as of 2026-04-04", 26 aletheia unit tests 29 pass — and the 27 failing integration tests recorded explicitly, with the reason
blockers.root-justfile = "recipes are placeholders" fixed in #144
proof-debt cited 80 Coq Axiom/Admitted that is estate/vendored scope; absolute-zero itself is 0 Admitted, 23 Axiom

New sections: [ci-status], [gating-reality], [proof-state], [recent-work-2026-07], [incidents], [open-questions], [landmines].

README.md

Short measured status block, the two known gaps (#124/#125) framed as by design, not regression, a warning that aletheia/.github/workflows/ is inert, and links to both documents.

TEST-NEEDS.md

Unit count 26 → 29. The note on the 27 integration failures expanded to say why they must not be "fixed" by writing checks that emit the expected strings — that would invent a definition of RSR compliance and encode it as canonical, while one already exists (hypatia's rsr-conformance oracle).

The through-line

Three of these files previously asserted something false about the code. That is not cosmetic: a stale CLAUDE.md is what tells the next agent "don't split into modules" about a crate that has been 5 modules for months, and a PROOF-NEEDS.md that counts only Admitted misses 23 Axioms — which pass a "no sorry/Admitted" gate silently.

Verification

$ asciidoctor -o /dev/null docs/STATE-OF-PLAY-2026-07-29.adoc   # exit 0, no warnings
$ yq -p toml -o json '.' .machine_readable/6a2/STATE.a2ml       # exit 0, 14 sections

🤖 Generated with Claude Code

Comment thread docs/STATE-OF-PLAY-2026-07-29.adoc
@gitar-bot

gitar-bot Bot commented Aug 3, 2026 •

Copy link
Copy Markdown

Note

Automatic reviews are paused because your trial's included automatic processing has been used for this period. Upgrade now, or comment "Gitar review" to run a review anytime.
Learn more

Code Review ✅ Approved 1 resolved / 1 findings

Adds a measured state-of-play documentation snapshot and updates machine-readable state files to eliminate stale assertions. Consider reconciling the integration test count discrepancies noted in the findings.

Auto-approved and auto-merge armed: No blocking issues found.
Please see Auto-approve Docs for details on setting custom approval criteria. — merges when pipeline and required approvals pass.

✅ 1 resolved
✅ Quality: Integration-test counts don't reconcile: 32 tests vs 2+27=29

📄 docs/STATE-OF-PLAY-2026-07-29.adoc:107-116 📄 TEST-NEEDS.md:21-32 📄 README.md:42 📄 .machine_readable/6a2/STATE.a2ml:21 📄 .machine_readable/6a2/STATE.a2ml:104 📄 docs/STATE-OF-PLAY-2026-07-29.adoc:262
The docs describe tests/integration_tests.rs as '32 tests' (adoc line 114, TEST-NEEDS.md line 29) but the pass/fail breakdown reported everywhere is '2 pass, 27 fail' — only 29 tests. The 3-test gap is unexplained (e.g. ignored tests), so the '32 tests' figure and the '2 pass / 27 fail' figures contradict each other in the same document. Since the whole PR's stated value is that 'nothing here is recalled or inferred' and every figure was measured, reconcile the numbers: either state the total as 29, or note how many of the 32 are #[ignore]/not run so 2+27+N=32.

Options

Display: compact → Showing less information.

Comment with these commands to change the behavior for this request:

Compact
gitar display:verbose         

Important

Your trial ends in 7 days — upgrade now to keep code review, CI analysis, auto-apply, custom automations, and more.

Was this helpful? React with 👍 / 👎 | Gitar

gitar-bot[bot]

This comment was marked as resolved.

@gitar-bot
gitar-bot Bot enabled auto-merge (squash) August 3, 2026 12:40
gitar-bot[bot]
gitar-bot Bot previously approved these changes Aug 3, 2026

@gitar-bot gitar-bot 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.

Gitar has auto-approved this PR and enabled auto-merge (configure)

@gitar-bot gitar-bot Bot added the gitar-approved Added by Gitar label Aug 3, 2026
hyperpolymath and others added 2 commits August 3, 2026 13:40
Adds docs/STATE-OF-PLAY-2026-07-29.adoc and brings the machine-readable
.machine_readable/6a2/STATE.a2ml up to date. Both were measured on 2026-07-29
against origin/main 7d964ee and absolute-zero 87902bb7 — no figure here is
recalled or inferred.

STATE.a2ml had drifted since its 2026-06-12 checkpoint. Corrected:

  - testing-status said "ALL PASS as of 2026-04-04" and 26 aletheia unit tests.
    Now 29 pass, and the 27 failing integration tests are recorded explicitly
    as expected-by-design with the reason (they assert on stdout substrings, so
    they are a UI contract, not a specification).
  - blockers.root-justfile said the recipes are placeholders. Fixed in #144.
  - proof-debt cited 80 Coq Axiom/Admitted markers. That is estate/vendored
    scope; absolute-zero itself measures 0 Admitted and 23 Axiom.

New sections in STATE.a2ml: [ci-status], [gating-reality], [proof-state],
[recent-work-2026-07], [incidents], [open-questions], [landmines]. Verified to
parse as TOML (`yq -p toml`), all 14 sections.

The human document covers the same ground with the reasoning attached: what is
actually gated (and the fact that aletheia/.github/workflows/ is inert, which
let this crate stay uncompilable for over a month), the proof state, the four
open questions that need a human ruling, and the landmines.

README.md gains a short measured status block plus the warning about inert
nested workflows, and links both documents.

TEST-NEEDS.md: unit count 26 -> 29, and the note on the 27 integration failures
expanded to say why they must not be "fixed" by writing checks that emit the
expected strings — that would invent a definition of RSR compliance while one
already exists in the estate.

Verified: `asciidoctor -o /dev/null` renders with no warnings; `yq -p toml`
parses STATE.a2ml in full.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Rebased onto current main and brought the two documents back into agreement
with reality. All figures re-checked; none needed changing.

  - OSSF Scorecard is now PASS. It was dying at checkout on the stray gitlink;
    #145 merged and it has been green on main since. Recorded, with the reason
    it could not be proven on the PR: scorecard.yml triggers only on
    push-to-main / schedule / workflow_dispatch, never on pull_request.
  - #145 marked MERGED rather than open.

New landmine, found while re-baselining: **a merged PR can change nothing.**
Both #146 ("ci(codeql): cron weekly→monthly") and #147 ("Worktree maa ci
repair") are empty — `git diff` between their parents and merge commits is
completely blank. #146's stated change was already present; codeql.yml has read
`cron: '0 6 1 * *'` (monthly) since before it merged.

This is the sibling of the landmine already recorded above it. That one says a
merged PR may not contain the work you pushed; this one says a merged PR may not
contain any work at all. A PR title is not evidence the change happened —
check `git diff --stat <parent> <merge>`.

Verified: asciidoctor renders clean; `yq -p toml` parses STATE.a2ml in full.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@hyperpolymath
hyperpolymath force-pushed the docs/state-of-play-2026-07-29 branch from ecaea96 to 16a836a Compare August 3, 2026 12:41
@hyperpolymath
hyperpolymath disabled auto-merge August 3, 2026 13:15
@gitar-bot
gitar-bot Bot dismissed their stale review August 3, 2026 13:15

✅ All code review findings resolved.

Configure merge blocking

@hyperpolymath
hyperpolymath merged commit de054c2 into main Aug 3, 2026
25 checks passed
@hyperpolymath
hyperpolymath deleted the docs/state-of-play-2026-07-29 branch August 3, 2026 13:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gitar-approved Added by Gitar

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant