@revisium/orchestrator 0.1.0-alpha.9 → 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.
- package/README.md +210 -146
- package/control-plane/bootstrap.config.json +43 -1
- package/control-plane/default-playbook/catalog/pipelines.json +1157 -10
- package/control-plane/default-playbook/catalog/roles.json +54 -0
- package/control-plane/default-playbook/package.json +1 -1
- package/control-plane/default-playbook/prompts/developer.md +1 -0
- package/control-plane/default-playbook/prompts/triager.md +3 -0
- package/dist/api/graphql-api/graphql-ws/pubsub.module.js +0 -1
- package/dist/api/graphql-api/graphql-ws/pubsub.module.js.map +1 -1
- package/dist/api/graphql-api/graphql-ws/run-progress-subscription-poller.service.js +0 -1
- package/dist/api/graphql-api/graphql-ws/run-progress-subscription-poller.service.js.map +1 -1
- package/dist/api/graphql-api/graphql-ws/subscription-bridge.service.js +0 -1
- package/dist/api/graphql-api/graphql-ws/subscription-bridge.service.js.map +1 -1
- package/dist/api/graphql-api/graphql-ws/subscription-mappers.js +3 -0
- package/dist/api/graphql-api/graphql-ws/subscription-mappers.js.map +1 -1
- package/dist/api/graphql-api/pr/inputs/pr-readiness.input.js +6 -0
- package/dist/api/graphql-api/pr/inputs/pr-readiness.input.js.map +1 -1
- package/dist/api/graphql-api/pr/model/pr-readiness.model.js +26 -0
- package/dist/api/graphql-api/pr/model/pr-readiness.model.js.map +1 -1
- package/dist/api/graphql-api/runs/inputs/create-run.input.js +6 -0
- package/dist/api/graphql-api/runs/inputs/create-run.input.js.map +1 -1
- package/dist/api/graphql-api/runs/model/run.model.js +6 -0
- package/dist/api/graphql-api/runs/model/run.model.js.map +1 -1
- package/dist/api/graphql-api/share/model/issue-ref.model.js +53 -0
- package/dist/api/graphql-api/share/model/issue-ref.model.js.map +1 -0
- package/dist/cli/commands/doctor-report.js +0 -18
- package/dist/cli/commands/doctor-report.js.map +1 -1
- package/dist/cli/commands/lifecycle.js +3 -71
- package/dist/cli/commands/lifecycle.js.map +1 -1
- package/dist/cli/commands/mcp.js +0 -14
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/commands/process-tree.js +4 -26
- package/dist/cli/commands/process-tree.js.map +1 -1
- package/dist/cli/commands/revisium-helpers.js +0 -6
- package/dist/cli/commands/revisium-helpers.js.map +1 -1
- package/dist/cli/commands/rogue-reaper.js +0 -34
- package/dist/cli/commands/rogue-reaper.js.map +1 -1
- package/dist/cli/index.js +0 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/program.js +0 -5
- package/dist/cli/program.js.map +1 -1
- package/dist/config.js +0 -25
- package/dist/config.js.map +1 -1
- package/dist/control-plane/bootstrap.js +12 -27
- package/dist/control-plane/bootstrap.js.map +1 -1
- package/dist/control-plane/change-notifications.js +0 -1
- package/dist/control-plane/change-notifications.js.map +1 -1
- package/dist/control-plane/client-transport.js +1 -12
- package/dist/control-plane/client-transport.js.map +1 -1
- package/dist/control-plane/default-playbook-policy.js +593 -0
- package/dist/control-plane/default-playbook-policy.js.map +1 -0
- package/dist/control-plane/definitions.js +8 -17
- package/dist/control-plane/definitions.js.map +1 -1
- package/dist/control-plane/inbox.js +2 -120
- package/dist/control-plane/inbox.js.map +1 -1
- package/dist/control-plane/resolve-cwd.js +0 -61
- package/dist/control-plane/resolve-cwd.js.map +1 -1
- package/dist/control-plane/schema-migration.js +0 -9
- package/dist/control-plane/schema-migration.js.map +1 -1
- package/dist/control-plane/seed-default-playbook.js +50 -46
- package/dist/control-plane/seed-default-playbook.js.map +1 -1
- package/dist/control-plane/steps.js +0 -15
- package/dist/control-plane/steps.js.map +1 -1
- package/dist/e2e/kit/agents.js +15 -21
- package/dist/e2e/kit/agents.js.map +1 -1
- package/dist/e2e/kit/assertions.js +12 -8
- package/dist/e2e/kit/assertions.js.map +1 -1
- package/dist/e2e/kit/fake-integrator.js +11 -2
- package/dist/e2e/kit/fake-integrator.js.map +1 -1
- package/dist/e2e/kit/git-target-repo.js +1 -1
- package/dist/engine/dbos.service.js +12 -179
- package/dist/engine/dbos.service.js.map +1 -1
- package/dist/engine/ensure-postgres.js +0 -48
- package/dist/engine/ensure-postgres.js.map +1 -1
- package/dist/features/pr/queries/impl/get-pr-readiness.query.js.map +1 -1
- package/dist/features/runs/commands/impl/create-run.command.js.map +1 -1
- package/dist/features/runs/queries/handlers/runs-query.handlers.js +1 -0
- package/dist/features/runs/queries/handlers/runs-query.handlers.js.map +1 -1
- package/dist/host/daemon.js +2 -21
- package/dist/host/daemon.js.map +1 -1
- package/dist/host/dbos-identity.js +0 -31
- package/dist/host/dbos-identity.js.map +1 -1
- package/dist/host/ensure-host.js +1 -37
- package/dist/host/ensure-host.js.map +1 -1
- package/dist/host/ensure-revisium.js +1 -135
- package/dist/host/ensure-revisium.js.map +1 -1
- package/dist/host/host-runtime.js +0 -28
- package/dist/host/host-runtime.js.map +1 -1
- package/dist/host/host.lifecycle.js +0 -27
- package/dist/host/host.lifecycle.js.map +1 -1
- package/dist/host/queue-ownership.js +0 -42
- package/dist/host/queue-ownership.js.map +1 -1
- package/dist/host/queue-poller-census.js +1 -28
- package/dist/host/queue-poller-census.js.map +1 -1
- package/dist/http/graphql-host.module.js +0 -3
- package/dist/http/graphql-host.module.js.map +1 -1
- package/dist/mcp/mcp-capabilities.js +23 -5
- package/dist/mcp/mcp-capabilities.js.map +1 -1
- package/dist/mcp/mcp-facade.service.js +335 -22
- package/dist/mcp/mcp-facade.service.js.map +1 -1
- package/dist/mcp/mcp-http.service.js +0 -18
- package/dist/mcp/mcp-http.service.js.map +1 -1
- package/dist/mcp/mcp-tools.js +41 -36
- package/dist/mcp/mcp-tools.js.map +1 -1
- package/dist/observability/activity-signal.js +103 -0
- package/dist/observability/activity-signal.js.map +1 -0
- package/dist/observability/agent-activity-reporter.js +0 -4
- package/dist/observability/agent-activity-reporter.js.map +1 -1
- package/dist/observability/index.js +1 -0
- package/dist/observability/index.js.map +1 -1
- package/dist/pipeline/await-human.js +0 -40
- package/dist/pipeline/await-human.js.map +1 -1
- package/dist/pipeline/data-driven-task.workflow.js +563 -251
- package/dist/pipeline/data-driven-task.workflow.js.map +1 -1
- package/dist/pipeline/data-driven-template.js +0 -25
- package/dist/pipeline/data-driven-template.js.map +1 -1
- package/dist/pipeline/pipeline.module.js +0 -12
- package/dist/pipeline/pipeline.module.js.map +1 -1
- package/dist/pipeline/pipeline.service.js +194 -189
- package/dist/pipeline/pipeline.service.js.map +1 -1
- package/dist/pipeline/route-contract.js +4 -3
- package/dist/pipeline/route-contract.js.map +1 -1
- package/dist/pipeline-core/index.js +1 -13
- package/dist/pipeline-core/index.js.map +1 -1
- package/dist/pipeline-core/interpret.js +21 -94
- package/dist/pipeline-core/interpret.js.map +1 -1
- package/dist/pipeline-core/kit/assertions.js +0 -19
- package/dist/pipeline-core/kit/assertions.js.map +1 -1
- package/dist/pipeline-core/kit/builders.js +1 -21
- package/dist/pipeline-core/kit/builders.js.map +1 -1
- package/dist/pipeline-core/kit/drive.js +1 -31
- package/dist/pipeline-core/kit/drive.js.map +1 -1
- package/dist/pipeline-core/kit/fixtures.js +78 -101
- package/dist/pipeline-core/kit/fixtures.js.map +1 -1
- package/dist/pipeline-core/kit/index.js +0 -8
- package/dist/pipeline-core/kit/index.js.map +1 -1
- package/dist/pipeline-core/types.js +13 -52
- package/dist/pipeline-core/types.js.map +1 -1
- package/dist/pipeline-core/validate-capability.js +0 -3
- package/dist/pipeline-core/validate-capability.js.map +1 -1
- package/dist/pipeline-core/validate-conflicts.js +0 -9
- package/dist/pipeline-core/validate-conflicts.js.map +1 -1
- package/dist/pipeline-core/validate-dataflow.js +0 -17
- package/dist/pipeline-core/validate-dataflow.js.map +1 -1
- package/dist/pipeline-core/validate-diff.js +3 -36
- package/dist/pipeline-core/validate-diff.js.map +1 -1
- package/dist/pipeline-core/validate-edges.js +0 -6
- package/dist/pipeline-core/validate-edges.js.map +1 -1
- package/dist/pipeline-core/validate-graph.js +0 -11
- package/dist/pipeline-core/validate-graph.js.map +1 -1
- package/dist/pipeline-core/validate-loops.js +37 -44
- package/dist/pipeline-core/validate-loops.js.map +1 -1
- package/dist/pipeline-core/validate-parallel.js +9 -15
- package/dist/pipeline-core/validate-parallel.js.map +1 -1
- package/dist/pipeline-core/validate-sink.js +0 -7
- package/dist/pipeline-core/validate-sink.js.map +1 -1
- package/dist/pipeline-core/validate-topology.js +1 -20
- package/dist/pipeline-core/validate-topology.js.map +1 -1
- package/dist/pipeline-core/validate-verdict.js +52 -7
- package/dist/pipeline-core/validate-verdict.js.map +1 -1
- package/dist/pipeline-core/validate.js +5 -29
- package/dist/pipeline-core/validate.js.map +1 -1
- package/dist/playbook/catalog-loader.js +8 -3
- package/dist/playbook/catalog-loader.js.map +1 -1
- package/dist/playbook/import-mapper.js +4 -5
- package/dist/playbook/import-mapper.js.map +1 -1
- package/dist/poller/pr-readiness-core.js +226 -29
- package/dist/poller/pr-readiness-core.js.map +1 -1
- package/dist/revisium/inbox.service.js +0 -24
- package/dist/revisium/inbox.service.js.map +1 -1
- package/dist/revisium/playbooks.service.js +15 -2
- package/dist/revisium/playbooks.service.js.map +1 -1
- package/dist/revisium/revisium.module.js +0 -12
- package/dist/revisium/revisium.module.js.map +1 -1
- package/dist/revisium/roles.service.js +0 -6
- package/dist/revisium/roles.service.js.map +1 -1
- package/dist/revisium/run.service.js +2 -75
- package/dist/revisium/run.service.js.map +1 -1
- package/dist/revisium/tokens.js +0 -4
- package/dist/revisium/tokens.js.map +1 -1
- package/dist/run/append-event.js +6 -37
- package/dist/run/append-event.js.map +1 -1
- package/dist/run/block-run.js.map +1 -1
- package/dist/run/cancel-run.js +0 -33
- package/dist/run/cancel-run.js.map +1 -1
- package/dist/run/complete-run.js.map +1 -1
- package/dist/run/create-run.js +5 -8
- package/dist/run/create-run.js.map +1 -1
- package/dist/run/fail-run.js +0 -3
- package/dist/run/fail-run.js.map +1 -1
- package/dist/run/inspect-run.js +10 -29
- package/dist/run/inspect-run.js.map +1 -1
- package/dist/run/issue-ref.js +88 -0
- package/dist/run/issue-ref.js.map +1 -0
- package/dist/run/run-outputs.js +0 -19
- package/dist/run/run-outputs.js.map +1 -1
- package/dist/run/terminal-run-status.js +0 -12
- package/dist/run/terminal-run-status.js.map +1 -1
- package/dist/runners/claude-code.service.js +2 -13
- package/dist/runners/claude-code.service.js.map +1 -1
- package/dist/runners/codex.service.js +2 -11
- package/dist/runners/codex.service.js.map +1 -1
- package/dist/runners/gh-identity.js +0 -52
- package/dist/runners/gh-identity.js.map +1 -1
- package/dist/runners/integrator-branch-naming.js +16 -19
- package/dist/runners/integrator-branch-naming.js.map +1 -1
- package/dist/runners/integrator-git.js +0 -25
- package/dist/runners/integrator-git.js.map +1 -1
- package/dist/runners/integrator-remote.js +0 -2
- package/dist/runners/integrator-remote.js.map +1 -1
- package/dist/runners/integrator-types.js +0 -7
- package/dist/runners/integrator-types.js.map +1 -1
- package/dist/runners/integrator.js +231 -230
- package/dist/runners/integrator.js.map +1 -1
- package/dist/runners/runner.module.js +0 -6
- package/dist/runners/runner.module.js.map +1 -1
- package/dist/runners/tokens.js +0 -4
- package/dist/runners/tokens.js.map +1 -1
- package/dist/runners/worktree.service.js +3 -19
- package/dist/runners/worktree.service.js.map +1 -1
- package/dist/task-control-plane/pr-readiness.service.js +15 -13
- package/dist/task-control-plane/pr-readiness.service.js.map +1 -1
- package/dist/task-control-plane/run-watch.service.js +170 -63
- package/dist/task-control-plane/run-watch.service.js.map +1 -1
- package/dist/task-control-plane/task-control-plane-api.service.js +285 -40
- package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -1
- package/dist/worker/artifact-store.js +21 -3
- package/dist/worker/artifact-store.js.map +1 -1
- package/dist/worker/build-context.js +10 -10
- package/dist/worker/build-context.js.map +1 -1
- package/dist/worker/claude-code-runner.js +76 -48
- package/dist/worker/claude-code-runner.js.map +1 -1
- package/dist/worker/codex-runner.js +128 -35
- package/dist/worker/codex-runner.js.map +1 -1
- package/dist/worker/git-worktree-manager.js +20 -67
- package/dist/worker/git-worktree-manager.js.map +1 -1
- package/dist/worker/process-executor.js +144 -27
- package/dist/worker/process-executor.js.map +1 -1
- package/dist/worker/result-envelope.js +33 -49
- package/dist/worker/result-envelope.js.map +1 -1
- package/dist/worker/runner-common.js +29 -0
- package/dist/worker/runner-common.js.map +1 -1
- package/dist/worker/runner-dispatch.js +0 -3
- package/dist/worker/runner-dispatch.js.map +1 -1
- package/dist/worker/runner.js +16 -1
- package/dist/worker/runner.js.map +1 -1
- package/dist/worker/stub-runner.js +0 -7
- package/dist/worker/stub-runner.js.map +1 -1
- 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
|
-
import { allOf, counterGte, counterLt, joinAll, joinAny, joinQuorum, node, on, otherwise, template, verdictEq, } from './builders.js';
|
|
10
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
11
|
-
// §13 — feature-development (the canonical example).
|
|
12
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
1
|
+
import { allOf, counterGte, counterLt, joinAll, joinAny, joinQuorum, node, on, otherwise, template, verdictEq, verdictIn, } from './builders.js';
|
|
13
2
|
export function featureDevelopment() {
|
|
14
3
|
return template('feature-development')
|
|
15
4
|
.title('Feature development with plan + merge gates and bounded rework')
|
|
@@ -27,7 +16,7 @@ export function featureDevelopment() {
|
|
|
27
16
|
onFailure: 'abort',
|
|
28
17
|
}), node.choice('codeReviewRouter', [
|
|
29
18
|
on(verdictEq('approved'), 'integrator'),
|
|
30
|
-
on(allOf(
|
|
19
|
+
on(allOf(verdictIn('blocker', 'changes_requested'), counterLt('codeReviewLoop', 3)), 'reworkDeveloper'),
|
|
31
20
|
otherwise('blockedEnd'),
|
|
32
21
|
]), node.agent('reworkDeveloper', 'role:developer', 'codeReview', {
|
|
33
22
|
resultSchema: 'schema:change',
|
|
@@ -46,36 +35,55 @@ 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', '
|
|
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
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
56
|
+
function blockedOrFailedCatch() {
|
|
57
|
+
return [
|
|
58
|
+
{ onError: 'revo.ScriptBlocked', goto: 'blockedEnd' },
|
|
59
|
+
{ onError: 'revo.ScriptFailed', goto: 'failedEnd' },
|
|
60
|
+
];
|
|
61
|
+
}
|
|
62
|
+
function prReadinessScript(id, next) {
|
|
63
|
+
return node.script(id, 'script:pollPr', next, {
|
|
64
|
+
resultSchema: 'schema:prFeedback',
|
|
65
|
+
onFailure: 'route',
|
|
66
|
+
produces: { name: 'prFeedback' },
|
|
67
|
+
catch: blockedOrFailedCatch(),
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
function prReadinessBranches(cleanGoto) {
|
|
71
|
+
return [
|
|
72
|
+
on(verdictEq('clean'), cleanGoto),
|
|
73
|
+
on(verdictEq('review_changes'), 'triage'),
|
|
74
|
+
on(allOf(verdictEq('ci_changes'), counterLt('ciLoop', 3)), 'ciRework'),
|
|
75
|
+
otherwise('blockedEnd'),
|
|
76
|
+
];
|
|
77
|
+
}
|
|
78
|
+
function freshMergeFeedbackConsume() {
|
|
79
|
+
return { node: 'mergeReadiness', as: 'mergeFeedback', optional: true, staleOk: true };
|
|
80
|
+
}
|
|
81
|
+
function prFeedbackConsumes() {
|
|
82
|
+
return [
|
|
83
|
+
{ node: 'pollPr', as: 'feedback' },
|
|
84
|
+
freshMergeFeedbackConsume(),
|
|
85
|
+
];
|
|
86
|
+
}
|
|
79
87
|
export function featureDevelopmentPrReview() {
|
|
80
88
|
return template('feature-development-pr-review')
|
|
81
89
|
.title('Feature development with a PR review-feedback loop (plan 0018)')
|
|
@@ -91,29 +99,44 @@ export function featureDevelopmentPrReview() {
|
|
|
91
99
|
on(verdictEq('approved'), 'developer'),
|
|
92
100
|
on(verdictEq('changes_requested'), 'analyst'),
|
|
93
101
|
otherwise('blockedEnd'),
|
|
94
|
-
]), node.agent('developer', 'role:developer', 'codeReview', {
|
|
102
|
+
]), node.agent('developer', 'role:developer', 'codeReview', {
|
|
103
|
+
resultSchema: 'schema:change',
|
|
104
|
+
onFailure: 'abort',
|
|
105
|
+
produces: { name: 'change' },
|
|
106
|
+
}), node.agent('codeReview', 'role:reviewer', 'codeReviewRouter', {
|
|
107
|
+
resultSchema: 'schema:reviewVerdict',
|
|
108
|
+
onFailure: 'abort',
|
|
109
|
+
consumes: [
|
|
110
|
+
{ node: 'developer', as: 'developerChange', staleOk: true },
|
|
111
|
+
{ node: 'reworkDeveloper', as: 'reworkChange', optional: true },
|
|
112
|
+
],
|
|
113
|
+
}), node.choice('codeReviewRouter', [
|
|
95
114
|
on(verdictEq('approved'), 'integrator'),
|
|
96
|
-
on(allOf(
|
|
115
|
+
on(allOf(verdictIn('blocker', 'changes_requested'), counterLt('codeReviewLoop', 3)), 'reworkDeveloper'),
|
|
97
116
|
otherwise('blockedEnd'),
|
|
98
|
-
]), node.agent('reworkDeveloper', 'role:developer', 'codeReview', {
|
|
117
|
+
]), node.agent('reworkDeveloper', 'role:developer', 'codeReview', {
|
|
118
|
+
resultSchema: 'schema:change',
|
|
119
|
+
incrementCounters: ['codeReviewLoop'],
|
|
120
|
+
onFailure: 'abort',
|
|
121
|
+
produces: { name: 'change' },
|
|
122
|
+
}), node.script('integrator', 'script:integrator', 'pollPr', {
|
|
99
123
|
resultSchema: 'schema:integration', onFailure: 'route',
|
|
124
|
+
consumes: [
|
|
125
|
+
{ node: 'developer', as: 'developerChange', staleOk: true },
|
|
126
|
+
{ node: 'reworkDeveloper', as: 'reworkChange', optional: true },
|
|
127
|
+
{ node: 'ciRework', as: 'ciChange', optional: true, staleOk: true },
|
|
128
|
+
],
|
|
100
129
|
catch: [{ onError: 'revo.ScriptFailed', goto: 'failedEnd' }],
|
|
101
|
-
}),
|
|
102
|
-
// ── plan 0018 — observe the PR, classify, route by feedback type ──
|
|
103
|
-
node.script('pollPr', 'script:pollPr', 'prRouter', {
|
|
104
|
-
resultSchema: 'schema:prFeedback', onFailure: 'route', produces: { name: 'prFeedback' },
|
|
105
|
-
catch: [{ onError: 'revo.ScriptBlocked', goto: 'blockedEnd' }, { onError: 'revo.ScriptFailed', goto: 'failedEnd' }],
|
|
106
|
-
}), node.choice('prRouter', [
|
|
107
|
-
on(verdictEq('clean'), 'mergeGate'),
|
|
108
|
-
on(verdictEq('review_changes'), 'triage'),
|
|
109
|
-
on(allOf(verdictEq('ci_changes'), counterLt('ciLoop', 3)), 'ciRework'),
|
|
110
|
-
otherwise('blockedEnd'),
|
|
111
|
-
]), 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', {
|
|
112
131
|
resultSchema: 'schema:change', incrementCounters: ['ciLoop'], onFailure: 'abort',
|
|
113
|
-
|
|
132
|
+
produces: { name: 'change' },
|
|
133
|
+
consumes: prFeedbackConsumes(),
|
|
114
134
|
}), node.agent('triage', 'role:triager', 'triageRouter', {
|
|
115
135
|
resultSchema: 'schema:triage', onFailure: 'abort', produces: { name: 'triage' },
|
|
116
|
-
consumes: [
|
|
136
|
+
consumes: [
|
|
137
|
+
{ node: 'analyst', as: 'plan', staleOk: true },
|
|
138
|
+
...prFeedbackConsumes(),
|
|
139
|
+
],
|
|
117
140
|
}), node.choice('triageRouter', [
|
|
118
141
|
on(allOf(verdictEq('question'), counterLt('questionLoop', 3)), 'questionGate'),
|
|
119
142
|
on(allOf(verdictEq('fix'), counterLt('reviewLoop', 3)), 'reviewRework'),
|
|
@@ -124,25 +147,25 @@ export function featureDevelopmentPrReview() {
|
|
|
124
147
|
otherwise('blockedEnd'),
|
|
125
148
|
], { incrementCounters: ['questionLoop'] }), node.agent('reviewRework', 'role:developer', 'reviewIntegrator', {
|
|
126
149
|
resultSchema: 'schema:change', incrementCounters: ['reviewLoop'], onFailure: 'abort',
|
|
150
|
+
produces: { name: 'change' },
|
|
127
151
|
consumes: [{ node: 'triage', as: 'triage' }],
|
|
128
152
|
}), node.script('reviewIntegrator', 'script:integrator', 'respondThreads', {
|
|
129
153
|
resultSchema: 'schema:integration', onFailure: 'route',
|
|
130
|
-
|
|
154
|
+
consumes: [{ node: 'reviewRework', as: 'reviewChange' }],
|
|
155
|
+
catch: blockedOrFailedCatch(),
|
|
131
156
|
}), node.script('respondThreads', 'script:respondThreads', 'pollPr', {
|
|
132
157
|
resultSchema: 'schema:respond', onFailure: 'route', consumes: [{ node: 'triage', as: 'triage' }],
|
|
133
|
-
catch:
|
|
158
|
+
catch: blockedOrFailedCatch(),
|
|
134
159
|
}), node.humanGate('mergeGate', 'merge-review', ['approved', 'changes_requested'], [
|
|
135
160
|
on(verdictEq('approved'), 'confirmMerge'),
|
|
136
161
|
otherwise('blockedEnd'),
|
|
137
|
-
]), node.script('confirmMerge', 'script:confirmMerge', 'mergedEnd', {
|
|
162
|
+
], { gatedArtifact: { node: 'mergeReadiness', as: 'prFeedback' } }), node.script('confirmMerge', 'script:confirmMerge', 'mergedEnd', {
|
|
138
163
|
resultSchema: 'schema:integration', onFailure: 'route',
|
|
139
|
-
|
|
164
|
+
consumes: [{ node: 'mergeReadiness', as: 'mergeReadiness' }],
|
|
165
|
+
catch: blockedOrFailedCatch(),
|
|
140
166
|
}), node.terminal('mergedEnd', 'succeeded'), node.terminal('failedEnd', 'failed'), node.terminal('blockedEnd', 'blocked'))
|
|
141
167
|
.build();
|
|
142
168
|
}
|
|
143
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
144
|
-
// §13 footnote — local-change (orchestrator + developer, NO humanGate).
|
|
145
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
146
169
|
export function localChange() {
|
|
147
170
|
return template('local-change')
|
|
148
171
|
.title('Local change — orchestrator + developer, no gate')
|
|
@@ -151,13 +174,6 @@ export function localChange() {
|
|
|
151
174
|
.add(node.agent('orchestrator', 'role:orchestrator', 'developer', { resultSchema: 'schema:plan' }), node.agent('developer', 'role:developer', 'doneEnd', { resultSchema: 'schema:change' }), node.terminal('doneEnd', 'succeeded'))
|
|
152
175
|
.build();
|
|
153
176
|
}
|
|
154
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
155
|
-
// Targeted — a nested-scope rework loop (inner loop resets on outer re-entry, §7).
|
|
156
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
157
|
-
/**
|
|
158
|
-
* outer (cap 2) ⊃ inner (cap 2). `outerWork` increments `outer` (and resets `inner`); `innerWork`
|
|
159
|
-
* increments `inner`. The inner cap routes back to the outer loop; the outer cap routes to blocked.
|
|
160
|
-
*/
|
|
161
177
|
export function nestedScopeLoop() {
|
|
162
178
|
return template('nested-scope-loop')
|
|
163
179
|
.entry('start')
|
|
@@ -175,10 +191,6 @@ export function nestedScopeLoop() {
|
|
|
175
191
|
]), node.agent('outerWork', 'role:worker', 'innerWork', { incrementCounters: ['outer'] }), node.terminal('doneEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'))
|
|
176
192
|
.build();
|
|
177
193
|
}
|
|
178
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
179
|
-
// Targeted — a parallel/join (two review branches → join → terminal).
|
|
180
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
181
|
-
/** Map a join-mode kind to its `JoinMode` (quorum fixed at 2 for this fan-out shape). */
|
|
182
194
|
function joinModeFromKind(kind) {
|
|
183
195
|
if (kind === 'all')
|
|
184
196
|
return joinAll();
|
|
@@ -186,7 +198,6 @@ function joinModeFromKind(kind) {
|
|
|
186
198
|
return joinAny();
|
|
187
199
|
return joinQuorum(2);
|
|
188
200
|
}
|
|
189
|
-
/** `joinModeKind` selects `all` (default), `any`, or `quorum{2}` on the same fan-out shape. */
|
|
190
201
|
export function parallelReview(joinModeKind = 'all') {
|
|
191
202
|
const mode = joinModeFromKind(joinModeKind);
|
|
192
203
|
return template('parallel-review')
|
|
@@ -195,14 +206,9 @@ export function parallelReview(joinModeKind = 'all') {
|
|
|
195
206
|
.add(node.parallel('fanout', [
|
|
196
207
|
{ id: 'sec', entry: 'secReview' },
|
|
197
208
|
{ id: 'perf', entry: 'perfReview' },
|
|
198
|
-
], 'reviewJoin'), node.agent('secReview', 'role:reviewer', 'reviewJoin'), node.agent('perfReview', 'role:reviewer', 'reviewJoin'),
|
|
199
|
-
// `merge` declared so the 2-writer fan-out is well-formed under all modes (§12.8).
|
|
200
|
-
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'))
|
|
201
210
|
.build();
|
|
202
211
|
}
|
|
203
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
204
|
-
// Targeted — a gate with a timeout edge (§6) + a node with onFailure=route+catch (§6).
|
|
205
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
206
212
|
export function gateWithTimeout() {
|
|
207
213
|
return template('gate-with-timeout')
|
|
208
214
|
.entry('gate')
|
|
@@ -212,108 +218,82 @@ export function gateWithTimeout() {
|
|
|
212
218
|
}), node.terminal('doneEnd', 'succeeded'), node.terminal('blockedEnd', 'blocked'), node.terminal('failedEnd', 'failed'))
|
|
213
219
|
.build();
|
|
214
220
|
}
|
|
215
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
216
|
-
// INVALID fixtures — one per §12 rule. Each is the minimal shape that trips its rule.
|
|
217
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
218
|
-
/** rule 1 — entry points at a node that does not exist (ENTRY_UNRESOLVED). */
|
|
219
221
|
export const invalidEntryUnresolved = () => template('inv').entry('ghost').domain('approved').add(node.terminal('end', 'succeeded')).build();
|
|
220
|
-
/** rule 2 — an edge points at a non-existent node (REF_UNRESOLVED). */
|
|
221
222
|
export const invalidRefUnresolved = () => template('inv').entry('a').domain('approved').add(node.agent('a', 'role:x', 'nowhere')).build();
|
|
222
|
-
/** rule 3 — a non-terminal with no exit (NONTERMINAL_NO_EXIT) — forced via a choice with no branches. */
|
|
223
223
|
export const invalidNonterminalNoExit = () => template('inv').entry('a').domain('approved').add(node.choice('a', [])).build();
|
|
224
|
-
/** rule 3 — a terminal with a bad status (TERMINAL_BAD_STATUS). */
|
|
225
224
|
export const invalidTerminalBadStatus = () => {
|
|
226
225
|
const t = template('inv').entry('a').domain('approved').add(node.terminal('a', 'succeeded')).build();
|
|
227
|
-
t.nodes['a'].status = 'done';
|
|
226
|
+
t.nodes['a'].status = 'done';
|
|
228
227
|
return t;
|
|
229
228
|
};
|
|
230
|
-
/** rule 4 — a choice with no default (ROUTING_NO_DEFAULT). */
|
|
231
229
|
export const invalidNoDefault = () => template('inv')
|
|
232
230
|
.entry('a')
|
|
233
231
|
.domain('approved')
|
|
234
232
|
.add(node.choice('a', [on(verdictEq('approved'), 'end')]), node.terminal('end', 'succeeded'))
|
|
235
233
|
.build();
|
|
236
|
-
/** rule 4 — a guard placed AFTER the default (ROUTING_GUARD_AFTER_DEFAULT). */
|
|
237
234
|
export const invalidGuardAfterDefault = () => template('inv')
|
|
238
235
|
.entry('a')
|
|
239
236
|
.domain('approved')
|
|
240
237
|
.add(node.choice('a', [otherwise('end'), on(verdictEq('approved'), 'end')]), node.terminal('end', 'succeeded'))
|
|
241
238
|
.build();
|
|
242
|
-
/** rule 5 — a node unreachable from entry (UNREACHABLE_NODE). */
|
|
243
239
|
export const invalidUnreachable = () => template('inv')
|
|
244
240
|
.entry('a')
|
|
245
241
|
.domain('approved')
|
|
246
242
|
.add(node.agent('a', 'role:x', 'end'), node.terminal('end', 'succeeded'), node.agent('orphan', 'role:y', 'end'))
|
|
247
243
|
.build();
|
|
248
|
-
/** rule 6 — an unbounded back-edge (LOOP_UNBOUNDED): a choice loops back with no counter.gte cap. */
|
|
249
244
|
export const invalidUnboundedLoop = () => template('inv')
|
|
250
245
|
.entry('a')
|
|
251
246
|
.domain('approved')
|
|
252
247
|
.add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(verdictEq('approved'), 'a'), otherwise('end')]), node.terminal('end', 'succeeded'))
|
|
253
248
|
.build();
|
|
254
|
-
/** rule 7 — a guard references an undeclared scope (SCOPE_UNDECLARED). */
|
|
255
249
|
export const invalidScopeUndeclared = () => template('inv')
|
|
256
250
|
.entry('a')
|
|
257
251
|
.domain('approved')
|
|
258
252
|
.add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(counterGte('ghostScope', 3), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
|
|
259
253
|
.build();
|
|
260
|
-
/** rule 7 — a scope whose parent does not resolve (SCOPE_PARENT_UNRESOLVED). The scope is otherwise
|
|
261
|
-
* well-formed (incremented on its own loop) so the parent-unresolved finding stands alone. */
|
|
262
254
|
export const invalidScopeParent = () => template('inv')
|
|
263
255
|
.entry('a')
|
|
264
256
|
.domain('approved')
|
|
265
257
|
.scope('child', { cap: 2, parent: 'ghostParent' })
|
|
266
258
|
.add(node.agent('a', 'role:x', 'router', { incrementCounters: ['child'] }), node.choice('router', [on(counterLt('child', 2), 'a'), otherwise('end')]), node.terminal('end', 'succeeded'))
|
|
267
259
|
.build();
|
|
268
|
-
/** rule 8 — quorum K > N (QUORUM_K_GT_N). */
|
|
269
260
|
export const invalidQuorumKgtN = () => template('inv')
|
|
270
261
|
.entry('fanout')
|
|
271
262
|
.domain('clean')
|
|
272
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'))
|
|
273
264
|
.build();
|
|
274
|
-
/** rule 8 — a cross-branch goto (BRANCH_CROSS_GOTO): branch a's node jumps into branch b. */
|
|
275
265
|
export const invalidCrossBranchGoto = () => template('inv')
|
|
276
266
|
.entry('fanout')
|
|
277
267
|
.domain('clean')
|
|
278
|
-
.add(node.parallel('fanout', [{ id: 'a', entry: 'aWork' }, { id: 'b', entry: 'bWork' }], 'j'), node.agent('aWork', 'role:x', 'bWork'),
|
|
279
|
-
node.agent('bWork', 'role:y', 'j'), node.join('j', joinAll(), 'end', { merge: { f: 'overwrite' } }), // merge present → only BRANCH_CROSS_GOTO trips
|
|
280
|
-
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'))
|
|
281
269
|
.build();
|
|
282
|
-
/** rule 8 — a multi-writer fan-out with no merge reducer (MERGE_MISSING). */
|
|
283
270
|
export const invalidMissingMerge = () => template('inv')
|
|
284
271
|
.entry('fanout')
|
|
285
272
|
.domain('clean')
|
|
286
|
-
.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'),
|
|
287
|
-
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'))
|
|
288
274
|
.build();
|
|
289
|
-
/** rule 9 — a guard uses an undeclared verdict (VERDICT_UNDECLARED). */
|
|
290
275
|
export const invalidVerdictUndeclared = () => template('inv')
|
|
291
276
|
.entry('a')
|
|
292
277
|
.domain('approved')
|
|
293
278
|
.add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(verdictEq('mystery'), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
|
|
294
279
|
.build();
|
|
295
|
-
/** rule 9 — a guard uses a CORE verdict, which must route structurally (VERDICT_CORE_IN_GUARD). */
|
|
296
280
|
export const invalidCoreVerdictInGuard = () => template('inv')
|
|
297
281
|
.entry('a')
|
|
298
282
|
.domain('approved')
|
|
299
283
|
.add(node.agent('a', 'role:x', 'router'), node.choice('router', [on(verdictEq('succeeded'), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
|
|
300
284
|
.build();
|
|
301
|
-
/** rule 9 — a domain label shadows a core verdict (VERDICT_DOMAIN_SHADOWS_CORE). */
|
|
302
285
|
export const invalidDomainShadowsCore = () => template('inv')
|
|
303
286
|
.entry('a')
|
|
304
287
|
.domain('approved', 'failed')
|
|
305
288
|
.add(node.agent('a', 'role:x', 'end'), node.terminal('end', 'succeeded'))
|
|
306
289
|
.build();
|
|
307
|
-
/** rule 9 — a gate outcome not in domain (GATE_OUTCOME_NOT_SUBSET). */
|
|
308
290
|
export const invalidGateOutcomeNotSubset = () => template('inv')
|
|
309
291
|
.entry('g')
|
|
310
292
|
.domain('approved')
|
|
311
293
|
.add(node.humanGate('g', 'r', ['approved', 'rejected'], [on(verdictEq('approved'), 'end'), otherwise('end')]), node.terminal('end', 'succeeded'))
|
|
312
294
|
.build();
|
|
313
|
-
/** rule 11 — a node id that breaks the id pattern (ID_BAD_PATTERN). */
|
|
314
295
|
export const invalidBadId = () => {
|
|
315
296
|
const t = template('inv').entry('a').domain('approved').add(node.agent('a', 'role:x', 'end'), node.terminal('end', 'succeeded')).build();
|
|
316
|
-
// Re-key 'a' to an illegal id and re-point entry.
|
|
317
297
|
const a = t.nodes['a'];
|
|
318
298
|
delete t.nodes['a'];
|
|
319
299
|
a.id = '1bad';
|
|
@@ -321,19 +301,16 @@ export const invalidBadId = () => {
|
|
|
321
301
|
t.entry = '1bad';
|
|
322
302
|
return t;
|
|
323
303
|
};
|
|
324
|
-
/** rule 12 — a malformed capability ref (CAPABILITY_REF_SHAPE). */
|
|
325
304
|
export const invalidCapabilityRef = () => template('inv')
|
|
326
305
|
.entry('a')
|
|
327
306
|
.domain('approved')
|
|
328
307
|
.add(node.agent('a', 'not-a-role-handle', 'end'), node.terminal('end', 'succeeded'))
|
|
329
308
|
.build();
|
|
330
|
-
/** rule 6 — onFailure=route with NO catch (FAILURE_ROUTE_NO_CATCH). */
|
|
331
309
|
export const invalidRouteNoCatch = () => template('inv')
|
|
332
310
|
.entry('a')
|
|
333
311
|
.domain('approved')
|
|
334
312
|
.add(node.script('a', 'script:x', 'end', { onFailure: 'route' }), node.terminal('end', 'succeeded'))
|
|
335
313
|
.build();
|
|
336
|
-
/** rule 6 — onFailure=escalate with NO escalateTo (FAILURE_ESCALATE_NO_TARGET). */
|
|
337
314
|
export const invalidEscalateNoTarget = () => template('inv')
|
|
338
315
|
.entry('a')
|
|
339
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":"
|
|
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
|
-
|
|
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
|
-
|
|
118
|
-
'
|
|
119
|
-
'
|
|
120
|
-
'
|
|
121
|
-
'
|
|
122
|
-
'
|
|
123
|
-
'
|
|
124
|
-
'
|
|
125
|
-
'
|
|
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',
|