@revisium/orchestrator 0.0.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 (176) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +20 -0
  3. package/bin/revo.js +2 -0
  4. package/control-plane/bootstrap.config.json +931 -0
  5. package/dist/app.module.js +28 -0
  6. package/dist/app.module.js.map +1 -0
  7. package/dist/cli/commands/bootstrap.js +39 -0
  8. package/dist/cli/commands/bootstrap.js.map +1 -0
  9. package/dist/cli/commands/dev.js +143 -0
  10. package/dist/cli/commands/dev.js.map +1 -0
  11. package/dist/cli/commands/inbox.js +288 -0
  12. package/dist/cli/commands/inbox.js.map +1 -0
  13. package/dist/cli/commands/mcp.js +16 -0
  14. package/dist/cli/commands/mcp.js.map +1 -0
  15. package/dist/cli/commands/playbook.js +74 -0
  16. package/dist/cli/commands/playbook.js.map +1 -0
  17. package/dist/cli/commands/poll-workflow-state.js +144 -0
  18. package/dist/cli/commands/poll-workflow-state.js.map +1 -0
  19. package/dist/cli/commands/revisium-context.js +23 -0
  20. package/dist/cli/commands/revisium-context.js.map +1 -0
  21. package/dist/cli/commands/revisium-helpers.js +61 -0
  22. package/dist/cli/commands/revisium-helpers.js.map +1 -0
  23. package/dist/cli/commands/revisium.js +89 -0
  24. package/dist/cli/commands/revisium.js.map +1 -0
  25. package/dist/cli/commands/run.js +426 -0
  26. package/dist/cli/commands/run.js.map +1 -0
  27. package/dist/cli/commands/work.js +149 -0
  28. package/dist/cli/commands/work.js.map +1 -0
  29. package/dist/cli/config.js +2 -0
  30. package/dist/cli/config.js.map +1 -0
  31. package/dist/cli/index.js +32 -0
  32. package/dist/cli/index.js.map +1 -0
  33. package/dist/cli/live-guard.js +49 -0
  34. package/dist/cli/live-guard.js.map +1 -0
  35. package/dist/cli/needs-host.js +78 -0
  36. package/dist/cli/needs-host.js.map +1 -0
  37. package/dist/cli/program.js +37 -0
  38. package/dist/cli/program.js.map +1 -0
  39. package/dist/config.js +102 -0
  40. package/dist/config.js.map +1 -0
  41. package/dist/control-plane/client-transport.js +146 -0
  42. package/dist/control-plane/client-transport.js.map +1 -0
  43. package/dist/control-plane/data-access.js +99 -0
  44. package/dist/control-plane/data-access.js.map +1 -0
  45. package/dist/control-plane/definitions.js +120 -0
  46. package/dist/control-plane/definitions.js.map +1 -0
  47. package/dist/control-plane/errors.js +13 -0
  48. package/dist/control-plane/errors.js.map +1 -0
  49. package/dist/control-plane/inbox.js +261 -0
  50. package/dist/control-plane/inbox.js.map +1 -0
  51. package/dist/control-plane/index.js +6 -0
  52. package/dist/control-plane/index.js.map +1 -0
  53. package/dist/control-plane/json-fields.js +68 -0
  54. package/dist/control-plane/json-fields.js.map +1 -0
  55. package/dist/control-plane/resolve-cwd.js +75 -0
  56. package/dist/control-plane/resolve-cwd.js.map +1 -0
  57. package/dist/control-plane/steps.js +381 -0
  58. package/dist/control-plane/steps.js.map +1 -0
  59. package/dist/control-plane/tables.js +13 -0
  60. package/dist/control-plane/tables.js.map +1 -0
  61. package/dist/control-plane/versioned-meaning.js +53 -0
  62. package/dist/control-plane/versioned-meaning.js.map +1 -0
  63. package/dist/engine/dbos.module.js +18 -0
  64. package/dist/engine/dbos.module.js.map +1 -0
  65. package/dist/engine/dbos.service.js +296 -0
  66. package/dist/engine/dbos.service.js.map +1 -0
  67. package/dist/engine/ensure-postgres.js +80 -0
  68. package/dist/engine/ensure-postgres.js.map +1 -0
  69. package/dist/engine/types.js +2 -0
  70. package/dist/engine/types.js.map +1 -0
  71. package/dist/host/ensure-revisium.js +269 -0
  72. package/dist/host/ensure-revisium.js.map +1 -0
  73. package/dist/host/host.lifecycle.js +75 -0
  74. package/dist/host/host.lifecycle.js.map +1 -0
  75. package/dist/mcp/mcp-capabilities.js +47 -0
  76. package/dist/mcp/mcp-capabilities.js.map +1 -0
  77. package/dist/mcp/mcp-facade.service.js +130 -0
  78. package/dist/mcp/mcp-facade.service.js.map +1 -0
  79. package/dist/mcp/mcp-stdio.service.js +48 -0
  80. package/dist/mcp/mcp-stdio.service.js.map +1 -0
  81. package/dist/mcp/mcp-tools.js +264 -0
  82. package/dist/mcp/mcp-tools.js.map +1 -0
  83. package/dist/mcp/mcp.module.js +21 -0
  84. package/dist/mcp/mcp.module.js.map +1 -0
  85. package/dist/package-info.js +10 -0
  86. package/dist/package-info.js.map +1 -0
  87. package/dist/pipeline/await-human.js +62 -0
  88. package/dist/pipeline/await-human.js.map +1 -0
  89. package/dist/pipeline/develop-task.workflow.js +497 -0
  90. package/dist/pipeline/develop-task.workflow.js.map +1 -0
  91. package/dist/pipeline/pipeline.module.js +34 -0
  92. package/dist/pipeline/pipeline.module.js.map +1 -0
  93. package/dist/playbook/catalog-loader.js +145 -0
  94. package/dist/playbook/catalog-loader.js.map +1 -0
  95. package/dist/playbook/errors.js +14 -0
  96. package/dist/playbook/errors.js.map +1 -0
  97. package/dist/playbook/import-mapper.js +186 -0
  98. package/dist/playbook/import-mapper.js.map +1 -0
  99. package/dist/playbook/manifest.js +60 -0
  100. package/dist/playbook/manifest.js.map +1 -0
  101. package/dist/playbook/playbook-installer.js +51 -0
  102. package/dist/playbook/playbook-installer.js.map +1 -0
  103. package/dist/playbook/prompt-composer.js +34 -0
  104. package/dist/playbook/prompt-composer.js.map +1 -0
  105. package/dist/playbook/source-resolver.js +105 -0
  106. package/dist/playbook/source-resolver.js.map +1 -0
  107. package/dist/poller/pr-readiness-core.js +656 -0
  108. package/dist/poller/pr-readiness-core.js.map +1 -0
  109. package/dist/poller/pr-readiness.js +91 -0
  110. package/dist/poller/pr-readiness.js.map +1 -0
  111. package/dist/revisium/inbox.service.js +67 -0
  112. package/dist/revisium/inbox.service.js.map +1 -0
  113. package/dist/revisium/playbooks.service.js +99 -0
  114. package/dist/revisium/playbooks.service.js.map +1 -0
  115. package/dist/revisium/revisium.module.js +55 -0
  116. package/dist/revisium/revisium.module.js.map +1 -0
  117. package/dist/revisium/roles.service.js +79 -0
  118. package/dist/revisium/roles.service.js.map +1 -0
  119. package/dist/revisium/run.service.js +182 -0
  120. package/dist/revisium/run.service.js.map +1 -0
  121. package/dist/revisium/tokens.js +7 -0
  122. package/dist/revisium/tokens.js.map +1 -0
  123. package/dist/run/append-event.js +112 -0
  124. package/dist/run/append-event.js.map +1 -0
  125. package/dist/run/cancel-run.js +47 -0
  126. package/dist/run/cancel-run.js.map +1 -0
  127. package/dist/run/create-run.js +208 -0
  128. package/dist/run/create-run.js.map +1 -0
  129. package/dist/run/fail-run.js +20 -0
  130. package/dist/run/fail-run.js.map +1 -0
  131. package/dist/run/inspect-run.js +287 -0
  132. package/dist/run/inspect-run.js.map +1 -0
  133. package/dist/run/terminal-run-status.js +45 -0
  134. package/dist/run/terminal-run-status.js.map +1 -0
  135. package/dist/runners/claude-code.service.js +48 -0
  136. package/dist/runners/claude-code.service.js.map +1 -0
  137. package/dist/runners/gh-identity.js +108 -0
  138. package/dist/runners/gh-identity.js.map +1 -0
  139. package/dist/runners/integrator.js +417 -0
  140. package/dist/runners/integrator.js.map +1 -0
  141. package/dist/runners/runner.module.js +40 -0
  142. package/dist/runners/runner.module.js.map +1 -0
  143. package/dist/runners/tokens.js +7 -0
  144. package/dist/runners/tokens.js.map +1 -0
  145. package/dist/task-control-plane/pr-readiness.service.js +33 -0
  146. package/dist/task-control-plane/pr-readiness.service.js.map +1 -0
  147. package/dist/task-control-plane/task-control-plane-api.service.js +440 -0
  148. package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -0
  149. package/dist/task-control-plane/task-control-plane.module.js +23 -0
  150. package/dist/task-control-plane/task-control-plane.module.js.map +1 -0
  151. package/dist/worker/build-context.js +39 -0
  152. package/dist/worker/build-context.js.map +1 -0
  153. package/dist/worker/claude-code-runner.js +135 -0
  154. package/dist/worker/claude-code-runner.js.map +1 -0
  155. package/dist/worker/git-worktree-manager.js +84 -0
  156. package/dist/worker/git-worktree-manager.js.map +1 -0
  157. package/dist/worker/loop.js +122 -0
  158. package/dist/worker/loop.js.map +1 -0
  159. package/dist/worker/process-executor.js +62 -0
  160. package/dist/worker/process-executor.js.map +1 -0
  161. package/dist/worker/result-envelope.js +134 -0
  162. package/dist/worker/result-envelope.js.map +1 -0
  163. package/dist/worker/runner-dispatch.js +20 -0
  164. package/dist/worker/runner-dispatch.js.map +1 -0
  165. package/dist/worker/runner.js +2 -0
  166. package/dist/worker/runner.js.map +1 -0
  167. package/dist/worker/script-runner.js +28 -0
  168. package/dist/worker/script-runner.js.map +1 -0
  169. package/dist/worker/stub-runner.js +59 -0
  170. package/dist/worker/stub-runner.js.map +1 -0
  171. package/dist/worker/worker-id.js +18 -0
  172. package/dist/worker/worker-id.js.map +1 -0
  173. package/dist/worker/worktree-manager.js +7 -0
  174. package/dist/worker/worktree-manager.js.map +1 -0
  175. package/package.json +66 -0
  176. package/revisium.config.json +10 -0
