Repository navigation
Lane 1 - Homonym Renames - #7156
Merged
Merged
Conversation
gunbc.workflow.types.Artifact -> RunArtifact (zero importers, def-only). live_deploy DeploymentStep variant Artifact -> ArtifactStep + consumers (spec.dag, emit.dag, test/claim/live_deploy/emit_test.dag) and the ownership.dag projection note that names the variant. Leaves v2.std.artifact.Artifact as the bare Artifact. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This was referenced Jul 24, 2026
This was referenced Jul 24, 2026
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.
Lane 1 of the §13 namespace flip residue: rename homonym definitions so each contested bare name has exactly one definition, leaving the load-bearing/most-imported definition as the surviving bare name.
Renames
rendertest.claim.cargo_target_path.render→render_file_pathstd.layout.renderFramestd.render.Frame→RenderFramestd.materialization_ladder.Framederivabletest.claim.roadmap_status.derivable→derivable_itemgunbc.roadmap_authority.derivableArtifactgunbc.workflow.types.Artifact→RunArtifact;live_deployDeploymentStepvariantArtifact→ArtifactStepv2.std.artifact.ArtifactConsumer scoping (the load-bearing part)
dag/std/render.dagis load-bearing, so everyFramemention in the tree was classified per-file before editing. The brief flagged ~11 candidate consumers; 9 of them turned out to bestd.materialization_ladder.Frame, notstd.render.Frame, and were correctly left untouched (ci_materialization,execution_envelope,cli_run_repo_grant,artifact_store_scratch_grant,duplicate_computation,build_transport_admission,ci_deploy_access, and the three grant witness tests — each carries an explicitimport std.materialization_ladder { Frame }).The genuine
std.render.Frameconsumer set is 7 files: the definer,extdeps/render/{surface,terminal},gunbc/ci_render, and 3 render witness tests.gunbc/ci_render.dagwas not on the brief's list and was picked up by the sweep.gunbc.workflow.types.Artifacthas zero importers (the whole module does), so that rename is definition-only.ownership.dag's projection note, which names theArtifact/Dependencyvariants in prose, was updated with the variant.Verification (by execution)
gunbc compile --target dag --dependency-pool-index primary-precedence— green.PASS, exit 0):cargo_target_path,roadmap_status,roadmap_gate,terminal_capability,render_surface,ci_render_histogram_width,live_deploy_emit_holds(the golden drift gate — no drift),effect_grant(7/7, confirming the untouched ladder-Frameconsumers still resolve).type RenderFrame→RenderFrameBROKEN) while leaving consumers reds the suite — exit 1 with typed, located diagnostics atsurface.dag:3:38andterminal.dag:5:21. So the green above is discriminating, not vacuous.Note for the lane owner
Artifactis not globally bare-unique after this change:src/v1/artifact.dag:14also definestype Artifact(a build-artifact concept —ServiceBinary/Library/Frontend), distinct fromv2.std.artifact.Artifact(a compiler source-artifact). This is the known v1-seed fork class that resolves by subtree and is out of this lane's scope — flagging rather than churning the seed, which shrinks toward zero per DESIGN §7.