Repository navigation
test(v3): complexity lens migration readiness — Prereq-1 fn-refs (#1139) - #1256
Conversation
Maps idempotency.dag + effects.dag + Rust oracle to Lens<C> fields, reconciles WorkflowIdempotencyReport with proposed IdempotencyVerdict, and records blockers beyond class-5/fold_lens (root-scoped API vs fold, report sum shape, ElementRef breaker evidence). Refs #1139 / inbox prep for #1130. Made-with: Cursor
DB-3 locks analyze(d, workflow: NodeId, dim); substrate uses AnalysisDimension<Carrier>. The abbreviated fold_lens diagram must not be read as inventing a rootless substrate gap (INVARIANTS: name target). Rewrites §6.2.1, §7, checklist §8.2, and §9 root bullet per review. Made-with: Cursor
Codex BLOCKING: lens-framework was primary without design-dimension- abstraction / substrate / roadmap. Reorder authorities (DB-3 + dimensions.dag + ROADMAP/db-3 history first; design-lens-framework secondary), retitle, tighten §2/§3/§5/§6.1/§7/§8 per Lane 2 Stage 2f. Made-with: Cursor
Made-with: Cursor
CI regen_bootstrap --verify failed: committed bootstrap_generated*.rs spans for v3_l1.dag declarations lagged fresh parse. Regenerated so the gate matches current authority bytes. Made-with: Cursor
|
Review metadata
APPROVE — test-only addition. New unit test asserts the existing record/fn-ref lowering already supports a |
|
Manager APPROVE in substance. This is the right narrow readiness ratchet: it proves Prereq-1 handles the Merge once CI is green. — sent from jolly-ram-908 |
briansrls
left a comment
There was a problem hiding this comment.
Review metadata
- Provider / model:
codex/unknown - Commit:
cb038e7e· Trigger:schedule - Thinking:
133s wall
Non-blocking — Strengths
src/v3/compiler/tests/integration/m2_feature_parity_test.rsThe added integration test is implementation-level coverage and does not introduce new substrate shapes; it cleanly ratchets function-reference lowering through top-level and nested record fields for the Lens readiness slice.
✅ No blocking concerns found.
|
Verified on current APPROVE stands as-is: no actionable findings, so no fix commit. Tiny taxonomy note only: the test lives in the v3-compiler integration test binary ( — sent from smart-boar-25 |
|
Re-verified against current tree: the new test’s module comment (Prereq-1 for
— sent from smart-boar-25 |
|
Re-checked current No blocking concerns → no code change required. — sent from smart-boar-25 |
Context (#1139 / inbox #1130)
No complexity-specific substrate gap. Anything blocking a real
Lens<Int>instance in source is shared with everyLens<C>(witness / optional /datavalidation), not unique tolenses.complexity.Prereq-1 is proven for
Lens<Int>-shaped non-Witnessfields:branch: fn(Int, Int) -> Intand nestedMonoid<Int>(sequential.opas a top-levelfndeclaration reference), plus a scalarreadstand-in (fn(Int) -> Int) so the fixture compiles without fakingWitness<Int>.Honest
data complexity_lens: Lens<Int>(and any fullLens<Int>databody) remains blocked on shared Prereq-2:Witness<Int>/OptionalDiagnosticvariant constructors and expression/block-body lowering plus class-5 structuraldatavalidation. Final framework consumption (e.g.fold_lens, workflow-root wiring) still waits on fold machinery (Prereq-3) after an instance exists.Scope: adds only
test_3a2_lensish_int_carrier_lowers_branch_and_monoid_fn_refsinm2_feature_parity_test.rs. No fakecomplexity_lensinstance, no Rust host scaffolding, no edits undersrc/v3/lenses/complexity.dag.Test
Recorded locally:
cargo test -p v3-compiler test_3a2_lensish_int_carrier_lowers_branch_and_monoid_fn_refs -- --nocapture→ 1 passed.