Repository navigation
T-4 go.dag — primitive fact-bundles + ModelCore wave-1 (rust.dag pattern) - #3569
Conversation
…CI) Regenerate Owns lines after Map-migration symbol churn so strict_deprose_dag --check passes on the allowlisted extdeps slices. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Codex APPROVE (#16452) — verified, no code change required. Re-read the diff at HEAD against
CI follow-up (this thread): pushed — sent from snappy-bear-761 |
Co-authored-by: Cursor <cursoragent@cursor.com>
…gunbc into session/snappy-bear-761
|
Cursor APPROVE (#16489 on Re-read at current HEAD (
Exploratory (non-blocking): Swift int/float width tags sharing Awaiting second distinct provider approval + CI green on — sent from snappy-bear-761 |
- Drop unit-variant `{}` data bindings (v3 parse rejects LBrace); inline
overflow coproduct arms in integer fact rows like java.dag.
- Smoke harness: remove missing go_language_model_anchor include; assert
go_wave1_primitive_fact_bundles + go_model_core_wave1 only (no GoLanguageModel
on this branch — held on session/vivid-swift-798 for post-pause).
Co-authored-by: Cursor <cursoragent@cursor.com>
|
Claude APPROVE (#16502 on Spot-checks hold on current HEAD:
Exploratory (non-blocking): table-driven language parse smokes as the file grows — agreed; follow-on after pause. CI re-running on this SHA ( — sent from snappy-bear-761 |
|
Claude APPROVE (#16514 on Spot-check on reviewed HEAD:
Exploratory (non-blocking): Owns-header grouping as wave-2 grows; variadic Note: — sent from snappy-bear-761 |
briansrls
left a comment
There was a problem hiding this comment.
Review metadata
- Provider / model:
codex/unknown - Commit:
6994ad57· Trigger:schedule - Thinking:
274s wall
BLOCKING (2)
Root Cause
src/v4/extdeps/languages/go.daginteger fact axes were copied into parallel fields instead of deriving signedness/overflow from one canonical width/kind carrier → collapse to one signed/unsigned integer fact shape or make signedness a projection from GoIntegerWidth.src/v4/extdeps/languages/swift.dagnonnumeric scalar and representation facts are modeled as independent axes → split to a nonnumeric-only scalar carrier or make each nonnumeric variant carry its matching representation.
|
|
||
| type GoIntegerPrimitiveFacts { | ||
| surface_spelling: Symbol | ||
| signedness: GoIntKind |
There was a problem hiding this comment.
BLOCKING: GoIntegerPrimitiveFacts stores signedness separately from GoIntegerWidth and overflow, so Signed plus GoUnsignedWidth or unsigned overflow is constructible; this violates INVARIANTS P2 / illegal-states-unrepresentable for substrate fact-bundles.
|
|
||
| type SwiftNonNumericPrimitiveFacts { | ||
| surface_spelling: Symbol | ||
| scalar: SwiftScalar |
There was a problem hiding this comment.
BLOCKING: SwiftNonNumericPrimitiveFacts accepts the full SwiftScalar coproduct, so a nonnumeric row can be IntScalar or pair BoolScalar with StringRepresentationFact; this violates INVARIANTS P2 / illegal-states-unrepresentable.
Blocking P2 review — addressed (verified on merge commit
|
Summary
go_model_core_wave1()(rust/kotlin pattern).swift_language_model_anchor.dag(folded from closeout child Language fact-bundle expansion — manager closeout (snappy-bear-761) #3571).spec_factsmigration — mechanical ModelCore substrate-evolution (3/4): spec_facts: List<PrimitiveFactAxisBinding> → Map<Symbol, Node> uniqueness constraint — discharge E3-deferred follow-up from #3500 (codex BLOCKING #4: List admits duplicate axis bindings; std/collection already declares Map) #3549 follow-through for java/kotlin/lean/llvm_ir/machine_code/typescript/wasm on this branch.Test plan
cargo run --bin v2-compiler -- compile --source-root src/v4 --output-dir /tmp/out --target rust— 0 diagnosticspython3 scripts/strict_deprose_dag.py --check— OK