opencode-swarm 7.140.4 → 7.140.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.opencode/skills/plan/SKILL.md +40 -12
- package/.opencode/skills/swarm-pr-review/SKILL.md +2 -4
- package/.opencode/skills/swarm-pr-review/references/lane-output-recoverability.md +54 -0
- package/dist/agents/architect.d.ts +2 -1
- package/dist/background/candidate-contract.d.ts +1 -1
- package/dist/background/pending-delegations.d.ts +5 -0
- package/dist/background/pr-review-trigger-contract.d.ts +36 -0
- package/dist/cli/{config-doctor-qqe6172n.js → config-doctor-y5qeh18c.js} +3 -3
- package/dist/cli/{core-52k057mf.js → core-pwd9604e.js} +2 -2
- package/dist/cli/{curation-policy-9291bdat.js → curation-policy-avvb56x2.js} +6 -6
- package/dist/cli/curator-llm-factory-96pnc23w.js +61 -0
- package/dist/cli/{curator-04xqq68e.js → curator-q1nchgpg.js} +36 -36
- package/dist/cli/{evidence-summary-service-em58myd7.js → evidence-summary-service-18142mr3.js} +14 -11
- package/dist/cli/gate-evidence-smn2wqft.js +51 -0
- package/dist/cli/guardrail-explain-kyd89z8z.js +62 -0
- package/dist/cli/{guardrail-log-vb5zkegf.js → guardrail-log-cahp1ews.js} +4 -4
- package/dist/cli/{hive-promoter-z09khawt.js → hive-promoter-vcbcvcsh.js} +36 -36
- package/dist/cli/{index-ysa38bnr.js → index-1p72dtym.js} +3 -3
- package/dist/cli/{index-s8g7jh1k.js → index-2778hhh7.js} +2 -2
- package/dist/cli/{index-v3xhc7kg.js → index-4s7xgzbm.js} +1 -1
- package/dist/cli/{index-wk8s1m7b.js → index-4zxrkk1h.js} +217 -15
- package/dist/cli/{index-hz0refz4.js → index-56rqw2hs.js} +70 -29
- package/dist/cli/{index-djbhe0yh.js → index-5qd5vt2d.js} +38 -38
- package/dist/cli/{index-35qep0v7.js → index-912qz4y0.js} +88 -88
- package/dist/cli/{index-2rb3x0fk.js → index-92n3d5ky.js} +7 -7
- package/dist/cli/{index-ryq97w1x.js → index-bjqpdr83.js} +4 -4
- package/dist/cli/{index-c5kr20nz.js → index-c432knmy.js} +1 -1
- package/dist/cli/{index-v3x7j9ey.js → index-dtqjxfw9.js} +2 -2
- package/dist/cli/{index-hfwzxh3j.js → index-e58e3v0v.js} +12 -10
- package/dist/cli/{index-bfhwtdsw.js → index-epvhf50h.js} +3 -3
- package/dist/cli/{index-vrmkg8fm.js → index-fejfzy2j.js} +9 -9
- package/dist/cli/{index-mpytsq6k.js → index-h01wb18g.js} +2 -2
- package/dist/cli/{index-hxvkfx6t.js → index-jqsfsqbx.js} +15 -2
- package/dist/cli/{index-bn17ycxn.js → index-m9xrdjn0.js} +1 -1
- package/dist/cli/{index-a1fjhx4w.js → index-nakkgkkt.js} +37922 -35984
- package/dist/cli/index-p04qrwck.js +43 -0
- package/dist/cli/{index-arza4m4j.js → index-p2ty3eee.js} +2 -2
- package/dist/cli/{index-4hp8nvwb.js → index-p8kk34am.js} +3 -3
- package/dist/cli/{index-1kyex7z2.js → index-qwm6vdyv.js} +32 -1
- package/dist/cli/{index-dtam929z.js → index-qy1nq52t.js} +1 -1
- package/dist/cli/{index-rrb6cz2f.js → index-s1v0wza5.js} +6 -2
- package/dist/cli/{index-w4etfamq.js → index-t5pytnca.js} +2 -2
- package/dist/cli/{index-tj04dj06.js → index-thp186x0.js} +2 -2
- package/dist/cli/index-tjqzr3jc.js +623 -0
- package/dist/cli/{index-mrpfd1jx.js → index-vh05t3w5.js} +1 -1
- package/dist/cli/{index-7begd9aq.js → index-y9q9f6ms.js} +4 -4
- package/dist/cli/{index-v1an91bq.js → index-z0z9pe7b.js} +5 -5
- package/dist/cli/{index-hfjvepk2.js → index-z3s0a44b.js} +3 -3
- package/dist/cli/{index-pp5m7xga.js → index-zd4qhnr7.js} +70 -34
- package/dist/cli/{index-b8zgtz81.js → index-zsrtt42s.js} +34 -1
- package/dist/cli/index.js +35 -35
- package/dist/cli/{knowledge-escalator-gdjnwszd.js → knowledge-escalator-gj58za4g.js} +12 -12
- package/dist/cli/{knowledge-events-581x4q7n.js → knowledge-events-3m5jnnv6.js} +10 -10
- package/dist/cli/{knowledge-link-axx45d1h.js → knowledge-link-m9p80f4r.js} +5 -5
- package/dist/cli/{knowledge-store-ttg33482.js → knowledge-store-0vy8wbzd.js} +6 -6
- package/dist/cli/{knowledge-validator-8kywqt8b.js → knowledge-validator-mvcs8wf6.js} +8 -8
- package/dist/cli/{pending-delegations-btwqsvz4.js → pending-delegations-cxx9tezp.js} +4 -4
- package/dist/cli/{pr-subscriptions-83y1cdwv.js → pr-subscriptions-2sfnb599.js} +4 -4
- package/dist/cli/{runner-fh3r41nw.js → runner-mky3vvht.js} +6 -6
- package/dist/cli/{scan-cursor-j8ytdpam.js → scan-cursor-wznc7p7p.js} +7 -7
- package/dist/cli/{schema-6xfqtpvn.js → schema-k596bhds.js} +2 -2
- package/dist/cli/{scope-persistence-8c72jrgp.js → scope-persistence-0ny5fn07.js} +10 -5
- package/dist/cli/{skill-generator-n8vm1yhn.js → skill-generator-vrks0jjj.js} +14 -14
- package/dist/cli/{telemetry-fb44gpba.js → telemetry-0x6kszvk.js} +1 -1
- package/dist/cli/{worktree-collision-ownership-f28r473k.js → worktree-collision-ownership-wm5pse49.js} +8 -8
- package/dist/cli/worktree-isolation-zgk7314k.js +102 -0
- package/dist/cli/worktree-provisioning-owner-sjh7te1h.js +22 -0
- package/dist/commands/acknowledge-spec-drift.d.ts +4 -5
- package/dist/config/evidence-schema.d.ts +3 -3
- package/dist/config/index.d.ts +2 -2
- package/dist/config/plan-schema.d.ts +8 -0
- package/dist/config/schema.d.ts +2 -2
- package/dist/council/council-evidence-writer.d.ts +1 -1
- package/dist/gate-evidence.d.ts +117 -4
- package/dist/hooks/delegation-gate.d.ts +21 -0
- package/dist/hooks/pr-workflow-gate.d.ts +20 -0
- package/dist/index.js +775 -748
- package/dist/plan/ledger.d.ts +55 -0
- package/dist/plan/manager.d.ts +9 -0
- package/dist/plan/planning-profile.d.ts +27 -0
- package/dist/services/spec-drift-recovery.d.ts +84 -0
- package/dist/session/snapshot-writer.d.ts +3 -1
- package/dist/state.d.ts +19 -17
- package/dist/summaries/schema.d.ts +2 -2
- package/dist/tools/convene-council.d.ts +6 -6
- package/dist/tools/save-plan.d.ts +8 -0
- package/dist/tools/submit-phase-council-verdicts.d.ts +6 -6
- package/dist/tools/tool-metadata.d.ts +28 -28
- package/dist/tools/update-task-status.d.ts +13 -0
- package/dist/tools/write-final-council-evidence.d.ts +6 -6
- package/dist/types/events.d.ts +29 -1
- package/dist/workflow/coder-settlement.d.ts +62 -0
- package/dist/workflow/task-repair.d.ts +30 -0
- package/dist/workflow/task-terminal.d.ts +52 -0
- package/package.json +1 -1
- package/dist/cli/curator-llm-factory-cfm8fhdw.js +0 -61
- package/dist/cli/gate-evidence-ezxfkb22.js +0 -32
- package/dist/cli/guardrail-explain-pn1bcgfz.js +0 -62
- package/dist/cli/index-d181x9zr.js +0 -71
- package/dist/cli/index-dtyeabmj.js +0 -239
|
@@ -11,16 +11,41 @@ This protocol is loaded on demand by the architect runtime. The architect prompt
|
|
|
11
11
|
|
|
12
12
|
### MODE: PLAN
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
PLANNING PROFILE (authoritative): obey the runtime-injected `[PLANNING PROFILE
|
|
15
|
+
— AUTHORITATIVE]` directive, which is produced by the same resolver used by
|
|
16
|
+
`save_plan`. Select exactly one path:
|
|
17
|
+
|
|
18
|
+
- `balanced`: use durable QA/execution defaults and do not pause for the full
|
|
19
|
+
questionnaire, spec ceremony, or complete clarification funnel. Ask only for
|
|
20
|
+
unresolved material ambiguity, destructive/high-risk authorization, or a
|
|
21
|
+
decision only the user can make. `save_plan` exact-binds the default QA
|
|
22
|
+
profile. Persist `planning_profile: "balanced"`.
|
|
23
|
+
- `strict` (including locked legacy profiles with no stored field): require an
|
|
24
|
+
effective spec, run the complete clarification funnel, present the unified
|
|
25
|
+
QA/execution questionnaire, and wait for the user's answers before saving.
|
|
26
|
+
Persist `planning_profile: "strict"` only when the field is already explicit
|
|
27
|
+
or this is a new/unlocked plan; do not materialize it into a locked legacy
|
|
28
|
+
profile.
|
|
29
|
+
|
|
30
|
+
A locked profile may ratchet `balanced` to `strict`; it never moves `strict` to
|
|
31
|
+
`balanced`.
|
|
32
|
+
|
|
33
|
+
SPEC POLICY (profile-dependent — check before planning):
|
|
15
34
|
|
|
16
35
|
An effective spec exists iff `/swarm sdd status` reports a resolved spec (it reflects `readEffectiveSpecSync`, which returns null for no sources, multiple competing sources, multi-feature Spec-Kit without a selected feature, or any unresolvable state). Do NOT enumerate these cases — defer to `/swarm sdd status`.
|
|
17
36
|
|
|
18
37
|
- If NO effective spec exists (confirmed via `/swarm sdd status`):
|
|
38
|
+
- `strict`: stop and enter MODE: SPECIFY (or materialize a selected SDD source
|
|
39
|
+
with explicit consent). Strict planning cannot save without an effective
|
|
40
|
+
spec.
|
|
41
|
+
- `balanced`: a spec is optional. Offer the choices below only when a spec
|
|
42
|
+
would materially resolve ambiguity; otherwise proceed directly.
|
|
43
|
+
- The remaining no-spec choices in this section apply only to `balanced`.
|
|
19
44
|
- PLAN INGESTION DETECTION: Check if the user is providing an external plan (indicators: markdown content with Phase/Task structure, or phrases like "ingest this plan", "implement this plan", "prepare for implementation", "here is a plan", "here's the plan"):
|
|
20
45
|
- If plan ingestion is detected AND no effective spec exists: offer this choice FIRST before any planning:
|
|
21
46
|
1. "Generate spec from this plan first" → enter EXTERNAL PLAN IMPORT PATH in MODE: SPECIFY to reverse-engineer a spec.md from the provided plan, then return to planning
|
|
22
47
|
2. "Skip spec and proceed with the provided plan" → proceed directly to plan ingestion and planning without creating a spec
|
|
23
|
-
-
|
|
48
|
+
- In `balanced`, this is a SOFT gate — option 2 lets the user proceed without a spec.
|
|
24
49
|
- If no plan ingestion detected: Warn: "No effective spec found. A spec helps ensure the plan covers all requirements and gives the critic something to verify against. Would you like to create one first?"
|
|
25
50
|
- Offer two options:
|
|
26
51
|
1. "Create a spec first" → transition to MODE: SPECIFY
|
|
@@ -28,20 +53,21 @@ An effective spec exists iff `/swarm sdd status` reports a resolved spec (it ref
|
|
|
28
53
|
- If an effective spec EXISTS:
|
|
29
54
|
- NOTE: Stale detection is intentionally heuristic (compare headings) — false positives are acceptable because this is a SOFT gate. When in doubt, ask the user.
|
|
30
55
|
- Read the spec (using the effective spec path reported by `/swarm sdd status`) and compare its first heading (or feature description) against the current planning context (the user's request and any existing plan.md title/phase names)
|
|
31
|
-
- STALE SPEC DETECTION: If the spec heading or feature description does NOT match the current work being planned (e.g., spec describes "user authentication" but user is asking to plan "payment integration"), treat the spec as potentially stale and offer three options:
|
|
56
|
+
- STALE SPEC DETECTION: If the spec heading or feature description does NOT match the current work being planned (e.g., spec describes "user authentication" but user is asking to plan "payment integration"), treat the spec as potentially stale. In `strict`, offer options 1 and 2 only. In `balanced`, offer all three options:
|
|
32
57
|
1. **Archive and create new spec** → attempt to rename .swarm/spec.md to .swarm/spec-archive/spec-{YYYY-MM-DD}.md (create the directory if needed); if archival succeeds: enter MODE: SPECIFY and skip the "spec already exists" prompt; if archival fails: inform user of the failure and offer: retry archival, or proceed with option 2, or proceed with option 3
|
|
33
58
|
2. **Keep existing spec** → use the effective spec as-is and proceed with planning below
|
|
34
|
-
3. **Skip spec entirely** → proceed to planning below ignoring the existing spec
|
|
59
|
+
3. **Skip spec entirely** (`balanced` only) → proceed to planning below ignoring the existing spec
|
|
35
60
|
- If the spec appears current (heading matches the work being planned) OR user chose option 2 above, proceed with spec:
|
|
36
61
|
- Read it and use it as the primary input for planning
|
|
37
62
|
- Cross-reference requirements (FR-###) when decomposing tasks
|
|
38
63
|
- Ensure every FR-### maps to at least one task
|
|
39
64
|
- If a task has no corresponding FR-###, flag it as a potential gold-plating risk
|
|
40
|
-
- If user chose option 3 above, proceed without spec: skip all spec-based steps and proceed directly to planning
|
|
65
|
+
- If a `balanced` user chose option 3 above, proceed without spec: skip all spec-based steps and proceed directly to planning
|
|
41
66
|
|
|
42
|
-
This is a
|
|
67
|
+
This is a soft gate only in `balanced`. In `strict`, a missing effective spec is
|
|
68
|
+
a hard prerequisite and `save_plan` will return `SPEC_REQUIRED`.
|
|
43
69
|
|
|
44
|
-
**SAVE_PLAN SPEC_REQUIRED RECOVERY:**
|
|
70
|
+
**STRICT-ONLY SAVE_PLAN SPEC_REQUIRED RECOVERY:**
|
|
45
71
|
When `save_plan` returns a SPEC_REQUIRED rejection (no effective spec found), the architect MUST:
|
|
46
72
|
1. DIAGNOSE: run `/swarm sdd status` to determine why no effective spec resolved.
|
|
47
73
|
- (a) If `/swarm sdd status` shows NO sources → transition to MODE: SPECIFY.
|
|
@@ -54,7 +80,7 @@ Run CODEBASE REALITY CHECK scoped to codebase elements referenced in the effecti
|
|
|
54
80
|
|
|
55
81
|
### GENERAL COUNCIL ADVISORY OPTION (pre-save_plan)
|
|
56
82
|
|
|
57
|
-
|
|
83
|
+
In `strict`, before drafting or saving the plan, the architect MUST offer General Council advisory input when `council.general.enabled` is true in the resolved opencode-swarm config and a search API key is configured. In `balanced`, offer it only when current external facts could materially change the plan; do not introduce a pause merely because the feature is configured.
|
|
58
84
|
|
|
59
85
|
- Ask the user: "Use General Council advisory input before I write the plan? The 3-agent council (generalist, skeptic, domain expert) will gather current external context and provide perspectives that I will fold into the plan before critic review. (default: no)"
|
|
60
86
|
- If the user declines, proceed to the clarification funnel and planning normally.
|
|
@@ -70,7 +96,7 @@ General Council is advisory and distinct from `council_mode`, `phase_council`, a
|
|
|
70
96
|
|
|
71
97
|
### CLARIFICATION FUNNEL (pre-save_plan)
|
|
72
98
|
|
|
73
|
-
|
|
99
|
+
In `strict`, before calling `save_plan` — whether creating a new plan or finalizing an external plan ingestion — the architect MUST run this four-stage clarification funnel. In `balanced`, use the same classification concepts internally but surface only unresolved material ambiguity, destructive/high-risk authorization, or decisions only the user can make; do not run the full funnel as ceremony.
|
|
74
100
|
|
|
75
101
|
#### Stage 1: Inventory All Material Uncertainties
|
|
76
102
|
|
|
@@ -113,6 +139,8 @@ For each item classified as `research_needed` or `user_decision` in Stage 2, sen
|
|
|
113
139
|
|
|
114
140
|
**Hard constraint:** Items in the Always-Surface Categories list (below) MUST NOT receive `UNNECESSARY`/`DROP` from the critic — only `REPHRASE` or `APPROVED`/`ASK_USER` are allowed. If the critic attempts to `UNNECESSARY`/`DROP` an always-surface item, override to `APPROVED`/`ASK_USER`.
|
|
115
141
|
|
|
142
|
+
This always-surface protection remains mandatory in every planning profile.
|
|
143
|
+
|
|
116
144
|
**Overconfidence guard:** If the critic attempts to self-resolve an item by supplying an answer (verdict `RESOLVE`) but the underlying default is not directly supported by user request, spec, or recorded context, the architect MUST classify the item as `user_decision` rather than `self_resolved`. Unsupported defaults must not be silently accepted.
|
|
117
145
|
|
|
118
146
|
Update classifications based on critic response:
|
|
@@ -124,7 +152,7 @@ Update classifications based on critic response:
|
|
|
124
152
|
|
|
125
153
|
The architect MUST update the plan's assumptions with all resolved items before proceeding to Stage 4.
|
|
126
154
|
|
|
127
|
-
|
|
155
|
+
Strict-only exception: QA gate selection questions are direct user decisions and do NOT need to go through the funnel. Balanced uses the durable default profile and does not present this dialogue.
|
|
128
156
|
|
|
129
157
|
#### Stage 4: Surface User Decision Packet
|
|
130
158
|
|
|
@@ -182,7 +210,7 @@ Draft the complete implementation plan in memory first. Required parameters:
|
|
|
182
210
|
|
|
183
211
|
1. Finish drafting the title, swarm identifier, phases, tasks, dependencies, and `files_touched` scopes. Freeze the exact raw plan identity as `swarm_id` plus `plan_title` (the same title passed to `save_plan`). Do not normalize, shorten, or rename either value between profile creation and plan save. An intentional identity replacement must use `confirm_identity_change: true`; never silently create a second profile because wording changed.
|
|
184
212
|
2. Inspect dependency-ready tasks and their file scopes before recommending parallelism. File-disjoint task groups may run concurrently in isolated worktrees; overlapping or unknown scopes require serial execution.
|
|
185
|
-
3.
|
|
213
|
+
3. `strict`: present the following unified four-choice dialogue in one message and wait for one complete answer. Silence is not consent. `balanced`: skip this dialogue and continue with the durable defaults.
|
|
186
214
|
|
|
187
215
|
<!-- BEGIN QA_GATE_BODY -->
|
|
188
216
|
|
|
@@ -208,7 +236,7 @@ Additionally, present these three sub-items as part of the same exchange:
|
|
|
208
236
|
<!-- END QA_GATE_BODY -->
|
|
209
237
|
|
|
210
238
|
4. MODE: LOOP exception: when `autonomy=auto`, do not pause. Use the loop skill's balanced-speed defaults: reviewer, test_engineer, sme_enabled, critic_pre_plan, sast_enabled, and drift_check ON; council_mode, hallucination_guard, mutation_test, phase_council, and final_council OFF. Choose the largest safe parallel count from the drafted scopes (1 when overlap or uncertainty exists), keep phase-level commits (`commit_after_each_completed_task: false`), and set `auto_proceed: true`.
|
|
211
|
-
5.
|
|
239
|
+
5. `strict`: before the first `save_plan`, persist all eleven gate booleans with `set_qa_gates({ swarm_id: <exact swarm_id>, plan_title: <exact title>, ...gates })`. If it fails, stop and resolve the profile error. `balanced`: do not call `set_qa_gates` merely to reproduce defaults; `save_plan` creates and exact-binds them.
|
|
212
240
|
Recovery for upgraded legacy plans: if `get_qa_gate_profile`, `save_plan`, or an execution gate reports that the QA profile is not exact-bound, run `set_qa_gates({ swarm_id: <exact swarm_id>, plan_title: <exact title>, adopt_legacy_binding_only: true })`. This exact-binds the existing profile without changing gates or its lock, then you retry the blocked read/save/enforcement step.
|
|
213
241
|
6. Immediately call `save_plan` with the same exact identity, the full drafted phases, and the complete locked profile:
|
|
214
242
|
|
|
@@ -947,7 +947,7 @@ build a minimal correct single-lane reproduction using the same workflow mode,
|
|
|
947
947
|
lane identity, exact head, and canonical row. Before retrying, distinguish the
|
|
948
948
|
three independent input layers: the header schema, data-row values, and tool
|
|
949
949
|
argument shape. A correct header does not repair an invalid severity or lane
|
|
950
|
-
value, and correct row data does not repair malformed dispatch JSON.
|
|
950
|
+
value, and correct row data does not repair malformed dispatch JSON. Benign shape defects (evidence pipes, marker rows, verdict-row pipes) are auto-repaired and recorded as salvage — never a retry reason alone (contract and fidelity boundaries: `references/lane-output-recoverability.md`).
|
|
951
951
|
|
|
952
952
|
Classify the incident from actual user-visible harm and the first failed
|
|
953
953
|
predicate, not from the number of retries or the eventual result. A successful
|
|
@@ -1157,9 +1157,7 @@ pass the exact reviewed merge-base as `base_sha`, the exact live base branch
|
|
|
1157
1157
|
tip/ref used to compute it as `base_ref`, and the same `pr_head_sha` to the
|
|
1158
1158
|
writer. The writer runs bounded `git merge-base -- <base_ref> <pr_head_sha>` and
|
|
1159
1159
|
rejects any claimed `base_sha` that is not the exact result. It accepts only an
|
|
1160
|
-
exact eleven-row v2 receipt
|
|
1161
|
-
non-degraded, exact-head artifacts from lanes that declared and attested their
|
|
1162
|
-
families; `NOT_TRIGGERED` rows are provenance-free. Counts are recomputed and
|
|
1160
|
+
exact eleven-row v2 receipt backed by verifiable provenance (identity, ownership, digest, retained artifact); a coverage-QUALITY failure is disclosed on the receipt as `coverage_degradations` and the run proceeds, with synthesis disclosing degraded families (`references/lane-output-recoverability.md`). `NOT_TRIGGERED` rows are provenance-free. Counts are recomputed and
|
|
1163
1161
|
must agree. It never uses keyword or path classification alone as absence
|
|
1164
1162
|
evidence. Any head mismatch makes persistence fail. Historical unversioned and
|
|
1165
1163
|
schema-v1 all-`MATCHED` receipts remain readable, but new writes are strict v2.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Lane-output recoverability (repairs and recorded degradation)
|
|
2
|
+
|
|
3
|
+
Supplement to the main `SKILL.md` (progressive disclosure per the issue #2131
|
|
4
|
+
criterion-G ratchet). This file documents the recoverability contract added to
|
|
5
|
+
keep substantively-correct but format-imperfect runs completable.
|
|
6
|
+
|
|
7
|
+
## Parser-boundary repairs (recorded as salvage)
|
|
8
|
+
|
|
9
|
+
Two benign shape defects are repaired automatically at the parser boundary and
|
|
10
|
+
are never a reason to retry by themselves:
|
|
11
|
+
|
|
12
|
+
- **`clean-evidence-pipe-tail-merge`** — literal unescaped pipes inside a
|
|
13
|
+
`[CLEAN]` row's evidence text (regex character classes like `,;|`, shell
|
|
14
|
+
snippets) are tail-merged into the evidence field instead of splitting the
|
|
15
|
+
row past the 4-field contract. Deterministic: evidence is the trailing field.
|
|
16
|
+
- **`summary-row-dropped`** — pipe-bearing non-contract marker rows
|
|
17
|
+
(`[LANE_SUMMARY]`, `[NOTE]`, `[DONE]`, …) are dropped before parsing; they
|
|
18
|
+
were previously miscounted as malformed candidate rows that voided an
|
|
19
|
+
otherwise-valid clean attestation. Pipe-free lines are preserved (they may be
|
|
20
|
+
continuation fragments).
|
|
21
|
+
|
|
22
|
+
Both repairs are recorded as salvage on the lane record. Lanes should still
|
|
23
|
+
escape pipes as `\|` where practical, but the review no longer fails when they
|
|
24
|
+
do not. The per-obligation CLEAN rules: a `[CLEAN]` conflicts with `[CANDIDATE]`
|
|
25
|
+
rows only for the SAME lane; a valid CLEAN for a different lane in an unscoped
|
|
26
|
+
parse is skipped, not an error; duplicates for the same lane still fail.
|
|
27
|
+
|
|
28
|
+
## Verdict-row pipe tolerance and its fidelity boundary
|
|
29
|
+
|
|
30
|
+
`[REVIEWED]` (10-field), `[CRITIC]` (6-field), and `[FEEDBACK-VERIFIED]`
|
|
31
|
+
(4-field) rows tail-merge extra pipe separators into the trailing free-text
|
|
32
|
+
field. Fidelity boundary: content-preserving when the extra pipes sit in the
|
|
33
|
+
trailing field; a pipe in a mid-row prose field still authenticates (all
|
|
34
|
+
machine-checked positions are untouched) but trailing prose fields may be
|
|
35
|
+
re-arranged. A debug-gated warn fires on every applied merge; the raw lane
|
|
36
|
+
emission is always retained verbatim in the lane-output store, so repairs are
|
|
37
|
+
re-derivable.
|
|
38
|
+
|
|
39
|
+
## Recorded coverage degradation (trigger evaluation)
|
|
40
|
+
|
|
41
|
+
The trigger-eval writer accepts only an exact eleven-row v2 receipt whose
|
|
42
|
+
`MATCHED` rows are backed by exact-head artifacts from lanes that declared
|
|
43
|
+
ownership of their families through a verifiable provenance chain (identity,
|
|
44
|
+
ownership, digest, retained artifact). A lane whose coverage QUALITY is
|
|
45
|
+
imperfect — it ended `error`/`cancelled` after exhausting retries, or its
|
|
46
|
+
artifact has no covered `[CANDIDATE]`/`[CLEAN]` row for the row's own family —
|
|
47
|
+
no longer dead-ends the run: the writer records the failure on the durable
|
|
48
|
+
receipt as a `coverage_degradations` entry (trigger id, source lane, reason,
|
|
49
|
+
row-scoped so a consolidated lane's covered families are never misattributed)
|
|
50
|
+
and proceeds. The tool result reports `coverage_degradation_count`; the
|
|
51
|
+
synthesis phase MUST disclose every degraded family, with its recorded reason,
|
|
52
|
+
in the final review report. Retries remain the first resort (COVERAGE GATE); a
|
|
53
|
+
missing provenance chain still fails closed, and the reviewer/critic inventory
|
|
54
|
+
skips exactly the receipt-disclosed dispatch tuples.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AgentConfig } from '@opencode-ai/sdk';
|
|
2
2
|
export type { AgentConfig };
|
|
3
|
+
import { type ResolvedPlanningProfile } from '../plan/planning-profile';
|
|
3
4
|
export interface AgentDefinition {
|
|
4
5
|
name: string;
|
|
5
6
|
description?: string;
|
|
@@ -72,4 +73,4 @@ export declare function buildCouncilWorkflow(council?: CouncilWorkflowConfig): s
|
|
|
72
73
|
* helper remains as a compatibility oracle for direct prompt-contract tests.
|
|
73
74
|
*/
|
|
74
75
|
export declare function buildQaGateSelectionDialogue(modeLabel: 'BRAINSTORM' | 'SPECIFY' | 'PLAN'): string;
|
|
75
|
-
export declare function createArchitectAgent(model: string, customPrompt?: string, customAppendPrompt?: string, adversarialTesting?: AdversarialTestingConfig, council?: CouncilWorkflowConfig, uiReview?: UIReviewConfig, memoryEnabled?: boolean, architecturalSupervision?: ArchitectureSupervisionWorkflowConfig, designDocsEnabled?: boolean, externalSkillsEnabled?: boolean, turboEnabled?: boolean, skillsEnabled?: boolean): AgentDefinition;
|
|
76
|
+
export declare function createArchitectAgent(model: string, customPrompt?: string, customAppendPrompt?: string, adversarialTesting?: AdversarialTestingConfig, council?: CouncilWorkflowConfig, uiReview?: UIReviewConfig, memoryEnabled?: boolean, architecturalSupervision?: ArchitectureSupervisionWorkflowConfig, designDocsEnabled?: boolean, externalSkillsEnabled?: boolean, turboEnabled?: boolean, skillsEnabled?: boolean, planningProfileResolution?: ResolvedPlanningProfile): AgentDefinition;
|
|
@@ -51,7 +51,7 @@ export interface NormalizedCandidateArtifact {
|
|
|
51
51
|
/** Narrow, auditable repairs applied before the unchanged strict parser runs. */
|
|
52
52
|
repairKinds: CandidateArtifactRepairKind[];
|
|
53
53
|
}
|
|
54
|
-
export type CandidateArtifactRepairKind = 'synthesized-header' | 'terminal-protocol-fence' | 'redundant-clean-confidence';
|
|
54
|
+
export type CandidateArtifactRepairKind = 'synthesized-header' | 'terminal-protocol-fence' | 'redundant-clean-confidence' | 'clean-evidence-pipe-tail-merge' | 'summary-row-dropped';
|
|
55
55
|
/**
|
|
56
56
|
* Normalize a lane artifact ONCE so every consumer parses byte-identical text.
|
|
57
57
|
*
|
|
@@ -81,6 +81,8 @@ export interface BackgroundDelegationRecord {
|
|
|
81
81
|
workspace?: BackgroundWorkspaceSnapshot;
|
|
82
82
|
/** Immutable pre-coder provenance for doc-only gate classification. */
|
|
83
83
|
taskChangeContext?: BackgroundTaskChangeContext;
|
|
84
|
+
/** Exact-task workflow generation captured before a Stage B dispatch. */
|
|
85
|
+
workflowGeneration?: number;
|
|
84
86
|
/** Complete isolated-worktree recovery coordinates captured before handoff. */
|
|
85
87
|
worktree?: BackgroundWorktreeDescriptor;
|
|
86
88
|
/** Stable pre-launch background-coder capacity reservation. */
|
|
@@ -109,6 +111,8 @@ export interface BackgroundWorkspaceSnapshot {
|
|
|
109
111
|
export interface BackgroundTaskChangeContext {
|
|
110
112
|
declaredFiles: string[] | null;
|
|
111
113
|
baseline: BackgroundWorkspaceSnapshot;
|
|
114
|
+
/** Exact-task workflow generation captured before coder dispatch. */
|
|
115
|
+
workflowGeneration?: number;
|
|
112
116
|
}
|
|
113
117
|
export interface BackgroundWorktreeDescriptor {
|
|
114
118
|
callID: string;
|
|
@@ -250,6 +254,7 @@ export interface RecordPendingInput {
|
|
|
250
254
|
promptHash?: string;
|
|
251
255
|
workspace?: BackgroundWorkspaceSnapshot;
|
|
252
256
|
taskChangeContext?: BackgroundTaskChangeContext;
|
|
257
|
+
workflowGeneration?: number;
|
|
253
258
|
worktree?: BackgroundWorktreeDescriptor;
|
|
254
259
|
coderReservationId?: string;
|
|
255
260
|
prompt?: BackgroundPromptSnapshot;
|
|
@@ -171,6 +171,32 @@ interface ValidatedTriggerLedger<TRow> {
|
|
|
171
171
|
export declare function validatePrReviewInlineTriggerLedger(input: unknown): ValidatedTriggerLedger<PrReviewInlineTriggerRow>;
|
|
172
172
|
export declare function validatePrReviewPersistedInputLedger(input: unknown): ValidatedTriggerLedger<PrReviewPersistedInputRow>;
|
|
173
173
|
export declare function validatePrReviewWriterInputLedger(input: unknown): ValidatedTriggerLedger<PrReviewWriterInputRow>;
|
|
174
|
+
/**
|
|
175
|
+
* Disclosure record for a MATCHED family whose cited micro lane could not
|
|
176
|
+
* produce a non-degraded, fully-covering artifact after retries. The run
|
|
177
|
+
* proceeds; the receipt — and therefore every consumer of it — can see exactly
|
|
178
|
+
* which families are degraded and why. Provenance (identity, ownership, exact
|
|
179
|
+
* head) is still enforced for these rows; only coverage QUALITY is relaxed.
|
|
180
|
+
*/
|
|
181
|
+
export declare const TriggerCoverageDegradationSchema: z.ZodObject<{
|
|
182
|
+
trigger_id: z.ZodEnum<{
|
|
183
|
+
"auth-identity-secrets": "auth-identity-secrets";
|
|
184
|
+
"untrusted-input-boundaries": "untrusted-input-boundaries";
|
|
185
|
+
"subprocess-platform": "subprocess-platform";
|
|
186
|
+
"concurrency-state": "concurrency-state";
|
|
187
|
+
"dependencies-build-release": "dependencies-build-release";
|
|
188
|
+
"api-schema-migrations": "api-schema-migrations";
|
|
189
|
+
"test-infrastructure": "test-infrastructure";
|
|
190
|
+
"ui-accessibility-i18n": "ui-accessibility-i18n";
|
|
191
|
+
"privacy-observability": "privacy-observability";
|
|
192
|
+
"generated-provenance": "generated-provenance";
|
|
193
|
+
"unclassified-risk": "unclassified-risk";
|
|
194
|
+
}>;
|
|
195
|
+
source_batch_id: z.ZodString;
|
|
196
|
+
source_lane_id: z.ZodString;
|
|
197
|
+
reason: z.ZodString;
|
|
198
|
+
}, z.core.$strict>;
|
|
199
|
+
export type TriggerCoverageDegradation = z.infer<typeof TriggerCoverageDegradationSchema>;
|
|
174
200
|
export interface BuildPrReviewTriggerReceiptV2Args {
|
|
175
201
|
run_id: string;
|
|
176
202
|
pr_head_sha: string;
|
|
@@ -179,6 +205,8 @@ export interface BuildPrReviewTriggerReceiptV2Args {
|
|
|
179
205
|
evaluated_at: string;
|
|
180
206
|
dispatched_micro_lane_count: number;
|
|
181
207
|
rows: unknown;
|
|
208
|
+
/** Receipt-level degradation disclosure; ledger rows stay untouched so the frozen-ledger digest is unaffected. */
|
|
209
|
+
coverage_degradations?: TriggerCoverageDegradation[];
|
|
182
210
|
}
|
|
183
211
|
export declare function buildPrReviewTriggerReceiptV2(input: BuildPrReviewTriggerReceiptV2Args): {
|
|
184
212
|
run_id: string;
|
|
@@ -209,6 +237,12 @@ export declare function buildPrReviewTriggerReceiptV2(input: BuildPrReviewTrigge
|
|
|
209
237
|
micro_lane: string;
|
|
210
238
|
trigger_id: "auth-identity-secrets" | "untrusted-input-boundaries" | "subprocess-platform" | "concurrency-state" | "dependencies-build-release" | "api-schema-migrations" | "test-infrastructure" | "ui-accessibility-i18n" | "privacy-observability" | "generated-provenance" | "unclassified-risk";
|
|
211
239
|
})[];
|
|
240
|
+
coverage_degradations: {
|
|
241
|
+
trigger_id: "auth-identity-secrets" | "untrusted-input-boundaries" | "subprocess-platform" | "concurrency-state" | "dependencies-build-release" | "api-schema-migrations" | "test-infrastructure" | "ui-accessibility-i18n" | "privacy-observability" | "generated-provenance" | "unclassified-risk";
|
|
242
|
+
source_batch_id: string;
|
|
243
|
+
source_lane_id: string;
|
|
244
|
+
reason: string;
|
|
245
|
+
}[];
|
|
212
246
|
};
|
|
213
247
|
export interface ParsedPrReviewTriggerReceipt {
|
|
214
248
|
schemaVersion: 0 | 1 | 2;
|
|
@@ -219,6 +253,8 @@ export interface ParsedPrReviewTriggerReceipt {
|
|
|
219
253
|
notTriggeredRows: Extract<PrReviewPersistedInputRow, {
|
|
220
254
|
result: 'NOT_TRIGGERED';
|
|
221
255
|
}>[];
|
|
256
|
+
/** Empty for pre-v2.2 receipts. Present entries mean the family's cited lane is provenance-valid but coverage-degraded. */
|
|
257
|
+
coverageDegradations: TriggerCoverageDegradation[];
|
|
222
258
|
}
|
|
223
259
|
/**
|
|
224
260
|
* Bind every micro dispatch to one semantic ledger at bind time.
|
|
@@ -12,11 +12,11 @@ import {
|
|
|
12
12
|
shouldRunOnStartup,
|
|
13
13
|
writeBackupArtifact,
|
|
14
14
|
writeDoctorArtifact
|
|
15
|
-
} from "./index-
|
|
15
|
+
} from "./index-p2ty3eee.js";
|
|
16
16
|
import"./index-ee3x66a5.js";
|
|
17
17
|
import"./index-zgwm4ryv.js";
|
|
18
|
-
import"./index-
|
|
19
|
-
import"./index-
|
|
18
|
+
import"./index-thp186x0.js";
|
|
19
|
+
import"./index-jqsfsqbx.js";
|
|
20
20
|
import"./index-zjygnfay.js";
|
|
21
21
|
import"./index-bk5tah7q.js";
|
|
22
22
|
import"./index-bpmtbmy9.js";
|
|
@@ -14,12 +14,12 @@ import {
|
|
|
14
14
|
resolveWorktreeBaseDir,
|
|
15
15
|
shortenWorktreePath,
|
|
16
16
|
writeLaneProfileToDiskReal
|
|
17
|
-
} from "./index-
|
|
17
|
+
} from "./index-dtqjxfw9.js";
|
|
18
18
|
import"./index-ee3x66a5.js";
|
|
19
19
|
import"./index-4nt52yr9.js";
|
|
20
20
|
import"./index-4rhhvd1a.js";
|
|
21
21
|
import"./index-zgwm4ryv.js";
|
|
22
|
-
import"./index-
|
|
22
|
+
import"./index-jqsfsqbx.js";
|
|
23
23
|
import"./index-zjygnfay.js";
|
|
24
24
|
import"./index-a76rekgs.js";
|
|
25
25
|
export {
|
|
@@ -4,16 +4,16 @@ import {
|
|
|
4
4
|
authorizeCuration,
|
|
5
5
|
buildConfigFingerprintInput,
|
|
6
6
|
readCohortConfigFingerprint
|
|
7
|
-
} from "./index-
|
|
7
|
+
} from "./index-qy1nq52t.js";
|
|
8
8
|
import"./index-rtry5xyf.js";
|
|
9
|
-
import"./index-
|
|
10
|
-
import"./index-
|
|
11
|
-
import"./index-
|
|
12
|
-
import"./index-35qep0v7.js";
|
|
9
|
+
import"./index-vh05t3w5.js";
|
|
10
|
+
import"./index-p8kk34am.js";
|
|
11
|
+
import"./index-912qz4y0.js";
|
|
13
12
|
import"./index-7g4c7s5r.js";
|
|
13
|
+
import"./index-ed5ykebp.js";
|
|
14
14
|
import"./index-4nt52yr9.js";
|
|
15
15
|
import"./index-zgwm4ryv.js";
|
|
16
|
-
import"./index-
|
|
16
|
+
import"./index-epvhf50h.js";
|
|
17
17
|
import"./index-bpmtbmy9.js";
|
|
18
18
|
import"./index-a76rekgs.js";
|
|
19
19
|
export {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
createCuratorLLMDelegate
|
|
4
|
+
} from "./index-nakkgkkt.js";
|
|
5
|
+
import"./index-4905hd2m.js";
|
|
6
|
+
import"./index-41hkt36g.js";
|
|
7
|
+
import"./index-c432knmy.js";
|
|
8
|
+
import"./index-1p72dtym.js";
|
|
9
|
+
import"./index-c8s9a3zh.js";
|
|
10
|
+
import"./index-p2ty3eee.js";
|
|
11
|
+
import"./index-56rqw2hs.js";
|
|
12
|
+
import"./index-134d35c1.js";
|
|
13
|
+
import"./index-t5pytnca.js";
|
|
14
|
+
import"./index-y8552snf.js";
|
|
15
|
+
import"./index-9ss2m4rs.js";
|
|
16
|
+
import"./index-74hpm6sh.js";
|
|
17
|
+
import"./index-z3s0a44b.js";
|
|
18
|
+
import"./index-z0z9pe7b.js";
|
|
19
|
+
import"./index-h01wb18g.js";
|
|
20
|
+
import"./index-v2xrer41.js";
|
|
21
|
+
import"./index-m9xrdjn0.js";
|
|
22
|
+
import"./index-bjqpdr83.js";
|
|
23
|
+
import"./index-556ja8an.js";
|
|
24
|
+
import"./index-4zxrkk1h.js";
|
|
25
|
+
import"./index-zsrtt42s.js";
|
|
26
|
+
import"./index-dtqjxfw9.js";
|
|
27
|
+
import"./index-qwm6vdyv.js";
|
|
28
|
+
import"./index-tjqzr3jc.js";
|
|
29
|
+
import"./index-s1v0wza5.js";
|
|
30
|
+
import"./index-8fwhhayc.js";
|
|
31
|
+
import"./index-q1exe2b3.js";
|
|
32
|
+
import"./index-92n3d5ky.js";
|
|
33
|
+
import"./index-k46me75h.js";
|
|
34
|
+
import"./index-ee3x66a5.js";
|
|
35
|
+
import"./index-y9q9f6ms.js";
|
|
36
|
+
import"./index-qy1nq52t.js";
|
|
37
|
+
import"./index-rtry5xyf.js";
|
|
38
|
+
import"./index-fejfzy2j.js";
|
|
39
|
+
import"./index-ae75rja9.js";
|
|
40
|
+
import"./index-vh05t3w5.js";
|
|
41
|
+
import"./index-p8kk34am.js";
|
|
42
|
+
import"./index-912qz4y0.js";
|
|
43
|
+
import"./index-7g4c7s5r.js";
|
|
44
|
+
import"./index-ed5ykebp.js";
|
|
45
|
+
import"./index-4nt52yr9.js";
|
|
46
|
+
import"./index-p04qrwck.js";
|
|
47
|
+
import"./index-gprxjmm7.js";
|
|
48
|
+
import"./index-n832052r.js";
|
|
49
|
+
import"./index-zd4qhnr7.js";
|
|
50
|
+
import"./index-4rhhvd1a.js";
|
|
51
|
+
import"./index-zgwm4ryv.js";
|
|
52
|
+
import"./index-thp186x0.js";
|
|
53
|
+
import"./index-jqsfsqbx.js";
|
|
54
|
+
import"./index-zjygnfay.js";
|
|
55
|
+
import"./index-bk5tah7q.js";
|
|
56
|
+
import"./index-epvhf50h.js";
|
|
57
|
+
import"./index-bpmtbmy9.js";
|
|
58
|
+
import"./index-a76rekgs.js";
|
|
59
|
+
export {
|
|
60
|
+
createCuratorLLMDelegate
|
|
61
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
|
-
_internals,
|
|
3
|
+
_internals1 as _internals,
|
|
4
4
|
appendCuratorRecommendation,
|
|
5
5
|
applyCuratorKnowledgeUpdates,
|
|
6
6
|
checkPhaseCompliance,
|
|
@@ -14,59 +14,59 @@ import {
|
|
|
14
14
|
runCuratorInit,
|
|
15
15
|
runCuratorPhase,
|
|
16
16
|
writeCuratorSummary
|
|
17
|
-
} from "./index-
|
|
18
|
-
import"./index-41hkt36g.js";
|
|
19
|
-
import"./index-c5kr20nz.js";
|
|
20
|
-
import"./index-ysa38bnr.js";
|
|
21
|
-
import"./index-arza4m4j.js";
|
|
22
|
-
import"./index-hz0refz4.js";
|
|
23
|
-
import"./index-w4etfamq.js";
|
|
24
|
-
import"./index-y8552snf.js";
|
|
17
|
+
} from "./index-nakkgkkt.js";
|
|
25
18
|
import"./index-4905hd2m.js";
|
|
26
|
-
import"./index-
|
|
27
|
-
import"./index-
|
|
28
|
-
import"./index-
|
|
29
|
-
import"./index-mpytsq6k.js";
|
|
30
|
-
import"./index-v2xrer41.js";
|
|
19
|
+
import"./index-41hkt36g.js";
|
|
20
|
+
import"./index-c432knmy.js";
|
|
21
|
+
import"./index-1p72dtym.js";
|
|
31
22
|
import"./index-c8s9a3zh.js";
|
|
23
|
+
import"./index-p2ty3eee.js";
|
|
24
|
+
import"./index-56rqw2hs.js";
|
|
25
|
+
import"./index-134d35c1.js";
|
|
26
|
+
import"./index-t5pytnca.js";
|
|
27
|
+
import"./index-y8552snf.js";
|
|
32
28
|
import"./index-9ss2m4rs.js";
|
|
33
|
-
import"./index-bn17ycxn.js";
|
|
34
|
-
import"./index-ryq97w1x.js";
|
|
35
|
-
import"./index-556ja8an.js";
|
|
36
|
-
import"./index-wk8s1m7b.js";
|
|
37
|
-
import"./index-1kyex7z2.js";
|
|
38
|
-
import"./index-b8zgtz81.js";
|
|
39
|
-
import"./index-v3x7j9ey.js";
|
|
40
|
-
import"./index-rrb6cz2f.js";
|
|
41
29
|
import"./index-74hpm6sh.js";
|
|
42
|
-
import"./index-
|
|
30
|
+
import"./index-z3s0a44b.js";
|
|
31
|
+
import"./index-z0z9pe7b.js";
|
|
32
|
+
import"./index-h01wb18g.js";
|
|
33
|
+
import"./index-v2xrer41.js";
|
|
34
|
+
import"./index-m9xrdjn0.js";
|
|
35
|
+
import"./index-bjqpdr83.js";
|
|
36
|
+
import"./index-556ja8an.js";
|
|
37
|
+
import"./index-4zxrkk1h.js";
|
|
38
|
+
import"./index-zsrtt42s.js";
|
|
39
|
+
import"./index-dtqjxfw9.js";
|
|
40
|
+
import"./index-qwm6vdyv.js";
|
|
41
|
+
import"./index-tjqzr3jc.js";
|
|
42
|
+
import"./index-s1v0wza5.js";
|
|
43
43
|
import"./index-8fwhhayc.js";
|
|
44
44
|
import"./index-q1exe2b3.js";
|
|
45
|
-
import"./index-
|
|
45
|
+
import"./index-92n3d5ky.js";
|
|
46
46
|
import"./index-k46me75h.js";
|
|
47
47
|
import"./index-ee3x66a5.js";
|
|
48
|
-
import"./index-
|
|
49
|
-
import"./index-
|
|
48
|
+
import"./index-y9q9f6ms.js";
|
|
49
|
+
import"./index-qy1nq52t.js";
|
|
50
50
|
import"./index-rtry5xyf.js";
|
|
51
|
-
import"./index-
|
|
51
|
+
import"./index-fejfzy2j.js";
|
|
52
52
|
import"./index-ae75rja9.js";
|
|
53
|
-
import"./index-
|
|
54
|
-
import"./index-
|
|
55
|
-
import"./index-
|
|
56
|
-
import"./index-35qep0v7.js";
|
|
53
|
+
import"./index-vh05t3w5.js";
|
|
54
|
+
import"./index-p8kk34am.js";
|
|
55
|
+
import"./index-912qz4y0.js";
|
|
57
56
|
import"./index-7g4c7s5r.js";
|
|
57
|
+
import"./index-ed5ykebp.js";
|
|
58
58
|
import"./index-4nt52yr9.js";
|
|
59
|
-
import"./index-
|
|
59
|
+
import"./index-p04qrwck.js";
|
|
60
60
|
import"./index-gprxjmm7.js";
|
|
61
61
|
import"./index-n832052r.js";
|
|
62
|
-
import"./index-
|
|
62
|
+
import"./index-zd4qhnr7.js";
|
|
63
63
|
import"./index-4rhhvd1a.js";
|
|
64
64
|
import"./index-zgwm4ryv.js";
|
|
65
|
-
import"./index-
|
|
66
|
-
import"./index-
|
|
65
|
+
import"./index-thp186x0.js";
|
|
66
|
+
import"./index-jqsfsqbx.js";
|
|
67
67
|
import"./index-zjygnfay.js";
|
|
68
68
|
import"./index-bk5tah7q.js";
|
|
69
|
-
import"./index-
|
|
69
|
+
import"./index-epvhf50h.js";
|
|
70
70
|
import"./index-bpmtbmy9.js";
|
|
71
71
|
import"./index-a76rekgs.js";
|
|
72
72
|
export {
|
package/dist/cli/{evidence-summary-service-em58myd7.js → evidence-summary-service-18142mr3.js}
RENAMED
|
@@ -6,31 +6,34 @@ import {
|
|
|
6
6
|
loadPlanJsonOnly,
|
|
7
7
|
mergeDurableGateEntriesFromEvidence,
|
|
8
8
|
readDurableGateEvidence
|
|
9
|
-
} from "./index-
|
|
10
|
-
import"./index-w4etfamq.js";
|
|
11
|
-
import"./index-y8552snf.js";
|
|
9
|
+
} from "./index-56rqw2hs.js";
|
|
12
10
|
import"./index-134d35c1.js";
|
|
11
|
+
import"./index-t5pytnca.js";
|
|
12
|
+
import"./index-y8552snf.js";
|
|
13
13
|
import"./index-9ss2m4rs.js";
|
|
14
|
-
import"./index-
|
|
15
|
-
import"./index-
|
|
16
|
-
import"./index-
|
|
14
|
+
import"./index-4zxrkk1h.js";
|
|
15
|
+
import"./index-zsrtt42s.js";
|
|
16
|
+
import"./index-tjqzr3jc.js";
|
|
17
17
|
import"./index-q1exe2b3.js";
|
|
18
18
|
import"./index-k46me75h.js";
|
|
19
19
|
import"./index-ee3x66a5.js";
|
|
20
|
-
import"./index-
|
|
21
|
-
import"./index-
|
|
22
|
-
import"./index-35qep0v7.js";
|
|
20
|
+
import"./index-p8kk34am.js";
|
|
21
|
+
import"./index-912qz4y0.js";
|
|
23
22
|
import"./index-7g4c7s5r.js";
|
|
23
|
+
import"./index-ed5ykebp.js";
|
|
24
24
|
import"./index-4nt52yr9.js";
|
|
25
25
|
import"./index-gprxjmm7.js";
|
|
26
26
|
import"./index-n832052r.js";
|
|
27
|
-
import"./index-
|
|
27
|
+
import"./index-zd4qhnr7.js";
|
|
28
28
|
import"./index-4rhhvd1a.js";
|
|
29
29
|
import {
|
|
30
30
|
log
|
|
31
31
|
} from "./index-zgwm4ryv.js";
|
|
32
|
+
import"./index-thp186x0.js";
|
|
33
|
+
import"./index-jqsfsqbx.js";
|
|
32
34
|
import"./index-zjygnfay.js";
|
|
33
|
-
import"./index-
|
|
35
|
+
import"./index-bk5tah7q.js";
|
|
36
|
+
import"./index-epvhf50h.js";
|
|
34
37
|
import"./index-bpmtbmy9.js";
|
|
35
38
|
import"./index-a76rekgs.js";
|
|
36
39
|
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
DEFAULT_REQUIRED_GATES,
|
|
4
|
+
TASK_WORKFLOW_SCHEMA_MARKER,
|
|
5
|
+
assertTaskEvidenceWriteAllowed,
|
|
6
|
+
compareTaskWorkflowStateRank,
|
|
7
|
+
deriveRequiredGates,
|
|
8
|
+
expandRequiredGates,
|
|
9
|
+
getTaskWorkflowSnapshot,
|
|
10
|
+
hasPassedAllGates,
|
|
11
|
+
isValidTaskId,
|
|
12
|
+
parseTaskEvidence,
|
|
13
|
+
readTaskEvidence,
|
|
14
|
+
readTaskEvidenceRaw,
|
|
15
|
+
recordAgentDispatch,
|
|
16
|
+
recordGateEvidence,
|
|
17
|
+
reduceTaskWorkflowSnapshot,
|
|
18
|
+
transitionTaskWorkflowEvidence,
|
|
19
|
+
withTaskEvidenceTransaction
|
|
20
|
+
} from "./index-tjqzr3jc.js";
|
|
21
|
+
import"./index-k46me75h.js";
|
|
22
|
+
import"./index-ee3x66a5.js";
|
|
23
|
+
import"./index-p8kk34am.js";
|
|
24
|
+
import"./index-912qz4y0.js";
|
|
25
|
+
import"./index-7g4c7s5r.js";
|
|
26
|
+
import"./index-ed5ykebp.js";
|
|
27
|
+
import"./index-4nt52yr9.js";
|
|
28
|
+
import"./index-zgwm4ryv.js";
|
|
29
|
+
import"./index-zjygnfay.js";
|
|
30
|
+
import"./index-epvhf50h.js";
|
|
31
|
+
import"./index-bpmtbmy9.js";
|
|
32
|
+
import"./index-a76rekgs.js";
|
|
33
|
+
export {
|
|
34
|
+
withTaskEvidenceTransaction,
|
|
35
|
+
transitionTaskWorkflowEvidence,
|
|
36
|
+
reduceTaskWorkflowSnapshot,
|
|
37
|
+
recordGateEvidence,
|
|
38
|
+
recordAgentDispatch,
|
|
39
|
+
readTaskEvidenceRaw,
|
|
40
|
+
readTaskEvidence,
|
|
41
|
+
parseTaskEvidence,
|
|
42
|
+
isValidTaskId,
|
|
43
|
+
hasPassedAllGates,
|
|
44
|
+
getTaskWorkflowSnapshot,
|
|
45
|
+
expandRequiredGates,
|
|
46
|
+
deriveRequiredGates,
|
|
47
|
+
compareTaskWorkflowStateRank,
|
|
48
|
+
assertTaskEvidenceWriteAllowed,
|
|
49
|
+
TASK_WORKFLOW_SCHEMA_MARKER,
|
|
50
|
+
DEFAULT_REQUIRED_GATES
|
|
51
|
+
};
|