@revisium/orchestrator 0.1.0 → 0.2.0-alpha.1
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 +78 -0
- package/control-plane/bootstrap.config.json +43 -1
- package/control-plane/default-playbook/catalog/pipelines.json +1250 -7
- package/control-plane/default-playbook/catalog/roles.json +54 -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/inbox/inbox.resolver.js +12 -0
- package/dist/api/graphql-api/inbox/inbox.resolver.js.map +1 -1
- package/dist/api/graphql-api/inbox/inputs/resolve-gate.input.js +37 -0
- package/dist/api/graphql-api/inbox/inputs/resolve-gate.input.js.map +1 -0
- package/dist/api/graphql-api/pr/model/pr-readiness.model.js +0 -4
- package/dist/api/graphql-api/pr/model/pr-readiness.model.js.map +1 -1
- 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 +0 -28
- 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 +0 -11
- package/dist/control-plane/client-transport.js.map +1 -1
- package/dist/control-plane/default-playbook-policy.js +64 -4
- package/dist/control-plane/default-playbook-policy.js.map +1 -1
- 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 +5 -70
- 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/assertions.js +1 -1
- package/dist/e2e/kit/assertions.js.map +1 -1
- package/dist/engine/dbos.service.js +9 -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/inbox/commands/handlers/inbox-command.handlers.js +16 -0
- package/dist/features/inbox/commands/handlers/inbox-command.handlers.js.map +1 -1
- package/dist/features/inbox/commands/impl/resolve-gate.command.js +7 -0
- package/dist/features/inbox/commands/impl/resolve-gate.command.js.map +1 -0
- package/dist/features/inbox/commands/index.js +2 -1
- package/dist/features/inbox/commands/index.js.map +1 -1
- package/dist/features/inbox/inbox-api.service.js +4 -0
- package/dist/features/inbox/inbox-api.service.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 +20 -14
- package/dist/mcp/mcp-capabilities.js.map +1 -1
- package/dist/mcp/mcp-facade.service.js +44 -23
- 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 +28 -40
- package/dist/mcp/mcp-tools.js.map +1 -1
- package/dist/observability/activity-signal.js +0 -4
- package/dist/observability/activity-signal.js.map +1 -1
- package/dist/observability/agent-activity-reporter.js +0 -4
- package/dist/observability/agent-activity-reporter.js.map +1 -1
- package/dist/pipeline/await-human.js +13 -43
- package/dist/pipeline/await-human.js.map +1 -1
- package/dist/pipeline/data-driven-task.workflow.js +121 -238
- 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 +10 -99
- package/dist/pipeline/pipeline.service.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 +2 -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 +26 -86
- 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 +2 -21
- 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 +1 -9
- package/dist/playbook/import-mapper.js.map +1 -1
- package/dist/poller/pr-readiness-core.js +0 -74
- 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 +2 -4
- 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 +1 -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 +0 -34
- 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 +0 -7
- 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 +0 -26
- package/dist/run/inspect-run.js.map +1 -1
- 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 +0 -11
- package/dist/runners/claude-code.service.js.map +1 -1
- package/dist/runners/codex.service.js +0 -9
- 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 +3 -11
- 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 +44 -176
- 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 +1 -17
- package/dist/runners/worktree.service.js.map +1 -1
- package/dist/task-control-plane/run-watch.service.js +50 -174
- package/dist/task-control-plane/run-watch.service.js.map +1 -1
- package/dist/task-control-plane/task-control-plane-api.service.js +134 -36
- package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -1
- package/dist/worker/build-context.js +0 -16
- package/dist/worker/build-context.js.map +1 -1
- package/dist/worker/claude-code-runner.js +9 -42
- package/dist/worker/claude-code-runner.js.map +1 -1
- package/dist/worker/codex-runner.js +88 -22
- 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 +0 -12
- 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-dispatch.js +0 -3
- package/dist/worker/runner-dispatch.js.map +1 -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
|
@@ -62,6 +62,18 @@ function gateTopic(item) {
|
|
|
62
62
|
return null;
|
|
63
63
|
return topic;
|
|
64
64
|
}
|
|
65
|
+
function gateDeclaredOutcomes(item) {
|
|
66
|
+
const context = asRecord(item.context);
|
|
67
|
+
const summary = asRecord(context?.summary);
|
|
68
|
+
const outcomes = summary?.outcomes;
|
|
69
|
+
if (Array.isArray(outcomes)) {
|
|
70
|
+
return outcomes.filter((item) => typeof item === 'string' && item.length > 0);
|
|
71
|
+
}
|
|
72
|
+
return [];
|
|
73
|
+
}
|
|
74
|
+
function gateOutcomes(item) {
|
|
75
|
+
return gateDeclaredOutcomes(item);
|
|
76
|
+
}
|
|
65
77
|
async function git(cwd, args) {
|
|
66
78
|
try {
|
|
67
79
|
const result = await execFileAsync('git', args, {
|
|
@@ -546,11 +558,6 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
546
558
|
const recoverable = await this.detectRecoverablePreflightBlock(input.runId, run.data.status, existingStatus);
|
|
547
559
|
if (recoverable)
|
|
548
560
|
return recoverableStartRunResponse(input.runId, route, recoverable);
|
|
549
|
-
// CUTOVER (plan 0015 slice 3): the data-driven engine is the SOLE pipeline engine. EVERY pipeline
|
|
550
|
-
// routes to the data-driven workflow, executing the state-machine template carried in its
|
|
551
|
-
// execution_policy (template_json). A pipeline lacking a valid template FAILS LOUD here
|
|
552
|
-
// (PIPELINE_NOT_DATA_DRIVEN) rather than silently no-op-ing — there is no hardcoded fallback engine.
|
|
553
|
-
// A present-but-malformed/invalid template likewise throws (templateFromExecutionPolicy).
|
|
554
561
|
const template = templateFromExecutionPolicy(route.executionPolicy);
|
|
555
562
|
if (!template) {
|
|
556
563
|
throw new ControlPlaneError('VALIDATION_FAILURE', `PIPELINE_NOT_DATA_DRIVEN: pipeline ${route.pipelineId} carries no state-machine template ` +
|
|
@@ -650,10 +657,8 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
650
657
|
const idSuffix = fnv1a64Hex(`${parentRunId}|${blockedEvent.eventId}`).slice(0, 8);
|
|
651
658
|
return { title, repo, description, scope, priority, role: recoveryRole, playbookId, pipelineId, params, routeDecision, executionProfile, now, idSuffix };
|
|
652
659
|
}
|
|
653
|
-
/* node:coverage disable */
|
|
654
660
|
async createRecoveryRunOrReuseExpected(input, expected) {
|
|
655
661
|
try {
|
|
656
|
-
/* node:coverage enable */
|
|
657
662
|
return await this.runs.createRun(input);
|
|
658
663
|
}
|
|
659
664
|
catch (error) {
|
|
@@ -870,11 +875,6 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
870
875
|
await new Promise((resolve) => setTimeout(resolve, intervalMs));
|
|
871
876
|
}
|
|
872
877
|
}
|
|
873
|
-
/**
|
|
874
|
-
* Resolve a single run to its actionable state. Public so `RunWatchService` (slice 141 D2) can
|
|
875
|
-
* fan it out across many runs; it is a point-in-time level read (gate = `inbox.find(approval)`),
|
|
876
|
-
* not an event cursor — the watch primitive layers at-least-once + idempotent delivery on top.
|
|
877
|
-
*/
|
|
878
878
|
async resolveRunState(runId) {
|
|
879
879
|
const detail = await this.runs.showRun(runId);
|
|
880
880
|
if (!detail)
|
|
@@ -894,7 +894,7 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
894
894
|
return {
|
|
895
895
|
runId,
|
|
896
896
|
state: 'pending_gate',
|
|
897
|
-
nextAction: 'resolve approval with approve_gate or reject_gate',
|
|
897
|
+
nextAction: 'resolve approval with resolve_gate, approve_gate, or reject_gate',
|
|
898
898
|
runStatus,
|
|
899
899
|
workflowStatus,
|
|
900
900
|
inbox: gate,
|
|
@@ -963,7 +963,7 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
963
963
|
return {
|
|
964
964
|
runId,
|
|
965
965
|
state: 'running',
|
|
966
|
-
nextAction: '
|
|
966
|
+
nextAction: 'wait for run state change or inspect get_run_digest',
|
|
967
967
|
runStatus,
|
|
968
968
|
workflowStatus,
|
|
969
969
|
...issueRefPart,
|
|
@@ -982,31 +982,87 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
982
982
|
getPendingDecisions(runId) {
|
|
983
983
|
return this.inbox.listInbox({ status: 'pending', runId, limit: 100 });
|
|
984
984
|
}
|
|
985
|
-
approveGate(input) {
|
|
986
|
-
const
|
|
987
|
-
|
|
985
|
+
async approveGate(input) {
|
|
986
|
+
const item = await this.getInboxItem(input.inboxId);
|
|
987
|
+
const outcomes = gateDeclaredOutcomes(item);
|
|
988
|
+
this.assertLegacyGateWrapperAllowed(input.inboxId, outcomes);
|
|
989
|
+
if (outcomes.length === 0 || (outcomes.length === 1 && outcomes[0] === 'approved')) {
|
|
990
|
+
const resolvedBy = input.resolvedBy ?? 'mcp';
|
|
991
|
+
return this.resolveLegacyGate(item, { decision: 'approve', resolvedBy }, resolvedBy, input.inboxId);
|
|
992
|
+
}
|
|
993
|
+
const outcome = outcomes.includes('approved') ? 'approved' : outcomes[0];
|
|
994
|
+
if (!outcome) {
|
|
995
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `gate has no declared outcomes: ${input.inboxId}`);
|
|
996
|
+
}
|
|
997
|
+
return this.resolveGate({ inboxId: input.inboxId, outcome, resolvedBy: input.resolvedBy });
|
|
988
998
|
}
|
|
989
|
-
rejectGate(input) {
|
|
990
|
-
const
|
|
991
|
-
|
|
999
|
+
async rejectGate(input) {
|
|
1000
|
+
const item = await this.getInboxItem(input.inboxId);
|
|
1001
|
+
const outcomes = gateDeclaredOutcomes(item);
|
|
1002
|
+
this.assertLegacyGateWrapperAllowed(input.inboxId, outcomes);
|
|
1003
|
+
if (outcomes.length === 0) {
|
|
1004
|
+
const resolvedBy = input.resolvedBy ?? 'mcp';
|
|
1005
|
+
return this.resolveLegacyGate(item, { decision: 'reject', resolvedBy }, resolvedBy, input.inboxId);
|
|
1006
|
+
}
|
|
1007
|
+
const outcome = outcomes.filter((candidate) => candidate !== 'approved').at(-1);
|
|
1008
|
+
if (!outcome) {
|
|
1009
|
+
const resolvedBy = input.resolvedBy ?? 'mcp';
|
|
1010
|
+
return this.resolveLegacyGate(item, { decision: 'reject', resolvedBy }, resolvedBy, input.inboxId);
|
|
1011
|
+
}
|
|
1012
|
+
return this.resolveGate({ inboxId: input.inboxId, outcome, resolvedBy: input.resolvedBy });
|
|
992
1013
|
}
|
|
993
|
-
async
|
|
1014
|
+
async resolveGate(input) {
|
|
994
1015
|
const item = await this.getInboxItem(input.inboxId);
|
|
995
|
-
|
|
996
|
-
|
|
1016
|
+
const topic = gateTopic(item);
|
|
1017
|
+
if (!topic) {
|
|
1018
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `inbox item is not a plan or merge gate: ${input.inboxId}`);
|
|
997
1019
|
}
|
|
998
|
-
|
|
1020
|
+
const outcomes = gateOutcomes(item);
|
|
1021
|
+
if (outcomes.length === 0) {
|
|
1022
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `gate has no declared named outcomes: ${input.inboxId}`);
|
|
1023
|
+
}
|
|
1024
|
+
const outcome = input.outcome.trim();
|
|
1025
|
+
if (!outcomes.includes(outcome)) {
|
|
1026
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `invalid gate outcome ${outcome}; expected one of: ${outcomes.join(', ')}`);
|
|
1027
|
+
}
|
|
1028
|
+
const note = input.note?.trim();
|
|
1029
|
+
if (outcome === 'approve_anyway' && !note) {
|
|
1030
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', 'approve_anyway requires a non-empty note');
|
|
1031
|
+
}
|
|
1032
|
+
const resolvedBy = input.resolvedBy ?? 'mcp';
|
|
1033
|
+
const answer = {
|
|
1034
|
+
outcome,
|
|
1035
|
+
...(note ? { note } : {}),
|
|
1036
|
+
resolvedBy,
|
|
1037
|
+
resolvedAt: new Date().toISOString(),
|
|
999
1038
|
inboxId: input.inboxId,
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1039
|
+
};
|
|
1040
|
+
const result = await this.inbox.resolveInbox(input.inboxId, answer, resolvedBy);
|
|
1041
|
+
await this.signalGate(item, topic, result.answer, input.inboxId);
|
|
1042
|
+
return {
|
|
1043
|
+
inboxId: input.inboxId,
|
|
1044
|
+
previousStatus: result.status,
|
|
1045
|
+
answer: result.answer,
|
|
1046
|
+
signaled: true,
|
|
1047
|
+
topic,
|
|
1048
|
+
runId: item.runId,
|
|
1049
|
+
};
|
|
1004
1050
|
}
|
|
1005
|
-
|
|
1006
|
-
|
|
1051
|
+
assertLegacyGateWrapperAllowed(inboxId, outcomes) {
|
|
1052
|
+
if (outcomes.length > 2 || outcomes.includes('approve_anyway')) {
|
|
1053
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `inbox item has named gate outcomes; use resolve_gate with an explicit outcome: ${inboxId}`);
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
assertGateOutcome(item, outcome) {
|
|
1057
|
+
const outcomes = gateOutcomes(item);
|
|
1058
|
+
if (!outcomes.includes(outcome)) {
|
|
1059
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `invalid gate outcome ${outcome}; expected one of: ${outcomes.join(', ')}`);
|
|
1060
|
+
}
|
|
1061
|
+
}
|
|
1062
|
+
async resolveLegacyGate(item, answer, resolvedBy, inboxId) {
|
|
1007
1063
|
const topic = gateTopic(item);
|
|
1008
1064
|
if (!topic) {
|
|
1009
|
-
throw new ControlPlaneError('VALIDATION_FAILURE', `inbox item is not a
|
|
1065
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `inbox item is not a gate: ${inboxId}`);
|
|
1010
1066
|
}
|
|
1011
1067
|
const result = await this.inbox.resolveInbox(inboxId, answer, resolvedBy);
|
|
1012
1068
|
await this.signalGate(item, topic, result.answer, inboxId);
|
|
@@ -1019,10 +1075,42 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
1019
1075
|
runId: item.runId,
|
|
1020
1076
|
};
|
|
1021
1077
|
}
|
|
1078
|
+
async answerQuestion(input) {
|
|
1079
|
+
const item = await this.getInboxItem(input.inboxId);
|
|
1080
|
+
if (gateTopic(item)) {
|
|
1081
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', `inbox item is a gate; use resolve_gate, approve_gate, or reject_gate: ${input.inboxId}`);
|
|
1082
|
+
}
|
|
1083
|
+
return this.resolveInboxItem({
|
|
1084
|
+
inboxId: input.inboxId,
|
|
1085
|
+
answer: input.answer,
|
|
1086
|
+
resolvedBy: input.resolvedBy ?? 'mcp',
|
|
1087
|
+
signalGate: false,
|
|
1088
|
+
});
|
|
1089
|
+
}
|
|
1022
1090
|
async resolveInboxItem(input) {
|
|
1023
1091
|
const item = await this.getInboxItem(input.inboxId);
|
|
1024
1092
|
const topic = gateTopic(item);
|
|
1025
|
-
|
|
1093
|
+
let answerToResolve = input.answer;
|
|
1094
|
+
if (topic && input.signalGate !== false) {
|
|
1095
|
+
const answer = asRecord(input.answer);
|
|
1096
|
+
if (typeof answer?.outcome === 'string') {
|
|
1097
|
+
const outcome = answer.outcome.trim();
|
|
1098
|
+
if (!outcome) {
|
|
1099
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', 'gate outcome must be non-empty');
|
|
1100
|
+
}
|
|
1101
|
+
this.assertGateOutcome(item, outcome);
|
|
1102
|
+
const note = typeof answer?.note === 'string' ? answer.note.trim() : '';
|
|
1103
|
+
if (outcome === 'approve_anyway' && !note) {
|
|
1104
|
+
throw new ControlPlaneError('VALIDATION_FAILURE', 'approve_anyway requires a non-empty note');
|
|
1105
|
+
}
|
|
1106
|
+
answerToResolve = {
|
|
1107
|
+
...answer,
|
|
1108
|
+
outcome,
|
|
1109
|
+
...(typeof answer.note === 'string' ? { note } : {}),
|
|
1110
|
+
};
|
|
1111
|
+
}
|
|
1112
|
+
}
|
|
1113
|
+
const result = await this.inbox.resolveInbox(input.inboxId, answerToResolve, input.resolvedBy ?? 'mcp');
|
|
1026
1114
|
const shouldSignal = input.signalGate !== false && topic !== null;
|
|
1027
1115
|
if (shouldSignal) {
|
|
1028
1116
|
await this.signalGate(item, topic, result.answer, input.inboxId);
|
|
@@ -1092,6 +1180,20 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
1092
1180
|
source: input.pipeline ? 'explicit' : 'deterministic-installed-playbook',
|
|
1093
1181
|
});
|
|
1094
1182
|
}
|
|
1183
|
+
async previewPipelineSelection(input) {
|
|
1184
|
+
const playbook = await this.playbooks.resolvePlaybook(input.playbookId);
|
|
1185
|
+
const candidatePipelines = (await this.playbooks.listPipelines())
|
|
1186
|
+
.filter((p) => p.playbookId === playbook.id)
|
|
1187
|
+
.sort((a, b) => a.id.localeCompare(b.id));
|
|
1188
|
+
const text = [input.title, input.description, input.scope].filter(Boolean).join(' ');
|
|
1189
|
+
try {
|
|
1190
|
+
const pick = await this.resolveAutoPipeline(playbook.id, text);
|
|
1191
|
+
return { playbookId: playbook.id, candidatePipelines, wouldAutoRoute: { pipelineId: pick.pipelineId, pipelineRowId: pick.id } };
|
|
1192
|
+
}
|
|
1193
|
+
catch (error) {
|
|
1194
|
+
return { playbookId: playbook.id, candidatePipelines, wouldAutoRoute: null, wouldAutoRouteReason: asErrorMessage(error) };
|
|
1195
|
+
}
|
|
1196
|
+
}
|
|
1095
1197
|
async routeForRun(run) {
|
|
1096
1198
|
if (isRouteDecision(run.data.route_decision))
|
|
1097
1199
|
return run.data.route_decision;
|
|
@@ -1152,10 +1254,6 @@ let TaskControlPlaneApiService = class TaskControlPlaneApiService {
|
|
|
1152
1254
|
async resolveRouteRoles(playbookId, pipeline, executionProfile) {
|
|
1153
1255
|
const roles = (await this.roles.listRoles()).filter((role) => role.playbookId === playbookId);
|
|
1154
1256
|
const byPlaybookRole = new Map(roles.map((role) => [role.playbookRoleId || role.name, role]));
|
|
1155
|
-
// The route selects WHICH roles a pipeline binds (capability handles the data-driven engine
|
|
1156
|
-
// resolves). Order is no longer load-bearing — the data-driven template owns node sequencing — so
|
|
1157
|
-
// alternative-group selections simply append (the old `insertBeforeFirstDeveloperRole` phase-order
|
|
1158
|
-
// hardcode is removed with the rest of the hardcoded engine, plan 0015 slice 3).
|
|
1159
1257
|
const selected = [...pipeline.requiredRoles];
|
|
1160
1258
|
for (const group of pipeline.alternativeRoles) {
|
|
1161
1259
|
const match = group.roles.find((roleId) => byPlaybookRole.has(roleId));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-control-plane-api.service.js","sourceRoot":"","sources":["../../src/task-control-plane/task-control-plane-api.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task-control-plane-api.service.js","sourceRoot":"","sources":["../../src/task-control-plane/task-control-plane-api.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@ import { promises as fs } from 'node:fs';
|
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { toStr } from '../control-plane/steps.js';
|
|
4
4
|
import { isWorktreeDir, worktreePathFor } from '../control-plane/resolve-cwd.js';
|
|
5
|
-
// ADR digest not yet included — deferred to a later plan once structure is established.
|
|
6
5
|
export const REVO_CONTEXT_MISSING = 'revo.ContextMissing';
|
|
7
6
|
const MAX_PUBLIC_PARAMS_CHARS = 8_000;
|
|
8
7
|
const MAX_PLAN_CONTEXT_CHARS = 40_000;
|
|
@@ -133,11 +132,6 @@ export async function buildContext(da, step, role, runContext, dataDir) {
|
|
|
133
132
|
const taskTitle = task ? toStr(task.data.title) : '(unknown task)';
|
|
134
133
|
const taskScope = task ? toStr(task.data.scope) : '';
|
|
135
134
|
const repoRef = task ? toStr(task.data.repo_ref) : '';
|
|
136
|
-
// A LIVE run edits in an isolated git worktree (plan 0017) — and its cwd is already that worktree
|
|
137
|
-
// (resolveRunCwd). Point the agent's repo CONTEXT at the worktree too, so prompt and cwd agree and the
|
|
138
|
-
// agent's writes land where the worktree-based integrator reads them, not in the original repo path
|
|
139
|
-
// (slice 143). Only when a worktree actually exists on disk (live run); non-live runs and unit tests
|
|
140
|
-
// (dataDir omitted) keep repo_ref unchanged.
|
|
141
135
|
let taskRepo = repoRef;
|
|
142
136
|
if (dataDir && taskRepo) {
|
|
143
137
|
const worktree = worktreePathFor(dataDir, step.runId);
|
|
@@ -145,13 +139,7 @@ export async function buildContext(da, step, role, runContext, dataDir) {
|
|
|
145
139
|
taskRepo = worktree;
|
|
146
140
|
}
|
|
147
141
|
const publicParams = isRecord(runContext?.params) ? runContext.params : {};
|
|
148
|
-
// planPath authorization stays anchored to the ORIGINAL repo_ref, NOT the rewritten worktree path: the
|
|
149
|
-
// worktree rewrite is a display/working-tree concern, and reusing it as the plan-context sandbox would
|
|
150
|
-
// widen the boundary to <dataDir>/worktrees/** — letting a live run read SIBLING worktrees via a
|
|
151
|
-
// `planPath: ../other-run/…` traversal (security; CodeRabbit on slice 143).
|
|
152
142
|
const planContext = await materializePlanContext(publicParams.planPath, repoRef);
|
|
153
|
-
// WORKAROUND: JsonFilterDto.equals is typed as { [key: string]: unknown } but accepts scalar
|
|
154
|
-
// strings at runtime; mirrors the cast pattern in claimNextStep/recoverInFlight.
|
|
155
143
|
const stepAttempts = await da.listRows('attempts', {
|
|
156
144
|
first: 100,
|
|
157
145
|
where: { data: { path: 'step_id', equals: step.id } },
|
|
@@ -183,10 +171,6 @@ export async function buildContext(da, step, role, runContext, dataDir) {
|
|
|
183
171
|
parts.push(`- ${lesson}`);
|
|
184
172
|
}
|
|
185
173
|
}
|
|
186
|
-
// 0016 dataflow: the data-driven adapter hydrates `step.input.inputs` with upstream step outputs
|
|
187
|
-
// (e.g. the analyst's plan for a developer/reviewer). Render them as a clear, named section so the
|
|
188
|
-
// agent receives the produced artifacts. Omitted entirely when there are no hydrated inputs (every
|
|
189
|
-
// legacy/no-consumes node), so existing prompts are unchanged.
|
|
190
174
|
const si = step.input;
|
|
191
175
|
const hydrated = si !== null && typeof si === 'object' && !Array.isArray(si)
|
|
192
176
|
? si.inputs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-context.js","sourceRoot":"","sources":["../../src/worker/build-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"build-context.js","sourceRoot":"","sources":["../../src/worker/build-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAIjF,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAA8B,CAAC;AAEnE,MAAM,uBAAuB,GAAG,KAAK,CAAC;AACtC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAOtC,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,IAAI,GAAG,oBAAoB,CAAC;IAErC,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,oBAAoB,KAAK,OAAO,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,+CAA+C,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,OAAO,CAAC,KAAa,EAAE,QAAgB;IAC9C,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,iBAAiB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,iBAAiB,CAAC;AACtG,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;QACtH,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IAChC,IAAI,MAAM,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QAAE,CAAC,IAAI,CAAC,CAAC;IAC3E,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,SAAS,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,KAAK,aAAa,KAAK,EAAE,CAAC;AAC9E,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,QAAgB;IACtD,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,YAAY,CAAC,MAAc,EAAE,KAAa;IACjD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,QAAiB,EAAE,OAAe;IACtE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7D,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,mBAAmB,CAAC,4CAA4C,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,mBAAmB,CAAC,yDAAyD,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,mBAAmB,CAAC,yDAAyD,CAAC,CAAC;IAC3F,CAAC;IACD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACjG,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACH,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,mBAAmB,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,mBAAmB,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,IAAI,CAAC;IACT,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,mBAAmB,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QACnB,MAAM,IAAI,mBAAmB,CAAC,kCAAkC,OAAO,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,mBAAmB,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,EAA0B,EAC1B,IAAU,EACV,IAAU,EACV,UAA4B,EAC5B,OAAgB;IAEhB,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEnF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACnE,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,aAAa,CAAC,QAAQ,CAAC;YAAE,QAAQ,GAAG,QAAQ,CAAC;IACnD,CAAC;IACD,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjF,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE;QACjD,KAAK,EAAE,GAAG;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAwC,EAAE,EAAE;KAC5F,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,YAAY;SAC9B,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ;QAClC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CACnC;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAErC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE3E,MAAM,KAAK,GAAa;QACtB,YAAY,IAAI,CAAC,IAAI,EAAE;QACvB,IAAI,CAAC,YAAY;QACjB,mBAAmB,iBAAiB,EAAE;QACtC,YAAY,SAAS,EAAE;KACxB,CAAC;IAEF,IAAI,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC;IACjD,IAAI,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;IAC9C,IAAI,UAAU,EAAE,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACvF,KAAK,CAAC,IAAI,CAAC,yBAAyB,EAAE,cAAc,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAC7F,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,sCAAsC,EAAE,SAAS,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACvG,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAC/C,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;IACtB,MAAM,QAAQ,GACZ,EAAE,KAAK,IAAI,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACzD,CAAC,CAAE,EAA8B,CAAC,MAAM;QACxC,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,QAAmC,CAAC,CAAC;QACpE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YAC/C,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;gBAClC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IAE/C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|