@@ -0,0 +1,264 @@
1
+ import { z } from 'zod';
2
+ function json(value) {
3
+ return {
4
+ content: [
5
+ {
6
+ type: 'text',
7
+ text: JSON.stringify(value, null, 2),
8
+ },
9
+ ],
10
+ };
11
+ }
12
+ const runnerModeSchema = z.enum(['script', 'live']).optional().describe('script = zero-cost stub path; live = real Claude + git/GitHub effects');
13
+ const runIdSchema = z.string().min(1).describe('Run ID');
14
+ const inboxIdSchema = z.string().min(1).describe('Inbox item ID');
15
+ const limitSchema = z.number().int().positive().max(500).optional();
16
+ const prReadinessInputSchema = {
17
+ repo: z.string().min(1).describe('GitHub repository in owner/name form, for example revisium/agent-orchestrator'),
18
+ prNumber: z.number().int().positive().optional(),
19
+ headBranch: z.string().min(1).optional(),
20
+ baseBranch: z.string().min(1).optional().default('master'),
21
+ sonarProject: z.string().min(1).optional(),
22
+ includeComments: z.boolean().optional().default(true),
23
+ includeReviewThreads: z.boolean().optional().default(true),
24
+ };
25
+ export function registerRevoMcpTools(server, facade) {
26
+ server.registerTool('get_status', {
27
+ description: 'Return local daemon, DBOS host, and control-plane project status.',
28
+ inputSchema: {},
29
+ annotations: { readOnlyHint: true },
30
+ }, async () => json(await facade.getStatus()));
31
+ server.registerTool('doctor', {
32
+ description: 'Run lightweight local diagnostics for the Revo control plane.',
33
+ inputSchema: {},
34
+ annotations: { readOnlyHint: true },
35
+ }, async () => json(await facade.doctor()));
36
+ server.registerTool('get_capabilities', {
37
+ description: 'List supported Revo MCP tools and execution modes.',
38
+ inputSchema: {},
39
+ annotations: { readOnlyHint: true },
40
+ }, () => json(facade.getCapabilities()));
41
+ server.registerTool('validate_repository', {
42
+ description: 'Validate a repository path before starting live development work.',
43
+ inputSchema: {
44
+ repo: z.string().min(1).describe('Repository path to validate'),
45
+ },
46
+ annotations: { readOnlyHint: true },
47
+ }, async ({ repo }) => json(await facade.validateRepository(repo)));
48
+ server.registerTool('get_repository_context', {
49
+ description: 'Return repository validation plus known local guidance files and package scripts.',
50
+ inputSchema: {
51
+ repo: z.string().min(1).describe('Repository path to inspect'),
52
+ },
53
+ annotations: { readOnlyHint: true },
54
+ }, async ({ repo }) => json(await facade.getRepositoryContext(repo)));
55
+ server.registerTool('get_project', {
56
+ description: 'Return the configured local Revo control-plane project binding.',
57
+ inputSchema: {},
58
+ annotations: { readOnlyHint: true },
59
+ }, () => json(facade.getProject()));
60
+ server.registerTool('create_run', {
61
+ description: 'Create a development run, optionally starting the pipeline immediately.',
62
+ inputSchema: {
63
+ title: z.string().min(1),
64
+ repo: z.string().min(1),
65
+ description: z.string().optional(),
66
+ scope: z.string().optional(),
67
+ priority: z.number().int().optional(),
68
+ role: z.string().optional().describe('Initial role hint; defaults to architect'),
69
+ start: z.boolean().optional().describe('Start the workflow immediately after creating the run'),
70
+ runnerMode: runnerModeSchema,
71
+ },
72
+ annotations: { readOnlyHint: false },
73
+ }, async (input) => json(await facade.createRun(input)));
74
+ server.registerTool('start_run', {
75
+ description: 'Start or reattach the durable pipeline workflow for an existing run.',
76
+ inputSchema: {
77
+ runId: runIdSchema,
78
+ runnerMode: runnerModeSchema,
79
+ },
80
+ annotations: { readOnlyHint: false },
81
+ }, async (input) => json(await facade.startRun(input)));
82
+ server.registerTool('resume_run', {
83
+ description: 'Alias for start_run; reattaches a durable workflow by run ID.',
84
+ inputSchema: {
85
+ runId: runIdSchema,
86
+ runnerMode: runnerModeSchema,
87
+ },
88
+ annotations: { readOnlyHint: false },
89
+ }, async (input) => json(await facade.resumeRun(input)));
90
+ server.registerTool('cancel_run', {
91
+ description: 'Cancel a run and append a run_cancelled event.',
92
+ inputSchema: {
93
+ runId: runIdSchema,
94
+ },
95
+ annotations: { readOnlyHint: false, destructiveHint: true },
96
+ }, async ({ runId }) => json(await facade.cancelRun(runId)));
97
+ server.registerTool('list_runs', {
98
+ description: 'List known development runs.',
99
+ inputSchema: {
100
+ status: z.string().optional(),
101
+ limit: limitSchema,
102
+ },
103
+ annotations: { readOnlyHint: true },
104
+ }, async (input) => json(await facade.listRuns(input)));
105
+ server.registerTool('get_run', {
106
+ description: 'Show a run with tasks and steps; can include events and attempt log.',
107
+ inputSchema: {
108
+ runId: runIdSchema,
109
+ includeEvents: z.boolean().optional(),
110
+ includeLog: z.boolean().optional(),
111
+ },
112
+ annotations: { readOnlyHint: true },
113
+ }, async (input) => json(await facade.getRun(input)));
114
+ server.registerTool('get_run_events', {
115
+ description: 'List events for a run.',
116
+ inputSchema: {
117
+ runId: runIdSchema,
118
+ type: z.string().optional(),
119
+ limit: limitSchema,
120
+ },
121
+ annotations: { readOnlyHint: true },
122
+ }, async (input) => json(await facade.getRunEvents(input)));
123
+ server.registerTool('get_run_log', {
124
+ description: 'List per-attempt observability rows for a run.',
125
+ inputSchema: {
126
+ runId: runIdSchema,
127
+ limit: limitSchema,
128
+ },
129
+ annotations: { readOnlyHint: true },
130
+ }, async (input) => json(await facade.getRunLog(input)));
131
+ server.registerTool('get_run_digest', {
132
+ description: 'Return a compact run summary with pending decisions, latest events, and usage totals.',
133
+ inputSchema: {
134
+ runId: runIdSchema,
135
+ },
136
+ annotations: { readOnlyHint: true },
137
+ }, async ({ runId }) => json(await facade.getRunDigest(runId)));
138
+ server.registerTool('list_inbox', {
139
+ description: 'List human inbox items, optionally filtered by run and status.',
140
+ inputSchema: {
141
+ status: z.enum(['pending', 'resolved']).optional(),
142
+ runId: z.string().optional(),
143
+ limit: limitSchema,
144
+ },
145
+ annotations: { readOnlyHint: true },
146
+ }, async (input) => json(await facade.listInbox(input)));
147
+ server.registerTool('get_inbox_item', {
148
+ description: 'Show a single inbox item.',
149
+ inputSchema: {
150
+ inboxId: inboxIdSchema,
151
+ },
152
+ annotations: { readOnlyHint: true },
153
+ }, async ({ inboxId }) => json(await facade.getInboxItem(inboxId)));
154
+ server.registerTool('get_pending_decisions', {
155
+ description: 'List pending inbox decisions, optionally scoped to a run.',
156
+ inputSchema: {
157
+ runId: z.string().optional(),
158
+ },
159
+ annotations: { readOnlyHint: true },
160
+ }, async ({ runId }) => json(await facade.getPendingDecisions(runId)));
161
+ server.registerTool('approve_gate', {
162
+ description: 'Approve a plan or merge gate and signal the parked workflow.',
163
+ inputSchema: {
164
+ inboxId: inboxIdSchema,
165
+ resolvedBy: z.string().optional(),
166
+ },
167
+ annotations: { readOnlyHint: false },
168
+ }, async (input) => json(await facade.approveGate(input)));
169
+ server.registerTool('reject_gate', {
170
+ description: 'Reject a plan or merge gate and signal the parked workflow.',
171
+ inputSchema: {
172
+ inboxId: inboxIdSchema,
173
+ resolvedBy: z.string().optional(),
174
+ },
175
+ annotations: { readOnlyHint: false },
176
+ }, async (input) => json(await facade.rejectGate(input)));
177
+ server.registerTool('answer_question', {
178
+ description: 'Answer a non-gate inbox question or alert.',
179
+ inputSchema: {
180
+ inboxId: inboxIdSchema,
181
+ answer: z.unknown(),
182
+ resolvedBy: z.string().optional(),
183
+ },
184
+ annotations: { readOnlyHint: false },
185
+ }, async (input) => json(await facade.answerQuestion(input)));
186
+ server.registerTool('resolve_inbox_item', {
187
+ description: 'Resolve an inbox item with an arbitrary answer; gate items are signaled by default.',
188
+ inputSchema: {
189
+ inboxId: inboxIdSchema,
190
+ answer: z.unknown(),
191
+ resolvedBy: z.string().optional(),
192
+ signalGate: z.boolean().optional(),
193
+ },
194
+ annotations: { readOnlyHint: false },
195
+ }, async (input) => json(await facade.resolveInboxItem(input)));
196
+ server.registerTool('summarize_gate_risk', {
197
+ description: 'Summarize the risk and context for an inbox gate or question.',
198
+ inputSchema: {
199
+ inboxId: inboxIdSchema,
200
+ },
201
+ annotations: { readOnlyHint: true },
202
+ }, async ({ inboxId }) => json(await facade.summarizeGateRisk(inboxId)));
203
+ server.registerTool('install_playbook', {
204
+ description: 'Install a local/package playbook manifest into the control plane.',
205
+ inputSchema: {
206
+ source: z.string().min(1),
207
+ commit: z.boolean().optional(),
208
+ dryRun: z.boolean().optional(),
209
+ name: z.string().optional(),
210
+ version: z.string().optional(),
211
+ },
212
+ annotations: { readOnlyHint: false },
213
+ }, async (input) => json(await facade.installPlaybook(input)));
214
+ server.registerTool('list_playbooks', {
215
+ description: 'List installed playbooks.',
216
+ inputSchema: {},
217
+ annotations: { readOnlyHint: true },
218
+ }, async () => json(await facade.listPlaybooks()));
219
+ server.registerTool('list_roles', {
220
+ description: 'List installed role summaries.',
221
+ inputSchema: {},
222
+ annotations: { readOnlyHint: true },
223
+ }, async () => json(await facade.listRoles()));
224
+ server.registerTool('get_role', {
225
+ description: 'Load a role definition by role ID.',
226
+ inputSchema: {
227
+ roleId: z.string().min(1),
228
+ },
229
+ annotations: { readOnlyHint: true },
230
+ }, async ({ roleId }) => json(await facade.getRole(roleId)));
231
+ server.registerTool('list_pipelines', {
232
+ description: 'List installed pipeline summaries.',
233
+ inputSchema: {},
234
+ annotations: { readOnlyHint: true },
235
+ }, async () => json(await facade.listPipelines()));
236
+ server.registerTool('get_pipeline', {
237
+ description: 'Load an installed pipeline by row ID.',
238
+ inputSchema: {
239
+ pipelineId: z.string().min(1),
240
+ },
241
+ annotations: { readOnlyHint: true },
242
+ }, async ({ pipelineId }) => json(await facade.getPipeline(pipelineId)));
243
+ server.registerTool('simulate_route', {
244
+ description: 'Return the current advisory route for a task without creating a run.',
245
+ inputSchema: {
246
+ title: z.string().min(1),
247
+ repo: z.string().optional(),
248
+ pipeline: z.string().optional(),
249
+ live: z.boolean().optional(),
250
+ },
251
+ annotations: { readOnlyHint: true },
252
+ }, (input) => json(facade.simulateRoute(input)));
253
+ server.registerTool('get_pr_readiness', {
254
+ description: 'Return normalized read-only PR readiness from GitHub checks, reviews, review threads, provider comments, and optional Sonar data.',
255
+ inputSchema: prReadinessInputSchema,
256
+ annotations: { readOnlyHint: true },
257
+ }, async (input) => json(await facade.getPrReadiness(input)));
258
+ server.registerTool('list_pr_feedback', {
259
+ description: 'Return the actionable PR feedback queue grouped by developer fixes, reviewer questions, provider waits, human decisions, ignored noise, and residual risks.',
260
+ inputSchema: prReadinessInputSchema,
261
+ annotations: { readOnlyHint: true },
262
+ }, async (input) => json(await facade.listPrFeedback(input)));
263
+ }
264
+ //# sourceMappingURL=mcp-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../src/mcp/mcp-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Module } from '@nestjs/common';
8
+ import { TaskControlPlaneModule } from '../task-control-plane/task-control-plane.module.js';
9
+ import { McpFacadeService } from './mcp-facade.service.js';
10
+ import { McpStdioService } from './mcp-stdio.service.js';
11
+ let McpModule = class McpModule {
12
+ };
13
+ McpModule = __decorate([
14
+ Module({
15
+ imports: [TaskControlPlaneModule],
16
+ providers: [McpFacadeService, McpStdioService],
17
+ exports: [McpFacadeService, McpStdioService],
18
+ })
19
+ ], McpModule);
20
+ export { McpModule };
21
+ //# sourceMappingURL=mcp.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.module.js","sourceRoot":"","sources":["../../src/mcp/mcp.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAOlD,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,SAAS;IALrB,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,sBAAsB,CAAC;QACjC,SAAS,EAAE,CAAC,gBAAgB,EAAE,eAAe,CAAC;QAC9C,OAAO,EAAE,CAAC,gBAAgB,EAAE,eAAe,CAAC;KAC7C,CAAC;GACW,SAAS,CAAG"}
@@ -0,0 +1,10 @@
1
+ import { readFileSync } from 'node:fs';
2
+ export function readPackageVersion() {
3
+ const raw = readFileSync(new URL('../package.json', import.meta.url), 'utf8');
4
+ const pkg = JSON.parse(raw);
5
+ if (typeof pkg.version !== 'string' || pkg.version === '') {
6
+ throw new Error('package.json is missing a "version" field');
7
+ }
8
+ return pkg.version;
9
+ }
10
+ //# sourceMappingURL=package-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-info.js","sourceRoot":"","sources":["../src/package-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;IACpD,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,GAAG,CAAC,OAAO,CAAC;AACrB,CAAC"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * await-human.ts — DBOS-free factory for the human-gate async function.
3
+ *
4
+ * INVARIANT: `src/pipeline/*` imports NO `@dbos-inc/dbos-sdk` (M1 — DBOS sealed).
5
+ * All DBOS interaction goes through injected deps: `awaitDecision` (wraps DBOS.recv)
6
+ * and `appendEvent` (pure Revisium write).
7
+ *
8
+ * Gate mechanic (0004, §3.3):
9
+ * 1. Write a deterministic inbox row (kind='approval', no stepId) via `pushInbox`.
10
+ * id = `inbox_${fnv1a64Hex(`${runId}|${topic}`)}` (22 chars ≤ 64, no timestamp).
11
+ * ROW_CONFLICT on replay → pushInbox returns the existing id (no-op, no throw).
12
+ * 2. Emit a `gate_opened` observability event (deterministic id via appendEvent).
13
+ * 3. DURABLY WAIT via `awaitDecision(topic)` → wraps DBOS.recv inside the workflow.
14
+ * 4. null return from recv (far-future timeout) → fail-closed: treat as reject (E7).
15
+ *
16
+ * `recv` MUST run in the workflow body (not a registerStep). `pushInbox` and `appendEvent`
17
+ * also run in the body; each is made idempotent independently (G1 / 0003 pattern).
18
+ * The whole gate is `await`ed directly in the workflow body — no step wrapper needed.
19
+ */
20
+ import { fnv1a64Hex } from '../control-plane/steps.js';
21
+ /**
22
+ * makeAwaitHuman — DBOS-free factory for the awaitHuman async function (C1 pattern).
23
+ *
24
+ * Returns a plain async function `await`ed directly inside the registered workflow body.
25
+ * Tests import this builder directly (exercising the SAME production code) — no copy.
26
+ */
27
+ export function makeAwaitHuman(deps) {
28
+ const { pushInbox, awaitDecision, appendEvent } = deps;
29
+ return async function awaitHumanImpl(runId, topic, title, summary) {
30
+ // 1. FULLY deterministic inbox id (no timestamp) so replay/restart never creates a duplicate row.
31
+ // fnv1a64Hex → 16 hex; `inbox_` + 16 = 22 chars ≤ 64 (mirrors append-event id derivation).
32
+ const inboxKey = runId + '|' + topic;
33
+ const inboxId = `inbox_${fnv1a64Hex(inboxKey)}`;
34
+ // 2. Draft write: pending approval row. context carries the topic (OQ-2) so resolve can read it back.
35
+ // pushInbox catches ROW_CONFLICT internally and returns the same id (no-op on replay) — §3.4a.
36
+ // Gate rows carry NO stepId (gate is workflow-level, not a steps row — E9/E14).
37
+ await pushInbox({
38
+ kind: 'approval',
39
+ runId,
40
+ title,
41
+ context: { topic, summary },
42
+ options: ['approve', 'reject'],
43
+ }, inboxId);
44
+ // 3. Observability event — already idempotent (deterministic event id + ROW_CONFLICT no-op, append-event.ts).
45
+ // Empty taskId/stepId is the established gate/pipeline-level convention (E14 — mirrors pipeline_blocked).
46
+ await appendEvent({
47
+ runId,
48
+ taskId: '',
49
+ stepId: '',
50
+ stepKey: `gate:${topic}`,
51
+ type: 'gate_opened',
52
+ payload: { topic },
53
+ });
54
+ // 4. DURABLE WAIT on the topic keyed by this workflow's id (= runId).
55
+ // recv is called inside the workflow body via the injected dep (DBOS-sealed).
56
+ const msg = await awaitDecision(topic);
57
+ // 5. recv null ⇒ timeout (only on the far-future GATE_DEADLINE_EPOCH_MS — treat as reject/fail-closed).
58
+ // See E7 in TASK.md.
59
+ return msg ?? { decision: 'reject', answer: { reason: 'gate-timeout' } };
60
+ };
61
+ }
62
+ //# sourceMappingURL=await-human.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"await-human.js","sourceRoot":"","sources":["../../src/pipeline/await-human.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AA2BvD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,IAAoB;IACjD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAEvD,OAAO,KAAK,UAAU,cAAc,CAClC,KAAa,EACb,KAAuB,EACvB,KAAa,EACb,OAAgB;QAEhB,kGAAkG;QAClG,8FAA8F;QAC9F,MAAM,QAAQ,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC;QACrC,MAAM,OAAO,GAAG,SAAS,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAEhD,sGAAsG;QACtG,kGAAkG;QAClG,mFAAmF;QACnF,MAAM,SAAS,CACb;YACE,IAAI,EAAE,UAAU;YAChB,KAAK;YACL,KAAK;YACL,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;YAC3B,OAAO,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;SAC/B,EACD,OAAO,CACR,CAAC;QAEF,8GAA8G;QAC9G,6GAA6G;QAC7G,MAAM,WAAW,CAAC;YAChB,KAAK;YACL,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,QAAQ,KAAK,EAAE;YACxB,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,EAAE,KAAK,EAAE;SACnB,CAAC,CAAC;QAEH,sEAAsE;QACtE,iFAAiF;QACjF,MAAM,GAAG,GAAG,MAAM,aAAa,CAAW,KAAK,CAAC,CAAC;QAEjD,wGAAwG;QACxG,wBAAwB;QACxB,OAAO,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,CAAC;IAC3E,CAAC,CAAC;AACJ,CAAC"}