Skip to content

Home Never in std.types; move kind into v2.std - #13836

Merged
gunbai-bot[bot] merged 11 commits into
mainfrom
session/royal-raven-317
Oct 13, 2026
Merged

gunbai-bot[bot] merged 11 commits into
mainfrom
session/royal-raven-317

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Home Never beside Unit in std.types; delete it from v2.std.cardinality; retarget every importer including v2.extdeps.languages.rust (RustNever).
  • Move std.kind to v2.std.kind (constructs v2.std.node); delete dag/std/kind.dag. That is the whole compile_cli CrossTreeDenied set that originated in std.kind.
  • Acquisition door: acquisition_lookup_refusal_text_formats_a_dag_to_v2_denial is formatter-only. a_forbidden_dag_to_v2_acquisition_refuses_without_reading submits a dag→v2 import through acquisition_step and asserts AcquisitionLookupRefused / ReferenceCrossTreeDenied with empty reads. a_permitted_v2_to_v2_acquisition_advances is the same step with a known-memo v2→v2 import so a refuse-everything step fails.
  • Not in this PR: skip / fold_list / length / list_map (algebra child adhoc-798d5122-dcd); gunbc witness/ratchet/census (clever-crane-830).

Test plan

  • Dag import of a v2-only module still refuses on the acquisition door (executed claim-run below).
  • No import v2.std.cardinality { Never }; no module std.kind; no dag/std/kind.dag.
  • Zero CrossTreeDenied originating in std.kind on v2.compiler.compile and v2.cli.compile_cli.
  • std.judgment_contract still imports v2.std.algebra { skip } until the algebra child homes skip.

Executed receipt (tree 9054db1)

Host cgroup memory.max=25769803776 (24 GiB, already bound; /sys/fs/cgroup is read-only so no nested leaf). Nested mkdir refused: mkdir: cannot create directory ‘/sys/fs/cgroup/royal-raven-317-exec’: Read-only file system.

Build:

RUSTC_WRAPPER= CARGO_TARGET_DIR=$PWD/target PATH="$(dirname "$(rustup which cargo)"):$PATH" cargo build --release -p v1-compiler --bin gunbc

Outcome: Finished release profile [optimized] target(s) in 3m 59s. Artifact target/release/gunbc 38301952 bytes, executable, timestamp 2026-10-13 05:59.

Green (unmutated acquisition_verdict_step), every test fn in v2.test.claim.module_acquisition:

./target/release/gunbc run --source-root dag --source-root src/v2 --entry src/v2/test/claim/module_acquisition.dag --claim-run

Outcome: exit 0. Includes:
PASS acquisition_lookup_refusal_text_formats_a_dag_to_v2_denial
PASS a_forbidden_dag_to_v2_acquisition_refuses_without_reading
PASS a_permitted_v2_to_v2_acquisition_advances

Red (scratch mutation, not committed): CandidateRefusedBy arm of v2.compiler.module_acquisition acquisition_verdict_step rewritten to AcquisitionAdvanced { state: looked.state }. Then:

./target/release/gunbc run --source-root dag --source-root src/v2 --entry src/v2/test/claim/module_acquisition.dag --claim-run --function a_forbidden_dag_to_v2_acquisition_refuses_without_reading --function a_permitted_v2_to_v2_acquisition_advances --function acquisition_lookup_refusal_text_formats_a_dag_to_v2_denial

Outcome: exit 1.
PASS a_permitted_v2_to_v2_acquisition_advances
PASS acquisition_lookup_refusal_text_formats_a_dag_to_v2_denial
FAIL a_forbidden_dag_to_v2_acquisition_refuses_without_reading

Mutation reverted with git checkout -- src/v2/compiler/module_acquisition.dag. Head remains 9054db138ff.

gunbc-ci-auto-heal and others added 2 commits October 13, 2026 02:24
…dinality.

The native acquisition door denies DagTree→V2Tree; Never is an uninhabited std fact, not a v2-only cardinality one. Dag importers now take it from std.types; v2.std.cardinality no longer declares it. The acquisition refusal text for a remaining dag→v2 import stays enrolled.

Co-authored-by: Cursor <cursoragent@cursor.com>
std.kind constructed v2.std.node; the dag tree cannot hold that fact. Delete the dag module; retarget infer and the four kind claims.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot gunbai-bot Bot changed the title Home Never in std.types; stop dag→v2 cardinality imports Home Never in std.types; move kind into v2.std Oct 13, 2026
gunbc-ci-auto-heal and others added 2 commits October 13, 2026 02:31
compile's closure reached v2.compiler.native_test_vocabulary through dag gunbc.* modules, which the cross-tree rule refuses. Keep one name per module; retarget emit use-paths to the v2 rust crate names.

