@ai-dossier/mcp-server 1.3.3 → 1.3.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/dist/orchestration/dossier-trace-info.d.ts +3 -0
- package/dist/orchestration/dossier-trace-info.d.ts.map +1 -0
- package/dist/orchestration/dossier-trace-info.js +39 -0
- package/dist/orchestration/dossier-trace-info.js.map +1 -0
- package/dist/orchestration/session.d.ts +7 -0
- package/dist/orchestration/session.d.ts.map +1 -1
- package/dist/orchestration/session.js.map +1 -1
- package/dist/tools/startJourney.d.ts +14 -0
- package/dist/tools/startJourney.d.ts.map +1 -1
- package/dist/tools/startJourney.js +22 -9
- package/dist/tools/startJourney.js.map +1 -1
- package/dist/tools/stepComplete.d.ts.map +1 -1
- package/dist/tools/stepComplete.js +15 -7
- package/dist/tools/stepComplete.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dossier-trace-info.d.ts","sourceRoot":"","sources":["../../src/orchestration/dossier-trace-info.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE7E,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,kBAAkB,GAAG,IAAI,GACrC,gBAAgB,CAuBlB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Extracts the audit-metadata block we record on every trace step from a
|
|
3
|
+
// parsed dossier frontmatter. The checksum we record is the **same value**
|
|
4
|
+
// that lives in the dossier's own `checksum.hash` field, so an archived
|
|
5
|
+
// trace can be cross-referenced against the dossier file directly.
|
|
6
|
+
//
|
|
7
|
+
// Signature: we capture the algorithm + signer metadata (who, when, key id)
|
|
8
|
+
// — NOT the signature bytes / public key. Those are reproducible by
|
|
9
|
+
// re-fetching the dossier at the recorded version + checksum.
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.extractDossierTraceInfo = extractDossierTraceInfo;
|
|
12
|
+
function extractDossierTraceInfo(fallbackName, frontmatter) {
|
|
13
|
+
if (!frontmatter) {
|
|
14
|
+
return { title: fallbackName, version: 'unknown' };
|
|
15
|
+
}
|
|
16
|
+
const info = {
|
|
17
|
+
title: frontmatter.title || fallbackName,
|
|
18
|
+
version: frontmatter.version || 'unknown',
|
|
19
|
+
};
|
|
20
|
+
if (frontmatter.checksum?.hash) {
|
|
21
|
+
info.checksum = {
|
|
22
|
+
algorithm: frontmatter.checksum.algorithm,
|
|
23
|
+
hash: frontmatter.checksum.hash,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (frontmatter.signature) {
|
|
27
|
+
info.signature = {
|
|
28
|
+
algorithm: frontmatter.signature.algorithm,
|
|
29
|
+
};
|
|
30
|
+
if (frontmatter.signature.signed_by)
|
|
31
|
+
info.signature.signed_by = frontmatter.signature.signed_by;
|
|
32
|
+
if (frontmatter.signature.key_id)
|
|
33
|
+
info.signature.key_id = frontmatter.signature.key_id;
|
|
34
|
+
if (frontmatter.signature.signed_at)
|
|
35
|
+
info.signature.signed_at = frontmatter.signature.signed_at;
|
|
36
|
+
}
|
|
37
|
+
return info;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=dossier-trace-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dossier-trace-info.js","sourceRoot":"","sources":["../../src/orchestration/dossier-trace-info.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,2EAA2E;AAC3E,wEAAwE;AACxE,mEAAmE;AACnE,EAAE;AACF,4EAA4E;AAC5E,oEAAoE;AACpE,8DAA8D;;AAI9D,0DA0BC;AA1BD,SAAgB,uBAAuB,CACrC,YAAoB,EACpB,WAAsC;IAEtC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACrD,CAAC;IACD,MAAM,IAAI,GAAqB;QAC7B,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,YAAY;QACxC,OAAO,EAAE,WAAW,CAAC,OAAO,IAAI,SAAS;KAC1C,CAAC;IACF,IAAI,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG;YACd,SAAS,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS;YACzC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI;SAChC,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG;YACf,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC,SAAS;SAC3C,CAAC;QACF,IAAI,WAAW,CAAC,SAAS,CAAC,SAAS;YAAE,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC;QAChG,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM;YAAE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC;QACvF,IAAI,WAAW,CAAC,SAAS,CAAC,SAAS;YAAE,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC;IAClG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Journey session state and in-memory store.
|
|
3
3
|
* Tracks multi-dossier execution from start to finish.
|
|
4
4
|
*/
|
|
5
|
+
import type { DossierTraceInfo } from '@ai-dossier/core';
|
|
5
6
|
import type { PhaseEntry } from './types';
|
|
6
7
|
export interface JourneyStep {
|
|
7
8
|
dossier: string;
|
|
@@ -11,6 +12,12 @@ export interface JourneyStep {
|
|
|
11
12
|
status: 'pending' | 'running' | 'completed' | 'failed' | 'skipped';
|
|
12
13
|
injectedContext?: string;
|
|
13
14
|
collectedOutputs?: Record<string, unknown>;
|
|
15
|
+
/**
|
|
16
|
+
* Cached at the time the step's dossier was first read (in startJourney
|
|
17
|
+
* or when advancing in stepComplete). Recorded into the trace so we
|
|
18
|
+
* know which exact dossier version + body hash ran for each step.
|
|
19
|
+
*/
|
|
20
|
+
dossierMeta?: DossierTraceInfo;
|
|
14
21
|
}
|
|
15
22
|
export interface JourneySession {
|
|
16
23
|
id: string;
|
|
@@ -1 +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;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/orchestration/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,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;IAC3C;;;;OAIG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAChC;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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/orchestration/session.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/orchestration/session.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAoCH,0CAQC;AAED,sCAYC;AAED,gCAEC;AAED,sCAEC;AAED,gDAQC;AAcD,oCAcC;AAtGD,6CAAyC;AAgCzC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;AAEnD,SAAgB,eAAe,CAAC,OAAqB;IACnD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7B,OAAO,EAAE,KAAK,CAAC,IAAI;QACnB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,MAAM,EAAE,SAAkB;KAC3B,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,aAAa,CAAC,OAAe,EAAE,KAAoB;IACjE,MAAM,OAAO,GAAmB;QAC9B,EAAE,EAAE,IAAA,wBAAU,GAAE;QAChB,OAAO;QACP,KAAK;QACL,gBAAgB,EAAE,CAAC;QACnB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,IAAI,IAAI,EAAE;KACtB,CAAC;IACF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAgB,UAAU,CAAC,EAAU;IACnC,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED,SAAgB,aAAa,CAAC,OAAuB;IACnD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAgD;IACjF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,WAAW,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kCAAkC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACtF,CAAC;AAcD,SAAgB,YAAY,CAAC,OAAuB;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;IAC/E,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;IACzE,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,EAAE;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;QACjC,eAAe,EAAE,SAAS;QAC1B,YAAY,EAAE,MAAM;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;QAC3C,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE;QAChD,aAAa,EAAE,OAAO,CAAC,YAAY;KACpC,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* start_journey tool - Create a journey session from a resolved graph.
|
|
3
3
|
* Returns the first step's dossier content with any injected context.
|
|
4
4
|
*/
|
|
5
|
+
import { type DossierFrontmatter } from '@ai-dossier/core';
|
|
6
|
+
import type { PhaseEntry } from '../orchestration/types';
|
|
5
7
|
export interface StartJourneyInput {
|
|
6
8
|
graph_id: string;
|
|
7
9
|
}
|
|
@@ -22,5 +24,17 @@ export interface StartJourneyError {
|
|
|
22
24
|
message: string;
|
|
23
25
|
};
|
|
24
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Fetch the body + parsed frontmatter of a dossier step. The frontmatter
|
|
29
|
+
* is returned (when parseable) so callers can record audit metadata
|
|
30
|
+
* (version, checksum, signature) in the execution trace.
|
|
31
|
+
*
|
|
32
|
+
* Local dossiers are read from disk; registry dossiers return an empty
|
|
33
|
+
* body + null frontmatter as fallback.
|
|
34
|
+
*/
|
|
35
|
+
export declare function fetchDossierContent(entry: Pick<PhaseEntry, 'source' | 'path' | 'name'>): {
|
|
36
|
+
body: string;
|
|
37
|
+
frontmatter: DossierFrontmatter | null;
|
|
38
|
+
};
|
|
25
39
|
export declare function startJourney(input: StartJourneyInput): Promise<StartJourneyOutput | StartJourneyError>;
|
|
26
40
|
//# sourceMappingURL=startJourney.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startJourney.d.ts","sourceRoot":"","sources":["../../src/tools/startJourney.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"startJourney.d.ts","sourceRoot":"","sources":["../../src/tools/startJourney.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,KAAK,kBAAkB,EAAuB,MAAM,kBAAkB,CAAC;AAIhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIzD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE;QACL,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;QAC9C,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,GAAG;IACxF,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACxC,CAiBA;AAmBD,wBAAsB,YAAY,CAChC,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,GAAG,iBAAiB,CAAC,CA6DjD"}
|
|
@@ -4,36 +4,43 @@
|
|
|
4
4
|
* Returns the first step's dossier content with any injected context.
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.fetchDossierContent = fetchDossierContent;
|
|
7
8
|
exports.startJourney = startJourney;
|
|
8
9
|
const node_fs_1 = require("node:fs");
|
|
9
10
|
const node_os_1 = require("node:os");
|
|
10
11
|
const core_1 = require("@ai-dossier/core");
|
|
12
|
+
const dossier_trace_info_1 = require("../orchestration/dossier-trace-info");
|
|
11
13
|
const recorder_1 = require("../orchestration/recorder");
|
|
12
14
|
const session_1 = require("../orchestration/session");
|
|
13
15
|
const graphStore_1 = require("../utils/graphStore");
|
|
14
16
|
const logger_1 = require("../utils/logger");
|
|
15
17
|
/**
|
|
16
|
-
* Fetch the
|
|
17
|
-
*
|
|
18
|
+
* Fetch the body + parsed frontmatter of a dossier step. The frontmatter
|
|
19
|
+
* is returned (when parseable) so callers can record audit metadata
|
|
20
|
+
* (version, checksum, signature) in the execution trace.
|
|
21
|
+
*
|
|
22
|
+
* Local dossiers are read from disk; registry dossiers return an empty
|
|
23
|
+
* body + null frontmatter as fallback.
|
|
18
24
|
*/
|
|
19
|
-
function
|
|
25
|
+
function fetchDossierContent(entry) {
|
|
20
26
|
if (entry.source === 'local' && entry.path) {
|
|
21
27
|
try {
|
|
22
28
|
const raw = (0, node_fs_1.readFileSync)(entry.path, 'utf8');
|
|
23
29
|
try {
|
|
24
|
-
|
|
30
|
+
const parsed = (0, core_1.parseDossierContent)(raw);
|
|
31
|
+
return { body: parsed.body, frontmatter: parsed.frontmatter };
|
|
25
32
|
}
|
|
26
33
|
catch {
|
|
27
|
-
return raw;
|
|
34
|
+
return { body: raw, frontmatter: null };
|
|
28
35
|
}
|
|
29
36
|
}
|
|
30
37
|
catch {
|
|
31
38
|
logger_1.logger.warn('Could not read dossier file', { path: entry.path });
|
|
32
|
-
return '';
|
|
39
|
+
return { body: '', frontmatter: null };
|
|
33
40
|
}
|
|
34
41
|
}
|
|
35
42
|
// Registry dossiers: body is not available without a download step
|
|
36
|
-
return '';
|
|
43
|
+
return { body: '', frontmatter: null };
|
|
37
44
|
}
|
|
38
45
|
/**
|
|
39
46
|
* Flatten execution plan phases into an ordered step list.
|
|
@@ -71,7 +78,13 @@ async function startJourney(input) {
|
|
|
71
78
|
session.status = 'running';
|
|
72
79
|
(0, session_1.updateSession)(session);
|
|
73
80
|
const first = entries[0];
|
|
74
|
-
const body =
|
|
81
|
+
const { body, frontmatter } = fetchDossierContent(first);
|
|
82
|
+
// Cache audit metadata on the session step so stepComplete can include
|
|
83
|
+
// the same checksum/version on the appendStep payload — without
|
|
84
|
+
// re-reading the file or trusting Claude's report.
|
|
85
|
+
const dossierMeta = (0, dossier_trace_info_1.extractDossierTraceInfo)(first.name, frontmatter);
|
|
86
|
+
session.steps[0].dossierMeta = dossierMeta;
|
|
87
|
+
(0, session_1.updateSession)(session);
|
|
75
88
|
logger_1.logger.info('Journey started', {
|
|
76
89
|
journeyId: session.id,
|
|
77
90
|
graphId: graph_id,
|
|
@@ -81,7 +94,7 @@ async function startJourney(input) {
|
|
|
81
94
|
// Fire-and-forget: opens a trace if DOSSIER_TRACE_URL/TOKEN are set.
|
|
82
95
|
(0, recorder_1.getRecorder)().create({
|
|
83
96
|
trace_id: session.id,
|
|
84
|
-
dossier:
|
|
97
|
+
dossier: dossierMeta,
|
|
85
98
|
agent: { name: 'mcp-server', host: (0, node_os_1.hostname)() },
|
|
86
99
|
started_at: session.startedAt.toISOString(),
|
|
87
100
|
status: 'running',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startJourney.js","sourceRoot":"","sources":["../../src/tools/startJourney.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"startJourney.js","sourceRoot":"","sources":["../../src/tools/startJourney.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4CH,kDAoBC;AAmBD,oCA+DC;AAhJD,qCAAuC;AACvC,qCAAmC;AACnC,2CAAgF;AAChF,4EAA8E;AAC9E,wDAAwD;AACxD,sDAAyF;AAEzF,oDAA+C;AAC/C,4CAAyC;AA0BzC;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAC,KAAmD;IAIrF,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAA,sBAAY,EAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAA,0BAAmB,EAAC,GAAG,CAAC,CAAC;gBACxC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,eAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACjE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACzC,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,IAAmD;IACxE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,KAAwB;IAExB,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE3B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,sBAAsB,EAAE,EAAE,CAAC;IACzE,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,qBAAQ,EAAC,QAAQ,CAAC,CAAC;IAChC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,2BAA2B,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC1F,CAAC;IAED,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,+BAA+B,EAAE,EAAE,CAAC;IACtF,CAAC;IAED,MAAM,KAAK,GAAG,IAAA,yBAAe,EAAC,OAAO,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,IAAA,uBAAa,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAE/C,uBAAuB;IACvB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC;IACpC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAC3B,IAAA,uBAAa,EAAC,OAAO,CAAC,CAAC;IAEvB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEzD,uEAAuE;IACvE,gEAAgE;IAChE,mDAAmD;IACnD,MAAM,WAAW,GAAG,IAAA,4CAAuB,EAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACrE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;IAC3C,IAAA,uBAAa,EAAC,OAAO,CAAC,CAAC;IAEvB,eAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE;QAC7B,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,OAAO,EAAE,QAAQ;QACjB,UAAU,EAAE,KAAK,CAAC,MAAM;QACxB,SAAS,EAAE,KAAK,CAAC,IAAI;KACtB,CAAC,CAAC;IAEH,qEAAqE;IACrE,IAAA,sBAAW,GAAE,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,OAAO,CAAC,EAAE;QACpB,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAA,kBAAQ,GAAE,EAAE;QAC/C,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE;QAC3C,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IAEH,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,EAAE;QACtB,IAAI,EAAE;YACJ,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI;YACJ,OAAO,EAAE,EAAE;SACZ;QACD,WAAW,EAAE,KAAK,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stepComplete.d.ts","sourceRoot":"","sources":["../../src/tools/stepComplete.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"stepComplete.d.ts","sourceRoot":"","sources":["../../src/tools/stepComplete.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAQ5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,OAAO,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE;QACL,IAAI,EAAE,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC;QAChD,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AAsBxE,wBAAsB,YAAY,CAChC,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,GAAG,iBAAiB,CAAC,CAgHjD"}
|
|
@@ -7,25 +7,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.stepComplete = stepComplete;
|
|
8
8
|
const node_fs_1 = require("node:fs");
|
|
9
9
|
const core_1 = require("@ai-dossier/core");
|
|
10
|
+
const dossier_trace_info_1 = require("../orchestration/dossier-trace-info");
|
|
10
11
|
const recorder_1 = require("../orchestration/recorder");
|
|
11
12
|
const session_1 = require("../orchestration/session");
|
|
12
13
|
const logger_1 = require("../utils/logger");
|
|
13
|
-
function
|
|
14
|
+
function fetchDossierContent(step) {
|
|
14
15
|
if (step.source === 'local' && step.path) {
|
|
15
16
|
try {
|
|
16
17
|
const raw = (0, node_fs_1.readFileSync)(step.path, 'utf8');
|
|
17
18
|
try {
|
|
18
|
-
|
|
19
|
+
const parsed = (0, core_1.parseDossierContent)(raw);
|
|
20
|
+
return { body: parsed.body, frontmatter: parsed.frontmatter };
|
|
19
21
|
}
|
|
20
22
|
catch {
|
|
21
|
-
return raw;
|
|
23
|
+
return { body: raw, frontmatter: null };
|
|
22
24
|
}
|
|
23
25
|
}
|
|
24
26
|
catch {
|
|
25
|
-
return '';
|
|
27
|
+
return { body: '', frontmatter: null };
|
|
26
28
|
}
|
|
27
29
|
}
|
|
28
|
-
return '';
|
|
30
|
+
return { body: '', frontmatter: null };
|
|
29
31
|
}
|
|
30
32
|
async function stepComplete(input) {
|
|
31
33
|
const { journey_id, outputs, status } = input;
|
|
@@ -53,13 +55,16 @@ async function stepComplete(input) {
|
|
|
53
55
|
session.outputs[currentStep.dossier] = outputs;
|
|
54
56
|
}
|
|
55
57
|
currentStep.status = status;
|
|
56
|
-
// Fire-and-forget: append this step to the trace.
|
|
58
|
+
// Fire-and-forget: append this step to the trace. `dossier_meta` carries
|
|
59
|
+
// the version + checksum + signature metadata captured when the step's
|
|
60
|
+
// dossier was first read, so the trace pins exactly which content ran.
|
|
57
61
|
const recorder = (0, recorder_1.getRecorder)();
|
|
58
62
|
recorder.appendStep(session.id, {
|
|
59
63
|
step_id: `${currentStep.dossier}-${session.currentStepIndex}`,
|
|
60
64
|
type: status,
|
|
61
65
|
timestamp: new Date().toISOString(),
|
|
62
66
|
dossier: currentStep.dossier,
|
|
67
|
+
dossier_meta: currentStep.dossierMeta ?? null,
|
|
63
68
|
index: session.currentStepIndex,
|
|
64
69
|
outputs: outputs ?? null,
|
|
65
70
|
});
|
|
@@ -94,8 +99,11 @@ async function stepComplete(input) {
|
|
|
94
99
|
nextStep.status = 'running';
|
|
95
100
|
const context = (0, session_1.buildOutputContext)(session.outputs);
|
|
96
101
|
nextStep.injectedContext = context;
|
|
102
|
+
const { body, frontmatter } = fetchDossierContent(nextStep);
|
|
103
|
+
// Cache audit metadata on the step so the next stepComplete includes
|
|
104
|
+
// the same checksum/version when this step finishes.
|
|
105
|
+
nextStep.dossierMeta = (0, dossier_trace_info_1.extractDossierTraceInfo)(nextStep.dossier, frontmatter);
|
|
97
106
|
(0, session_1.updateSession)(session);
|
|
98
|
-
const body = fetchDossierBody(nextStep);
|
|
99
107
|
logger_1.logger.info('Journey advanced to next step', {
|
|
100
108
|
journeyId: journey_id,
|
|
101
109
|
stepIndex: nextIndex,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stepComplete.js","sourceRoot":"","sources":["../../src/tools/stepComplete.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"stepComplete.js","sourceRoot":"","sources":["../../src/tools/stepComplete.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED