@revisium/orchestrator 0.1.0-alpha.5 → 0.1.0-alpha.6
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 +149 -1
- package/dist/api/graphql-api/filters/agent-observability-exception.filter.js +24 -0
- package/dist/api/graphql-api/filters/agent-observability-exception.filter.js.map +1 -0
- package/dist/api/graphql-api/graphql-api.module.js +2 -0
- package/dist/api/graphql-api/graphql-api.module.js.map +1 -1
- package/dist/api/graphql-api/graphql-ws/agent-observability-subscription-bridge.service.js +296 -0
- package/dist/api/graphql-api/graphql-ws/agent-observability-subscription-bridge.service.js.map +1 -0
- package/dist/api/graphql-api/graphql-ws/agent-observability-subscription-mappers.js +64 -0
- package/dist/api/graphql-api/graphql-ws/agent-observability-subscription-mappers.js.map +1 -0
- package/dist/api/graphql-api/graphql-ws/constants.js +2 -0
- package/dist/api/graphql-api/graphql-ws/constants.js.map +1 -1
- package/dist/api/graphql-api/graphql-ws/pubsub.module.js +5 -2
- package/dist/api/graphql-api/graphql-ws/pubsub.module.js.map +1 -1
- package/dist/api/graphql-api/registerGraphqlEnums.js +6 -1
- package/dist/api/graphql-api/registerGraphqlEnums.js.map +1 -1
- package/dist/api/graphql-api/runs/inputs/get-agent-log.input.js +48 -0
- package/dist/api/graphql-api/runs/inputs/get-agent-log.input.js.map +1 -0
- package/dist/api/graphql-api/runs/model/agent-activity.model.js +367 -0
- package/dist/api/graphql-api/runs/model/agent-activity.model.js.map +1 -0
- package/dist/api/graphql-api/runs/runs-subscription.resolver.js +35 -4
- package/dist/api/graphql-api/runs/runs-subscription.resolver.js.map +1 -1
- package/dist/api/graphql-api/runs/runs.resolver.js +35 -0
- package/dist/api/graphql-api/runs/runs.resolver.js.map +1 -1
- package/dist/cli/commands/doctor-report.js +39 -0
- package/dist/cli/commands/doctor-report.js.map +1 -0
- package/dist/cli/commands/lifecycle.js +237 -0
- package/dist/cli/commands/lifecycle.js.map +1 -0
- package/dist/cli/commands/mcp.js +46 -8
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/commands/revisium-helpers.js +2 -2
- package/dist/cli/index.js +5 -29
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/program.js +7 -23
- package/dist/cli/program.js.map +1 -1
- package/dist/config.js +42 -5
- package/dist/config.js.map +1 -1
- package/dist/control-plane/bootstrap.js +93 -0
- package/dist/control-plane/bootstrap.js.map +1 -0
- package/dist/control-plane/schema-migration.js +7 -11
- package/dist/control-plane/schema-migration.js.map +1 -1
- package/dist/control-plane/seed-default-playbook.js +23 -0
- package/dist/control-plane/seed-default-playbook.js.map +1 -1
- package/dist/e2e/kit/agents.js +17 -5
- package/dist/e2e/kit/agents.js.map +1 -1
- package/dist/e2e/kit/assertions.js +20 -0
- package/dist/e2e/kit/assertions.js.map +1 -1
- package/dist/e2e/kit/harness.js +12 -1
- package/dist/e2e/kit/harness.js.map +1 -1
- package/dist/e2e/kit/scenarios.js +1 -1
- package/dist/e2e/recovery-dd-crash-child.js +3 -2
- package/dist/e2e/recovery-dd-crash-child.js.map +1 -1
- package/dist/engine/dbos.service.js +20 -0
- package/dist/engine/dbos.service.js.map +1 -1
- package/dist/engine/ensure-postgres.js +11 -9
- package/dist/engine/ensure-postgres.js.map +1 -1
- package/dist/features/runs/queries/handlers/runs-query.handlers.js +135 -0
- package/dist/features/runs/queries/handlers/runs-query.handlers.js.map +1 -1
- package/dist/features/runs/queries/impl/get-agent-activity.query.js +7 -0
- package/dist/features/runs/queries/impl/get-agent-activity.query.js.map +1 -0
- package/dist/features/runs/queries/impl/get-agent-attempts.query.js +7 -0
- package/dist/features/runs/queries/impl/get-agent-attempts.query.js.map +1 -0
- package/dist/features/runs/queries/impl/get-agent-log.query.js +7 -0
- package/dist/features/runs/queries/impl/get-agent-log.query.js.map +1 -0
- package/dist/features/runs/queries/index.js +4 -1
- package/dist/features/runs/queries/index.js.map +1 -1
- package/dist/features/runs/runs-api.service.js +12 -0
- package/dist/features/runs/runs-api.service.js.map +1 -1
- package/dist/host/daemon.js +68 -0
- package/dist/host/daemon.js.map +1 -0
- package/dist/host/ensure-host.js +109 -0
- package/dist/host/ensure-host.js.map +1 -0
- package/dist/host/host-runtime.js +52 -0
- package/dist/host/host-runtime.js.map +1 -0
- package/dist/http/graphql-host.js +8 -2
- package/dist/http/graphql-host.js.map +1 -1
- package/dist/http/graphql-host.module.js +3 -0
- package/dist/http/graphql-host.module.js.map +1 -1
- package/dist/mcp/mcp-capabilities.js +6 -1
- package/dist/mcp/mcp-capabilities.js.map +1 -1
- package/dist/mcp/mcp-facade.service.js +24 -0
- package/dist/mcp/mcp-facade.service.js.map +1 -1
- package/dist/mcp/mcp-http.service.js +95 -0
- package/dist/mcp/mcp-http.service.js.map +1 -0
- package/dist/mcp/mcp-tools.js +58 -0
- package/dist/mcp/mcp-tools.js.map +1 -1
- package/dist/observability/agent-activity-reporter.js +185 -0
- package/dist/observability/agent-activity-reporter.js.map +1 -0
- package/dist/observability/agent-observability.service.js +1142 -0
- package/dist/observability/agent-observability.service.js.map +1 -0
- package/dist/observability/index.js +4 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/types.js +11 -0
- package/dist/observability/types.js.map +1 -0
- package/dist/pipeline/data-driven-task.workflow.js +37 -75
- package/dist/pipeline/data-driven-task.workflow.js.map +1 -1
- package/dist/pipeline/pipeline.service.js +54 -15
- package/dist/pipeline/pipeline.service.js.map +1 -1
- package/dist/pipeline-core/validate-capability.js +23 -0
- package/dist/pipeline-core/validate-capability.js.map +1 -0
- package/dist/pipeline-core/validate-conflicts.js +37 -0
- package/dist/pipeline-core/validate-conflicts.js.map +1 -0
- package/dist/pipeline-core/validate-dataflow.js +180 -0
- package/dist/pipeline-core/validate-dataflow.js.map +1 -0
- package/dist/pipeline-core/validate-diff.js +158 -0
- package/dist/pipeline-core/validate-diff.js.map +1 -0
- package/dist/pipeline-core/validate-edges.js +44 -0
- package/dist/pipeline-core/validate-edges.js.map +1 -0
- package/dist/pipeline-core/validate-graph.js +123 -0
- package/dist/pipeline-core/validate-graph.js.map +1 -0
- package/dist/pipeline-core/validate-loops.js +226 -0
- package/dist/pipeline-core/validate-loops.js.map +1 -0
- package/dist/pipeline-core/validate-parallel.js +132 -0
- package/dist/pipeline-core/validate-parallel.js.map +1 -0
- package/dist/pipeline-core/validate-sink.js +27 -0
- package/dist/pipeline-core/validate-sink.js.map +1 -0
- package/dist/pipeline-core/validate-topology.js +140 -0
- package/dist/pipeline-core/validate-topology.js.map +1 -0
- package/dist/pipeline-core/validate-verdict.js +72 -0
- package/dist/pipeline-core/validate-verdict.js.map +1 -0
- package/dist/pipeline-core/validate.js +34 -1107
- package/dist/pipeline-core/validate.js.map +1 -1
- package/dist/revisium/run.service.js +15 -1
- package/dist/revisium/run.service.js.map +1 -1
- package/dist/runners/codex.service.js +51 -0
- package/dist/runners/codex.service.js.map +1 -0
- package/dist/runners/integrator-branch-naming.js +24 -0
- package/dist/runners/integrator-branch-naming.js.map +1 -0
- package/dist/runners/integrator-git.js +84 -0
- package/dist/runners/integrator-git.js.map +1 -0
- package/dist/runners/integrator-remote.js +34 -0
- package/dist/runners/integrator-remote.js.map +1 -0
- package/dist/runners/integrator-types.js +9 -0
- package/dist/runners/integrator-types.js.map +1 -0
- package/dist/runners/integrator.js +12 -132
- package/dist/runners/integrator.js.map +1 -1
- package/dist/runners/runner.module.js +4 -2
- package/dist/runners/runner.module.js.map +1 -1
- package/dist/smoke/cli.js +47 -0
- package/dist/smoke/cli.js.map +1 -0
- package/dist/smoke/isolation.js +113 -0
- package/dist/smoke/isolation.js.map +1 -0
- package/dist/task-control-plane/task-control-plane-api.service.js +24 -1
- package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -1
- package/dist/task-control-plane/task-control-plane.module.js +21 -1
- package/dist/task-control-plane/task-control-plane.module.js.map +1 -1
- package/dist/worker/artifact-store.js +6 -1
- package/dist/worker/artifact-store.js.map +1 -1
- package/dist/worker/build-context.js +135 -1
- package/dist/worker/build-context.js.map +1 -1
- package/dist/worker/claude-code-runner.js +75 -76
- package/dist/worker/claude-code-runner.js.map +1 -1
- package/dist/worker/codex-runner.js +474 -0
- package/dist/worker/codex-runner.js.map +1 -0
- package/dist/worker/result-envelope.js +51 -79
- package/dist/worker/result-envelope.js.map +1 -1
- package/dist/worker/runner-common.js +106 -0
- package/dist/worker/runner-common.js.map +1 -0
- package/dist/worker/runner-dispatch.js +3 -1
- package/dist/worker/runner-dispatch.js.map +1 -1
- package/dist/worker/runner.js.map +1 -1
- package/dist/worker/stub-runner.js +3 -3
- package/dist/worker/stub-runner.js.map +1 -1
- package/package.json +1 -1
- package/dist/app.module.js +0 -28
- package/dist/app.module.js.map +0 -1
- package/dist/cli/commands/bootstrap.js +0 -100
- package/dist/cli/commands/bootstrap.js.map +0 -1
- package/dist/cli/commands/dev.js +0 -143
- package/dist/cli/commands/dev.js.map +0 -1
- package/dist/cli/commands/inbox.js +0 -288
- package/dist/cli/commands/inbox.js.map +0 -1
- package/dist/cli/commands/playbook.js +0 -74
- package/dist/cli/commands/playbook.js.map +0 -1
- package/dist/cli/commands/poll-workflow-state.js +0 -144
- package/dist/cli/commands/poll-workflow-state.js.map +0 -1
- package/dist/cli/commands/revisium-context.js +0 -23
- package/dist/cli/commands/revisium-context.js.map +0 -1
- package/dist/cli/commands/revisium.js +0 -89
- package/dist/cli/commands/revisium.js.map +0 -1
- package/dist/cli/commands/run.js +0 -451
- package/dist/cli/commands/run.js.map +0 -1
- package/dist/cli/commands/serve.js +0 -26
- package/dist/cli/commands/serve.js.map +0 -1
- package/dist/cli/live-guard.js +0 -49
- package/dist/cli/live-guard.js.map +0 -1
- package/dist/cli/needs-host.js +0 -77
- package/dist/cli/needs-host.js.map +0 -1
- package/dist/mcp/mcp-stdio.service.js +0 -48
- package/dist/mcp/mcp-stdio.service.js.map +0 -1
- package/dist/mcp/mcp.module.js +0 -21
- package/dist/mcp/mcp.module.js.map +0 -1
|
@@ -14,6 +14,9 @@ import { Inject } from '@nestjs/common';
|
|
|
14
14
|
import { QueryHandler } from '@nestjs/cqrs';
|
|
15
15
|
import { TaskControlPlaneApiService } from '../../../../task-control-plane/task-control-plane-api.service.js';
|
|
16
16
|
import { connectionFetchLimit, toConnection } from '../../../shared/connection.js';
|
|
17
|
+
import { GetAgentActivityQuery } from '../impl/get-agent-activity.query.js';
|
|
18
|
+
import { GetAgentAttemptsQuery } from '../impl/get-agent-attempts.query.js';
|
|
19
|
+
import { GetAgentLogQuery } from '../impl/get-agent-log.query.js';
|
|
17
20
|
import { GetRunAttemptsQuery } from '../impl/get-run-attempts.query.js';
|
|
18
21
|
import { GetRunDigestQuery } from '../impl/get-run-digest.query.js';
|
|
19
22
|
import { GetRunEventsQuery } from '../impl/get-run-events.query.js';
|
|
@@ -221,4 +224,136 @@ SimulateRouteHandler = __decorate([
|
|
|
221
224
|
__metadata("design:paramtypes", [TaskControlPlaneApiService])
|
|
222
225
|
], SimulateRouteHandler);
|
|
223
226
|
export { SimulateRouteHandler };
|
|
227
|
+
function toDate(value) {
|
|
228
|
+
if (!value)
|
|
229
|
+
return new Date(0);
|
|
230
|
+
const parsed = new Date(value);
|
|
231
|
+
return Number.isNaN(parsed.getTime()) ? new Date(0) : parsed;
|
|
232
|
+
}
|
|
233
|
+
function mapLastStream(stream) {
|
|
234
|
+
if (!stream)
|
|
235
|
+
return undefined;
|
|
236
|
+
if (stream === 'agent-jsonl')
|
|
237
|
+
return 'agent_jsonl';
|
|
238
|
+
return stream;
|
|
239
|
+
}
|
|
240
|
+
function mapAgentAttempt(attempt) {
|
|
241
|
+
return {
|
|
242
|
+
runId: attempt.runId,
|
|
243
|
+
attemptId: attempt.attemptId,
|
|
244
|
+
stepId: attempt.stepId,
|
|
245
|
+
stepKey: attempt.stepKey,
|
|
246
|
+
role: attempt.role,
|
|
247
|
+
runner: attempt.runner,
|
|
248
|
+
artifactRef: attempt.artifactRef,
|
|
249
|
+
startedAt: toDate(attempt.startedAt),
|
|
250
|
+
finishedAt: attempt.finishedAt ? toDate(attempt.finishedAt) : undefined,
|
|
251
|
+
status: attempt.status,
|
|
252
|
+
exitCode: attempt.exitCode ?? null,
|
|
253
|
+
timedOut: attempt.timedOut,
|
|
254
|
+
stdoutBytes: attempt.stdoutBytes,
|
|
255
|
+
stderrBytes: attempt.stderrBytes,
|
|
256
|
+
};
|
|
257
|
+
}
|
|
258
|
+
function mapAgentActivity(snapshot) {
|
|
259
|
+
return {
|
|
260
|
+
runId: snapshot.runId,
|
|
261
|
+
attemptId: snapshot.attemptId,
|
|
262
|
+
stepId: snapshot.stepId,
|
|
263
|
+
stepKey: snapshot.stepKey,
|
|
264
|
+
role: snapshot.role,
|
|
265
|
+
runner: snapshot.runner,
|
|
266
|
+
pid: snapshot.pid,
|
|
267
|
+
status: snapshot.status,
|
|
268
|
+
startedAt: toDate(snapshot.startedAt),
|
|
269
|
+
lastEventAt: toDate(snapshot.lastEventAt),
|
|
270
|
+
lastOutputAt: snapshot.lastOutputAt ? toDate(snapshot.lastOutputAt) : undefined,
|
|
271
|
+
lastStream: mapLastStream(snapshot.lastStream),
|
|
272
|
+
stdoutBytes: snapshot.stdoutBytes,
|
|
273
|
+
stderrBytes: snapshot.stderrBytes,
|
|
274
|
+
eventCount: snapshot.eventCount,
|
|
275
|
+
artifactRef: snapshot.artifactRef,
|
|
276
|
+
exitCode: snapshot.exitCode ?? null,
|
|
277
|
+
timedOut: snapshot.timedOut,
|
|
278
|
+
error: snapshot.error,
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
function mapAgentRunActivity(activity) {
|
|
282
|
+
return {
|
|
283
|
+
runId: activity.runId,
|
|
284
|
+
aggregateStatus: activity.aggregateStatus,
|
|
285
|
+
latestActivityAt: toDate(activity.latestActivityAt),
|
|
286
|
+
latestOutputAt: activity.latestOutputAt ? toDate(activity.latestOutputAt) : undefined,
|
|
287
|
+
attempts: activity.attempts.map(mapAgentActivity),
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
function mapAgentLogChunk(chunk) {
|
|
291
|
+
return {
|
|
292
|
+
runId: chunk.runId,
|
|
293
|
+
attemptId: chunk.attemptId,
|
|
294
|
+
stream: chunk.stream,
|
|
295
|
+
offsetBytes: chunk.offsetBytes,
|
|
296
|
+
nextOffsetBytes: chunk.nextOffsetBytes,
|
|
297
|
+
totalBytes: chunk.totalBytes,
|
|
298
|
+
truncated: chunk.truncated,
|
|
299
|
+
content: chunk.content,
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
let GetAgentActivityHandler = class GetAgentActivityHandler {
|
|
303
|
+
api;
|
|
304
|
+
constructor(api) {
|
|
305
|
+
this.api = api;
|
|
306
|
+
}
|
|
307
|
+
async execute(query) {
|
|
308
|
+
const activity = await this.api.getAgentActivity(query.data.runId);
|
|
309
|
+
if (!activity)
|
|
310
|
+
return null;
|
|
311
|
+
return mapAgentRunActivity(activity);
|
|
312
|
+
}
|
|
313
|
+
};
|
|
314
|
+
GetAgentActivityHandler = __decorate([
|
|
315
|
+
QueryHandler(GetAgentActivityQuery),
|
|
316
|
+
__param(0, Inject(TaskControlPlaneApiService)),
|
|
317
|
+
__metadata("design:paramtypes", [TaskControlPlaneApiService])
|
|
318
|
+
], GetAgentActivityHandler);
|
|
319
|
+
export { GetAgentActivityHandler };
|
|
320
|
+
let GetAgentAttemptsHandler = class GetAgentAttemptsHandler {
|
|
321
|
+
api;
|
|
322
|
+
constructor(api) {
|
|
323
|
+
this.api = api;
|
|
324
|
+
}
|
|
325
|
+
async execute(query) {
|
|
326
|
+
const attempts = await this.api.getAgentAttempts(query.data.runId);
|
|
327
|
+
return attempts.map(mapAgentAttempt);
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
GetAgentAttemptsHandler = __decorate([
|
|
331
|
+
QueryHandler(GetAgentAttemptsQuery),
|
|
332
|
+
__param(0, Inject(TaskControlPlaneApiService)),
|
|
333
|
+
__metadata("design:paramtypes", [TaskControlPlaneApiService])
|
|
334
|
+
], GetAgentAttemptsHandler);
|
|
335
|
+
export { GetAgentAttemptsHandler };
|
|
336
|
+
let GetAgentLogHandler = class GetAgentLogHandler {
|
|
337
|
+
api;
|
|
338
|
+
constructor(api) {
|
|
339
|
+
this.api = api;
|
|
340
|
+
}
|
|
341
|
+
async execute(query) {
|
|
342
|
+
const chunk = await this.api.getAgentLog({
|
|
343
|
+
runId: query.data.runId,
|
|
344
|
+
attemptId: query.data.attemptId,
|
|
345
|
+
stream: query.data.stream,
|
|
346
|
+
offsetBytes: query.data.offsetBytes,
|
|
347
|
+
limitBytes: query.data.limitBytes,
|
|
348
|
+
tailBytes: query.data.tailBytes,
|
|
349
|
+
});
|
|
350
|
+
return mapAgentLogChunk(chunk);
|
|
351
|
+
}
|
|
352
|
+
};
|
|
353
|
+
GetAgentLogHandler = __decorate([
|
|
354
|
+
QueryHandler(GetAgentLogQuery),
|
|
355
|
+
__param(0, Inject(TaskControlPlaneApiService)),
|
|
356
|
+
__metadata("design:paramtypes", [TaskControlPlaneApiService])
|
|
357
|
+
], GetAgentLogHandler);
|
|
358
|
+
export { GetAgentLogHandler };
|
|
224
359
|
//# sourceMappingURL=runs-query.handlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runs-query.handlers.js","sourceRoot":"","sources":["../../../../../src/features/runs/queries/handlers/runs-query.handlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runs-query.handlers.js","sourceRoot":"","sources":["../../../../../src/features/runs/queries/handlers/runs-query.handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-agent-activity.query.js","sourceRoot":"","sources":["../../../../../src/features/runs/queries/impl/get-agent-activity.query.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,qBAAqB;IACX;IAArB,YAAqB,IAA+B;QAA/B,SAAI,GAAJ,IAAI,CAA2B;IAAG,CAAC;CACzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-agent-attempts.query.js","sourceRoot":"","sources":["../../../../../src/features/runs/queries/impl/get-agent-attempts.query.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,qBAAqB;IACX;IAArB,YAAqB,IAA+B;QAA/B,SAAI,GAAJ,IAAI,CAA2B;IAAG,CAAC;CACzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-agent-log.query.js","sourceRoot":"","sources":["../../../../../src/features/runs/queries/impl/get-agent-log.query.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,gBAAgB;IACN;IAArB,YAAqB,IAA0B;QAA1B,SAAI,GAAJ,IAAI,CAAsB;IAAG,CAAC;CACpD"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import { GetRunAttemptsHandler, GetRunDigestHandler, GetRunEventsHandler, GetRunProgressHandler, GetRunHandler, GetRunWorkflowHandler, ListRunsHandler, SimulateRouteHandler, } from './handlers/runs-query.handlers.js';
|
|
1
|
+
import { GetAgentActivityHandler, GetAgentAttemptsHandler, GetAgentLogHandler, GetRunAttemptsHandler, GetRunDigestHandler, GetRunEventsHandler, GetRunProgressHandler, GetRunHandler, GetRunWorkflowHandler, ListRunsHandler, SimulateRouteHandler, } from './handlers/runs-query.handlers.js';
|
|
2
2
|
export const runsQueryHandlers = [
|
|
3
|
+
GetAgentActivityHandler,
|
|
4
|
+
GetAgentAttemptsHandler,
|
|
5
|
+
GetAgentLogHandler,
|
|
3
6
|
GetRunAttemptsHandler,
|
|
4
7
|
GetRunDigestHandler,
|
|
5
8
|
GetRunEventsHandler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/features/runs/queries/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACrB,eAAe,EACf,oBAAoB,GACrB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,qBAAqB;IACrB,mBAAmB;IACnB,mBAAmB;IACnB,qBAAqB;IACrB,aAAa;IACb,qBAAqB;IACrB,eAAe;IACf,oBAAoB;CACrB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/features/runs/queries/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACrB,eAAe,EACf,oBAAoB,GACrB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,uBAAuB;IACvB,uBAAuB;IACvB,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;IACnB,mBAAmB;IACnB,qBAAqB;IACrB,aAAa;IACb,qBAAqB;IACrB,eAAe;IACf,oBAAoB;CACrB,CAAC"}
|
|
@@ -13,6 +13,9 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
13
13
|
import { Inject, Injectable } from '@nestjs/common';
|
|
14
14
|
import { CommandBus, QueryBus } from '@nestjs/cqrs';
|
|
15
15
|
import { CreateRunCommand } from './commands/impl/create-run.command.js';
|
|
16
|
+
import { GetAgentActivityQuery } from './queries/impl/get-agent-activity.query.js';
|
|
17
|
+
import { GetAgentAttemptsQuery } from './queries/impl/get-agent-attempts.query.js';
|
|
18
|
+
import { GetAgentLogQuery } from './queries/impl/get-agent-log.query.js';
|
|
16
19
|
import { GetRunAttemptsQuery } from './queries/impl/get-run-attempts.query.js';
|
|
17
20
|
import { GetRunDigestQuery } from './queries/impl/get-run-digest.query.js';
|
|
18
21
|
import { GetRunEventsQuery } from './queries/impl/get-run-events.query.js';
|
|
@@ -55,6 +58,15 @@ let RunsApiService = class RunsApiService {
|
|
|
55
58
|
createRun(data) {
|
|
56
59
|
return this.commandBus.execute(new CreateRunCommand(data));
|
|
57
60
|
}
|
|
61
|
+
getAgentActivity(data) {
|
|
62
|
+
return this.queryBus.execute(new GetAgentActivityQuery(data));
|
|
63
|
+
}
|
|
64
|
+
getAgentAttempts(data) {
|
|
65
|
+
return this.queryBus.execute(new GetAgentAttemptsQuery(data));
|
|
66
|
+
}
|
|
67
|
+
getAgentLog(data) {
|
|
68
|
+
return this.queryBus.execute(new GetAgentLogQuery(data));
|
|
69
|
+
}
|
|
58
70
|
};
|
|
59
71
|
RunsApiService = __decorate([
|
|
60
72
|
Injectable(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runs-api.service.js","sourceRoot":"","sources":["../../../src/features/runs/runs-api.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAA6B,MAAM,uCAAuC,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAA8B,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,iBAAiB,EAA8B,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAC7G,OAAO,EAAE,WAAW,EAAwB,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAC7G,OAAO,EAAE,aAAa,EAA0B,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAA+B,MAAM,wCAAwC,CAAC;AAGlG,IAAM,cAAc,GAApB,MAAM,cAAc;IAEY;IACE;IAFvC,YACqC,QAAkB,EAChB,UAAsB;QADxB,aAAQ,GAAR,QAAQ,CAAU;QAChB,eAAU,GAAV,UAAU,CAAY;IAC1D,CAAC;IAEJ,QAAQ,CAAC,IAAuB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAC,IAAqB;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,YAAY,CAAC,IAA2B;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,IAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,IAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,IAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,IAA2B;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa,CAAC,IAA4B;QACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,SAAS,CAAC,IAA0B;QAClC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"runs-api.service.js","sourceRoot":"","sources":["../../../src/features/runs/runs-api.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAA6B,MAAM,uCAAuC,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAkC,MAAM,4CAA4C,CAAC;AACnH,OAAO,EAAE,qBAAqB,EAAkC,MAAM,4CAA4C,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAA6B,MAAM,uCAAuC,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAC7G,OAAO,EAAE,iBAAiB,EAA8B,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,iBAAiB,EAA8B,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAC7G,OAAO,EAAE,WAAW,EAAwB,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAC7G,OAAO,EAAE,aAAa,EAA0B,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAA+B,MAAM,wCAAwC,CAAC;AAGlG,IAAM,cAAc,GAApB,MAAM,cAAc;IAEY;IACE;IAFvC,YACqC,QAAkB,EAChB,UAAsB;QADxB,aAAQ,GAAR,QAAQ,CAAU;QAChB,eAAU,GAAV,UAAU,CAAY;IAC1D,CAAC;IAEJ,QAAQ,CAAC,IAAuB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAC,IAAqB;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,YAAY,CAAC,IAA2B;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,IAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,IAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,IAA6B;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,IAA2B;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa,CAAC,IAA4B;QACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,SAAS,CAAC,IAA0B;QAClC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,gBAAgB,CAAC,IAA+B;QAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,gBAAgB,CAAC,IAA+B;QAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,WAAW,CAAC,IAA0B;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF,CAAA;AArDY,cAAc;IAD1B,UAAU,EAAE;IAGR,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;IAChB,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;qCAD0B,QAAQ;QACJ,UAAU;GAHlD,cAAc,CAqD1B"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { getConfig } from '../config.js';
|
|
2
|
+
import { startGraphqlHost } from '../http/graphql-host.js';
|
|
3
|
+
import { ensureRevisium } from './ensure-revisium.js';
|
|
4
|
+
import { bootstrapControlPlane, listInstalledPlaybooks } from '../control-plane/bootstrap.js';
|
|
5
|
+
import { createDaemonInstaller, seedDefaultPlaybook, seedDefaultPlaybookBestEffort, } from '../control-plane/seed-default-playbook.js';
|
|
6
|
+
import { McpFacadeService } from '../mcp/mcp-facade.service.js';
|
|
7
|
+
import { McpHttpService } from '../mcp/mcp-http.service.js';
|
|
8
|
+
import { TaskControlPlaneApiService } from '../task-control-plane/task-control-plane-api.service.js';
|
|
9
|
+
import { removeHostRuntimeIfMatches, writeHostRuntime } from './host-runtime.js';
|
|
10
|
+
/** MCP endpoint port: REVO_MCP_PORT, else the GraphQL port + 1 (kept in the profile band). */
|
|
11
|
+
function resolveMcpPort(graphqlPort) {
|
|
12
|
+
const env = process.env['REVO_MCP_PORT'];
|
|
13
|
+
return env && /^\d+$/.test(env.trim()) ? Number(env.trim()) : graphqlPort + 1;
|
|
14
|
+
}
|
|
15
|
+
/** The detached host-daemon entrypoint (spawned by ensureHost): boot the stack, then serve + stay alive. */
|
|
16
|
+
export async function runHostDaemon() {
|
|
17
|
+
// 1. Standalone up first, then 2. all control-plane writes via fresh client scopes — BEFORE the
|
|
18
|
+
// service layer (startGraphqlHost) caches its read scope, so same-boot reads see a ready control-plane.
|
|
19
|
+
const { runtime } = await ensureRevisium();
|
|
20
|
+
await bootstrapControlPlane(runtime.httpPort);
|
|
21
|
+
await seedDefaultPlaybookBestEffort(() => seedDefaultPlaybook(createDaemonInstaller(() => listInstalledPlaybooks(runtime.httpPort))));
|
|
22
|
+
// 3. Now bring up the Nest/GraphQL/DBOS layer (HostLifecycle re-ensures Revisium = no-op).
|
|
23
|
+
const started = await startGraphqlHost();
|
|
24
|
+
// 4. MCP front door + 5. host.json. Wrapped so a failure AFTER startGraphqlHost (DBOS already
|
|
25
|
+
// launched) never leaves a live DBOS owner without host.json: on error we close the MCP server +
|
|
26
|
+
// Nest app (→ DBOS.shutdown) and exit non-zero, so ensureHost reports the failure, not a zombie.
|
|
27
|
+
let mcpServer;
|
|
28
|
+
try {
|
|
29
|
+
// Build the MCP facade from the DI-resolved TaskControlPlaneApiService (the surface the GraphQL
|
|
30
|
+
// resolvers use): resolving McpFacadeService itself via app.get left its injected `api` undefined.
|
|
31
|
+
const mcpPort = resolveMcpPort(started.port);
|
|
32
|
+
const api = started.app.get(TaskControlPlaneApiService, { strict: false });
|
|
33
|
+
mcpServer = await new McpHttpService(new McpFacadeService(api)).start(mcpPort);
|
|
34
|
+
const startedAt = new Date().toISOString();
|
|
35
|
+
const snapshot = { pid: process.pid, startedAt };
|
|
36
|
+
// host.json is written LAST — its presence is the "fully ready" signal ensureHost waits on.
|
|
37
|
+
writeHostRuntime({
|
|
38
|
+
pid: process.pid,
|
|
39
|
+
graphqlPort: started.port,
|
|
40
|
+
mcpPort,
|
|
41
|
+
startedAt,
|
|
42
|
+
profile: getConfig().profile,
|
|
43
|
+
});
|
|
44
|
+
const runningMcp = mcpServer;
|
|
45
|
+
let closing = false;
|
|
46
|
+
const shutdown = () => {
|
|
47
|
+
if (closing)
|
|
48
|
+
return;
|
|
49
|
+
closing = true;
|
|
50
|
+
runningMcp.close();
|
|
51
|
+
started.app
|
|
52
|
+
.close() // → HostLifecycle.onApplicationShutdown → DBOS.shutdown()
|
|
53
|
+
.catch(() => undefined)
|
|
54
|
+
.finally(() => {
|
|
55
|
+
removeHostRuntimeIfMatches(snapshot);
|
|
56
|
+
process.exit(0);
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
process.on('SIGTERM', shutdown);
|
|
60
|
+
process.on('SIGINT', shutdown);
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
mcpServer?.close();
|
|
64
|
+
await started.app.close().catch(() => undefined);
|
|
65
|
+
throw err;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=daemon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/host/daemon.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEjF,8FAA8F;AAC9F,SAAS,cAAc,CAAC,WAAmB;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACzC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC;AAChF,CAAC;AAED,4GAA4G;AAC5G,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,gGAAgG;IAChG,wGAAwG;IACxG,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,cAAc,EAAE,CAAC;IAC3C,MAAM,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,6BAA6B,CAAC,GAAG,EAAE,CACvC,mBAAmB,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC3F,CAAC;IAEF,2FAA2F;IAC3F,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAEzC,8FAA8F;IAC9F,iGAAiG;IACjG,iGAAiG;IACjG,IAAI,SAAiC,CAAC;IACtC,IAAI,CAAC;QACH,gGAAgG;QAChG,mGAAmG;QACnG,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3E,SAAS,GAAG,MAAM,IAAI,cAAc,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE/E,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC;QAEjD,4FAA4F;QAC5F,gBAAgB,CAAC;YACf,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,OAAO;YACP,SAAS;YACT,OAAO,EAAE,SAAS,EAAE,CAAC,OAAO;SAC7B,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,SAAS,CAAC;QAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,QAAQ,GAAG,GAAS,EAAE;YAC1B,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG;iBACR,KAAK,EAAE,CAAC,0DAA0D;iBAClE,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;iBACtB,OAAO,CAAC,GAAG,EAAE;gBACZ,0BAA0B,CAAC,QAAQ,CAAC,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QACF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,SAAS,EAAE,KAAK,EAAE,CAAC;QACnB,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ensureHost() — attach-or-spawn the long-lived Revo host daemon (ADR 0006), mirroring the
|
|
3
|
+
* three-state model of ensureRevisium:
|
|
4
|
+
* 1. HEALTHY → attach, return alreadyRunning=true.
|
|
5
|
+
* 2. ALIVE BUT UNHEALTHY → wait for it to finish booting; never spawn a duplicate (the GraphQL
|
|
6
|
+
* port would collide), then throw if it stays unhealthy.
|
|
7
|
+
* 3. NO LIVE DAEMON → spawn detached + unref, wait for GraphQL health.
|
|
8
|
+
*
|
|
9
|
+
* The daemon is the single DBOS owner; this helper is the ONLY way the stack acquires a host.
|
|
10
|
+
*/
|
|
11
|
+
import { spawn } from 'node:child_process';
|
|
12
|
+
import { closeSync, openSync } from 'node:fs';
|
|
13
|
+
import { getConfig, isAlive, resolveDefaultGraphqlPort } from '../config.js';
|
|
14
|
+
import { isHostRunning, readHostRuntime, removeHostRuntime, } from './host-runtime.js';
|
|
15
|
+
const DEFAULT_TIMEOUT_MS = 120_000;
|
|
16
|
+
/** Budget to let an alive-but-not-yet-healthy daemon finish booting before giving up. */
|
|
17
|
+
const DEFAULT_RECHECK_MS = 20_000;
|
|
18
|
+
const POLL_INTERVAL_MS = 300;
|
|
19
|
+
/** The GraphQL port the daemon listens on — must match startGraphqlHost's resolution. */
|
|
20
|
+
export function expectedGraphqlPort() {
|
|
21
|
+
const env = process.env['REVO_GRAPHQL_PORT'];
|
|
22
|
+
if (env && /^\d+$/.test(env.trim()))
|
|
23
|
+
return Number(env.trim());
|
|
24
|
+
return resolveDefaultGraphqlPort();
|
|
25
|
+
}
|
|
26
|
+
/** GraphQL liveness probe: the daemon answers a trivial query on its port. */
|
|
27
|
+
export async function isGraphqlHealthy(port) {
|
|
28
|
+
try {
|
|
29
|
+
const res = await fetch(`http://127.0.0.1:${port}/graphql`, {
|
|
30
|
+
method: 'POST',
|
|
31
|
+
headers: { 'content-type': 'application/json' },
|
|
32
|
+
body: JSON.stringify({ query: '{ __typename }' }),
|
|
33
|
+
signal: AbortSignal.timeout(3000),
|
|
34
|
+
});
|
|
35
|
+
return res.ok;
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Ready = `host.json` present with a LIVE pid AND GraphQL answering. The daemon writes host.json
|
|
43
|
+
* last (after the control-plane bootstrap), so readiness implies the whole stack is usable — not
|
|
44
|
+
* merely that the GraphQL socket is open.
|
|
45
|
+
*/
|
|
46
|
+
async function waitForReady(timeoutMs) {
|
|
47
|
+
const deadline = Date.now() + timeoutMs;
|
|
48
|
+
for (;;) {
|
|
49
|
+
const runtime = readHostRuntime();
|
|
50
|
+
if (runtime && isAlive(runtime.pid) && (await isGraphqlHealthy(runtime.graphqlPort)))
|
|
51
|
+
return runtime;
|
|
52
|
+
if (Date.now() >= deadline)
|
|
53
|
+
return null;
|
|
54
|
+
await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL_MS));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Build the argv to re-invoke THIS CLI as the detached daemon. Handles dev (tsx running the `.ts`
|
|
59
|
+
* source — node needs the tsx loader) vs prod (node running the compiled `.js` entry directly).
|
|
60
|
+
* `entry` defaults to this process's script; it is a parameter so the dev/prod split is unit-testable.
|
|
61
|
+
*/
|
|
62
|
+
export function daemonSpawnArgv(entry = process.argv[1]) {
|
|
63
|
+
const daemonArgs = ['__daemon'];
|
|
64
|
+
if (entry.endsWith('.ts')) {
|
|
65
|
+
return [process.execPath, ['--import', 'tsx', entry, ...daemonArgs]];
|
|
66
|
+
}
|
|
67
|
+
return [process.execPath, [entry, ...daemonArgs]];
|
|
68
|
+
}
|
|
69
|
+
function spawnDaemon() {
|
|
70
|
+
const out = openSync(getConfig().hostLogFile, 'a');
|
|
71
|
+
const [cmd, args] = daemonSpawnArgv();
|
|
72
|
+
// env inheritance carries the resolved profile (REVO_PROFILE / REVO_* knobs) to the daemon.
|
|
73
|
+
const child = spawn(cmd, args, { detached: true, stdio: ['ignore', out, out], env: process.env });
|
|
74
|
+
closeSync(out);
|
|
75
|
+
if (!child.pid)
|
|
76
|
+
throw new Error('Failed to spawn Revo host daemon: spawn returned no pid');
|
|
77
|
+
child.unref(); // detached — the daemon outlives this CLI process
|
|
78
|
+
}
|
|
79
|
+
/** Attach to the running host daemon, or spawn one if absent — the only way the stack acquires a host. */
|
|
80
|
+
export async function ensureHost(options = {}) {
|
|
81
|
+
const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
|
|
82
|
+
const recheckMs = options.recheckMs ?? DEFAULT_RECHECK_MS;
|
|
83
|
+
const existing = readHostRuntime();
|
|
84
|
+
if (existing && isHostRunning()) {
|
|
85
|
+
if (await isGraphqlHealthy(existing.graphqlPort)) {
|
|
86
|
+
return { runtime: existing, alreadyRunning: true };
|
|
87
|
+
}
|
|
88
|
+
// Alive but not ready — likely mid-boot/bootstrap. Wait; never spawn a duplicate (port collision).
|
|
89
|
+
const ready = await waitForReady(recheckMs);
|
|
90
|
+
if (ready)
|
|
91
|
+
return { runtime: ready, alreadyRunning: true };
|
|
92
|
+
throw new Error(`Revo host daemon (pid ${existing.pid}) is alive but not healthy on GraphQL port ` +
|
|
93
|
+
`${existing.graphqlPort}. Stop it with \`revo stop\` and retry.`);
|
|
94
|
+
}
|
|
95
|
+
// No live daemon — clear a stale host.json (dead pid), then spawn a fresh detached one.
|
|
96
|
+
// Known limitation (matches ensureRevisium's deferred concurrent-cold-start): this check-then-spawn
|
|
97
|
+
// is not atomic, so two ensureHost() callers racing with no live daemon could both spawn `__daemon`.
|
|
98
|
+
// The second daemon's startGraphqlHost fails fast (the GraphQL port is already bound) and exits, so
|
|
99
|
+
// it cannot become a second DBOS owner; full cross-process spawn locking is deferred.
|
|
100
|
+
if (existing)
|
|
101
|
+
removeHostRuntime();
|
|
102
|
+
spawnDaemon();
|
|
103
|
+
const ready = await waitForReady(timeoutMs);
|
|
104
|
+
if (!ready) {
|
|
105
|
+
throw new Error(`Revo host daemon did not become ready within ${timeoutMs / 1000}s — see \`revo logs\`.`);
|
|
106
|
+
}
|
|
107
|
+
return { runtime: ready, alreadyRunning: false };
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=ensure-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ensure-host.js","sourceRoot":"","sources":["../../src/host/ensure-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host daemon runtime file (`host.json`) — the tracked identity of the long-lived Revo/NestJS
|
|
3
|
+
* host daemon, the single DBOS owner (ADR 0006). It lives beside the standalone `runtime.json`
|
|
4
|
+
* in the profile data dir but is a SEPARATE file: the standalone daemon and the host daemon have
|
|
5
|
+
* independent lifecycles, so conflating them would let one's stale pid mask the other's state.
|
|
6
|
+
*
|
|
7
|
+
* Shape is intentionally minimal — only what `ensureHost`/`status`/clients need: the pid to prove
|
|
8
|
+
* liveness, the GraphQL port that is the client transport, and the profile/startedAt for display
|
|
9
|
+
* and compare-and-delete identity. Standalone HTTP/pg ports stay in `runtime.json` (readRuntime).
|
|
10
|
+
*/
|
|
11
|
+
import { existsSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
|
|
12
|
+
import { join } from 'node:path';
|
|
13
|
+
import { getConfig, isAlive } from '../config.js';
|
|
14
|
+
export function hostRuntimeFile() {
|
|
15
|
+
return join(getConfig().dataDir, 'host.json');
|
|
16
|
+
}
|
|
17
|
+
export function readHostRuntime() {
|
|
18
|
+
const file = hostRuntimeFile();
|
|
19
|
+
if (!existsSync(file))
|
|
20
|
+
return null;
|
|
21
|
+
try {
|
|
22
|
+
return JSON.parse(readFileSync(file, 'utf8'));
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export function writeHostRuntime(state) {
|
|
29
|
+
writeFileSync(hostRuntimeFile(), JSON.stringify(state, null, 2));
|
|
30
|
+
}
|
|
31
|
+
export function removeHostRuntime() {
|
|
32
|
+
const file = hostRuntimeFile();
|
|
33
|
+
if (existsSync(file))
|
|
34
|
+
rmSync(file);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Remove `host.json` ONLY if the file on disk still matches the snapshot (same pid AND startedAt).
|
|
38
|
+
* A replaced file (a concurrently-started daemon) or an already-removed file is a safe no-op — so
|
|
39
|
+
* cleanup can never delete a runtime that belongs to another daemon (compare-and-delete).
|
|
40
|
+
*/
|
|
41
|
+
export function removeHostRuntimeIfMatches(snapshot) {
|
|
42
|
+
const current = readHostRuntime();
|
|
43
|
+
if (current?.pid === snapshot.pid && current?.startedAt === snapshot.startedAt) {
|
|
44
|
+
removeHostRuntime();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/** True when `host.json` records a daemon whose pid is still alive (liveness, not health). */
|
|
48
|
+
export function isHostRunning() {
|
|
49
|
+
const runtime = readHostRuntime();
|
|
50
|
+
return runtime !== null && isAlive(runtime.pid);
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=host-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-runtime.js","sourceRoot":"","sources":["../../src/host/host-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAclD,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAqB,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAuB;IACtD,aAAa,CAAC,eAAe,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAA6B;IACtE,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;IAClC,IAAI,OAAO,EAAE,GAAG,KAAK,QAAQ,CAAC,GAAG,IAAI,OAAO,EAAE,SAAS,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC/E,iBAAiB,EAAE,CAAC;IACtB,CAAC;AACH,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;IAClC,OAAO,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { ValidationPipe } from '@nestjs/common';
|
|
2
2
|
import { NestFactory } from '@nestjs/core';
|
|
3
3
|
import { addWsServer } from '../api/graphql-api/graphql-ws/ws.js';
|
|
4
|
-
import { resolveDefaultGraphqlPort } from '../config.js';
|
|
4
|
+
import { isPortFree, resolveDefaultGraphqlPort } from '../config.js';
|
|
5
5
|
import { GraphqlHostModule } from './graphql-host.module.js';
|
|
6
6
|
export const DEFAULT_GRAPHQL_HOST = '127.0.0.1';
|
|
7
|
+
const defaultDeps = {
|
|
8
|
+
isPortFree,
|
|
9
|
+
};
|
|
7
10
|
function parsePort(raw) {
|
|
8
11
|
if (!raw)
|
|
9
12
|
return resolveDefaultGraphqlPort();
|
|
@@ -27,11 +30,14 @@ export function resolveGraphqlHostOptions(options = {}) {
|
|
|
27
30
|
port: options.port ?? parsePort(process.env.REVO_GRAPHQL_PORT),
|
|
28
31
|
};
|
|
29
32
|
}
|
|
30
|
-
export async function startGraphqlHost(options = {}) {
|
|
33
|
+
export async function startGraphqlHost(options = {}, deps = defaultDeps) {
|
|
31
34
|
const resolved = resolveGraphqlHostOptions(options);
|
|
32
35
|
if (resolved.host !== DEFAULT_GRAPHQL_HOST) {
|
|
33
36
|
throw new Error(`GraphQL host must bind ${DEFAULT_GRAPHQL_HOST} in v1; received ${resolved.host}`);
|
|
34
37
|
}
|
|
38
|
+
if (!(await deps.isPortFree(resolved.port))) {
|
|
39
|
+
throw new Error(`GraphQL port ${resolved.port} is already in use; set REVO_GRAPHQL_PORT or --port to a free isolated port.`);
|
|
40
|
+
}
|
|
35
41
|
const app = await NestFactory.create(GraphqlHostModule, { logger: ['error', 'warn'] });
|
|
36
42
|
app.useGlobalPipes(new ValidationPipe({ transform: true }));
|
|
37
43
|
await app.listen(resolved.port, resolved.host);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql-host.js","sourceRoot":"","sources":["../../src/http/graphql-host.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"graphql-host.js","sourceRoot":"","sources":["../../src/http/graphql-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,9 @@ import { Module } from '@nestjs/common';
|
|
|
8
8
|
import { GraphqlApiModule } from '../api/graphql-api/graphql-api.module.js';
|
|
9
9
|
import { HostLifecycle } from '../host/host.lifecycle.js';
|
|
10
10
|
import { TaskControlPlaneModule } from '../task-control-plane/task-control-plane.module.js';
|
|
11
|
+
// The daemon serves BOTH front doors (ADR 0006): GraphQL (frontend) + MCP (agents), over one host
|
|
12
|
+
// process that is the single DBOS owner. The MCP server is built directly from TaskControlPlaneApi-
|
|
13
|
+
// Service (see daemon.ts) — no separate McpModule in the graph.
|
|
11
14
|
let GraphqlHostModule = class GraphqlHostModule {
|
|
12
15
|
};
|
|
13
16
|
GraphqlHostModule = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql-host.module.js","sourceRoot":"","sources":["../../src/http/graphql-host.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;
|
|
1
|
+
{"version":3,"file":"graphql-host.module.js","sourceRoot":"","sources":["../../src/http/graphql-host.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AAE5F,kGAAkG;AAClG,oGAAoG;AACpG,gEAAgE;AAKzD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;CAAG,CAAA;AAApB,iBAAiB;IAJ7B,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,sBAAsB,EAAE,gBAAgB,CAAC;QACnD,SAAS,EAAE,CAAC,aAAa,CAAC;KAC3B,CAAC;GACW,iBAAiB,CAAG"}
|
|
@@ -13,6 +13,11 @@ export const MCP_TOOL_NAMES = [
|
|
|
13
13
|
'get_run',
|
|
14
14
|
'get_run_events',
|
|
15
15
|
'get_run_log',
|
|
16
|
+
'get_agent_activity',
|
|
17
|
+
'get_agent_attempts',
|
|
18
|
+
'get_agent_log',
|
|
19
|
+
'tail_agent_log',
|
|
20
|
+
'read_agent_output_events',
|
|
16
21
|
'get_run_digest',
|
|
17
22
|
'wait_for_run',
|
|
18
23
|
'list_inbox',
|
|
@@ -37,7 +42,7 @@ export const MCP_INSTRUCTIONS = `Revo is a local-first software-development task
|
|
|
37
42
|
|
|
38
43
|
Use these tools to manage tasks end-to-end from your coding agent:
|
|
39
44
|
- create and start runs;
|
|
40
|
-
- inspect run status, events, attempts, and digests;
|
|
45
|
+
- inspect run status, events, attempts, agent activity, bounded logs, and digests;
|
|
41
46
|
- resolve human inbox gates and questions;
|
|
42
47
|
- inspect installed playbooks, roles, and pipelines;
|
|
43
48
|
- inspect PR readiness and actionable review feedback before resuming work;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-capabilities.js","sourceRoot":"","sources":["../../src/mcp/mcp-capabilities.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY;IACZ,QAAQ;IACR,kBAAkB;IAClB,qBAAqB;IACrB,wBAAwB;IACxB,aAAa;IACb,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,YAAY;IACZ,gBAAgB;IAChB,uBAAuB;IACvB,cAAc;IACd,aAAa;IACb,iBAAiB;IACjB,oBAAoB;IACpB,qBAAqB;IACrB,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,kBAAkB;CACV,CAAC;AAIX,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;qDAWqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"mcp-capabilities.js","sourceRoot":"","sources":["../../src/mcp/mcp-capabilities.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY;IACZ,QAAQ;IACR,kBAAkB;IAClB,qBAAqB;IACrB,wBAAwB;IACxB,aAAa;IACb,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,oBAAoB;IACpB,oBAAoB;IACpB,eAAe;IACf,gBAAgB;IAChB,0BAA0B;IAC1B,gBAAgB;IAChB,cAAc;IACd,YAAY;IACZ,gBAAgB;IAChB,uBAAuB;IACvB,cAAc;IACd,aAAa;IACb,iBAAiB;IACjB,oBAAoB;IACpB,qBAAqB;IACrB,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,kBAAkB;CACV,CAAC;AAIX,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;qDAWqB,CAAC"}
|