@revisium/orchestrator 0.1.0 → 0.2.0-alpha.0

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 (212) hide show
  1. package/README.md +78 -0
  2. package/control-plane/bootstrap.config.json +43 -1
  3. package/control-plane/default-playbook/catalog/pipelines.json +941 -3
  4. package/control-plane/default-playbook/catalog/roles.json +54 -0
  5. package/dist/api/graphql-api/graphql-ws/pubsub.module.js +0 -1
  6. package/dist/api/graphql-api/graphql-ws/pubsub.module.js.map +1 -1
  7. package/dist/api/graphql-api/graphql-ws/run-progress-subscription-poller.service.js +0 -1
  8. package/dist/api/graphql-api/graphql-ws/run-progress-subscription-poller.service.js.map +1 -1
  9. package/dist/api/graphql-api/graphql-ws/subscription-bridge.service.js +0 -1
  10. package/dist/api/graphql-api/graphql-ws/subscription-bridge.service.js.map +1 -1
  11. package/dist/api/graphql-api/pr/model/pr-readiness.model.js +0 -4
  12. package/dist/api/graphql-api/pr/model/pr-readiness.model.js.map +1 -1
  13. package/dist/cli/commands/doctor-report.js +0 -18
  14. package/dist/cli/commands/doctor-report.js.map +1 -1
  15. package/dist/cli/commands/lifecycle.js +3 -71
  16. package/dist/cli/commands/lifecycle.js.map +1 -1
  17. package/dist/cli/commands/mcp.js +0 -14
  18. package/dist/cli/commands/mcp.js.map +1 -1
  19. package/dist/cli/commands/process-tree.js +4 -26
  20. package/dist/cli/commands/process-tree.js.map +1 -1
  21. package/dist/cli/commands/revisium-helpers.js +0 -6
  22. package/dist/cli/commands/revisium-helpers.js.map +1 -1
  23. package/dist/cli/commands/rogue-reaper.js +0 -34
  24. package/dist/cli/commands/rogue-reaper.js.map +1 -1
  25. package/dist/cli/index.js +0 -4
  26. package/dist/cli/index.js.map +1 -1
  27. package/dist/cli/program.js +0 -5
  28. package/dist/cli/program.js.map +1 -1
  29. package/dist/config.js +0 -25
  30. package/dist/config.js.map +1 -1
  31. package/dist/control-plane/bootstrap.js +0 -28
  32. package/dist/control-plane/bootstrap.js.map +1 -1
  33. package/dist/control-plane/change-notifications.js +0 -1
  34. package/dist/control-plane/change-notifications.js.map +1 -1
  35. package/dist/control-plane/client-transport.js +0 -11
  36. package/dist/control-plane/client-transport.js.map +1 -1
  37. package/dist/control-plane/definitions.js +8 -17
  38. package/dist/control-plane/definitions.js.map +1 -1
  39. package/dist/control-plane/inbox.js +2 -120
  40. package/dist/control-plane/inbox.js.map +1 -1
  41. package/dist/control-plane/resolve-cwd.js +0 -61
  42. package/dist/control-plane/resolve-cwd.js.map +1 -1
  43. package/dist/control-plane/schema-migration.js +0 -9
  44. package/dist/control-plane/schema-migration.js.map +1 -1
  45. package/dist/control-plane/seed-default-playbook.js +5 -70
  46. package/dist/control-plane/seed-default-playbook.js.map +1 -1
  47. package/dist/control-plane/steps.js +0 -15
  48. package/dist/control-plane/steps.js.map +1 -1
  49. package/dist/e2e/kit/assertions.js +1 -1
  50. package/dist/e2e/kit/assertions.js.map +1 -1
  51. package/dist/engine/dbos.service.js +9 -179
  52. package/dist/engine/dbos.service.js.map +1 -1
  53. package/dist/engine/ensure-postgres.js +0 -48
  54. package/dist/engine/ensure-postgres.js.map +1 -1
  55. package/dist/host/daemon.js +2 -21
  56. package/dist/host/daemon.js.map +1 -1
  57. package/dist/host/dbos-identity.js +0 -31
  58. package/dist/host/dbos-identity.js.map +1 -1
  59. package/dist/host/ensure-host.js +1 -37
  60. package/dist/host/ensure-host.js.map +1 -1
  61. package/dist/host/ensure-revisium.js +1 -135
  62. package/dist/host/ensure-revisium.js.map +1 -1
  63. package/dist/host/host-runtime.js +0 -28
  64. package/dist/host/host-runtime.js.map +1 -1
  65. package/dist/host/host.lifecycle.js +0 -27
  66. package/dist/host/host.lifecycle.js.map +1 -1
  67. package/dist/host/queue-ownership.js +0 -42
  68. package/dist/host/queue-ownership.js.map +1 -1
  69. package/dist/host/queue-poller-census.js +1 -28
  70. package/dist/host/queue-poller-census.js.map +1 -1
  71. package/dist/http/graphql-host.module.js +0 -3
  72. package/dist/http/graphql-host.module.js.map +1 -1
  73. package/dist/mcp/mcp-capabilities.js +19 -14
  74. package/dist/mcp/mcp-capabilities.js.map +1 -1
  75. package/dist/mcp/mcp-facade.service.js +41 -23
  76. package/dist/mcp/mcp-facade.service.js.map +1 -1
  77. package/dist/mcp/mcp-http.service.js +0 -18
  78. package/dist/mcp/mcp-http.service.js.map +1 -1
  79. package/dist/mcp/mcp-tools.js +18 -40
  80. package/dist/mcp/mcp-tools.js.map +1 -1
  81. package/dist/observability/activity-signal.js +0 -4
  82. package/dist/observability/activity-signal.js.map +1 -1
  83. package/dist/observability/agent-activity-reporter.js +0 -4
  84. package/dist/observability/agent-activity-reporter.js.map +1 -1
  85. package/dist/pipeline/await-human.js +0 -40
  86. package/dist/pipeline/await-human.js.map +1 -1
  87. package/dist/pipeline/data-driven-task.workflow.js +106 -236
  88. package/dist/pipeline/data-driven-task.workflow.js.map +1 -1
  89. package/dist/pipeline/data-driven-template.js +0 -25
  90. package/dist/pipeline/data-driven-template.js.map +1 -1
  91. package/dist/pipeline/pipeline.module.js +0 -12
  92. package/dist/pipeline/pipeline.module.js.map +1 -1
  93. package/dist/pipeline/pipeline.service.js +10 -99
  94. package/dist/pipeline/pipeline.service.js.map +1 -1
  95. package/dist/pipeline-core/index.js +1 -13
  96. package/dist/pipeline-core/index.js.map +1 -1
  97. package/dist/pipeline-core/interpret.js +21 -94
  98. package/dist/pipeline-core/interpret.js.map +1 -1
  99. package/dist/pipeline-core/kit/assertions.js +0 -19
  100. package/dist/pipeline-core/kit/assertions.js.map +1 -1
  101. package/dist/pipeline-core/kit/builders.js +1 -21
  102. package/dist/pipeline-core/kit/builders.js.map +1 -1
  103. package/dist/pipeline-core/kit/drive.js +1 -31
  104. package/dist/pipeline-core/kit/drive.js.map +1 -1
  105. package/dist/pipeline-core/kit/fixtures.js +8 -82
  106. package/dist/pipeline-core/kit/fixtures.js.map +1 -1
  107. package/dist/pipeline-core/kit/index.js +0 -8
  108. package/dist/pipeline-core/kit/index.js.map +1 -1
  109. package/dist/pipeline-core/types.js +13 -52
  110. package/dist/pipeline-core/types.js.map +1 -1
  111. package/dist/pipeline-core/validate-capability.js +0 -3
  112. package/dist/pipeline-core/validate-capability.js.map +1 -1
  113. package/dist/pipeline-core/validate-conflicts.js +0 -9
  114. package/dist/pipeline-core/validate-conflicts.js.map +1 -1
  115. package/dist/pipeline-core/validate-dataflow.js +0 -17
  116. package/dist/pipeline-core/validate-dataflow.js.map +1 -1
  117. package/dist/pipeline-core/validate-diff.js +3 -36
  118. package/dist/pipeline-core/validate-diff.js.map +1 -1
  119. package/dist/pipeline-core/validate-edges.js +0 -6
  120. package/dist/pipeline-core/validate-edges.js.map +1 -1
  121. package/dist/pipeline-core/validate-graph.js +0 -11
  122. package/dist/pipeline-core/validate-graph.js.map +1 -1
  123. package/dist/pipeline-core/validate-loops.js +37 -44
  124. package/dist/pipeline-core/validate-loops.js.map +1 -1
  125. package/dist/pipeline-core/validate-parallel.js +9 -15
  126. package/dist/pipeline-core/validate-parallel.js.map +1 -1
  127. package/dist/pipeline-core/validate-sink.js +0 -7
  128. package/dist/pipeline-core/validate-sink.js.map +1 -1
  129. package/dist/pipeline-core/validate-topology.js +1 -20
  130. package/dist/pipeline-core/validate-topology.js.map +1 -1
  131. package/dist/pipeline-core/validate-verdict.js +52 -7
  132. package/dist/pipeline-core/validate-verdict.js.map +1 -1
  133. package/dist/pipeline-core/validate.js +5 -29
  134. package/dist/pipeline-core/validate.js.map +1 -1
  135. package/dist/playbook/catalog-loader.js +8 -3
  136. package/dist/playbook/catalog-loader.js.map +1 -1
  137. package/dist/playbook/import-mapper.js +1 -9
  138. package/dist/playbook/import-mapper.js.map +1 -1
  139. package/dist/poller/pr-readiness-core.js +0 -74
  140. package/dist/poller/pr-readiness-core.js.map +1 -1
  141. package/dist/revisium/inbox.service.js +0 -24
  142. package/dist/revisium/inbox.service.js.map +1 -1
  143. package/dist/revisium/playbooks.service.js +2 -4
  144. package/dist/revisium/playbooks.service.js.map +1 -1
  145. package/dist/revisium/revisium.module.js +0 -12
  146. package/dist/revisium/revisium.module.js.map +1 -1
  147. package/dist/revisium/roles.service.js +0 -6
  148. package/dist/revisium/roles.service.js.map +1 -1
  149. package/dist/revisium/run.service.js +1 -75
  150. package/dist/revisium/run.service.js.map +1 -1
  151. package/dist/revisium/tokens.js +0 -4
  152. package/dist/revisium/tokens.js.map +1 -1
  153. package/dist/run/append-event.js +0 -34
  154. package/dist/run/append-event.js.map +1 -1
  155. package/dist/run/block-run.js.map +1 -1
  156. package/dist/run/cancel-run.js +0 -33
  157. package/dist/run/cancel-run.js.map +1 -1
  158. package/dist/run/complete-run.js.map +1 -1
  159. package/dist/run/create-run.js +0 -7
  160. package/dist/run/create-run.js.map +1 -1
  161. package/dist/run/fail-run.js +0 -3
  162. package/dist/run/fail-run.js.map +1 -1
  163. package/dist/run/inspect-run.js +0 -26
  164. package/dist/run/inspect-run.js.map +1 -1
  165. package/dist/run/run-outputs.js +0 -19
  166. package/dist/run/run-outputs.js.map +1 -1
  167. package/dist/run/terminal-run-status.js +0 -12
  168. package/dist/run/terminal-run-status.js.map +1 -1
  169. package/dist/runners/claude-code.service.js +0 -11
  170. package/dist/runners/claude-code.service.js.map +1 -1
  171. package/dist/runners/codex.service.js +0 -9
  172. package/dist/runners/codex.service.js.map +1 -1
  173. package/dist/runners/gh-identity.js +0 -52
  174. package/dist/runners/gh-identity.js.map +1 -1
  175. package/dist/runners/integrator-branch-naming.js +3 -11
  176. package/dist/runners/integrator-branch-naming.js.map +1 -1
  177. package/dist/runners/integrator-git.js +0 -25
  178. package/dist/runners/integrator-git.js.map +1 -1
  179. package/dist/runners/integrator-remote.js +0 -2
  180. package/dist/runners/integrator-remote.js.map +1 -1
  181. package/dist/runners/integrator-types.js +0 -7
  182. package/dist/runners/integrator-types.js.map +1 -1
  183. package/dist/runners/integrator.js +3 -167
  184. package/dist/runners/integrator.js.map +1 -1
  185. package/dist/runners/runner.module.js +0 -6
  186. package/dist/runners/runner.module.js.map +1 -1
  187. package/dist/runners/tokens.js +0 -4
  188. package/dist/runners/tokens.js.map +1 -1
  189. package/dist/runners/worktree.service.js +1 -17
  190. package/dist/runners/worktree.service.js.map +1 -1
  191. package/dist/task-control-plane/run-watch.service.js +49 -173
  192. package/dist/task-control-plane/run-watch.service.js.map +1 -1
  193. package/dist/task-control-plane/task-control-plane-api.service.js +15 -17
  194. package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -1
  195. package/dist/worker/build-context.js +0 -16
  196. package/dist/worker/build-context.js.map +1 -1
  197. package/dist/worker/claude-code-runner.js +9 -42
  198. package/dist/worker/claude-code-runner.js.map +1 -1
  199. package/dist/worker/codex-runner.js +88 -22
  200. package/dist/worker/codex-runner.js.map +1 -1
  201. package/dist/worker/git-worktree-manager.js +20 -67
  202. package/dist/worker/git-worktree-manager.js.map +1 -1
  203. package/dist/worker/process-executor.js +0 -12
  204. package/dist/worker/process-executor.js.map +1 -1
  205. package/dist/worker/result-envelope.js +33 -49
  206. package/dist/worker/result-envelope.js.map +1 -1
  207. package/dist/worker/runner-dispatch.js +0 -3
  208. package/dist/worker/runner-dispatch.js.map +1 -1
  209. package/dist/worker/runner.js.map +1 -1
  210. package/dist/worker/stub-runner.js +0 -7
  211. package/dist/worker/stub-runner.js.map +1 -1
  212. package/package.json +2 -2
@@ -1,15 +1,4 @@
1
- /**
2
- * pipeline-core/kit/fixtures.ts — typed Template fixtures (the e2e-style "real pipelines" + targeted).
3
- *
4
- * `featureDevelopment` is the §13 canonical example, transcribed faithfully to a typed `Template`.
5
- * `localChange` is its no-gate sibling (§13 footnote). The rest are small, single-purpose fixtures:
6
- * nested-scope loops, a parallel/join, and one INVALID template per §12 rule (each named for the rule
7
- * + diagnostic it is designed to trip), so validation tests read as a rule catalogue.
8
- */
9
1
  import { allOf, counterGte, counterLt, joinAll, joinAny, joinQuorum, node, on, otherwise, template, verdictEq, verdictIn, } from './builders.js';
10
- // ─────────────────────────────────────────────────────────────────────────────
11
- // §13 — feature-development (the canonical example).
12
- // ─────────────────────────────────────────────────────────────────────────────
13
2
  export function featureDevelopment() {
14
3
  return template('feature-development')
15
4
  .title('Feature development with plan + merge gates and bounded rework')
@@ -46,25 +35,21 @@ export function featureDevelopment() {
46
35
  ]), node.terminal('mergedEnd', 'succeeded'), node.terminal('failedEnd', 'failed'), node.terminal('blockedEnd', 'blocked'))
47
36
  .build();
48
37
  }
49
- /**
50
- * confirmMergeFlow — minimal fixture exercising the `script:confirmMerge` node (plan 0017 follow-up):
51
- * entry → confirmMerge → mergedEnd, with catch routing a block to `blockedEnd` and a throw to `failedEnd`.
52
- * Used to assert the adapter routes a merged result to a SUCCEEDED terminal (worktree released) and a
53
- * not-merged block to a BLOCKED terminal (worktree kept).
54
- */
55
38
  export function confirmMergeFlow() {
56
39
  return template('confirm-merge-flow')
57
40
  .title('confirmMerge → merged (succeeded) / not-merged (blocked) — plan 0017 test fixture')
58
41
  .specVersion('1.0')
59
42
  .entry('confirmMerge')
60
43
  .domain('approved', 'clean', 'blocker', 'changes_requested')
61
- .add(node.script('confirmMerge', 'script:confirmMerge', 'mergedEnd', {
44
+ .add(node.script('confirmMerge', 'script:confirmMerge', 'cleanupWorktree', {
62
45
  resultSchema: 'schema:integration',
63
46
  onFailure: 'route',
64
47
  catch: [
65
48
  { onError: 'revo.ScriptBlocked', goto: 'blockedEnd' },
66
49
  { onError: 'revo.ScriptFailed', goto: 'failedEnd' },
67
50
  ],
51
+ }), node.script('cleanupWorktree', 'script:cleanupWorktree', 'mergedEnd', {
52
+ resultSchema: 'schema:integration',
68
53
  }), node.terminal('mergedEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'), node.terminal('failedEnd', 'failed'))
69
54
  .build();
70
55
  }
@@ -99,14 +84,6 @@ function prFeedbackConsumes() {
99
84
  freshMergeFeedbackConsume(),
100
85
  ];
101
86
  }
102
- /**
103
- * featureDevelopmentPrReview — the plan 0018 PR review-feedback loop, transcribed to a typed Template.
104
- * Mirrors the seeded `feature-development` tail: after the integrator opens the PR, `pollPr` observes +
105
- * classifies (review_changes > ci_changes > clean); review comments go through analyst `triage`
106
- * (fix/wontfix/question) with a separate question gate; CI failures loop the developer; fixes are
107
- * re-pushed BEFORE `respondThreads` replies + resolves (so the reply carries the fix sha). Used by the
108
- * data-driven adapter unit tests; the live JSON template (default + e2e fixture) carries the same tail.
109
- */
110
87
  export function featureDevelopmentPrReview() {
111
88
  return template('feature-development-pr-review')
112
89
  .title('Feature development with a PR review-feedback loop (plan 0018)')
@@ -150,9 +127,7 @@ export function featureDevelopmentPrReview() {
150
127
  { node: 'ciRework', as: 'ciChange', optional: true, staleOk: true },
151
128
  ],
152
129
  catch: [{ onError: 'revo.ScriptFailed', goto: 'failedEnd' }],
153
- }),
154
- // ── plan 0018/issue 143 — observe the PR, then re-check readiness immediately before the merge gate ──
155
- prReadinessScript('pollPr', 'prRouter'), node.choice('prRouter', prReadinessBranches('mergeReadiness')), prReadinessScript('mergeReadiness', 'mergeReadinessRouter'), node.choice('mergeReadinessRouter', prReadinessBranches('mergeGate')), node.agent('ciRework', 'role:developer', 'integrator', {
130
+ }), prReadinessScript('pollPr', 'prRouter'), node.choice('prRouter', prReadinessBranches('mergeReadiness')), prReadinessScript('mergeReadiness', 'mergeReadinessRouter'), node.choice('mergeReadinessRouter', prReadinessBranches('mergeGate')), node.agent('ciRework', 'role:developer', 'integrator', {
156
131
  resultSchema: 'schema:change', incrementCounters: ['ciLoop'], onFailure: 'abort',
157
132
  produces: { name: 'change' },
158
133
  consumes: prFeedbackConsumes(),
@@ -191,9 +166,6 @@ export function featureDevelopmentPrReview() {
191
166
  }), node.terminal('mergedEnd', 'succeeded'), node.terminal('failedEnd', 'failed'), node.terminal('blockedEnd', 'blocked'))
192
167
  .build();
193
168
  }
194
- // ─────────────────────────────────────────────────────────────────────────────
195
- // §13 footnote — local-change (orchestrator + developer, NO humanGate).
196
- // ─────────────────────────────────────────────────────────────────────────────
197
169
  export function localChange() {
198
170
  return template('local-change')
199
171
  .title('Local change — orchestrator + developer, no gate')
@@ -202,13 +174,6 @@ export function localChange() {
202
174
  .add(node.agent('orchestrator', 'role:orchestrator', 'developer', { resultSchema: 'schema:plan' }), node.agent('developer', 'role:developer', 'doneEnd', { resultSchema: 'schema:change' }), node.terminal('doneEnd', 'succeeded'))
203
175
  .build();
204
176
  }
205
- // ─────────────────────────────────────────────────────────────────────────────
206
- // Targeted — a nested-scope rework loop (inner loop resets on outer re-entry, §7).
207
- // ─────────────────────────────────────────────────────────────────────────────
208
- /**
209
- * outer (cap 2) ⊃ inner (cap 2). `outerWork` increments `outer` (and resets `inner`); `innerWork`
210
- * increments `inner`. The inner cap routes back to the outer loop; the outer cap routes to blocked.
211
- */
212
177
  export function nestedScopeLoop() {
213
178
  return template('nested-scope-loop')
214
179
  .entry('start')
@@ -226,10 +191,6 @@ export function nestedScopeLoop() {
226
191
  ]), node.agent('outerWork', 'role:worker', 'innerWork', { incrementCounters: ['outer'] }), node.terminal('doneEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'))
227
192
  .build();
228
193
  }
229
- // ─────────────────────────────────────────────────────────────────────────────
230
- // Targeted — a parallel/join (two review branches → join → terminal).
231
- // ─────────────────────────────────────────────────────────────────────────────
232
- /** Map a join-mode kind to its `JoinMode` (quorum fixed at 2 for this fan-out shape). */
233
194
  function joinModeFromKind(kind) {
234
195
  if (kind === 'all')
235
196
  return joinAll();
@@ -237,7 +198,6 @@ function joinModeFromKind(kind) {
237
198
  return joinAny();
238
199
  return joinQuorum(2);
239
200
  }
240
- /** `joinModeKind` selects `all` (default), `any`, or `quorum{2}` on the same fan-out shape. */
241
201
  export function parallelReview(joinModeKind = 'all') {
242
202
  const mode = joinModeFromKind(joinModeKind);
243
203
  return template('parallel-review')
@@ -246,14 +206,9 @@ export function parallelReview(joinModeKind = 'all') {
246
206
  .add(node.parallel('fanout', [
247
207
  { id: 'sec', entry: 'secReview' },
248
208
  { id: 'perf', entry: 'perfReview' },
249
- ], 'reviewJoin'), node.agent('secReview', 'role:reviewer', 'reviewJoin'), node.agent('perfReview', 'role:reviewer', 'reviewJoin'),
250
- // `merge` declared so the 2-writer fan-out is well-formed under all modes (§12.8).
251
- node.join('reviewJoin', mode, 'joinRouter', { merge: { findings: 'appendByBranchOrder' } }), node.choice('joinRouter', [on(verdictEq('clean'), 'doneEnd'), otherwise('blockedEnd')]), node.terminal('doneEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'))
209
+ ], 'reviewJoin'), node.agent('secReview', 'role:reviewer', 'reviewJoin'), node.agent('perfReview', 'role:reviewer', 'reviewJoin'), node.join('reviewJoin', mode, 'joinRouter', { merge: { findings: 'appendByBranchOrder' } }), node.choice('joinRouter', [on(verdictEq('clean'), 'doneEnd'), otherwise('blockedEnd')]), node.terminal('doneEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'))
252
210
  .build();
253
211
  }
254
- // ─────────────────────────────────────────────────────────────────────────────
255
- // Targeted — a gate with a timeout edge (§6) + a node with onFailure=route+catch (§6).
256
- // ─────────────────────────────────────────────────────────────────────────────
257
212
  export function gateWithTimeout() {
258
213
  return template('gate-with-timeout')
259
214
  .entry('gate')
@@ -263,108 +218,82 @@ export function gateWithTimeout() {
263
218
  }), node.terminal('doneEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'), node.terminal('failedEnd', 'failed'))
264
219
  .build();
265
220
  }
266
- // ─────────────────────────────────────────────────────────────────────────────
267
- // INVALID fixtures — one per §12 rule. Each is the minimal shape that trips its rule.
268
- // ─────────────────────────────────────────────────────────────────────────────
269
- /** rule 1 — entry points at a node that does not exist (ENTRY_UNRESOLVED). */
270
221
  export const invalidEntryUnresolved = () => template('inv').entry('ghost').domain('approved').add(node.terminal('end', 'succeeded')).build();
271
- /** rule 2 — an edge points at a non-existent node (REF_UNRESOLVED). */
272
222
  export const invalidRefUnresolved = () => template('inv').entry('a').domain('approved').add(node.agent('a', 'role:x', 'nowhere')).build();
273
- /** rule 3 — a non-terminal with no exit (NONTERMINAL_NO_EXIT) — forced via a choice with no branches. */
274
223
  export const invalidNonterminalNoExit = () => template('inv').entry('a').domain('approved').add(node.choice('a', [])).build();
275
- /** rule 3 — a terminal with a bad status (TERMINAL_BAD_STATUS). */
276
224
  export const invalidTerminalBadStatus = () => {
277
225
  const t = template('inv').entry('a').domain('approved').add(node.terminal('a', 'succeeded')).build();
278
- t.nodes['a'].status = 'done'; // not in {succeeded,failed,blocked}
226
+ t.nodes['a'].status = 'done';
279
227
  return t;
280
228
  };
281
- /** rule 4 — a choice with no default (ROUTING_NO_DEFAULT). */
282
229
  export const invalidNoDefault = () => template('inv')
283
230
  .entry('a')
284
231
  .domain('approved')
285
232
  .add(node.choice('a', [on(verdictEq('approved'), 'end')]), node.terminal('end', 'succeeded'))
286
233
  .build();
287
- /** rule 4 — a guard placed AFTER the default (ROUTING_GUARD_AFTER_DEFAULT). */
288
234
  export const invalidGuardAfterDefault = () => template('inv')
289
235
  .entry('a')
290
236
  .domain('approved')
291
237
  .add(node.choice('a', [otherwise('end'), on(verdictEq('approved'), 'end')]), node.terminal('end', 'succeeded'))
292
238
  .build();
293
- /** rule 5 — a node unreachable from entry (UNREACHABLE_NODE). */
294
239
  export const invalidUnreachable = () => template('inv')
295
240
  .entry('a')
296
241
  .domain('approved')
297
242
  .add(node.agent('a', 'role:x', 'end'), node.terminal('end', 'succeeded'), node.agent('orphan', 'role:y', 'end'))
298
243
  .build();
299
- /** rule 6 — an unbounded back-edge (LOOP_UNBOUNDED): a choice loops back with no counter.gte cap. */
300
244
  export const invalidUnboundedLoop = () => template('inv')
301
245
  .entry('a')
302
246
  .domain('approved')
303
247
  .add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(verdictEq('approved'), 'a'), otherwise('end')]), node.terminal('end', 'succeeded'))
304
248
  .build();
305
- /** rule 7 — a guard references an undeclared scope (SCOPE_UNDECLARED). */
306
249
  export const invalidScopeUndeclared = () => template('inv')
307
250
  .entry('a')
308
251
  .domain('approved')
309
252
  .add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(counterGte('ghostScope', 3), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
310
253
  .build();
311
- /** rule 7 — a scope whose parent does not resolve (SCOPE_PARENT_UNRESOLVED). The scope is otherwise
312
- * well-formed (incremented on its own loop) so the parent-unresolved finding stands alone. */
313
254
  export const invalidScopeParent = () => template('inv')
314
255
  .entry('a')
315
256
  .domain('approved')
316
257
  .scope('child', { cap: 2, parent: 'ghostParent' })
317
258
  .add(node.agent('a', 'role:x', 'router', { incrementCounters: ['child'] }), node.choice('router', [on(counterLt('child', 2), 'a'), otherwise('end')]), node.terminal('end', 'succeeded'))
318
259
  .build();
319
- /** rule 8 — quorum K > N (QUORUM_K_GT_N). */
320
260
  export const invalidQuorumKgtN = () => template('inv')
321
261
  .entry('fanout')
322
262
  .domain('clean')
323
263
  .add(node.parallel('fanout', [{ id: 'a', entry: 'aWork' }, { id: 'b', entry: 'bWork' }], 'j'), node.agent('aWork', 'role:x', 'j'), node.agent('bWork', 'role:y', 'j'), node.join('j', joinQuorum(3), 'end', { merge: { f: 'overwrite' } }), node.terminal('end', 'succeeded'))
324
264
  .build();
325
- /** rule 8 — a cross-branch goto (BRANCH_CROSS_GOTO): branch a's node jumps into branch b. */
326
265
  export const invalidCrossBranchGoto = () => template('inv')
327
266
  .entry('fanout')
328
267
  .domain('clean')
329
- .add(node.parallel('fanout', [{ id: 'a', entry: 'aWork' }, { id: 'b', entry: 'bWork' }], 'j'), node.agent('aWork', 'role:x', 'bWork'), // crosses into branch b
330
- node.agent('bWork', 'role:y', 'j'), node.join('j', joinAll(), 'end', { merge: { f: 'overwrite' } }), // merge present → only BRANCH_CROSS_GOTO trips
331
- node.terminal('end', 'succeeded'))
268
+ .add(node.parallel('fanout', [{ id: 'a', entry: 'aWork' }, { id: 'b', entry: 'bWork' }], 'j'), node.agent('aWork', 'role:x', 'bWork'), node.agent('bWork', 'role:y', 'j'), node.join('j', joinAll(), 'end', { merge: { f: 'overwrite' } }), node.terminal('end', 'succeeded'))
332
269
  .build();
333
- /** rule 8 — a multi-writer fan-out with no merge reducer (MERGE_MISSING). */
334
270
  export const invalidMissingMerge = () => template('inv')
335
271
  .entry('fanout')
336
272
  .domain('clean')
337
- .add(node.parallel('fanout', [{ id: 'a', entry: 'aWork' }, { id: 'b', entry: 'bWork' }], 'j'), node.agent('aWork', 'role:x', 'j'), node.agent('bWork', 'role:y', 'j'), node.join('j', joinAll(), 'end'), // no merge declared, 2 effect writers
338
- node.terminal('end', 'succeeded'))
273
+ .add(node.parallel('fanout', [{ id: 'a', entry: 'aWork' }, { id: 'b', entry: 'bWork' }], 'j'), node.agent('aWork', 'role:x', 'j'), node.agent('bWork', 'role:y', 'j'), node.join('j', joinAll(), 'end'), node.terminal('end', 'succeeded'))
339
274
  .build();
340
- /** rule 9 — a guard uses an undeclared verdict (VERDICT_UNDECLARED). */
341
275
  export const invalidVerdictUndeclared = () => template('inv')
342
276
  .entry('a')
343
277
  .domain('approved')
344
278
  .add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(verdictEq('mystery'), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
345
279
  .build();
346
- /** rule 9 — a guard uses a CORE verdict, which must route structurally (VERDICT_CORE_IN_GUARD). */
347
280
  export const invalidCoreVerdictInGuard = () => template('inv')
348
281
  .entry('a')
349
282
  .domain('approved')
350
283
  .add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(verdictEq('succeeded'), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
351
284
  .build();
352
- /** rule 9 — a domain label shadows a core verdict (VERDICT_DOMAIN_SHADOWS_CORE). */
353
285
  export const invalidDomainShadowsCore = () => template('inv')
354
286
  .entry('a')
355
287
  .domain('approved', 'failed')
356
288
  .add(node.agent('a', 'role:x', 'end'), node.terminal('end', 'succeeded'))
357
289
  .build();
358
- /** rule 9 — a gate outcome not in domain (GATE_OUTCOME_NOT_SUBSET). */
359
290
  export const invalidGateOutcomeNotSubset = () => template('inv')
360
291
  .entry('g')
361
292
  .domain('approved')
362
293
  .add(node.humanGate('g', 'r', ['approved', 'rejected'], [on(verdictEq('approved'), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
363
294
  .build();
364
- /** rule 11 — a node id that breaks the id pattern (ID_BAD_PATTERN). */
365
295
  export const invalidBadId = () => {
366
296
  const t = template('inv').entry('a').domain('approved').add(node.agent('a', 'role:x', 'end'), node.terminal('end', 'succeeded')).build();
367
- // Re-key 'a' to an illegal id and re-point entry.
368
297
  const a = t.nodes['a'];
369
298
  delete t.nodes['a'];
370
299
  a.id = '1bad';
@@ -372,19 +301,16 @@ export const invalidBadId = () => {
372
301
  t.entry = '1bad';
373
302
  return t;
374
303
  };
375
- /** rule 12 — a malformed capability ref (CAPABILITY_REF_SHAPE). */
376
304
  export const invalidCapabilityRef = () => template('inv')
377
305
  .entry('a')
378
306
  .domain('approved')
379
307
  .add(node.agent('a', 'not-a-role-handle', 'end'), node.terminal('end', 'succeeded'))
380
308
  .build();
381
- /** rule 6 — onFailure=route with NO catch (FAILURE_ROUTE_NO_CATCH). */
382
309
  export const invalidRouteNoCatch = () => template('inv')
383
310
  .entry('a')
384
311
  .domain('approved')
385
312
  .add(node.script('a', 'script:x', 'end', { onFailure: 'route' }), node.terminal('end', 'succeeded'))
386
313
  .build();
387
- /** rule 6 — onFailure=escalate with NO escalateTo (FAILURE_ESCALATE_NO_TARGET). */
388
314
  export const invalidEscalateNoTarget = () => template('inv')
389
315
  .entry('a')
390
316
  .domain('approved')
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../src/pipeline-core/kit/fixtures.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../src/pipeline-core/kit/fixtures.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,3 @@
1
- /**
2
- * pipeline-core/kit — the readability test kit (mirrors src/e2e/kit).
3
- *
4
- * builders — fluent `template()` / `node.*` / condition + branch shorthands.
5
- * fixtures — the two real pipelines (§13) + targeted valid/invalid fixtures.
6
- * drive — run `step()` to a terminal feeding scripted verdicts, recording the path.
7
- * assertions — `assertValid` / `assertDiagnostics` / `assertReachesTerminal` / `assertPath` / …
8
- */
9
1
  export * from './builders.js';
10
2
  export * from './fixtures.js';
11
3
  export * from './drive.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pipeline-core/kit/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pipeline-core/kit/index.ts"],"names":[],"mappings":"AAOA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC"}
@@ -1,22 +1,5 @@
1
- /**
2
- * pipeline-core/types.ts — the pure, framework-free data model for plan 0015.
3
- *
4
- * Spec: docs/plans/0015-pipeline-state-machine.md (§1 nodes, §3 transitions+guards, §4 fork/join,
5
- * §6 failure model, §7 scoped counters, §8 verdicts, §10 Decision + RunState).
6
- *
7
- * ZERO imports from NestJS / DBOS / Revisium / runners / any I/O. Everything here is plain data.
8
- */
9
- // ─────────────────────────────────────────────────────────────────────────────
10
- // §8 Verdicts — two tiers
11
- // ─────────────────────────────────────────────────────────────────────────────
12
- /**
13
- * CORE verdicts are carried by `specVersion` (§8). The engine acts on these STRUCTURALLY
14
- * (catch / onFailure / terminal / timeout) — they NEVER appear in a branch guard (§3/§6).
15
- */
16
1
  export const CORE_VERDICTS = ['succeeded', 'failed', 'errored', 'timed_out'];
17
- /** Terminal run statuses a `terminal` node may carry, and the `complete` Decision reports (§1/§10). */
18
2
  export const TERMINAL_STATUSES = ['succeeded', 'failed', 'blocked'];
19
- /** Every `Condition` op tag — used by validation to reject anything outside the v1 grammar. */
20
3
  export const CONDITION_OPS = [
21
4
  'verdict.eq',
22
5
  'verdict.in',
@@ -33,14 +16,6 @@ export function isGuardedBranch(b) {
33
16
  return 'when' in b;
34
17
  }
35
18
  export const FAILURE_POLICIES = ['abort', 'route', 'escalate'];
36
- // ─────────────────────────────────────────────────────────────────────────────
37
- // §1/§3/§4 Node — the closed 8-kind discriminated union.
38
- //
39
- // Node ids, scope ids, role/script capability handles and result-schema handles are all plain
40
- // strings; the field and parameter names below carry their domain meaning. (A roleRef/scriptRef is an
41
- // opaque capability handle the adapter resolves — the engine holds no role-ids, §1; a resultSchema is
42
- // validated at the ADAPTER boundary, never in the core, §10.)
43
- // ─────────────────────────────────────────────────────────────────────────────
44
19
  export const NODE_KINDS = [
45
20
  'agent',
46
21
  'script',
@@ -53,78 +28,64 @@ export const NODE_KINDS = [
53
28
  ];
54
29
  export const JOIN_MODE_KINDS = ['all', 'any', 'quorum'];
55
30
  export const MERGE_REDUCERS = ['overwrite', 'appendByBranchOrder'];
56
- /** True for a well-formed reserved engine error code. */
31
+ export const JOIN_VERDICT_REDUCER_KINDS = ['allIn'];
57
32
  export function isRevoErrorCode(value) {
58
33
  return /^revo\.[A-Za-z][A-Za-z0-9]*$/.test(value);
59
34
  }
60
- /** Stable diagnostic codes — one per §12 rule (+ sub-codes), referenced by tests and the adapter. */
61
35
  export const DIAGNOSTIC_CODES = [
62
- // 1 single entry
63
36
  'ENTRY_MISSING',
64
37
  'ENTRY_UNRESOLVED',
65
- // 2 references resolve
66
38
  'REF_UNRESOLVED',
67
- // 3 terminals / non-terminals
68
39
  'TERMINAL_BAD_STATUS',
69
40
  'TERMINAL_HAS_EXIT',
70
41
  'NONTERMINAL_NO_EXIT',
71
- // 4 total routing
72
42
  'ROUTING_NO_DEFAULT',
73
43
  'ROUTING_GUARD_AFTER_DEFAULT',
74
44
  'ROUTING_MULTIPLE_DEFAULT',
75
- // 5 reachability
76
45
  'UNREACHABLE_NODE',
77
- // 6 loop-cap presence
78
46
  'LOOP_UNBOUNDED',
79
- // 7 counter-scope well-formedness
80
47
  'SCOPE_UNDECLARED',
81
48
  'SCOPE_PARENT_UNRESOLVED',
82
49
  'SCOPE_CYCLE',
83
50
  'SCOPE_NOT_STRICT_ANCESTOR',
84
51
  'SCOPE_SPANS_PARALLEL',
85
- // 8 parallel/join well-formedness
86
52
  'PARALLEL_JOIN_UNRESOLVED',
87
53
  'PARALLEL_JOIN_KIND',
88
54
  'JOIN_MULTIPLE_PARALLELS',
89
55
  'BRANCH_MEMBERSHIP',
90
56
  'BRANCH_CROSS_GOTO',
57
+ 'BRANCH_TERMINAL_BEFORE_JOIN',
91
58
  'JOIN_UNREACHABLE_BRANCH',
92
59
  'QUORUM_K_GT_N',
93
60
  'MERGE_MISSING',
94
61
  'MERGE_LASTWRITE_REJECTED',
95
- // 9 verdict-vocabulary closure
96
62
  'VERDICT_UNDECLARED',
97
63
  'VERDICT_CORE_IN_GUARD',
98
64
  'VERDICT_DOMAIN_SHADOWS_CORE',
99
65
  'VERDICT_DECLARED_UNUSED',
66
+ 'VERDICT_REDUCER_BAD_KIND',
67
+ 'VERDICT_REDUCER_BAD_SHAPE',
100
68
  'GATE_OUTCOME_NOT_SUBSET',
101
- // 10 conflict-matrix
102
69
  'CONFLICT_SAME_ACTOR',
103
70
  'CONFLICT_REF_INVALID',
104
- // 11 id/namespace hygiene
105
71
  'ID_DUPLICATE',
106
72
  'ID_BAD_PATTERN',
107
73
  'REVO_CODE_COLLIDES_VERDICT',
108
- // 12 capability-ref shape
109
74
  'CAPABILITY_REF_SHAPE',
110
- // 6 failure policy well-formedness (validated structurally alongside refs)
111
75
  'FAILURE_ROUTE_NO_CATCH',
112
76
  'FAILURE_ESCALATE_NO_TARGET',
113
77
  'CATCH_BAD_CODE',
114
- // grammar / shape sanity (feeds rules 2/4/9 — a malformed Condition can't be evaluated)
115
78
  'CONDITION_BAD_OP',
116
79
  'CONDITION_BAD_SHAPE',
117
- // 14 dataflow (produces/consumes, 0016 §7)
118
- 'CONSUMES_NODE_UNRESOLVED', // consumes.node is not a node id
119
- 'CONSUMES_PRODUCER_MISSING', // referenced node declares no produces / cannot produce
120
- 'CONSUMES_NOT_DOMINATED', // producer does not dominate the consumer (error req / warn opt)
121
- 'CONSUMES_STALE_RISK', // loop re-enterable without the producer + latest, no staleOk (warning)
122
- 'CONSUMES_CROSS_PARALLEL_UNSAFE', // producer/consumer in unsafely-related parallel branches
123
- 'CONSUMES_AS_DUP', // two refs on one node share the same `as` key
124
- 'PRODUCES_NAME_DUP', // two nodes share a produces.name (warning — grammar keys by node)
125
- 'GATE_REF_UNRESOLVED', // humanGate gatedArtifact/verdictFrom references an unknown node (D3)
126
- 'GATE_ARTIFACT_NO_PRODUCES', // humanGate gatedArtifact node declares no produces → no artifact (D3)
127
- // 13 diff classifier
80
+ 'CONSUMES_NODE_UNRESOLVED',
81
+ 'CONSUMES_PRODUCER_MISSING',
82
+ 'CONSUMES_NOT_DOMINATED',
83
+ 'CONSUMES_STALE_RISK',
84
+ 'CONSUMES_CROSS_PARALLEL_UNSAFE',
85
+ 'CONSUMES_AS_DUP',
86
+ 'PRODUCES_NAME_DUP',
87
+ 'GATE_REF_UNRESOLVED',
88
+ 'GATE_ARTIFACT_NO_PRODUCES',
128
89
  'DIFF_UNCLASSIFIED',
129
90
  'DIFF_NODE_DELETED',
130
91
  'DIFF_NODE_KIND_CHANGED',
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pipeline-core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pipeline-core/types.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAU,CAAC;AAItF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAc7E,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,KAAK;IACL,KAAK;IACL,KAAK;CACG,CAAC;AASX,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,OAAO,SAAS,IAAI,CAAC,CAAC;AACxB,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,OAAO,MAAM,IAAI,CAAC,CAAC;AACrB,CAAC;AAMD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AAMxE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO;IACP,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,UAAU;CACF,CAAC;AA8EX,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAU,CAAC;AAGjE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,qBAAqB,CAAU,CAAC;AAQ5E,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,OAAO,CAAU,CAAC;AAgD7D,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,OAAO,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAkED,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,qBAAqB;IACrB,mBAAmB;IACnB,qBAAqB;IACrB,oBAAoB;IACpB,6BAA6B;IAC7B,0BAA0B;IAC1B,kBAAkB;IAClB,gBAAgB;IAChB,kBAAkB;IAClB,yBAAyB;IACzB,aAAa;IACb,2BAA2B;IAC3B,sBAAsB;IACtB,0BAA0B;IAC1B,oBAAoB;IACpB,yBAAyB;IACzB,mBAAmB;IACnB,mBAAmB;IACnB,6BAA6B;IAC7B,yBAAyB;IACzB,eAAe;IACf,eAAe;IACf,0BAA0B;IAC1B,oBAAoB;IACpB,uBAAuB;IACvB,6BAA6B;IAC7B,yBAAyB;IACzB,0BAA0B;IAC1B,2BAA2B;IAC3B,yBAAyB;IACzB,qBAAqB;IACrB,sBAAsB;IACtB,cAAc;IACd,gBAAgB;IAChB,4BAA4B;IAC5B,sBAAsB;IACtB,wBAAwB;IACxB,4BAA4B;IAC5B,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,0BAA0B;IAC1B,2BAA2B;IAC3B,wBAAwB;IACxB,qBAAqB;IACrB,gCAAgC;IAChC,iBAAiB;IACjB,mBAAmB;IACnB,qBAAqB;IACrB,2BAA2B;IAC3B,mBAAmB;IACnB,mBAAmB;IACnB,wBAAwB;IACxB,4BAA4B;IAC5B,6BAA6B;CACrB,CAAC"}
@@ -1,6 +1,3 @@
1
- /**
2
- * validate-capability — §12 rule 12 (agent/script capability-ref shape). Lifted from validate.ts.
3
- */
4
1
  const CAPABILITY_REF_PATTERN = /^(role|script):[A-Za-z][A-Za-z0-9_-]*$/;
5
2
  export function ruleCapabilityRefs(template, d) {
6
3
  for (const node of Object.values(template.nodes)) {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-capability.js","sourceRoot":"","sources":["../../src/pipeline-core/validate-capability.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,sBAAsB,GAAG,wCAAwC,CAAC;AAExE,MAAM,UAAU,kBAAkB,CAAC,QAAkB,EAAE,CAAW;IAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpF,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,SAAS,IAAI,CAAC,EAAE,aAAa,IAAI,CAAC,OAAO,gBAAgB,EAAE;oBACzF,MAAM,EAAE,IAAI,CAAC,EAAE;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1F,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,UAAU,IAAI,CAAC,EAAE,eAAe,IAAI,CAAC,SAAS,gBAAgB,EAAE;oBAC9F,MAAM,EAAE,IAAI,CAAC,EAAE;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"validate-capability.js","sourceRoot":"","sources":["../../src/pipeline-core/validate-capability.ts"],"names":[],"mappings":"AAKA,MAAM,sBAAsB,GAAG,wCAAwC,CAAC;AAExE,MAAM,UAAU,kBAAkB,CAAC,QAAkB,EAAE,CAAW;IAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpF,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,SAAS,IAAI,CAAC,EAAE,aAAa,IAAI,CAAC,OAAO,gBAAgB,EAAE;oBACzF,MAAM,EAAE,IAAI,CAAC,EAAE;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1F,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,UAAU,IAAI,CAAC,EAAE,eAAe,IAAI,CAAC,SAAS,gBAAgB,EAAE;oBAC9F,MAAM,EAAE,IAAI,CAAC,EAAE;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,11 +1,7 @@
1
- /**
2
- * validate-conflicts — §12 rule 10 (policy.conflicts well-formedness). Lifted from validate.ts.
3
- */
4
1
  export function ruleConflictMatrix(template, d) {
5
2
  const conflicts = template.policy?.conflicts ?? [];
6
3
  if (conflicts.length === 0)
7
4
  return;
8
- // Map each role to the node ids that bind it (agent.roleRef = "role:<name>").
9
5
  const roleNodes = new Map();
10
6
  for (const node of Object.values(template.nodes)) {
11
7
  if (node.kind === 'agent') {
@@ -20,14 +16,9 @@ export function ruleConflictMatrix(template, d) {
20
16
  continue;
21
17
  }
22
18
  const [a, b] = pair;
23
- // A conflict is well-formed only if both roles are actually bound by some node.
24
19
  if (!roleNodes.has(a) || !roleNodes.has(b)) {
25
20
  d.warn('CONFLICT_REF_INVALID', `policy.conflicts [${a}, ${b}] references a role no node binds`);
26
21
  }
27
- // v1 binds a role to a node, not to a concrete actor; a path where ONE actor fills both roles
28
- // is detectable only with actor assignment (out of v1 template data). We surface the *structural*
29
- // hazard: the same node is bound to both conflicting roles (impossible via roleRef, but a future
30
- // multi-role node would trip it) — kept as a placeholder check so the rule has a code + a test.
31
22
  }
32
23
  }
33
24
  function roleName(roleRef) {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-conflicts.js","sourceRoot":"","sources":["../../src/pipeline-core/validate-conflicts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,UAAU,kBAAkB,CAAC,QAAkB,EAAE,CAAW;IAChE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;IACnD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEnC,8EAA8E;IAC9E,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,IAAI,IAAI;gBAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;YACzF,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC/G,SAAS;QACX,CAAC;QACD,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;QACpB,gFAAgF;QAChF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAClG,CAAC;QACD,8FAA8F;QAC9F,kGAAkG;QAClG,iGAAiG;QACjG,gGAAgG;IAClG,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,OAAe;IAC/B,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"validate-conflicts.js","sourceRoot":"","sources":["../../src/pipeline-core/validate-conflicts.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,kBAAkB,CAAC,QAAkB,EAAE,CAAW;IAChE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;IACnD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEnC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,IAAI,IAAI;gBAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;YACzF,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC/G,SAAS;QACX,CAAC;QACD,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,OAAe;IAC/B,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9B,CAAC"}