Repository navigation
D-STAUNEN-5: resident recursive plasticity, plan + P0/P1 - #1914
Merged
Merged
Conversation
First closed learning loop on the XLOG-on-cube foundation: a novel stimulus licenses one activation of a declared candidate edge under the contract of Atlas's update_mask, the delta stays in the cube as mask words, and two competing policies (parsimony, novelty x eligibility) are scored on held-out pairs and learned from later evidence. Also records the xlog-cube coverage order and that 140/230 measures admission, not checked answers. Board: INTEGRATION_PLANS, STATUS_BOARD (D-XLOG-NATIVE-8 shipped in #1913). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
Cube::closure computes edge+ of one binary relation from its resident lanes: row masks over local positions, delta' = (delta o edge) andnot full, full |= delta', until the delta is empty. The difference is mask_andnot in the cube; nothing is added to the cube and no tuple is built. Refuses maps wider than 64 and a fixpoint that does not empty within n+1 rounds. ClosureStats counts rounds and rows composed (equal to |edge+| in semi-naive evaluation); CubeStats gains relations_added. tests/staunen5.rs: a BFS oracle sharing no code with the cube; the fixed 12-pair cycle; 400 random cyclic and acyclic graphs up to position 63, bit for bit; the longest chain and ring; the P0 episode generator (G* in World only) with oracle-classified one-edge-closable and impossible stimuli. Plan: the reviewer's four corrections, the P1 acceptance gate, the paired P6 criterion. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
EXO-50 board references, read after the first draft: D-CE64-STAUNEN-0 measured that raw surprise is captured by noise (0.649 vs round-robin 0.964), and the co-research map parks novelty gating until it inherits that condition. P0's generator now carries observation noise (pairs G* does not reach, labelled only in World), including distractor traps; the plan adds raw vs habituated H2 and a round-robin arm, and pools outcomes as NARS revision over root-disjoint proofs via DerivationLedger, not Fisher-Z addition. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
AdaWorldAPI
marked this pull request as ready for review
November 1, 2026 11:43
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. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The plan for D-STAUNEN-5, and its first two phases, P0 and P1. P2–P7 stay gated.
Question: can a novel stimulus trigger a local structural adaptation that changes a recursively computed prediction, and can the system then learn when that adaptation was useful?
Plan
edgeover at most 64 ids; its closurereachis the prediction.reachmisses) licenses one activation, under the contract it shares with Atlas'supdate_mask(brian2-atlasdev9ec52f9): fixed mask shape, 0/1 entries, committed state.NotACandidate,InsideRound,Stale,NoClosingCandidateand novelty gating are the cube's own rules. P7 never demands them from Atlas.G*: H1 parsimony, H2 novelty × eligibility.Inherited kill condition (from the EXO-50 board references). D-CE64-STAUNEN-0 (#1395) measured that raw surprise is captured by noise: 0.649 resolved against round-robin's 0.964. So:
nars::support::DerivationLedger), not Fisher-Z addition.Open with the operator: is a source root the observer or one report?
P0: fixtures and oracle
G*lives only inWorld; theEpisodethat later phases hand to the policies has no field for it.NoClosingCandidate.G*does not reach, presented exactly like real stimuli and labelled only inWorld. They include distractor traps (closable by one distractor alone) in at least 35 of 39 seeded streams.P1: resident closure,
Cube::closuredelta' = (delta ∘ edge) andnot full, thenfull |= delta'.mask_andnotin the cube. Nothing is added to the cube (CubeStats::relations_addedstays 0) and no tuple is built.ClosureWidth) and a fixpoint that does not empty its delta within n+1 rounds (FixpointBound).Tests (
tests/staunen5.rs, 9):{(0,1),(1,2),(2,0),(2,3)}has exactly 12 pairs:(0,0),(1,1),(2,2)in,(3,3)out.|edge⁺|: each closure pair enters the delta exactly once.Guards broken on purpose, each turning the suite red:
andnotFixpointBoundon cyclesfullThird comparator: xlog-cube's closure needed a nonempty
r(V,V)fixture first. That is AdaWorldAPI/xlog#5. Comparing all three closures on the same graphs, which completes P1's acceptance, follows once this PR and xlog#5 are on theirmainbranches.Board:
INTEGRATION_PLANS.mdandSTATUS_BOARD.md.🤖 Generated with Claude Code
https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF