Repository navigation
Post-merge recovery for #1601–#1617 - #1618
Conversation
…didate eligibility ACT-R is Adaptive Control of Thought, Rational; the old name read as actor/ractor. Package lance-graph-act-r, crate lance_graph_act_r, edition 2024 (standalone, zero dependencies, so no workspace-convention conflict). Correctness (#1615 review): Candidate carried no evaluation witness, so arbitrate() stamped any snapshot onto a decision whose eligibility was computed against another state, and witness_matches() then accepted it. Candidate now carries evaluated_at; arbitrate() refuses the whole batch with Refusal::StaleCandidate when any candidate (eligible or not) was evaluated at another snapshot. Tests: stale eligibility, fresh twin, mixed generations, recycled thought address, invalid scores, tie-break, stale decision. Registers the crate in the root exclude list and adds a CI job (.github/workflows/act-r.yml) so its tests run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
OutgoingHop's two MaskOp::Gather ops read frontier[sources[i]] and visible[targets[i]], and its terminal scatters by targets[i]: a read at a position taken from another lane's values, the shape the 2026-10-16 ruling marks as not to be built (D-HOLO H14c/H14d). Green CI does not override that. graph_hop now compiles only under the off-by-default `quarantined-gather-hop` feature, with a banner in its module doc. A compile_fail doctest pins that the default build cannot reach OutgoingHop; a CI step still runs the quarantined tests under the feature so the code does not rot. The other Gather consumers (quack Semijoin, dir-sim) predate the ruling and are unchanged: deciding their scope is the open GATHER-DECISION, not this commit. The petgraph lance-fold-hop experiment pins rev 66636da and is unaffected until it bumps; a bump must enable the feature. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
#1612 Souffle RAM plan: D-SRAM-4 marked OPEN/BLOCKED; its target, the d' driver of D-RA-4, is a banned gather shape and no lawful recursion driver exists yet. D-SRAM-2's gate split: disabling an optimizer rewrite must keep the answer and only remove the plan shape; negative controls disable a semantic guard instead. #1613 JC R API plan: jc::jirak exposes only prove(), so it is listed as a GAP, not a calibration provider. Both row limits stated: per-group exactness, and the total-input refusal (n_rows > 2^32) the grouped moment terminals apply before running. #1605 causal pickaxe plan: the Lance 7 / LanceDB 0.30 prerequisite was stale; the workspace is on lance 13.* / lancedb 0.40.*. Reuses H14c-5's row-identity measurement instead of repeating it. #1604 candidates RFC: adds a witnessed Rejected outcome; fixture C-09 asserts the derived result and admits DRed. #1603 language LEGO RFC: the relative pronoun agrees in gender and number only; its case comes from inside the relative clause. #1607/#1608 qualia verifiers: explicit checks instead of assert (they ran as no-ops under python -O); the four archival fields are checked against a pinned digest and the sidecar against the archive values. Negative controls in test_verify_qualia.py; CI job qualia-verify.yml runs both under -O. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
#1617 review (both findings verified): RelationTile was keyed by focus frame only, so it survived a map append, delete, compaction or reseal and could return obsolete adjacency; MapPalette had no generation of its own although the execution context requires MapPaletteId+Generation. RelationTile is now keyed by global MapId + map generation (or seal digest) + FocusBinding generation + access scope; MapPalette carries a palette generation that a slot reassignment bumps. Adds a falsifier table (map regeneration, palette-slot reassignment, focus-slot reuse, thought incarnation reuse, stale tile access, cross-tenant change). Architecture only; nothing implemented, CE64 untouched, RelAlg owns no tables. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
The 17 PRs merged with no board rows. Prepends arc entries for each, STATUS_BOARD rows (ACT-R crate, graph_hop quarantine, D-RMAP, D-SRAM with D-SRAM-4 BLOCKED, D-JCR, D-JCSBI, CPG, VSC), plan index entries for the seven plans, ISS-GATHER-HOP-1616, a LATEST_STATE section, and an entry with the review-thread reconciliation table. Entries index regenerated; the supersession index is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Warning Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption. 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. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b2c5453cd8
ℹ️ 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".
|
Add Carrot credits or activate Agent usage billing to use Autofix |
PR_ARC_INVENTORY entries for #1618 (post-merge recovery for #1601-#1617, merged dbe0696) and #1619 (D-RMAP binding palette generation and the §7 versioning crosswalk, merged 8e004a2), and a LATEST_STATE section for main after #1619. Contract inventory delta: none. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
Two Codex findings on #1621, both checked against the plan text: - #1619: map generation is the sealed RelationshipMap/RelationFacts DurableRef only; ThoughtCommitId applies to palette generation alone (D-RMAP-1A §7.3). - #1618: at dbe0696 the thought-palette binding still keyed only MapPaletteId; #1618 added the map generation to the tile key and a palette generation to MapPalette. The binding change is #1619's. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VyWZYKycy6MoYDxHRVnV5K
#1601-#1617 carry no Claude Code footer in their PR bodies. #1618 gave them arc rows and one shared recovery entry, but most of their docs and data named no plan or board file, and no plan named them. - 19 artifacts (13 .arxiv notes, 2 language-LEGO docs, the 34-recipes doc, 2 qualia readmes, the act-r README) gain a "Plan and board" line under their title, pointing at an existing owning plan. - 11 existing plans gain a "Connected sources from #1601-#1617" section listing what they own (3 docs that already linked their plan are listed plan-side only). - graph_hop.rs names .claude/board/ISSUES.md instead of a bare ISSUES.md. - Board: entry 2026-10-20-chatgpt-prs-1601-1617-plan-links.md, a STATUS_BOARD section, an INTEGRATION_PLANS entry, regenerated index. No content, plan or D-id is invented. Qualia verifiers still pass (the pinned digest covers the JSON data, not the readmes). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VncKoyG6JkpsoqhqTGTv3f
PRs #1601–#1617 were merged with 17 review threads still unresolved and no board coverage. This PR fixes what was merged, branching from
main(47697c77). The original PRs stay closed.Commits
8c191498act-r. Renameslance-graph-actrtolance-graph-act-rand the library tolance_graph_act_r, on edition 2024. The crate is standalone and excluded from the workspace, and builds in its own CI job,act-r.yml.Candidategains anevaluated_atfield.arbitratenow refuses the whole batch withRefusal::StaleCandidateif any candidate was evaluated against a different snapshot. 10 tests pass. With the guard disabled, 3 of them fail.6791e4acmask-risc. feat(mask-risc): expose scoped outgoing graph-hop fold #1616'sOutgoingHopuses twoMaskOp::Gatherreads plus a scatter, so it reads positions taken from another lane's values. The 2026-10-16 ruling bans that shape. The hop now compiles only with thequarantined-gather-hopfeature, which is off by default. Acompile_faildoctest proves the hop is unreachable in a default build, and with the gate disabled that doctest fails. The six original tests run in CI with the feature on. The hop is neither deleted nor relabelled as a BIND. Tracked asISS-GATHER-HOP-1616, until GATHER-DECISION.f95c72fedocs and qualia.jirakis recorded as a gap: it is not a calibration API. Both row limits are stated.Rejectedcandidate outcome is added. Fixture C-09 now uses DRed maintenance.assert. The four musical fields are pinned to a SHA-256. Negative controls run underpython -O, and a CI job is added (qualia-verify.yml).429fcba6d-rmap. The palette and the map now carry generations. §6a adds a table of falsifiers. Status stays PROPOSED.b2c5453cboard.ISS-GATHER-HOP-1616.Review-thread reconciliation
Verification
-D warningsclean-O; 7 negative controls OKentries_index.py --checkOpen
Snapshotis still a local type; binding it to the canonical contract types is not done yet.Generated by Claude Code