@ai-dossier/mcp-server 1.0.2 → 1.0.4
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/LICENSE +661 -0
- package/README.md +110 -297
- package/dist/index.js +196 -11
- package/dist/index.js.map +1 -1
- package/dist/orchestration/outputMapper.d.ts +94 -0
- package/dist/orchestration/outputMapper.d.ts.map +1 -0
- package/dist/orchestration/outputMapper.js +129 -0
- package/dist/orchestration/outputMapper.js.map +1 -0
- package/dist/orchestration/session.d.ts +43 -0
- package/dist/orchestration/session.d.ts.map +1 -0
- package/dist/orchestration/session.js +67 -0
- package/dist/orchestration/session.js.map +1 -0
- package/dist/resources/orchestration.d.ts +7 -0
- package/dist/resources/orchestration.d.ts.map +1 -0
- package/dist/resources/orchestration.js +11 -0
- package/dist/resources/orchestration.js.map +1 -0
- package/dist/tools/cancelJourney.d.ts +20 -0
- package/dist/tools/cancelJourney.d.ts.map +1 -0
- package/dist/tools/cancelJourney.js +50 -0
- package/dist/tools/cancelJourney.js.map +1 -0
- package/dist/tools/getJourneyStatus.d.ts +29 -0
- package/dist/tools/getJourneyStatus.d.ts.map +1 -0
- package/dist/tools/getJourneyStatus.js +39 -0
- package/dist/tools/getJourneyStatus.js.map +1 -0
- package/dist/tools/readDossier.d.ts +1 -0
- package/dist/tools/readDossier.d.ts.map +1 -1
- package/dist/tools/readDossier.js +22 -1
- package/dist/tools/readDossier.js.map +1 -1
- package/dist/tools/startJourney.d.ts +26 -0
- package/dist/tools/startJourney.d.ts.map +1 -0
- package/dist/tools/startJourney.js +90 -0
- package/dist/tools/startJourney.js.map +1 -0
- package/dist/tools/stepComplete.d.ts +28 -0
- package/dist/tools/stepComplete.d.ts.map +1 -0
- package/dist/tools/stepComplete.js +101 -0
- package/dist/tools/stepComplete.js.map +1 -0
- package/package.json +7 -4
- package/dist/orchestration/__tests__/graph.test.d.ts +0 -2
- package/dist/orchestration/__tests__/graph.test.d.ts.map +0 -1
- package/dist/orchestration/__tests__/graph.test.js +0 -348
- package/dist/orchestration/__tests__/graph.test.js.map +0 -1
- package/dist/orchestration/__tests__/resolver.test.d.ts +0 -2
- package/dist/orchestration/__tests__/resolver.test.d.ts.map +0 -1
- package/dist/orchestration/__tests__/resolver.test.js +0 -181
- package/dist/orchestration/__tests__/resolver.test.js.map +0 -1
- package/dist/parsers/signatureVerifier.d.ts +0 -10
- package/dist/parsers/signatureVerifier.d.ts.map +0 -1
- package/dist/parsers/signatureVerifier.js +0 -85
- package/dist/parsers/signatureVerifier.js.map +0 -1
- package/dist/tools/__tests__/listDossiers.test.d.ts +0 -2
- package/dist/tools/__tests__/listDossiers.test.d.ts.map +0 -1
- package/dist/tools/__tests__/listDossiers.test.js +0 -67
- package/dist/tools/__tests__/listDossiers.test.js.map +0 -1
- package/dist/tools/__tests__/readDossier.test.d.ts +0 -2
- package/dist/tools/__tests__/readDossier.test.d.ts.map +0 -1
- package/dist/tools/__tests__/readDossier.test.js +0 -88
- package/dist/tools/__tests__/readDossier.test.js.map +0 -1
- package/dist/tools/__tests__/resolveGraph.test.d.ts +0 -2
- package/dist/tools/__tests__/resolveGraph.test.d.ts.map +0 -1
- package/dist/tools/__tests__/resolveGraph.test.js +0 -170
- package/dist/tools/__tests__/resolveGraph.test.js.map +0 -1
- package/dist/tools/__tests__/searchDossiers.test.d.ts +0 -2
- package/dist/tools/__tests__/searchDossiers.test.d.ts.map +0 -1
- package/dist/tools/__tests__/searchDossiers.test.js +0 -52
- package/dist/tools/__tests__/searchDossiers.test.js.map +0 -1
- package/dist/tools/__tests__/verifyDossier.test.d.ts +0 -2
- package/dist/tools/__tests__/verifyDossier.test.d.ts.map +0 -1
- package/dist/tools/__tests__/verifyDossier.test.js +0 -59
- package/dist/tools/__tests__/verifyDossier.test.js.map +0 -1
- package/dist/tools/__tests__/verifyGraph.test.d.ts +0 -2
- package/dist/tools/__tests__/verifyGraph.test.d.ts.map +0 -1
- package/dist/tools/__tests__/verifyGraph.test.js +0 -278
- package/dist/tools/__tests__/verifyGraph.test.js.map +0 -1
- package/dist/utils/__tests__/cli-wrapper.test.d.ts +0 -2
- package/dist/utils/__tests__/cli-wrapper.test.d.ts.map +0 -1
- package/dist/utils/__tests__/cli-wrapper.test.js +0 -29
- package/dist/utils/__tests__/cli-wrapper.test.js.map +0 -1
- package/dist/utils/__tests__/paths.test.d.ts +0 -2
- package/dist/utils/__tests__/paths.test.d.ts.map +0 -1
- package/dist/utils/__tests__/paths.test.js +0 -26
- package/dist/utils/__tests__/paths.test.js.map +0 -1
- package/dist/utils/errors.d.ts +0 -35
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -68
- package/dist/utils/errors.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -10,20 +10,28 @@ const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
|
|
|
10
10
|
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
11
11
|
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
12
12
|
const concept_js_1 = require("./resources/concept.js");
|
|
13
|
+
const orchestration_js_1 = require("./resources/orchestration.js");
|
|
13
14
|
const protocol_js_1 = require("./resources/protocol.js");
|
|
14
15
|
const security_js_1 = require("./resources/security.js");
|
|
16
|
+
const cancelJourney_js_1 = require("./tools/cancelJourney.js");
|
|
17
|
+
const getJourneyStatus_js_1 = require("./tools/getJourneyStatus.js");
|
|
15
18
|
const listDossiers_js_1 = require("./tools/listDossiers.js");
|
|
16
19
|
const readDossier_js_1 = require("./tools/readDossier.js");
|
|
17
20
|
const resolveGraph_js_1 = require("./tools/resolveGraph.js");
|
|
18
21
|
const searchDossiers_js_1 = require("./tools/searchDossiers.js");
|
|
22
|
+
const startJourney_js_1 = require("./tools/startJourney.js");
|
|
23
|
+
const stepComplete_js_1 = require("./tools/stepComplete.js");
|
|
19
24
|
const verifyDossier_js_1 = require("./tools/verifyDossier.js");
|
|
20
25
|
const verifyGraph_js_1 = require("./tools/verifyGraph.js");
|
|
21
26
|
const logger_js_1 = require("./utils/logger.js");
|
|
22
27
|
const response_js_1 = require("./utils/response.js");
|
|
28
|
+
// Read version from package.json to avoid hardcoded drift
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
30
|
+
const { version } = require('../package.json');
|
|
23
31
|
// Create MCP server instance
|
|
24
32
|
const server = new index_js_1.Server({
|
|
25
33
|
name: '@ai-dossier/mcp-server',
|
|
26
|
-
version
|
|
34
|
+
version,
|
|
27
35
|
}, {
|
|
28
36
|
capabilities: {
|
|
29
37
|
tools: {},
|
|
@@ -130,6 +138,75 @@ server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => {
|
|
|
130
138
|
},
|
|
131
139
|
},
|
|
132
140
|
},
|
|
141
|
+
{
|
|
142
|
+
name: 'start_journey',
|
|
143
|
+
description: "Start a journey session from a resolved and verified graph. Creates a session, returns the first step's dossier content with any injected context. Call step_complete after executing each step.",
|
|
144
|
+
inputSchema: {
|
|
145
|
+
type: 'object',
|
|
146
|
+
properties: {
|
|
147
|
+
graph_id: {
|
|
148
|
+
type: 'string',
|
|
149
|
+
description: 'ID of a previously resolved graph (from resolve_graph)',
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
required: ['graph_id'],
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
name: 'step_complete',
|
|
157
|
+
description: 'Mark the current journey step as complete or failed. Advances to the next step and returns its dossier content with injected context from previous outputs. Returns a summary when the last step completes or a step fails.',
|
|
158
|
+
inputSchema: {
|
|
159
|
+
type: 'object',
|
|
160
|
+
properties: {
|
|
161
|
+
journey_id: {
|
|
162
|
+
type: 'string',
|
|
163
|
+
description: 'Journey session ID (from start_journey)',
|
|
164
|
+
},
|
|
165
|
+
outputs: {
|
|
166
|
+
type: 'object',
|
|
167
|
+
description: 'Key-value outputs collected during this step (e.g. { cluster_arn: "arn:..." })',
|
|
168
|
+
},
|
|
169
|
+
status: {
|
|
170
|
+
type: 'string',
|
|
171
|
+
enum: ['completed', 'failed'],
|
|
172
|
+
description: 'Whether this step succeeded or failed',
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
required: ['journey_id', 'status'],
|
|
176
|
+
},
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
name: 'get_journey_status',
|
|
180
|
+
description: 'Get the current state of a journey session: completed steps, current step, remaining steps, and collected outputs.',
|
|
181
|
+
inputSchema: {
|
|
182
|
+
type: 'object',
|
|
183
|
+
properties: {
|
|
184
|
+
journey_id: {
|
|
185
|
+
type: 'string',
|
|
186
|
+
description: 'Journey session ID (from start_journey)',
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
required: ['journey_id'],
|
|
190
|
+
},
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
name: 'cancel_journey',
|
|
194
|
+
description: 'Cancel an active journey session. Returns a summary of what completed before cancellation.',
|
|
195
|
+
inputSchema: {
|
|
196
|
+
type: 'object',
|
|
197
|
+
properties: {
|
|
198
|
+
journey_id: {
|
|
199
|
+
type: 'string',
|
|
200
|
+
description: 'Journey session ID (from start_journey)',
|
|
201
|
+
},
|
|
202
|
+
reason: {
|
|
203
|
+
type: 'string',
|
|
204
|
+
description: 'Optional reason for cancellation',
|
|
205
|
+
},
|
|
206
|
+
},
|
|
207
|
+
required: ['journey_id'],
|
|
208
|
+
},
|
|
209
|
+
},
|
|
133
210
|
],
|
|
134
211
|
};
|
|
135
212
|
});
|
|
@@ -163,6 +240,22 @@ server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
|
163
240
|
const result = await (0, verifyGraph_js_1.verifyGraph)(args);
|
|
164
241
|
return (0, response_js_1.createToolResponse)(result);
|
|
165
242
|
}
|
|
243
|
+
case 'start_journey': {
|
|
244
|
+
const result = await (0, startJourney_js_1.startJourney)(args);
|
|
245
|
+
return (0, response_js_1.createToolResponse)(result);
|
|
246
|
+
}
|
|
247
|
+
case 'step_complete': {
|
|
248
|
+
const result = await (0, stepComplete_js_1.stepComplete)(args);
|
|
249
|
+
return (0, response_js_1.createToolResponse)(result);
|
|
250
|
+
}
|
|
251
|
+
case 'get_journey_status': {
|
|
252
|
+
const result = (0, getJourneyStatus_js_1.getJourneyStatus)(args);
|
|
253
|
+
return (0, response_js_1.createToolResponse)(result);
|
|
254
|
+
}
|
|
255
|
+
case 'cancel_journey': {
|
|
256
|
+
const result = (0, cancelJourney_js_1.cancelJourney)(args);
|
|
257
|
+
return (0, response_js_1.createToolResponse)(result);
|
|
258
|
+
}
|
|
166
259
|
default:
|
|
167
260
|
throw new Error(`Unknown tool: ${name}`);
|
|
168
261
|
}
|
|
@@ -196,6 +289,12 @@ server.setRequestHandler(types_js_1.ListResourcesRequestSchema, async () => {
|
|
|
196
289
|
description: 'Introduction to dossiers - what they are and why to use them',
|
|
197
290
|
mimeType: 'text/markdown',
|
|
198
291
|
},
|
|
292
|
+
{
|
|
293
|
+
uri: 'dossier://orchestration',
|
|
294
|
+
name: 'Orchestration Reference',
|
|
295
|
+
description: 'Complete reference for multi-dossier journey tools: resolve_graph, verify_graph, start_journey, step_complete, get_journey_status, cancel_journey',
|
|
296
|
+
mimeType: 'text/markdown',
|
|
297
|
+
},
|
|
199
298
|
],
|
|
200
299
|
};
|
|
201
300
|
});
|
|
@@ -215,6 +314,9 @@ server.setRequestHandler(types_js_1.ReadResourceRequestSchema, async (request) =
|
|
|
215
314
|
case 'dossier://concept':
|
|
216
315
|
content = (0, concept_js_1.getConceptResource)();
|
|
217
316
|
break;
|
|
317
|
+
case 'dossier://orchestration':
|
|
318
|
+
content = (0, orchestration_js_1.getOrchestrationResource)();
|
|
319
|
+
break;
|
|
218
320
|
default:
|
|
219
321
|
throw new Error(`Unknown resource: ${uri}`);
|
|
220
322
|
}
|
|
@@ -241,7 +343,7 @@ server.setRequestHandler(types_js_1.ListPromptsRequestSchema, async () => {
|
|
|
241
343
|
prompts: [
|
|
242
344
|
{
|
|
243
345
|
name: 'execute-dossier',
|
|
244
|
-
description: 'Run a dossier with verification and protocol',
|
|
346
|
+
description: 'Run a dossier with verification and protocol. Automatically chooses single-dossier or multi-dossier journey flow based on relationships.',
|
|
245
347
|
arguments: [
|
|
246
348
|
{
|
|
247
349
|
name: 'dossier_path',
|
|
@@ -250,6 +352,17 @@ server.setRequestHandler(types_js_1.ListPromptsRequestSchema, async () => {
|
|
|
250
352
|
},
|
|
251
353
|
],
|
|
252
354
|
},
|
|
355
|
+
{
|
|
356
|
+
name: 'execute-journey',
|
|
357
|
+
description: 'Guide the LLM through a multi-step dossier journey: resolve, verify, present plan, execute steps in order, collect outputs.',
|
|
358
|
+
arguments: [
|
|
359
|
+
{
|
|
360
|
+
name: 'graph_id',
|
|
361
|
+
description: 'ID of a previously resolved graph (from resolve_graph)',
|
|
362
|
+
required: true,
|
|
363
|
+
},
|
|
364
|
+
],
|
|
365
|
+
},
|
|
253
366
|
{
|
|
254
367
|
name: 'create-dossier',
|
|
255
368
|
description: 'Author a new dossier with proper structure',
|
|
@@ -292,20 +405,92 @@ server.setRequestHandler(types_js_1.GetPromptRequestSchema, async (request) => {
|
|
|
292
405
|
type: 'text',
|
|
293
406
|
text: `Execute the dossier at: ${dossierPath}
|
|
294
407
|
|
|
295
|
-
|
|
408
|
+
## Decision: Single or Multi-Dossier?
|
|
296
409
|
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
- If signature is from untrusted source, ask user whether to proceed
|
|
410
|
+
First, read the dossier metadata to check for relationships:
|
|
411
|
+
- Use \`read_dossier({ path: "${dossierPath}" })\` and inspect the \`metadata.relationships\` field.
|
|
300
412
|
|
|
301
|
-
|
|
413
|
+
**If the dossier has \`relationships.preceded_by\` or \`relationships.followed_by\` with \`condition: "required"\`:**
|
|
414
|
+
→ Use the **journey flow** (multi-dossier):
|
|
415
|
+
1. \`resolve_graph({ dossier: "${dossierPath}" })\` — build execution plan
|
|
416
|
+
2. \`verify_graph({ graph_id })\` — batch-verify all dossiers
|
|
417
|
+
- BLOCK → STOP, report integrity failure
|
|
418
|
+
- WARN → inform user, ask to proceed
|
|
419
|
+
3. Present the journey plan to the user: steps, risk, estimated duration
|
|
420
|
+
4. \`start_journey({ graph_id })\` — begin execution, get first step
|
|
421
|
+
5. Execute each step's body, then call \`step_complete({ journey_id, status: "completed", outputs: {...} })\`
|
|
422
|
+
6. Repeat until journey status is "completed" or "failed"
|
|
423
|
+
7. Report the journey summary
|
|
302
424
|
|
|
303
|
-
|
|
304
|
-
|
|
425
|
+
**Otherwise (no required relationships):**
|
|
426
|
+
→ Use the **single-dossier flow**:
|
|
427
|
+
1. \`verify_dossier({ path: "${dossierPath}" })\` — check integrity and signature
|
|
428
|
+
- If verification fails → STOP and report the issue
|
|
429
|
+
- If signature is untrusted → ask user whether to proceed
|
|
430
|
+
2. \`read_dossier({ path: "${dossierPath}" })\` — get dossier content
|
|
431
|
+
3. Execute the dossier body instructions
|
|
432
|
+
- Respect \`risk_level\` warnings
|
|
305
433
|
- Ask for confirmation before destructive operations
|
|
306
434
|
- Report progress as you complete each step
|
|
435
|
+
4. Summarize what was accomplished`,
|
|
436
|
+
},
|
|
437
|
+
},
|
|
438
|
+
],
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
case 'execute-journey': {
|
|
442
|
+
const graphId = args?.graph_id;
|
|
443
|
+
if (!graphId) {
|
|
444
|
+
throw new Error('graph_id argument is required');
|
|
445
|
+
}
|
|
446
|
+
return {
|
|
447
|
+
messages: [
|
|
448
|
+
{
|
|
449
|
+
role: 'user',
|
|
450
|
+
content: {
|
|
451
|
+
type: 'text',
|
|
452
|
+
text: `Execute the multi-dossier journey for graph: ${graphId}
|
|
453
|
+
|
|
454
|
+
## Journey Execution Steps
|
|
455
|
+
|
|
456
|
+
1. **Verify the graph** (if not already done):
|
|
457
|
+
\`verify_graph({ graph_id: "${graphId}" })\`
|
|
458
|
+
- BLOCK → STOP, list the blockers to the user
|
|
459
|
+
- WARN → inform the user of unsigned/high-risk dossiers, ask to proceed
|
|
460
|
+
- ALLOW → continue
|
|
461
|
+
|
|
462
|
+
2. **Present the journey plan** to the user:
|
|
463
|
+
- List each step: "Step 1: setup-project → Step 2: install-deps → Step 3: run-tests"
|
|
464
|
+
- Show aggregate risk level
|
|
465
|
+
- Ask: "Ready to proceed?"
|
|
466
|
+
|
|
467
|
+
3. **Start the journey**:
|
|
468
|
+
\`start_journey({ graph_id: "${graphId}" })\`
|
|
469
|
+
→ Returns \`{ journey_id, step: { index, dossier, body, context } }\`
|
|
470
|
+
|
|
471
|
+
4. **For each step**:
|
|
472
|
+
a. Show the user: "Executing step [index+1]/[total]: [dossier]"
|
|
473
|
+
b. Execute the step body instructions
|
|
474
|
+
c. Collect any outputs declared in the dossier (e.g., \`project_path\`, \`cluster_arn\`)
|
|
475
|
+
d. Call: \`step_complete({ journey_id, status: "completed", outputs: { key: value } })\`
|
|
476
|
+
e. If \`status: "running"\` → repeat with next step
|
|
477
|
+
f. If \`status: "completed"\` → journey done, show summary
|
|
478
|
+
g. If \`status: "failed"\` → show failure summary, diagnose with user
|
|
479
|
+
|
|
480
|
+
5. **On step failure**:
|
|
481
|
+
- Diagnose what went wrong
|
|
482
|
+
- Ask user: retry manually and call step_complete again, or cancel?
|
|
483
|
+
- To cancel: \`cancel_journey({ journey_id, reason: "..." })\`
|
|
484
|
+
|
|
485
|
+
6. **Report** the journey summary:
|
|
486
|
+
- Steps completed, failed, total duration
|
|
487
|
+
- All collected outputs
|
|
488
|
+
- Next recommended actions (from dossier relationships)
|
|
307
489
|
|
|
308
|
-
|
|
490
|
+
## Tips
|
|
491
|
+
- Use \`get_journey_status({ journey_id })\` to inspect state at any point
|
|
492
|
+
- The \`context\` field in each step contains outputs from previous steps — use them
|
|
493
|
+
- Never skip calling \`step_complete\` even if a step has no outputs`,
|
|
309
494
|
},
|
|
310
495
|
},
|
|
311
496
|
],
|
|
@@ -351,7 +536,7 @@ async function main() {
|
|
|
351
536
|
await server.connect(transport);
|
|
352
537
|
logger_js_1.logger.info('Dossier MCP Server started', {
|
|
353
538
|
name: '@ai-dossier/mcp-server',
|
|
354
|
-
version
|
|
539
|
+
version,
|
|
355
540
|
transport: 'stdio',
|
|
356
541
|
});
|
|
357
542
|
// Keep process alive
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cross-dossier output mapper.
|
|
3
|
+
* Connects dossier outputs to downstream dossier inputs, enabling automatic
|
|
4
|
+
* data flow between steps in a journey.
|
|
5
|
+
*
|
|
6
|
+
* Schema fields consumed:
|
|
7
|
+
* inputs.from_dossiers — declares what this dossier expects from prior steps
|
|
8
|
+
* outputs.configuration — declares what this dossier produces for later steps
|
|
9
|
+
*/
|
|
10
|
+
export interface FromDossierInput {
|
|
11
|
+
source_dossier: string;
|
|
12
|
+
output_name: string;
|
|
13
|
+
usage?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface OutputConfiguration {
|
|
16
|
+
key: string;
|
|
17
|
+
description: string;
|
|
18
|
+
consumed_by?: string[];
|
|
19
|
+
export_as?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface CollectedOutput {
|
|
22
|
+
key: string;
|
|
23
|
+
value: string;
|
|
24
|
+
export_as?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface ResolvedInput {
|
|
27
|
+
source_dossier: string;
|
|
28
|
+
output_name: string;
|
|
29
|
+
value: string;
|
|
30
|
+
export_as?: string;
|
|
31
|
+
usage?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface MappingValidationWarning {
|
|
34
|
+
dossier: string;
|
|
35
|
+
source_dossier: string;
|
|
36
|
+
output_name: string;
|
|
37
|
+
message: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Stores outputs collected from completed dossier steps and resolves them
|
|
41
|
+
* into the inputs of subsequent steps.
|
|
42
|
+
*
|
|
43
|
+
* Lifecycle per journey session:
|
|
44
|
+
* 1. Call collectOutput() each time a step reports an output value.
|
|
45
|
+
* 2. Call resolveInputs() / generateContextString() to inject values into
|
|
46
|
+
* the next step's dossier prompt.
|
|
47
|
+
* 3. Call validateInputs() at graph-resolution time to surface missing outputs
|
|
48
|
+
* before execution begins.
|
|
49
|
+
* 4. Call clear() to reset between journey sessions.
|
|
50
|
+
*/
|
|
51
|
+
export declare class OutputMapper {
|
|
52
|
+
/** dossier name → (output key → collected output) */
|
|
53
|
+
private readonly store;
|
|
54
|
+
/**
|
|
55
|
+
* Store an output value reported by a completed dossier step.
|
|
56
|
+
* Called when the LLM invokes the step_complete tool.
|
|
57
|
+
*/
|
|
58
|
+
collectOutput(dossier: string, key: string, value: string, export_as?: string): void;
|
|
59
|
+
/**
|
|
60
|
+
* Return all collected outputs for a specific dossier.
|
|
61
|
+
*/
|
|
62
|
+
getOutputs(dossier: string): CollectedOutput[];
|
|
63
|
+
/**
|
|
64
|
+
* Resolve a dossier's from_dossiers inputs against previously collected
|
|
65
|
+
* outputs. Inputs whose source value has not yet been collected are silently
|
|
66
|
+
* skipped (the caller decides whether that is an error).
|
|
67
|
+
*/
|
|
68
|
+
resolveInputs(fromDossiers: FromDossierInput[]): ResolvedInput[];
|
|
69
|
+
/**
|
|
70
|
+
* Generate an LLM-readable context string listing all resolved input values.
|
|
71
|
+
* Returns null when no inputs could be resolved (e.g. first step in a journey).
|
|
72
|
+
*
|
|
73
|
+
* Example output:
|
|
74
|
+
* The following values are available from previous steps:
|
|
75
|
+
* - `cluster_arn = arn:aws:ecs:us-east-1:123:cluster/prod` [env_var] (from setup-infra) — Target ECS cluster
|
|
76
|
+
*/
|
|
77
|
+
generateContextString(fromDossiers: FromDossierInput[]): string | null;
|
|
78
|
+
/**
|
|
79
|
+
* Validate that a dossier's from_dossiers inputs have matching output
|
|
80
|
+
* declarations in their source dossiers. Run this at graph-resolution time,
|
|
81
|
+
* before any step executes.
|
|
82
|
+
*
|
|
83
|
+
* @param dossier - name of the dossier being validated
|
|
84
|
+
* @param fromDossiers - its inputs.from_dossiers declarations
|
|
85
|
+
* @param sourceOutputs - map of dossier name → declared outputs.configuration
|
|
86
|
+
* @returns warnings for missing or mismatched declarations (empty = all good)
|
|
87
|
+
*/
|
|
88
|
+
validateInputs(dossier: string, fromDossiers: FromDossierInput[], sourceOutputs: Map<string, OutputConfiguration[]>): MappingValidationWarning[];
|
|
89
|
+
/**
|
|
90
|
+
* Clear all stored outputs. Call between journey sessions.
|
|
91
|
+
*/
|
|
92
|
+
clear(): void;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=outputMapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outputMapper.d.ts","sourceRoot":"","sources":["../../src/orchestration/outputMapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAID,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;;;;GAWG;AACH,qBAAa,YAAY;IACvB,qDAAqD;IACrD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmD;IAEzE;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAOpF;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,EAAE;IAK9C;;;;OAIG;IACH,aAAa,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,aAAa,EAAE;IAmBhE;;;;;;;OAOG;IACH,qBAAqB,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,MAAM,GAAG,IAAI;IAgBtE;;;;;;;;;OASG;IACH,cAAc,CACZ,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,gBAAgB,EAAE,EAChC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,GAChD,wBAAwB,EAAE;IA6B7B;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Cross-dossier output mapper.
|
|
4
|
+
* Connects dossier outputs to downstream dossier inputs, enabling automatic
|
|
5
|
+
* data flow between steps in a journey.
|
|
6
|
+
*
|
|
7
|
+
* Schema fields consumed:
|
|
8
|
+
* inputs.from_dossiers — declares what this dossier expects from prior steps
|
|
9
|
+
* outputs.configuration — declares what this dossier produces for later steps
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.OutputMapper = void 0;
|
|
13
|
+
// --- OutputMapper class ---
|
|
14
|
+
/**
|
|
15
|
+
* Stores outputs collected from completed dossier steps and resolves them
|
|
16
|
+
* into the inputs of subsequent steps.
|
|
17
|
+
*
|
|
18
|
+
* Lifecycle per journey session:
|
|
19
|
+
* 1. Call collectOutput() each time a step reports an output value.
|
|
20
|
+
* 2. Call resolveInputs() / generateContextString() to inject values into
|
|
21
|
+
* the next step's dossier prompt.
|
|
22
|
+
* 3. Call validateInputs() at graph-resolution time to surface missing outputs
|
|
23
|
+
* before execution begins.
|
|
24
|
+
* 4. Call clear() to reset between journey sessions.
|
|
25
|
+
*/
|
|
26
|
+
class OutputMapper {
|
|
27
|
+
/** dossier name → (output key → collected output) */
|
|
28
|
+
store = new Map();
|
|
29
|
+
/**
|
|
30
|
+
* Store an output value reported by a completed dossier step.
|
|
31
|
+
* Called when the LLM invokes the step_complete tool.
|
|
32
|
+
*/
|
|
33
|
+
collectOutput(dossier, key, value, export_as) {
|
|
34
|
+
if (!this.store.has(dossier)) {
|
|
35
|
+
this.store.set(dossier, new Map());
|
|
36
|
+
}
|
|
37
|
+
this.store.get(dossier)?.set(key, { key, value, export_as });
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Return all collected outputs for a specific dossier.
|
|
41
|
+
*/
|
|
42
|
+
getOutputs(dossier) {
|
|
43
|
+
const map = this.store.get(dossier);
|
|
44
|
+
return map ? [...map.values()] : [];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Resolve a dossier's from_dossiers inputs against previously collected
|
|
48
|
+
* outputs. Inputs whose source value has not yet been collected are silently
|
|
49
|
+
* skipped (the caller decides whether that is an error).
|
|
50
|
+
*/
|
|
51
|
+
resolveInputs(fromDossiers) {
|
|
52
|
+
const resolved = [];
|
|
53
|
+
for (const input of fromDossiers) {
|
|
54
|
+
const output = this.store.get(input.source_dossier)?.get(input.output_name);
|
|
55
|
+
if (output === undefined)
|
|
56
|
+
continue;
|
|
57
|
+
resolved.push({
|
|
58
|
+
source_dossier: input.source_dossier,
|
|
59
|
+
output_name: input.output_name,
|
|
60
|
+
value: output.value,
|
|
61
|
+
export_as: output.export_as,
|
|
62
|
+
usage: input.usage,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
return resolved;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Generate an LLM-readable context string listing all resolved input values.
|
|
69
|
+
* Returns null when no inputs could be resolved (e.g. first step in a journey).
|
|
70
|
+
*
|
|
71
|
+
* Example output:
|
|
72
|
+
* The following values are available from previous steps:
|
|
73
|
+
* - `cluster_arn = arn:aws:ecs:us-east-1:123:cluster/prod` [env_var] (from setup-infra) — Target ECS cluster
|
|
74
|
+
*/
|
|
75
|
+
generateContextString(fromDossiers) {
|
|
76
|
+
const resolved = this.resolveInputs(fromDossiers);
|
|
77
|
+
if (resolved.length === 0)
|
|
78
|
+
return null;
|
|
79
|
+
const lines = ['The following values are available from previous steps:'];
|
|
80
|
+
for (const r of resolved) {
|
|
81
|
+
const exportTag = r.export_as ? ` [${r.export_as}]` : '';
|
|
82
|
+
const usageNote = r.usage ? ` — ${r.usage}` : '';
|
|
83
|
+
lines.push(`- \`${r.output_name} = ${r.value}\`${exportTag} (from ${r.source_dossier})${usageNote}`);
|
|
84
|
+
}
|
|
85
|
+
return lines.join('\n');
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Validate that a dossier's from_dossiers inputs have matching output
|
|
89
|
+
* declarations in their source dossiers. Run this at graph-resolution time,
|
|
90
|
+
* before any step executes.
|
|
91
|
+
*
|
|
92
|
+
* @param dossier - name of the dossier being validated
|
|
93
|
+
* @param fromDossiers - its inputs.from_dossiers declarations
|
|
94
|
+
* @param sourceOutputs - map of dossier name → declared outputs.configuration
|
|
95
|
+
* @returns warnings for missing or mismatched declarations (empty = all good)
|
|
96
|
+
*/
|
|
97
|
+
validateInputs(dossier, fromDossiers, sourceOutputs) {
|
|
98
|
+
const warnings = [];
|
|
99
|
+
for (const input of fromDossiers) {
|
|
100
|
+
const outputs = sourceOutputs.get(input.source_dossier);
|
|
101
|
+
if (!outputs) {
|
|
102
|
+
warnings.push({
|
|
103
|
+
dossier,
|
|
104
|
+
source_dossier: input.source_dossier,
|
|
105
|
+
output_name: input.output_name,
|
|
106
|
+
message: `Source dossier "${input.source_dossier}" is not in the execution graph or declares no outputs`,
|
|
107
|
+
});
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
if (!outputs.some((o) => o.key === input.output_name)) {
|
|
111
|
+
warnings.push({
|
|
112
|
+
dossier,
|
|
113
|
+
source_dossier: input.source_dossier,
|
|
114
|
+
output_name: input.output_name,
|
|
115
|
+
message: `Source dossier "${input.source_dossier}" does not declare an output named "${input.output_name}"`,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return warnings;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Clear all stored outputs. Call between journey sessions.
|
|
123
|
+
*/
|
|
124
|
+
clear() {
|
|
125
|
+
this.store.clear();
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
exports.OutputMapper = OutputMapper;
|
|
129
|
+
//# sourceMappingURL=outputMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outputMapper.js","sourceRoot":"","sources":["../../src/orchestration/outputMapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Journey session state and in-memory store.
|
|
3
|
+
* Tracks multi-dossier execution from start to finish.
|
|
4
|
+
*/
|
|
5
|
+
import type { PhaseEntry } from './types';
|
|
6
|
+
export interface JourneyStep {
|
|
7
|
+
dossier: string;
|
|
8
|
+
source: 'local' | 'registry';
|
|
9
|
+
path?: string;
|
|
10
|
+
condition: 'required' | 'optional' | 'suggested';
|
|
11
|
+
status: 'pending' | 'running' | 'completed' | 'failed' | 'skipped';
|
|
12
|
+
injectedContext?: string;
|
|
13
|
+
collectedOutputs?: Record<string, unknown>;
|
|
14
|
+
}
|
|
15
|
+
export interface JourneySession {
|
|
16
|
+
id: string;
|
|
17
|
+
graphId: string;
|
|
18
|
+
steps: JourneyStep[];
|
|
19
|
+
currentStepIndex: number;
|
|
20
|
+
status: 'pending' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
|
|
21
|
+
outputs: Record<string, Record<string, unknown>>;
|
|
22
|
+
startedAt: Date;
|
|
23
|
+
completedAt?: Date;
|
|
24
|
+
cancelReason?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare function stepsFromPhases(entries: PhaseEntry[]): JourneyStep[];
|
|
27
|
+
export declare function createSession(graphId: string, steps: JourneyStep[]): JourneySession;
|
|
28
|
+
export declare function getSession(id: string): JourneySession | undefined;
|
|
29
|
+
export declare function updateSession(session: JourneySession): void;
|
|
30
|
+
export declare function buildOutputContext(outputs: Record<string, Record<string, unknown>>): string;
|
|
31
|
+
export interface JourneySummary {
|
|
32
|
+
journey_id: string;
|
|
33
|
+
status: JourneySession['status'];
|
|
34
|
+
total_steps: number;
|
|
35
|
+
completed_steps: number;
|
|
36
|
+
failed_steps: number;
|
|
37
|
+
outputs: Record<string, Record<string, unknown>>;
|
|
38
|
+
started_at: string;
|
|
39
|
+
completed_at?: string;
|
|
40
|
+
cancel_reason?: string;
|
|
41
|
+
}
|
|
42
|
+
export declare function buildSummary(session: JourneySession): JourneySummary;
|
|
43
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/orchestration/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IACjD,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAChF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACjD,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAQpE;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,cAAc,CAYnF;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEjE;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAE3D;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAQ3F;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACjD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAcpE"}
|