Skip to content

Invert hand-maintained docs - generate ROADMAP from .dag authority plus drift-gate, starting with the PR-to-checkbox status slice - #5489

Closed
gunbai-bot[bot] wants to merge 2 commits into
mainfrom
session/bold-bee-822
Closed

gunbai-bot[bot] wants to merge 2 commits into
mainfrom
session/bold-bee-822

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

Auto-opened by session-dashboard for session bold-bee-822.
Pushing to session/bold-bee-822 advances this PR.

Worker attestation

Before flipping this PR to ready for review, confirm each item:

  • Title describes the change (not the session id or branch).
  • PR body summarises what and why (replace the TODO below).
  • Tests run: name the command (e.g. npm test, cargo test) and the result.
  • If this closes a work item, the body contains a Closes #N directive.
  • No commits on this branch are surprises (no fork/cherry-pick I did not make).
  • No secrets / credentials / large binaries staged.

Summary

TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.

Test plan

  • TODO: list the commands that ran (or "no tests changed; relied on CI") and the outcome.

briansrls and others added 2 commits June 21, 2026 21:44
…ting witness

First slice of inverting the hand-maintained ROADMAP (docs/plans/invert-hand-maintained.md
§6 step 4). The checkbox is a hand-toggled SECOND representation of whether the PR a line
cites is merged — it drifts (the realization-vocab guard sat `[ ]` while done, #5445/#5453).
Invert it: merge state is the AUTHORITY, the checkbox is DERIVED.

- gunbc.roadmap_status: merged-ness grounded in `PullRequest.merged_at` (§3 single authority,
  not re-coined); `derive_checkbox` (Done iff every cited PR merged) + `status_drifted`. The
  pure derivation the host-fed gate edge and the eventual emitter both consume. Fidelity
  boundary (§5): only PR-citing lines are in scope.
- roadmap_status_test: 10 witnesses, green by EXECUTION; discriminating — tautologizing
  status_drifted turns the witness RED. Auto-enrolled (test fn in *_test.dag).

Host-fed wet gate (parse ROADMAP + live PR fetch) is the next slice, per plan §7.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review June 21, 2026 21:46
briansrls added a commit that referenced this pull request Jun 21, 2026
…r + witness

Re-homed the consolidated, witness-verified slice-1 (orig bold-bee-822 #5489) onto the
surviving session branch. Checkbox is DERIVED from PR merge-state (extdeps.github.pulls
merged_at, the §3 authority); status_drifted = committed box ≠ derived. Discriminating
witness green by execution. Host-fed gate edge + emit are follow-on slices.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@gunbai-bot

gunbai-bot Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor Author

Re-homed onto the surviving session branch session/quiet-hawk-47 (#5491) per operator — bold-bee-822 is archived, so an orphaned PR won't get auto-reviews dispatched. Identical, witness-verified content (this PR's roadmap_status.dag + test). Not a competing variant; consolidating onto a live session so it can be shepherded to merge.

@gunbai-bot gunbai-bot Bot closed this Jun 21, 2026
briansrls added a commit that referenced this pull request Jun 21, 2026
…us drift-gate, starting with the PR-to-checkbox status slice (#5491)

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status: discriminating witness for PR→checkbox status projection

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status slice-1: PR→checkbox status derivation + drift detector + witness

Re-homed the consolidated, witness-verified slice-1 (orig bold-bee-822 #5489) onto the
surviving session branch. Checkbox is DERIVED from PR merge-state (extdeps.github.pulls
merged_at, the §3 authority); status_drifted = committed box ≠ derived. Discriminating
witness green by execution. Host-fed gate edge + emit are follow-on slices.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status soundness: key drift on completes-iff binding, not mention

A blanket 'cited-PR-merged + box [ ] ⇒ drift' rule false-positives on partial-evidence
lines (ROADMAP §0 rust-gate cites merged #5456, correctly [ ]) — a fail-closed-but-wrong
gate (§5). Model now splits CompletesIff (derivable + gated) from HandChecked (honest
un-derivable residue, never gated). Added the decisive non-tautology witness: a HandChecked
line citing a merged PR while [ ] evaluates GREEN (RED under the blanket rule). Tightened the
ROADMAP sub-line + recorded the boundary in plan §5.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status: drop hand-rolled checkbox_eq for structural ==

Addresses the non-blocking review note (claude-opus-4-7): CheckboxState is a fieldless sum
with working structural ==/!= (as code_change_workflow.dag already uses), so the hand-rolled
equality was needless §2 redundancy. Witness still green by execution.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* plan §6: record CompletesIff as the seed/first-row of slice-2's work-DAG authority model

Per parent (warm-lark-306): the slice-1 completes-iff binding IS the first row of the work-DAG
authority model; slice-2 (emit(work_model, Markdown)) widens it rather than re-coining a parallel
completion edge (§3).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Brian Searls <briansrls@gunb.ai>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
briansrls added a commit that referenced this pull request Jun 21, 2026
…P line (#5498)

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status: discriminating witness for PR→checkbox status projection

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status slice-1: PR→checkbox status derivation + drift detector + witness

Re-homed the consolidated, witness-verified slice-1 (orig bold-bee-822 #5489) onto the
surviving session branch. Checkbox is DERIVED from PR merge-state (extdeps.github.pulls
merged_at, the §3 authority); status_drifted = committed box ≠ derived. Discriminating
witness green by execution. Host-fed gate edge + emit are follow-on slices.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status soundness: key drift on completes-iff binding, not mention

A blanket 'cited-PR-merged + box [ ] ⇒ drift' rule false-positives on partial-evidence
lines (ROADMAP §0 rust-gate cites merged #5456, correctly [ ]) — a fail-closed-but-wrong
gate (§5). Model now splits CompletesIff (derivable + gated) from HandChecked (honest
un-derivable residue, never gated). Added the decisive non-tautology witness: a HandChecked
line citing a merged PR while [ ] evaluates GREEN (RED under the blanket rule). Tightened the
ROADMAP sub-line + recorded the boundary in plan §5.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status: drop hand-rolled checkbox_eq for structural ==

Addresses the non-blocking review note (claude-opus-4-7): CheckboxState is a fieldless sum
with working structural ==/!= (as code_change_workflow.dag already uses), so the hand-rolled
equality was needless §2 redundancy. Witness still green by execution.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* plan §6: record CompletesIff as the seed/first-row of slice-2's work-DAG authority model

Per parent (warm-lark-306): the slice-1 completes-iff binding IS the first row of the work-DAG
authority model; slice-2 (emit(work_model, Markdown)) widens it rather than re-coining a parallel
completion edge (§3).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_model (slice-2 step 1): work-DAG authority model for a ROADMAP line

A roadmap line = RoadmapNode { node: ProcessNodeId, line: RoadmapStatusEntry, carrier },
composing existing authorities (no re-coin, §2/§3): identity+deps from ctrl.process_algebra
decomposition (RoadmapParent = TopLevel|UnderParent), status from slice-1 RoadmapStatusEntry,
title+plan-doc carrier as host-fed presentation. Dangling-link wall via carrier_resolves.
Discriminating witness green by execution; perturbation-proven on the carrier wall + parent lookup.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Brian Searls <briansrls@gunb.ai>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
briansrls added a commit that referenced this pull request Jun 22, 2026
…elete redundant box enum (#5508)

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status: discriminating witness for PR→checkbox status projection

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status slice-1: PR→checkbox status derivation + drift detector + witness

Re-homed the consolidated, witness-verified slice-1 (orig bold-bee-822 #5489) onto the
surviving session branch. Checkbox is DERIVED from PR merge-state (extdeps.github.pulls
merged_at, the §3 authority); status_drifted = committed box ≠ derived. Discriminating
witness green by execution. Host-fed gate edge + emit are follow-on slices.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status soundness: key drift on completes-iff binding, not mention

A blanket 'cited-PR-merged + box [ ] ⇒ drift' rule false-positives on partial-evidence
lines (ROADMAP §0 rust-gate cites merged #5456, correctly [ ]) — a fail-closed-but-wrong
gate (§5). Model now splits CompletesIff (derivable + gated) from HandChecked (honest
un-derivable residue, never gated). Added the decisive non-tautology witness: a HandChecked
line citing a merged PR while [ ] evaluates GREEN (RED under the blanket rule). Tightened the
ROADMAP sub-line + recorded the boundary in plan §5.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status: drop hand-rolled checkbox_eq for structural ==

Addresses the non-blocking review note (claude-opus-4-7): CheckboxState is a fieldless sum
with working structural ==/!= (as code_change_workflow.dag already uses), so the hand-rolled
equality was needless §2 redundancy. Witness still green by execution.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* plan §6: record CompletesIff as the seed/first-row of slice-2's work-DAG authority model

Per parent (warm-lark-306): the slice-1 completes-iff binding IS the first row of the work-DAG
authority model; slice-2 (emit(work_model, Markdown)) widens it rather than re-coining a parallel
completion edge (§3).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_model (slice-2 step 1): work-DAG authority model for a ROADMAP line

A roadmap line = RoadmapNode { node: ProcessNodeId, line: RoadmapStatusEntry, carrier },
composing existing authorities (no re-coin, §2/§3): identity+deps from ctrl.process_algebra
decomposition (RoadmapParent = TopLevel|UnderParent), status from slice-1 RoadmapStatusEntry,
title+plan-doc carrier as host-fed presentation. Dangling-link wall via carrier_resolves.
Discriminating witness green by execution; perturbation-proven on the carrier wall + parent lookup.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

---------

Co-authored-by: Brian Searls <briansrls@gunb.ai>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
briansrls added a commit that referenced this pull request Jun 22, 2026
…ess (#5520)

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status: discriminating witness for PR→checkbox status projection

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status slice-1: PR→checkbox status derivation + drift detector + witness

Re-homed the consolidated, witness-verified slice-1 (orig bold-bee-822 #5489) onto the
surviving session branch. Checkbox is DERIVED from PR merge-state (extdeps.github.pulls
merged_at, the §3 authority); status_drifted = committed box ≠ derived. Discriminating
witness green by execution. Host-fed gate edge + emit are follow-on slices.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_status soundness: key drift on completes-iff binding, not mention

A blanket 'cited-PR-merged + box [ ] ⇒ drift' rule false-positives on partial-evidence
lines (ROADMAP §0 rust-gate cites merged #5456, correctly [ ]) — a fail-closed-but-wrong
gate (§5). Model now splits CompletesIff (derivable + gated) from HandChecked (honest
un-derivable residue, never gated). Added the decisive non-tautology witness: a HandChecked
line citing a merged PR while [ ] evaluates GREEN (RED under the blanket rule). Tightened the
ROADMAP sub-line + recorded the boundary in plan §5.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* roadmap_status: drop hand-rolled checkbox_eq for structural ==

Addresses the non-blocking review note (claude-opus-4-7): CheckboxState is a fieldless sum
with working structural ==/!= (as code_change_workflow.dag already uses), so the hand-rolled
equality was needless §2 redundancy. Witness still green by execution.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* plan §6: record CompletesIff as the seed/first-row of slice-2's work-DAG authority model

Per parent (warm-lark-306): the slice-1 completes-iff binding IS the first row of the work-DAG
authority model; slice-2 (emit(work_model, Markdown)) widens it rather than re-coining a parallel
completion edge (§3).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* roadmap_model (slice-2 step 1): work-DAG authority model for a ROADMAP line

A roadmap line = RoadmapNode { node: ProcessNodeId, line: RoadmapStatusEntry, carrier },
composing existing authorities (no re-coin, §2/§3): identity+deps from ctrl.process_algebra
decomposition (RoadmapParent = TopLevel|UnderParent), status from slice-1 RoadmapStatusEntry,
title+plan-doc carrier as host-fed presentation. Dangling-link wall via carrier_resolves.
Discriminating witness green by execution; perturbation-proven on the carrier wall + parent lookup.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* WIP: Invert hand-maintained docs - generate ROADMAP from .dag authority plus

* ROADMAP slice-2 step-3a: whole-document projection + pure golden witness

project_roadmap_to_markdown(RoadmapDocument) -> MarkdownDocument widens the per-section
projection (step-2) to the whole ROADMAP: preamble + sections, each delegating to the
existing project_roadmap_section (no re-coin). RoadmapSection minted (sections are a
separate presentation axis, not a single work-node+subtree); RoadmapDocument earns its keep
via the preamble. Pure projection witness is byte-exact golden (the ci.yml expected_ci_yml
shape, markdown medium) + drift receipt (box derived from the merged set, not baked).

The effectful RoadmapGate + full real-ROADMAP authority (with prose fenced as opaque
authored Strings) land as the next slice.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Brian Searls <briansrls@gunb.ai>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant