opencode-swarm 7.164.9 → 7.164.11

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.
Files changed (89) hide show
  1. package/dist/cli/{coder-settlement-8wxdx3ge.js → coder-settlement-0rfk8y11.js} +10 -10
  2. package/dist/cli/{config-doctor-zqbzjqsk.js → config-doctor-j17b7qq2.js} +8 -4
  3. package/dist/cli/{core-6b997gee.js → core-evhjjrtt.js} +2 -2
  4. package/dist/cli/{curation-policy-w829da9a.js → curation-policy-vj6z5hvr.js} +4 -4
  5. package/dist/cli/{curator-drift-5sykmtf5.js → curator-drift-ez81vg2t.js} +4 -4
  6. package/dist/cli/curator-llm-factory-sxcpmcqq.js +68 -0
  7. package/dist/cli/{curator-hvet3ccp.js → curator-vqd5yeck.js} +34 -34
  8. package/dist/cli/{evidence-summary-service-zefetqqa.js → evidence-summary-service-937x7rbg.js} +15 -15
  9. package/dist/cli/{gate-evidence-8ex11125.js → gate-evidence-q1cehr4k.js} +8 -6
  10. package/dist/cli/guardrail-explain-xv9aw1bf.js +69 -0
  11. package/dist/cli/{guardrail-log-jf1sj1zc.js → guardrail-log-3g93f3g2.js} +7 -7
  12. package/dist/cli/{guardrail-reset-0062066m.js → guardrail-reset-qe2r5qzq.js} +34 -34
  13. package/dist/cli/{hive-promoter-8nr61bhn.js → hive-promoter-09yc9mp5.js} +34 -34
  14. package/dist/cli/{index-g1rnq3pg.js → index-1ww7wj8d.js} +4 -4
  15. package/dist/cli/{index-zg9d392c.js → index-3qf1vxtb.js} +2 -1
  16. package/dist/cli/{index-1afqzpj4.js → index-47kh2103.js} +6 -6
  17. package/dist/cli/{index-sf24zdbp.js → index-4gqxppcx.js} +1 -1
  18. package/dist/cli/{index-pxzx4wxb.js → index-4vb6qa73.js} +2 -2
  19. package/dist/cli/{index-8psybzzf.js → index-50j914b5.js} +5 -0
  20. package/dist/cli/{index-qxvdwx79.js → index-5jx22kwc.js} +3 -3
  21. package/dist/cli/{index-8nsknkgs.js → index-5kcvrpkt.js} +46 -4
  22. package/dist/cli/{index-18z6gf3a.js → index-77z98j76.js} +9 -9
  23. package/dist/cli/{index-7tme4v2x.js → index-7m32fjb4.js} +5 -5
  24. package/dist/cli/{index-t1qzjhnj.js → index-9gxbjkts.js} +1 -1
  25. package/dist/cli/{index-8m3w7sr7.js → index-aqppaaqx.js} +2 -2
  26. package/dist/cli/{index-bv90qkyw.js → index-b2nj04q6.js} +1 -1
  27. package/dist/cli/{index-qkzyfnmc.js → index-c5v1w13g.js} +4 -4
  28. package/dist/cli/{index-teq4xzkh.js → index-d9entpn3.js} +2 -2
  29. package/dist/cli/{index-1anz3srx.js → index-dsg9dw3b.js} +1 -1
  30. package/dist/cli/{index-wnw2rt73.js → index-e90em0x4.js} +1 -1
  31. package/dist/cli/{index-h933exaw.js → index-ggrp3v00.js} +7 -7
  32. package/dist/cli/{index-sdhshera.js → index-ggtmsm84.js} +1 -1
  33. package/dist/cli/{index-nnetagj1.js → index-hp22pzn5.js} +2 -2
  34. package/dist/cli/{index-3qeznjj9.js → index-kc2tgcm7.js} +4 -4
  35. package/dist/cli/{index-41m7f0xj.js → index-kch6yenm.js} +3 -3
  36. package/dist/cli/{index-prmwcpqn.js → index-kv2tdkk5.js} +1 -1
  37. package/dist/cli/{index-vsxq8b54.js → index-mmjamc9b.js} +5 -5
  38. package/dist/cli/{index-sxxh4ams.js → index-n8688d12.js} +2 -2
  39. package/dist/cli/{index-s6ejwhew.js → index-nqsj0g5y.js} +1 -1
  40. package/dist/cli/{index-0rpfwzkw.js → index-pp2nya9v.js} +3 -3
  41. package/dist/cli/{index-nj2gap5p.js → index-qbw3yw2d.js} +7 -7
  42. package/dist/cli/{index-5kstr2ga.js → index-r5q5gd2a.js} +3 -3
  43. package/dist/cli/{index-mh57gjsd.js → index-r656jh9j.js} +1386 -1264
  44. package/dist/cli/{index-jpfktfb7.js → index-rhqdsc1x.js} +1 -1
  45. package/dist/cli/{index-7fyjv3f2.js → index-vdn32nws.js} +1 -1
  46. package/dist/cli/{index-vjef4fy9.js → index-w95vxjde.js} +1 -1
  47. package/dist/cli/{index-rgj5zmms.js → index-x43debgx.js} +30 -6
  48. package/dist/cli/{index-pkga8b4j.js → index-xnb3tk7x.js} +1 -1
  49. package/dist/cli/{index-hwqxp3kr.js → index-y1yqmkv7.js} +36 -36
  50. package/dist/cli/{index-83bewmqd.js → index-zfs3zqeq.js} +3 -3
  51. package/dist/cli/{index-8tqqmsav.js → index-zjg4chy2.js} +1 -1
  52. package/dist/cli/index.js +34 -34
  53. package/dist/cli/{knowledge-escalator-p60t5809.js → knowledge-escalator-j04g450p.js} +13 -13
  54. package/dist/cli/{knowledge-events-90k35k0w.js → knowledge-events-53z45rs0.js} +11 -11
  55. package/dist/cli/{knowledge-link-kbbp0rhh.js → knowledge-link-a6kfg3qm.js} +3 -3
  56. package/dist/cli/{knowledge-store-rqkyw5zp.js → knowledge-store-whm0gagt.js} +4 -4
  57. package/dist/cli/{knowledge-validator-5zqwvnvr.js → knowledge-validator-h8m7065g.js} +6 -6
  58. package/dist/cli/{model-preflight-bq035tfh.js → model-preflight-288nsgpw.js} +1 -1
  59. package/dist/cli/{pending-delegations-jdztm7v1.js → pending-delegations-6hkpe5ze.js} +4 -4
  60. package/dist/cli/{pr-subscriptions-7am85psn.js → pr-subscriptions-11zca1mh.js} +4 -4
  61. package/dist/cli/{pr-workflow-gate-2rqn6eat.js → pr-workflow-gate-6g29rkg7.js} +34 -34
  62. package/dist/cli/{runner-59cbgcdy.js → runner-5abw3t35.js} +4 -4
  63. package/dist/cli/{scan-cursor-9bm4zfx2.js → scan-cursor-mkfx410t.js} +5 -5
  64. package/dist/cli/{schema-4yjk7z24.js → schema-jbbam3ev.js} +2 -2
  65. package/dist/cli/{scope-persistence-s2ayj1c3.js → scope-persistence-q1ct4k42.js} +8 -8
  66. package/dist/cli/{skill-generator-bddg7mx1.js → skill-generator-cv8fg96x.js} +15 -15
  67. package/dist/cli/{worktree-collision-ownership-84j7w373.js → worktree-collision-ownership-xgnn8dsq.js} +5 -5
  68. package/dist/cli/{worktree-isolation-s0d3qtpv.js → worktree-isolation-k2dgfmeg.js} +34 -34
  69. package/dist/config/constants.d.ts +1 -1
  70. package/dist/config/evidence-schema.d.ts +3 -0
  71. package/dist/evaluation/contracts.d.ts +8 -2
  72. package/dist/evaluation/gate-audit.d.ts +2 -0
  73. package/dist/gate-evidence.d.ts +30 -1
  74. package/dist/hooks/final-context-accounting.d.ts +1 -1
  75. package/dist/hooks/index.d.ts +1 -1
  76. package/dist/hooks/knowledge-injector.d.ts +1 -1
  77. package/dist/hooks/messages-transform.d.ts +43 -22
  78. package/dist/hooks/system-guidance-carrier.d.ts +112 -0
  79. package/dist/index.js +351 -310
  80. package/dist/quality/git-base.d.ts +41 -0
  81. package/dist/quality/metrics.d.ts +8 -1
  82. package/dist/services/config-doctor.d.ts +28 -0
  83. package/dist/tools/index.d.ts +1 -0
  84. package/dist/tools/lean-turbo-critic.d.ts +49 -0
  85. package/dist/tools/manifest.d.ts +1 -0
  86. package/dist/tools/tool-metadata.d.ts +4 -0
  87. package/package.json +1 -1
  88. package/dist/cli/curator-llm-factory-mqyj4d2w.js +0 -68
  89. package/dist/cli/guardrail-explain-mk9z5n76.js +0 -69
@@ -78,65 +78,65 @@ import {
78
78
  withPrWorkflowCheckoutMutationLock,
79
79
  withPrWorkflowCheckoutPreparationLock,
80
80
  writePrWorkflowAtomicJson
81
- } from "./index-mh57gjsd.js";
82
- import"./index-vjef4fy9.js";
83
- import"./index-41m7f0xj.js";
84
- import"./index-8nsknkgs.js";
85
- import"./index-18z6gf3a.js";
86
- import"./index-0rpfwzkw.js";
81
+ } from "./index-r656jh9j.js";
82
+ import"./index-w95vxjde.js";
83
+ import"./index-kch6yenm.js";
84
+ import"./index-5kcvrpkt.js";
85
+ import"./index-77z98j76.js";
86
+ import"./index-pp2nya9v.js";
87
87
  import"./index-txdagbh7.js";
88
88
  import"./index-cw912re7.js";
89
89
  import"./index-3146wmgv.js";
90
- import"./index-g1rnq3pg.js";
91
- import"./index-7tme4v2x.js";
92
- import"./index-teq4xzkh.js";
90
+ import"./index-1ww7wj8d.js";
91
+ import"./index-7m32fjb4.js";
92
+ import"./index-d9entpn3.js";
93
93
  import"./index-70ha9e09.js";
94
- import"./index-s6ejwhew.js";
95
- import"./index-bv90qkyw.js";
94
+ import"./index-nqsj0g5y.js";
95
+ import"./index-b2nj04q6.js";
96
96
  import"./index-n4fzmqz8.js";
97
- import"./index-83bewmqd.js";
97
+ import"./index-zfs3zqeq.js";
98
98
  import"./index-zsrtt42s.js";
99
- import"./index-1afqzpj4.js";
99
+ import"./index-47kh2103.js";
100
100
  import"./index-w3gtqey0.js";
101
- import"./index-sxxh4ams.js";
102
- import"./index-3qeznjj9.js";
103
- import"./index-sdhshera.js";
101
+ import"./index-n8688d12.js";
102
+ import"./index-kc2tgcm7.js";
103
+ import"./index-ggtmsm84.js";
104
104
  import"./index-rtry5xyf.js";
105
- import"./index-rgj5zmms.js";
106
- import"./index-pxzx4wxb.js";
105
+ import"./index-x43debgx.js";
106
+ import"./index-4vb6qa73.js";
107
107
  import {
108
108
  PR_REVIEW_BASE_DIMENSION_IDS
109
- } from "./index-qxvdwx79.js";
110
- import"./index-qkzyfnmc.js";
111
- import"./index-wnw2rt73.js";
109
+ } from "./index-5jx22kwc.js";
110
+ import"./index-c5v1w13g.js";
111
+ import"./index-e90em0x4.js";
112
112
  import"./index-ry16d01s.js";
113
- import"./index-sf24zdbp.js";
113
+ import"./index-4gqxppcx.js";
114
114
  import"./index-556ja8an.js";
115
115
  import"./index-4fwbbad3.js";
116
116
  import"./index-b43rt5ph.js";
117
117
  import"./index-q7sjgr1y.js";
118
- import"./index-nj2gap5p.js";
119
- import"./index-h933exaw.js";
120
- import"./index-5kstr2ga.js";
121
- import"./index-zg9d392c.js";
118
+ import"./index-qbw3yw2d.js";
119
+ import"./index-ggrp3v00.js";
120
+ import"./index-r5q5gd2a.js";
121
+ import"./index-3qf1vxtb.js";
122
122
  import"./index-n832052r.js";
123
- import"./index-8tqqmsav.js";
123
+ import"./index-zjg4chy2.js";
124
124
  import"./index-z6xqpmqg.js";
125
125
  import"./index-r3mvsbtq.js";
126
- import"./index-jpfktfb7.js";
127
- import"./index-8m3w7sr7.js";
126
+ import"./index-rhqdsc1x.js";
127
+ import"./index-aqppaaqx.js";
128
128
  import"./index-9e6fdz2h.js";
129
129
  import"./index-4rhhvd1a.js";
130
- import"./index-1anz3srx.js";
131
- import"./index-8psybzzf.js";
130
+ import"./index-dsg9dw3b.js";
131
+ import"./index-50j914b5.js";
132
132
  import"./index-zjygnfay.js";
133
133
  import"./index-ae75rja9.js";
134
- import"./index-7fyjv3f2.js";
135
- import"./index-pkga8b4j.js";
134
+ import"./index-vdn32nws.js";
135
+ import"./index-xnb3tk7x.js";
136
136
  import"./index-bk5tah7q.js";
137
137
  import"./index-7qefgq4j.js";
138
138
  import"./index-2bgr671r.js";
139
- import"./index-t1qzjhnj.js";
139
+ import"./index-9gxbjkts.js";
140
140
  import"./index-ww6zm5hr.js";
141
141
  import"./index-7g4c7s5r.js";
142
142
  import"./index-bpmtbmy9.js";
@@ -3,13 +3,13 @@ import {
3
3
  _internals,
4
4
  createModelEvaluationExecutor,
5
5
  runEvaluation
6
- } from "./index-vjef4fy9.js";
7
- import"./index-0rpfwzkw.js";
6
+ } from "./index-w95vxjde.js";
7
+ import"./index-pp2nya9v.js";
8
8
  import"./index-txdagbh7.js";
9
9
  import"./index-r3mvsbtq.js";
10
- import"./index-pkga8b4j.js";
10
+ import"./index-xnb3tk7x.js";
11
11
  import"./index-2bgr671r.js";
12
- import"./index-t1qzjhnj.js";
12
+ import"./index-9gxbjkts.js";
13
13
  import"./index-ww6zm5hr.js";
14
14
  import"./index-7g4c7s5r.js";
15
15
  import"./index-bpmtbmy9.js";
@@ -4,17 +4,17 @@ import {
4
4
  alreadyCuratedThisGeneration,
5
5
  claimNextScanBatch,
6
6
  getScanStatus
7
- } from "./index-teq4xzkh.js";
8
- import"./index-nj2gap5p.js";
7
+ } from "./index-d9entpn3.js";
8
+ import"./index-qbw3yw2d.js";
9
9
  import"./index-9e6fdz2h.js";
10
10
  import"./index-4rhhvd1a.js";
11
11
  import"./index-ae75rja9.js";
12
- import"./index-7fyjv3f2.js";
13
- import"./index-pkga8b4j.js";
12
+ import"./index-vdn32nws.js";
13
+ import"./index-xnb3tk7x.js";
14
14
  import"./index-bk5tah7q.js";
15
15
  import"./index-7qefgq4j.js";
16
16
  import"./index-2bgr671r.js";
17
- import"./index-t1qzjhnj.js";
17
+ import"./index-9gxbjkts.js";
18
18
  import"./index-ww6zm5hr.js";
19
19
  import"./index-7g4c7s5r.js";
20
20
  import"./index-bpmtbmy9.js";
@@ -104,8 +104,8 @@ import {
104
104
  resolveGeneratedAgentRole,
105
105
  resolveGuardrailsConfig,
106
106
  stripKnownSwarmPrefix
107
- } from "./index-8m3w7sr7.js";
108
- import"./index-8psybzzf.js";
107
+ } from "./index-aqppaaqx.js";
108
+ import"./index-50j914b5.js";
109
109
  import"./index-zjygnfay.js";
110
110
  import"./index-bk5tah7q.js";
111
111
  import"./index-bpmtbmy9.js";
@@ -23,22 +23,22 @@ import {
23
23
  tombstoneScopeBinding,
24
24
  writeScopeBindingToDisk,
25
25
  writeScopeToDisk
26
- } from "./index-qkzyfnmc.js";
27
- import"./index-wnw2rt73.js";
26
+ } from "./index-c5v1w13g.js";
27
+ import"./index-e90em0x4.js";
28
28
  import"./index-ry16d01s.js";
29
- import"./index-sf24zdbp.js";
29
+ import"./index-4gqxppcx.js";
30
30
  import"./index-556ja8an.js";
31
- import"./index-jpfktfb7.js";
32
- import"./index-8m3w7sr7.js";
31
+ import"./index-rhqdsc1x.js";
32
+ import"./index-aqppaaqx.js";
33
33
  import"./index-9e6fdz2h.js";
34
34
  import"./index-4rhhvd1a.js";
35
- import"./index-1anz3srx.js";
36
- import"./index-8psybzzf.js";
35
+ import"./index-dsg9dw3b.js";
36
+ import"./index-50j914b5.js";
37
37
  import"./index-zjygnfay.js";
38
38
  import"./index-bk5tah7q.js";
39
39
  import"./index-7qefgq4j.js";
40
40
  import"./index-2bgr671r.js";
41
- import"./index-t1qzjhnj.js";
41
+ import"./index-9gxbjkts.js";
42
42
  import"./index-ww6zm5hr.js";
43
43
  import"./index-7g4c7s5r.js";
44
44
  import"./index-bpmtbmy9.js";
@@ -33,33 +33,33 @@ import {
33
33
  sanitizeSlug,
34
34
  selectCandidateEntries,
35
35
  writeEvalStub
36
- } from "./index-g1rnq3pg.js";
37
- import"./index-3qeznjj9.js";
38
- import"./index-sdhshera.js";
36
+ } from "./index-1ww7wj8d.js";
37
+ import"./index-kc2tgcm7.js";
38
+ import"./index-ggtmsm84.js";
39
39
  import"./index-rtry5xyf.js";
40
40
  import"./index-q7sjgr1y.js";
41
- import"./index-nj2gap5p.js";
42
- import"./index-h933exaw.js";
43
- import"./index-5kstr2ga.js";
44
- import"./index-zg9d392c.js";
41
+ import"./index-qbw3yw2d.js";
42
+ import"./index-ggrp3v00.js";
43
+ import"./index-r5q5gd2a.js";
44
+ import"./index-3qf1vxtb.js";
45
45
  import"./index-n832052r.js";
46
- import"./index-8tqqmsav.js";
46
+ import"./index-zjg4chy2.js";
47
47
  import"./index-z6xqpmqg.js";
48
48
  import"./index-r3mvsbtq.js";
49
- import"./index-jpfktfb7.js";
50
- import"./index-8m3w7sr7.js";
49
+ import"./index-rhqdsc1x.js";
50
+ import"./index-aqppaaqx.js";
51
51
  import"./index-9e6fdz2h.js";
52
52
  import"./index-4rhhvd1a.js";
53
- import"./index-1anz3srx.js";
54
- import"./index-8psybzzf.js";
53
+ import"./index-dsg9dw3b.js";
54
+ import"./index-50j914b5.js";
55
55
  import"./index-zjygnfay.js";
56
56
  import"./index-ae75rja9.js";
57
- import"./index-7fyjv3f2.js";
58
- import"./index-pkga8b4j.js";
57
+ import"./index-vdn32nws.js";
58
+ import"./index-xnb3tk7x.js";
59
59
  import"./index-bk5tah7q.js";
60
60
  import"./index-7qefgq4j.js";
61
61
  import"./index-2bgr671r.js";
62
- import"./index-t1qzjhnj.js";
62
+ import"./index-9gxbjkts.js";
63
63
  import"./index-ww6zm5hr.js";
64
64
  import"./index-7g4c7s5r.js";
65
65
  import"./index-bpmtbmy9.js";
@@ -6,12 +6,12 @@ import {
6
6
  WORKTREE_PROVISIONING_OWNER_LEASE_MS,
7
7
  removeWorktreeProvisioningOwner,
8
8
  scanWorktreeProvisioningOwnersForRecovery
9
- } from "./index-sxxh4ams.js";
9
+ } from "./index-n8688d12.js";
10
10
  import {
11
11
  scanDelegationFallbacksForRecovery,
12
12
  scanDelegationsForRecovery
13
- } from "./index-qxvdwx79.js";
14
- import"./index-8tqqmsav.js";
13
+ } from "./index-5jx22kwc.js";
14
+ import"./index-zjg4chy2.js";
15
15
  import"./index-z6xqpmqg.js";
16
16
  import {
17
17
  bunSpawn
@@ -21,13 +21,13 @@ import {
21
21
  resolveGitExecutable
22
22
  } from "./index-9e6fdz2h.js";
23
23
  import"./index-4rhhvd1a.js";
24
- import"./index-1anz3srx.js";
24
+ import"./index-dsg9dw3b.js";
25
25
  import"./index-zjygnfay.js";
26
26
  import {
27
27
  canonicalRootKeyFresh
28
28
  } from "./index-7qefgq4j.js";
29
29
  import"./index-2bgr671r.js";
30
- import"./index-t1qzjhnj.js";
30
+ import"./index-9gxbjkts.js";
31
31
  import"./index-ww6zm5hr.js";
32
32
  import"./index-7g4c7s5r.js";
33
33
  import"./index-bpmtbmy9.js";
@@ -21,65 +21,65 @@ import {
21
21
  sanitizeWorktreeTaskId,
22
22
  standardWorktreeByCallID,
23
23
  standardWorktreeSerializationSessions
24
- } from "./index-mh57gjsd.js";
25
- import"./index-vjef4fy9.js";
26
- import"./index-41m7f0xj.js";
27
- import"./index-8nsknkgs.js";
28
- import"./index-18z6gf3a.js";
29
- import"./index-0rpfwzkw.js";
24
+ } from "./index-r656jh9j.js";
25
+ import"./index-w95vxjde.js";
26
+ import"./index-kch6yenm.js";
27
+ import"./index-5kcvrpkt.js";
28
+ import"./index-77z98j76.js";
29
+ import"./index-pp2nya9v.js";
30
30
  import"./index-txdagbh7.js";
31
31
  import"./index-cw912re7.js";
32
32
  import"./index-3146wmgv.js";
33
- import"./index-g1rnq3pg.js";
34
- import"./index-7tme4v2x.js";
35
- import"./index-teq4xzkh.js";
33
+ import"./index-1ww7wj8d.js";
34
+ import"./index-7m32fjb4.js";
35
+ import"./index-d9entpn3.js";
36
36
  import"./index-70ha9e09.js";
37
- import"./index-s6ejwhew.js";
38
- import"./index-bv90qkyw.js";
37
+ import"./index-nqsj0g5y.js";
38
+ import"./index-b2nj04q6.js";
39
39
  import"./index-n4fzmqz8.js";
40
- import"./index-83bewmqd.js";
40
+ import"./index-zfs3zqeq.js";
41
41
  import"./index-zsrtt42s.js";
42
- import"./index-1afqzpj4.js";
42
+ import"./index-47kh2103.js";
43
43
  import"./index-w3gtqey0.js";
44
- import"./index-sxxh4ams.js";
45
- import"./index-3qeznjj9.js";
46
- import"./index-sdhshera.js";
44
+ import"./index-n8688d12.js";
45
+ import"./index-kc2tgcm7.js";
46
+ import"./index-ggtmsm84.js";
47
47
  import"./index-rtry5xyf.js";
48
- import"./index-rgj5zmms.js";
49
- import"./index-pxzx4wxb.js";
50
- import"./index-qxvdwx79.js";
51
- import"./index-qkzyfnmc.js";
52
- import"./index-wnw2rt73.js";
48
+ import"./index-x43debgx.js";
49
+ import"./index-4vb6qa73.js";
50
+ import"./index-5jx22kwc.js";
51
+ import"./index-c5v1w13g.js";
52
+ import"./index-e90em0x4.js";
53
53
  import"./index-ry16d01s.js";
54
- import"./index-sf24zdbp.js";
54
+ import"./index-4gqxppcx.js";
55
55
  import"./index-556ja8an.js";
56
56
  import"./index-4fwbbad3.js";
57
57
  import"./index-b43rt5ph.js";
58
58
  import"./index-q7sjgr1y.js";
59
- import"./index-nj2gap5p.js";
60
- import"./index-h933exaw.js";
59
+ import"./index-qbw3yw2d.js";
60
+ import"./index-ggrp3v00.js";
61
61
  import {
62
62
  resolveWorktreeIsolationConfig
63
- } from "./index-5kstr2ga.js";
64
- import"./index-zg9d392c.js";
63
+ } from "./index-r5q5gd2a.js";
64
+ import"./index-3qf1vxtb.js";
65
65
  import"./index-n832052r.js";
66
- import"./index-8tqqmsav.js";
66
+ import"./index-zjg4chy2.js";
67
67
  import"./index-z6xqpmqg.js";
68
68
  import"./index-r3mvsbtq.js";
69
- import"./index-jpfktfb7.js";
70
- import"./index-8m3w7sr7.js";
69
+ import"./index-rhqdsc1x.js";
70
+ import"./index-aqppaaqx.js";
71
71
  import"./index-9e6fdz2h.js";
72
72
  import"./index-4rhhvd1a.js";
73
- import"./index-1anz3srx.js";
74
- import"./index-8psybzzf.js";
73
+ import"./index-dsg9dw3b.js";
74
+ import"./index-50j914b5.js";
75
75
  import"./index-zjygnfay.js";
76
76
  import"./index-ae75rja9.js";
77
- import"./index-7fyjv3f2.js";
78
- import"./index-pkga8b4j.js";
77
+ import"./index-vdn32nws.js";
78
+ import"./index-xnb3tk7x.js";
79
79
  import"./index-bk5tah7q.js";
80
80
  import"./index-7qefgq4j.js";
81
81
  import"./index-2bgr671r.js";
82
- import"./index-t1qzjhnj.js";
82
+ import"./index-9gxbjkts.js";
83
83
  import"./index-ww6zm5hr.js";
84
84
  import"./index-7g4c7s5r.js";
85
85
  import"./index-bpmtbmy9.js";
@@ -13,7 +13,7 @@ export declare const COUNCIL_TOOL_NAMES: readonly ["submit_council_verdicts", "s
13
13
  export declare const COUNCIL_AGENT_TOOL_MAP: Partial<Record<AgentName, ToolName[]>>;
14
14
  export declare const GENERAL_COUNCIL_TOOL_NAMES: readonly ["convene_general_council", "web_search", "web_fetch"];
15
15
  export declare const GENERAL_COUNCIL_AGENT_TOOL_MAP: Partial<Record<AgentName, ToolName[]>>;
16
- export declare const TURBO_TOOL_NAMES: readonly ["lean_turbo_plan_lanes", "lean_turbo_acquire_locks", "lean_turbo_runner_status", "lean_turbo_review", "lean_turbo_run_phase", "lean_turbo_status"];
16
+ export declare const TURBO_TOOL_NAMES: readonly ["lean_turbo_plan_lanes", "lean_turbo_acquire_locks", "lean_turbo_runner_status", "lean_turbo_review", "lean_turbo_critic", "lean_turbo_run_phase", "lean_turbo_status"];
17
17
  export declare const TURBO_AGENT_TOOL_MAP: Partial<Record<AgentName, ToolName[]>>;
18
18
  export declare const SKILL_TOOL_NAMES: readonly ["skill_generate", "skill_list", "skill_apply", "skill_inspect", "skill_regenerate", "skill_retire", "skill_improve"];
19
19
  export declare const SKILL_AGENT_TOOL_MAP: Partial<Record<AgentName, ToolName[]>>;
@@ -529,6 +529,7 @@ export declare const QualityBudgetEvidenceSchema: z.ZodObject<{
529
529
  public_api_delta: z.ZodNumber;
530
530
  duplication_ratio: z.ZodNumber;
531
531
  test_to_code_ratio: z.ZodNumber;
532
+ base_resolved: z.ZodDefault<z.ZodBoolean>;
532
533
  }, z.core.$strip>;
533
534
  thresholds: z.ZodObject<{
534
535
  max_complexity_delta: z.ZodNumber;
@@ -1051,6 +1052,7 @@ export declare const EvidenceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1051
1052
  public_api_delta: z.ZodNumber;
1052
1053
  duplication_ratio: z.ZodNumber;
1053
1054
  test_to_code_ratio: z.ZodNumber;
1055
+ base_resolved: z.ZodDefault<z.ZodBoolean>;
1054
1056
  }, z.core.$strip>;
1055
1057
  thresholds: z.ZodObject<{
1056
1058
  max_complexity_delta: z.ZodNumber;
@@ -1568,6 +1570,7 @@ export declare const EvidenceBundleSchema: z.ZodObject<{
1568
1570
  public_api_delta: z.ZodNumber;
1569
1571
  duplication_ratio: z.ZodNumber;
1570
1572
  test_to_code_ratio: z.ZodNumber;
1573
+ base_resolved: z.ZodDefault<z.ZodBoolean>;
1571
1574
  }, z.core.$strip>;
1572
1575
  thresholds: z.ZodObject<{
1573
1576
  max_complexity_delta: z.ZodNumber;
@@ -468,8 +468,14 @@ export declare const GateAuditResultV1Schema: z.ZodObject<{
468
468
  usd: z.ZodOptional<z.ZodNumber>;
469
469
  }, z.core.$strict>;
470
470
  qualityMetricAvailability: z.ZodObject<{
471
- complexity_delta: z.ZodLiteral<"unavailable">;
472
- public_api_delta: z.ZodLiteral<"unavailable">;
471
+ complexity_delta: z.ZodEnum<{
472
+ unavailable: "unavailable";
473
+ available: "available";
474
+ }>;
475
+ public_api_delta: z.ZodEnum<{
476
+ unavailable: "unavailable";
477
+ available: "available";
478
+ }>;
473
479
  }, z.core.$strict>;
474
480
  }, z.core.$strict>;
475
481
  export type GateAuditResultV1 = z.infer<typeof GateAuditResultV1Schema>;
@@ -1,3 +1,4 @@
1
+ import { resolveQualityMergeBase } from '../quality/git-base.js';
1
2
  import type { GateAuditManifestV1, GateAuditResultV1 } from './contracts.js';
2
3
  import { captureWorkingTreeFingerprint } from './disposable-worktree.js';
3
4
  import type { EvaluationModelDispatcher } from './model-dispatcher.js';
@@ -28,5 +29,6 @@ export declare function createGateAuditManifest(input: Omit<GateAuditManifestV1,
28
29
  export declare function defaultGateAuditId(seed: string): string;
29
30
  export declare const _gateAuditInternals: {
30
31
  captureWorkingTreeFingerprint: typeof captureWorkingTreeFingerprint;
32
+ resolveQualityMergeBase: typeof resolveQualityMergeBase;
31
33
  };
32
34
  export {};
@@ -223,9 +223,38 @@ export declare function recordAgentDispatch(directory: string, taskId: string, a
223
223
  * evidence carrying a `workflow.state` it does not recognise. Tracked in #2199 — do
224
224
  * not "fix" this by rethrowing here: two call sites iterate every task in the plan,
225
225
  * so one corrupt file would block dispatch for all of them. The fix is a separate
226
- * discriminated reader used at the two affected sites.
226
+ * discriminated reader (`readTaskEvidenceState`) used at the two affected sites.
227
227
  */
228
228
  export declare function readTaskEvidence(directory: string, taskId: string): Promise<TaskEvidence | null>;
229
+ /**
230
+ * Discriminated task-evidence read (issue #2470 / #2199): distinguishes
231
+ * "no evidence file exists" (`missing`) from "evidence exists but is corrupt,
232
+ * unreadable, or from an incompatible build" (`unparseable`) so the
233
+ * delegation-gate guard sites can fail closed on the latter without changing
234
+ * the fail-open behavior callers rely on for the former.
235
+ *
236
+ * Classification mirrors readTaskEvidenceRaw: ENOENT and ENAMETOOLONG are
237
+ * "no file can exist" → missing (no telemetry — like readTaskEvidenceRaw,
238
+ * ENAMETOOLONG is intentionally silent on the gateParseError channel);
239
+ * a taskId that fails the grammar also classifies as missing (it cannot
240
+ * produce a valid evidence filename, so no file can exist — repair_gate_evidence
241
+ * could never fix a format problem, so "corrupt" would misdirect operators);
242
+ * everything else — malformed
243
+ * JSON, Zod rejection of a newer `workflow.state` (version skew), permission
244
+ * errors — is `unparseable` and emits telemetry.gateParseError
245
+ * exactly once before being returned (not thrown).
246
+ */
247
+ export type TaskEvidenceReadState = {
248
+ kind: 'ok';
249
+ evidence: TaskEvidence;
250
+ } | {
251
+ kind: 'missing';
252
+ } | {
253
+ kind: 'unparseable';
254
+ evidencePath: string;
255
+ error: unknown;
256
+ };
257
+ export declare function readTaskEvidenceState(directory: string, taskId: string): Promise<TaskEvidenceReadState>;
229
258
  /**
230
259
  * Returns the TaskEvidence for a task, or null if the file does not exist (ENOENT).
231
260
  * Throws on malformed JSON, permission errors, or other non-ENOENT issues.
@@ -2,7 +2,7 @@
2
2
  * Final context accounting (#2107 §3).
3
3
  *
4
4
  * ONE final accounting step, run after every injector has contributed and after
5
- * `consolidateSystemMessagesInPlace` — the last structure-mutating handler in
5
+ * `materializeSystemGuidanceInPlace` (issue #2526) — the last structure-mutating handler in
6
6
  * the `experimental.chat.messages.transform` chain. It measures the actual
7
7
  * final model-visible surface exactly once:
8
8
  *
@@ -12,7 +12,7 @@ export { createFinalContextAccountingStep } from './final-context-accounting';
12
12
  export { createFullAutoInterceptHook } from './full-auto-intercept';
13
13
  export { checkFileAuthority, createGuardrailsHooks, DEFAULT_AGENT_AUTHORITY_RULES, } from './guardrails';
14
14
  export { classifyMessage, classifyMessages, containsPlanContent, getCompletedToolOutputs, getToolNames, getToolParts, isDuplicateToolRead, isStaleError, isToolResult, MessagePriority, type MessagePriorityType, type MessageWithParts, } from './message-priority';
15
- export { consolidateSystemMessages, consolidateSystemMessagesInPlace, } from './messages-transform';
15
+ export { materializeSystemGuidance, materializeSystemGuidanceInPlace, } from './messages-transform';
16
16
  export { extractModelInfo, extractSessionId, lookupStaticModelLimit, NATIVE_MODEL_LIMITS, PROVIDER_CAPS, resolveModelLimit, } from './model-limits';
17
17
  export { type CuratorDelegateFactory, createPhaseMonitorHook, } from './phase-monitor';
18
18
  export { createPipelineTrackerHook } from './pipeline-tracker';
@@ -141,7 +141,7 @@ export declare const _internals: {
141
141
  /**
142
142
  * Tier-0 test seam (see `.opencode/skills/writing-tests/SKILL.md`). Exposes the
143
143
  * real injection primitive and its sentinel so the
144
- * `consolidateSystemMessages` interaction test (issue #1619) exercises the
144
+ * `materializeSystemGuidance` interaction test (issue #1619/#2526) exercises the
145
145
  * production splice position and message shape instead of a hand-copied fixture
146
146
  * that could silently drift from this module.
147
147
  */
@@ -1,16 +1,40 @@
1
1
  /**
2
- * Consolidates multiple system messages into a single system message at index 0.
2
+ * Materialize legacy `role:'system'` entries into guidance carriers (issue #2526).
3
3
  *
4
- * Note: Merged content order matches original insertion order (OpenCode base prompt
5
- * first, then swarm agent prompt) - this assumes sequential message construction.
4
+ * The OpenCode host's `toModelMessagesEffect` (pinned @opencode-ai 1.18.3
5
+ * anomalyco/opencode@v1.18.3, packages/opencode/src/session/message-v2.ts:195-244)
6
+ * branches only on `user` and `assistant` with no `else`, so a `role:'system'`
7
+ * entry inside `experimental.chat.messages.transform` output is silently
8
+ * discarded, and a flat entry without `parts` crashes the host prompt build
9
+ * (`msg.parts.length` TypeError).
6
10
  *
7
- * Dual-shape (issue #1778 H1): the OpenCode `messages.transform` hook delivers
8
- * items shaped `{ info: { role, ... }, parts: [{ type: 'text', text }] }`, while
9
- * unit fixtures and some callers use the flat `{ role, content }` shape. Both
10
- * must be handled — reading role from `info.role` OR top-level `role`, and text
11
- * from `parts[].text` OR `content` or the consolidation (and the invariant-10
12
- * safety-net that strips system messages at index > 0 for local models) becomes
13
- * a silent no-op on production data.
11
+ * This module replaces the pre-#2526 consolidation pass
12
+ * (`consolidateSystemMessages*`, which merged every system entry into one
13
+ * index-0 system message the host then dropped). Every plugin producer now
14
+ * splices user-role guidance carriers directly (see
15
+ * `system-guidance-carrier.ts`); this boundary pass is the defense-in-depth
16
+ * net that converts or drops any system entry that still reaches the
17
+ * array from an un-migrated or third-party injector:
18
+ *
19
+ * - misclassified tool-result system entries (flat `tool_call_id`/`name`)
20
+ * are dropped (pre-existing semantics);
21
+ * - whitespace-only / textless system entries are dropped (they can never
22
+ * render, and a fence-only carrier body would be noise);
23
+ * - every other system entry is converted IN PLACE to a guidance carrier,
24
+ * preserving array position, entry reference identity (issue #1619 —
25
+ * other handlers may hold references to the same entry object), and any
26
+ * metadata on `info`.
27
+ *
28
+ * After the pass the array contains ZERO `role:'system'` entries, which makes
29
+ * the historical local-model guarantee ("no system message at index > 0" —
30
+ * Qwen/Gemma, issue #608/#628) absolute: the only system messages in the model
31
+ * request come from the separate `experimental.chat.system.transform` string
32
+ * surface, which the host renders itself.
33
+ *
34
+ * Dual-shape totality (issue #1778 H1) is preserved: entries arrive shaped
35
+ * `{ info: { role, ... }, parts: [...] }` (production) or flat
36
+ * `{ role, content }` (fixtures/legacy); both are handled, and malformed
37
+ * entries whose role cannot be read pass through untouched.
14
38
  */
15
39
  type FlatMessage = {
16
40
  role: string;
@@ -30,23 +54,20 @@ type PartsMessage = {
30
54
  [key: string]: unknown;
31
55
  };
32
56
  export type Message = FlatMessage | PartsMessage;
33
- export declare function consolidateSystemMessages(messages: Message[]): Message[];
57
+ export declare function materializeSystemGuidance(messages: Message[]): Message[];
34
58
  /**
35
- * In-place variant of {@link consolidateSystemMessages} for use inside an
59
+ * In-place variant of {@link materializeSystemGuidance} for use inside an
36
60
  * `experimental.chat.messages.transform` handler.
37
61
  *
38
62
  * The OpenCode host invokes each plugin hook as `M(input, output)`, **discards
39
63
  * the handler's return value**, and afterwards reads its OWN local message
40
- * array (host binary offset ~100,667,665:
41
- * `yield* d.trigger("experimental.chat.messages.transform",{},{messages:C})`
42
- * followed by `Me.toModelMessagesEffect(C,Z)`). Therefore
43
- * `output.messages = consolidateSystemMessages(output.messages)` is a *rebind*
44
- * that the host never observes — it silently did nothing in production from the
45
- * day it was written until issue #1619. Only mutating the array the host handed
46
- * us is observable.
64
+ * array. Therefore `output.messages = materializeSystemGuidance(...)` is a
65
+ * *rebind* the host never observes (issue #1619). Only mutating the array the
66
+ * host handed us is observable.
47
67
  *
48
- * The consolidated result is computed BEFORE the array is cleared, because
49
- * `consolidateSystemMessages` reads the same array it is passed.
68
+ * The materialized result is computed BEFORE the array is cleared, because
69
+ * `materializeSystemGuidance` reads the same array it is passed, and entries
70
+ * are converted in place so references held elsewhere stay valid.
50
71
  */
51
- export declare function consolidateSystemMessagesInPlace(messages: Message[]): void;
72
+ export declare function materializeSystemGuidanceInPlace(messages: Message[]): void;
52
73
  export {};