Co-authored-by: Cursor <cursoragent@cursor.com>
compile walked that census through dag/gunbc, which cannot import v2.compiler.*. Delete the dag copy; keep the host reading and seed-growth modules in gunbc.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot gunbai-bot Bot changed the title Home Never in std.types; move kind into v2.std Cross-tree: Never, kind, native-route, type census Oct 13, 2026
gunbc-ci-auto-heal and others added 3 commits October 13, 2026 02:33
dag std.algebra already owns FreeMonoid and did not declare the operational skip std.judgment_contract used, so that import was a tree fork. One skip, retarget every importer; no v2 nickname.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot gunbai-bot Bot changed the title Cross-tree: Never, kind, native-route, type census Home Never in std.types; kind in v2.std; skip in std.algebra Oct 13, 2026
gunbc-ci-auto-heal and others added 2 commits October 13, 2026 02:36
The cardinality home was deleted; rust.dag still imported Never from there (review 79147).

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot gunbai-bot Bot changed the title Home Never in std.types; kind in v2.std; skip in std.algebra Home Never in std.types; move kind into v2.std Oct 13, 2026
@gunbai-bot

gunbai-bot Bot commented Oct 13, 2026

Copy link
Copy Markdown
Contributor Author

review 79147: v2.extdeps.languages.rust still imported Never from v2.std.cardinality after the home move. Fixed in 6d50fb8 — import std.types { List, Never }; the cardinality import is gone; type RustNever = Never still binds. No remaining import v2.std.cardinality { Never } in the tree.

@gunbai-bot gunbai-bot Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Rehome vs the Manager-2 cut (royal-bee-157)

The cut: rehome route/ratchet/debt/progress-guard (and roster) into v2.workflow.*, census fold into a v2 home; then invert so v2.compiler.compile imports none of those. Layout path follows the module name. gunbc.instruments.type_declaration_use_census_reading stays dag.

What the mergeable diff is

HEAD of this PR does not contain that rehome. de21d1ca (native-route/frontier → v2.workflow) and 68327eba (census fold → v2.compiler) were both reverted in the same branch (7bfb16ec, a222f7d4). The open file list is Never in std.types plus std.kind → v2.std.kind. The PR body is accurate: “Not in this PR: gunbc witness/ratchet/census.”

compile.dag on HEAD still has:

import gunbc.witness.v2_native_route { … }
import gunbc.native_frontier_ratchet { native_frontier_verdict }
import gunbc.source_layout_namespaces { layout_namespaces }
import gunbc.instruments.type_declaration_use_census { … }

Those are still Dag→V2 when natively acquired.

The reverted rehome commits, judged against the cut

de21d1ca + 68327eba were the right rename+repoint: one name per module, files under src/v2/workflow/ and src/v2/compiler/type_declaration_use_census.dag, emit use-paths retargeted, reading/seed-growth left in gunbc, roster moved with debt (so a dag roster would not import v2.workflow.native_frontier_debt).

They did not invert. After those commits compile.dag still imported v2.workflow.v2_native_route, v2.workflow.native_frontier_ratchet, and v2.compiler.type_declaration_use_census — same-tree, so the Dag→V2 edges from those modules die, but the compiler entry still reaches a witness, a ratchet and a census. That leftover is the inversion slice, not a defect of the rehome itself.

Restoring the rehome on this PR (or a follow-up that is only the rehome) should revive de21d1ca+68327eba, not a parallel rename. Inversion (compile.dag imports none of those four) waits until that rehome is actually on main.

Regenerated by the stage0 mirror convergence round and the seed-build artifact writer:
- src/v1/stage0/src/std_types.rs

Heal-Candidate-Run: 38337765156
@github-actions

Copy link
Copy Markdown

HealPublished repository=gunb-ai/gunbc branch=session/royal-raven-317 parent=f8ca1e234974142d54935ee9892e7b56f804ea02 published_head=140b43973515aa007096cc5b9bf9b4e637abbf47 tree=c594a30b58865704c665f08c23a8f631c52a16cb paths=src/v1/stage0/src/std_types.rs

…rmatter.

The old claim constructed AcquisitionLookupRefused and only checked acquisition_refusal_text, so flipping CandidateRefusedBy to AcquisitionAdvanced still passed. Pair a real forbidden step (no read) with a permitted known-memo advance.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot
gunbai-bot Bot merged commit e4cc66c into main Oct 13, 2026
3 checks passed
@gunbai-bot
gunbai-bot Bot deleted the session/royal-raven-317 branch October 13, 2026 08:50
gunbai-bot Bot pushed a commit that referenced this pull request Oct 13, 2026
Co-Authored-By: Claude Sonnet 5.5 <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.

0 participants