Repository navigation
Phase 1.5 substrate: CiUpsertStep<T> + UpsertInputRef types in src/v4/workflow/ci.dag per v4-ci-schema-worksheet-2026-05-30.md §6 (Upsert<T> on main #3981). MUST NOT: full step migration / active skip. Self-merge when dashboard criteria met. - #3989
Conversation
…bridge fn)
Parser rejects `type CiUpsertStep<T> = Upsert<T> { … }` extension syntax; land
equivalent fields plus `ci_upsert_step_upsert` projection to generic Upsert<T>.
Co-authored-by: Cursor <cursoragent@cursor.com>
|
Modeling DFS §8 approved — substrate summary for api-review:
Parser follow-on (P1.5-PARSER): surface does not accept Requesting dashboard reviews on HEAD — sent from silent-koi-540 |
…ct tags Project NodeQuery connective structurally (cache probe 2), use dedicated substrate/lens-port selector edges, and add P5 dissolution marks on Phase 1.5 coproducts per modeling-discipline Practice 4. Co-authored-by: Cursor <cursoragent@cursor.com>
|
cursor/composer review (
Local: — sent from silent-koi-540 |
…pt data Use `pipe:` at call site (matches fn param); rename fold binders to avoid record-field shadowing. v4.std.patterns/types mirrors + projection fixes on HEAD. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressing cursor REQUEST_CHANGES + structural review (HEAD):
Re-requesting dashboard reviews on new HEAD. — sent from silent-koi-540 |
The shadow heartbeat fn declares pipe: CiPipeline; the Rejected arm still passed pipeline:, which breaks compile / fail-closed binding. Co-authored-by: Cursor <cursoragent@cursor.com>
Hand-rolled CiStepId coproduct equality is interim until W-T-10 compiler-provided closed-sum equality replaces call sites. Co-authored-by: Cursor <cursoragent@cursor.com>
* docs(close/receipt): MW-D8 Wave 1 exit-condition running ledger Per PR #3983 §7 MW-D8 — Close/Receipt-lane live tracker for the five Wave-1-exit conditions. Single doc, no substrate or code. Headline state at authoring time: - C1 R1 leaf-model verdict: PROVEN (#3972 merged) - C2 SG-7 ci.dag recursion dissolved: GAP / SCAFFOLD_PRESENT (#3977 worksheet only — adjudicated as worksheet ≠ dissolution per PR #3949 §2.1 closure invariant) - C3 Upsert<T> landed: PROVEN (#3981 + #3989 merged) - C4 ci_selection_receipt_shadow generatable: GAP / NO_ARTIFACT_FOUND (C2 prerequisite; 72h revisit window propagates from C2) - C5 R2a/R2b/R3-ext/R3-int authoring ready-to-run: GAP / PARTIAL_GATE_PRESENT (#4000 open; four-element AND for PROVEN) Includes per-condition adjudication notes, update protocol, anti-shelfware revisit-by deadlines, and Wave 1 close ceremony shape. Closes when all five flip to PROVEN, at which point this lane authors a separate v4-wave1-close-receipt artifact. NOT a dispatch instrument; NOT Wave 2 planning; does NOT amend TASKS.md. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * WIP: Close/Receipt Manager — authority over close predicates, two-axis dispos * docs(close/receipt): address cursor — restate MW-D8 conditions verbatim, fix C3 OR-arm adjudication Cursor finding (valid): - C3 used a narrowed paraphrase ('landed') instead of MW-D8's actual disjunctive bar ('landed as usable substrate primitive OR explicitly blocked with a Modeling DFS worksheet naming the parser/substrate gap'). The §2.3 adjudication rewrote authority by treating activation debt as non-reopening, which dilutes operator intent. Fixes: - §1 conditions table now quotes MW-D8 verbatim for all five rows; each OR-arm spelled out explicitly so no paraphrase can narrow the bar. - §2.3 C3: stays PROVEN but explicitly identifies the OR-arm satisfied (explicit-block-with-worksheet via docs/planning/v4-upsert-t-substrate-worksheet-2026-05-30.md naming SG-2b). Notes PR #3981's own 'not full usable substrate' self-assessment rules out the first arm. engineering_state downgraded from n/a to SUBSTRATE_PRESENT (parseable skeleton, not full usable). - §2.1, §2.2, §2.4, §2.5 also restated with MW-D8 verbatim quotes + per-arm receipt criteria so adjudications cannot drift from the operator-ratified text. - §2.3 watch conditions add: if SG-2b path abandoned, OR-arm receipt loses validity and row reopens — preserves anti-dilution. Closure invariant (PR #3949 §1) preserved: the worksheet IS the closure receipt for the OR-arm of an explicitly-disjunctive condition (not a substrate-only landing being elevated past the closure invariant). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ker-dispatch (#4045) * docs(planning): W2.3 CiUpsertStep migration worksheet — ready-for-worker-dispatch §10.0-adapted migration worksheet for Phase 1.5: every ci_pipeline step as CiUpsertStep<T>. Prerequisites on main (#3981, #3989, W1.5 receipt @ 9079368). Staging: dual CiJob/CiGate until parity; Hash cache_digest per main. Co-authored-by: Cursor <cursoragent@cursor.com> * docs(w2.3): clarify worksheet status, universe, buckets, dissolution Operator review: single status table (impl after #4014; W1.5 claims not gate), ci_pipeline_step_ids_shadow bijection, dual-authority triggers, migration buckets A–F, literal forbidden grep, W2.4 handoff. Co-authored-by: Cursor <cursoragent@cursor.com> * docs(w2.6b): close python LeafModelClaim worksheet as CLOSED-DEFERRED Operator + keen-heron ratification: defer python Subject/Expectation coproduct arms to Python R2/R3; Phase 1 uses LeafModelClaimId only. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
Auto-opened by session-dashboard for session
silent-koi-540.Pushing to
session/silent-koi-540advances this PR.Worker attestation
Before flipping this PR to ready for review, confirm each item:
npm test,cargo test) and the result.Closes #Ndirective.Summary
TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.
Test plan