@geminilight/mindos 1.1.51 → 1.1.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/agent/global-state.d.ts +13 -0
  2. package/dist/agent/global-state.d.ts.map +1 -1
  3. package/dist/agent/global-state.js +13 -0
  4. package/dist/agent/global-state.js.map +1 -1
  5. package/dist/agent/ledger/artifact-ledger.d.ts +84 -0
  6. package/dist/agent/ledger/artifact-ledger.d.ts.map +1 -0
  7. package/dist/agent/ledger/artifact-ledger.js +421 -0
  8. package/dist/agent/ledger/artifact-ledger.js.map +1 -0
  9. package/dist/agent/ledger/index.d.ts +1 -0
  10. package/dist/agent/ledger/index.d.ts.map +1 -1
  11. package/dist/agent/ledger/index.js +1 -0
  12. package/dist/agent/ledger/index.js.map +1 -1
  13. package/dist/agent/runtime/catalog.d.ts +97 -0
  14. package/dist/agent/runtime/catalog.d.ts.map +1 -0
  15. package/dist/agent/runtime/catalog.js +261 -0
  16. package/dist/agent/runtime/catalog.js.map +1 -0
  17. package/dist/agent/runtime/compatibility.d.ts.map +1 -1
  18. package/dist/agent/runtime/compatibility.js +13 -11
  19. package/dist/agent/runtime/compatibility.js.map +1 -1
  20. package/dist/agent/runtime/extension-manifest.d.ts +115 -0
  21. package/dist/agent/runtime/extension-manifest.d.ts.map +1 -0
  22. package/dist/agent/runtime/extension-manifest.js +383 -0
  23. package/dist/agent/runtime/extension-manifest.js.map +1 -0
  24. package/dist/agent/runtime/index.d.ts +2 -0
  25. package/dist/agent/runtime/index.d.ts.map +1 -1
  26. package/dist/agent/runtime/index.js +2 -0
  27. package/dist/agent/runtime/index.js.map +1 -1
  28. package/dist/agent/runtime/registry.d.ts +7 -2
  29. package/dist/agent/runtime/registry.d.ts.map +1 -1
  30. package/dist/agent/runtime/registry.js +16 -5
  31. package/dist/agent/runtime/registry.js.map +1 -1
  32. package/dist/protocols/acp/index.d.ts +3 -1
  33. package/dist/protocols/acp/index.d.ts.map +1 -1
  34. package/dist/protocols/acp/index.js +26 -24
  35. package/dist/protocols/acp/index.js.map +1 -1
  36. package/dist/protocols/acp/mcp-session-inheritance.d.ts +49 -0
  37. package/dist/protocols/acp/mcp-session-inheritance.d.ts.map +1 -0
  38. package/dist/protocols/acp/mcp-session-inheritance.js +162 -0
  39. package/dist/protocols/acp/mcp-session-inheritance.js.map +1 -0
  40. package/dist/protocols/acp/session.d.ts +5 -0
  41. package/dist/protocols/acp/session.d.ts.map +1 -1
  42. package/dist/protocols/acp/session.js +159 -4
  43. package/dist/protocols/acp/session.js.map +1 -1
  44. package/dist/protocols/acp/types.d.ts +7 -0
  45. package/dist/protocols/acp/types.d.ts.map +1 -1
  46. package/dist/protocols/acp/types.js.map +1 -1
  47. package/dist/server/handlers/agent-runtimes.d.ts.map +1 -1
  48. package/dist/server/handlers/agent-runtimes.js +7 -2
  49. package/dist/server/handlers/agent-runtimes.js.map +1 -1
  50. package/dist/server/handlers/runtime-artifact-projections.d.ts +14 -0
  51. package/dist/server/handlers/runtime-artifact-projections.d.ts.map +1 -1
  52. package/dist/server/handlers/runtime-artifact-projections.js +30 -7
  53. package/dist/server/handlers/runtime-artifact-projections.js.map +1 -1
  54. package/dist/server/handlers/runtime-readiness.d.ts +5 -3
  55. package/dist/server/handlers/runtime-readiness.d.ts.map +1 -1
  56. package/dist/server/handlers/runtime-readiness.js +63 -2
  57. package/dist/server/handlers/runtime-readiness.js.map +1 -1
  58. package/dist/server/handlers/runtime-session-projections.d.ts +7 -1
  59. package/dist/server/handlers/runtime-session-projections.d.ts.map +1 -1
  60. package/dist/server/handlers/runtime-session-projections.js +23 -0
  61. package/dist/server/handlers/runtime-session-projections.js.map +1 -1
  62. package/dist/server/http.js +4 -1
  63. package/dist/server/http.js.map +1 -1
  64. package/package.json +9 -9
@@ -44,6 +44,19 @@ export declare const AGENT_RUN_LEDGER_SUBSCRIBERS_KEY: unique symbol;
44
44
  * invariant.
45
45
  */
46
46
  export declare const AGENT_RUN_LEDGER_SHARD_KEY: unique symbol;
47
+ /**
48
+ * In-memory artifact pointer ledger store (artifact-ledger.ts). Runtime
49
+ * archives, generated files, diffs, branches, PRs, and preview artifacts are
50
+ * represented as pointer records only; sharing the store prevents the UI and
51
+ * runtime module graphs from seeing different artifact indexes.
52
+ */
53
+ export declare const AGENT_ARTIFACT_LEDGER_STORE_KEY: unique symbol;
54
+ /**
55
+ * Per-process artifact ledger shard identity (artifact-ledger.ts). Mirrors
56
+ * the run ledger's single-writer shard model so every module copy in one
57
+ * process appends to the same `agent-artifact-ledger.<pid>-<startTs>.jsonl`.
58
+ */
59
+ export declare const AGENT_ARTIFACT_LEDGER_SHARD_KEY: unique symbol;
47
60
  /**
48
61
  * Request-scoped AgentRunContext by pi runtime resource
49
62
  * (agent-run-context.ts). The pi SDK can execute extension tools from a
@@ -1 +1 @@
1
- {"version":3,"file":"global-state.d.ts","sourceRoot":"","sources":["../../src/agent/global-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,wEAAwE;AACxE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAMnE;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGrD;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,eAA2C,CAAC;AAEnF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,eAAsC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,eAAkD,CAAC;AAEhG;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,eAA4C,CAAC;AAEpF;;;;;;;;GAQG;AACH,eAAO,MAAM,iCAAiC,eAAkD,CAAC;AAEjG;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,eAAqD,CAAC;AAEhG;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,eAA+C,CAAC;AAE1F;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,eAA6C,CAAC;AAEvF;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC,eAAiD,CAAC;AAE/F;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,eAAkD,CAAC;AAEjG;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,eAAuC,CAAC;AAE1E;;;;;;;;GAQG;AACH,eAAO,MAAM,oCAAoC,eAAqD,CAAC;AAEvG;;;;;;;GAOG;AACH,eAAO,MAAM,qCAAqC,eAAsD,CAAC"}
1
+ {"version":3,"file":"global-state.d.ts","sourceRoot":"","sources":["../../src/agent/global-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,wEAAwE;AACxE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAMnE;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGrD;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,eAA2C,CAAC;AAEnF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,eAAsC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,eAAkD,CAAC;AAEhG;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,eAA4C,CAAC;AAEpF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,eAA2C,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,eAAiD,CAAC;AAE9F;;;;;;;;GAQG;AACH,eAAO,MAAM,iCAAiC,eAAkD,CAAC;AAEjG;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,eAAqD,CAAC;AAEhG;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,eAA+C,CAAC;AAE1F;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,eAA6C,CAAC;AAEvF;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC,eAAiD,CAAC;AAE/F;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,eAAkD,CAAC;AAEjG;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,eAAuC,CAAC;AAE1E;;;;;;;;GAQG;AACH,eAAO,MAAM,oCAAoC,eAAqD,CAAC;AAEvG;;;;;;;GAOG;AACH,eAAO,MAAM,qCAAqC,eAAsD,CAAC"}
@@ -53,6 +53,19 @@ export const AGENT_RUN_LEDGER_SUBSCRIBERS_KEY = Symbol.for('mindos.agentRunLedge
53
53
  * invariant.
54
54
  */
55
55
  export const AGENT_RUN_LEDGER_SHARD_KEY = Symbol.for('mindos.agentRunLedger.shard');
56
+ /**
57
+ * In-memory artifact pointer ledger store (artifact-ledger.ts). Runtime
58
+ * archives, generated files, diffs, branches, PRs, and preview artifacts are
59
+ * represented as pointer records only; sharing the store prevents the UI and
60
+ * runtime module graphs from seeing different artifact indexes.
61
+ */
62
+ export const AGENT_ARTIFACT_LEDGER_STORE_KEY = Symbol.for('mindos.agentArtifactLedger');
63
+ /**
64
+ * Per-process artifact ledger shard identity (artifact-ledger.ts). Mirrors
65
+ * the run ledger's single-writer shard model so every module copy in one
66
+ * process appends to the same `agent-artifact-ledger.<pid>-<startTs>.jsonl`.
67
+ */
68
+ export const AGENT_ARTIFACT_LEDGER_SHARD_KEY = Symbol.for('mindos.agentArtifactLedger.shard');
56
69
  /**
57
70
  * Request-scoped AgentRunContext by pi runtime resource
58
71
  * (agent-run-context.ts). The pi SDK can execute extension tools from a
@@ -1 +1 @@
1
- {"version":3,"file":"global-state.js","sourceRoot":"","sources":["../../src/agent/global-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,wEAAwE;AACxE,MAAM,UAAU,gBAAgB,CAAI,GAAW,EAAE,MAAe;IAC9D,MAAM,IAAI,GAAG,UAAyD,CAAC;IACvE,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAM,CAAC;AACxB,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,IAAI,GAAG,UAAyD,CAAC;IACvE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAEnF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE9E;;;;GAIG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAEhG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AAEpF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAEjG;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AAEhG;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAE1F;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;AAEvF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAE/F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAEjG;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AAEvG;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC"}
1
+ {"version":3,"file":"global-state.js","sourceRoot":"","sources":["../../src/agent/global-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,wEAAwE;AACxE,MAAM,UAAU,gBAAgB,CAAI,GAAW,EAAE,MAAe;IAC9D,MAAM,IAAI,GAAG,UAAyD,CAAC;IACvE,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAM,CAAC;AACxB,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,IAAI,GAAG,UAAyD,CAAC;IACvE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAEnF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE9E;;;;GAIG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAEhG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AAEpF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAExF;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAE9F;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAEjG;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AAEhG;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAE1F;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;AAEvF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAE/F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAEjG;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AAEvG;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC"}
@@ -0,0 +1,84 @@
1
+ import type { AcpToolCallFull } from '../../protocols/acp/types.js';
2
+ import type { AgentNodeKind } from './run-ledger-types.js';
3
+ /**
4
+ * Cross-runtime artifact ledger — pointer index only.
5
+ *
6
+ * Runtimes keep their own full transcript and blob/archive data. This ledger
7
+ * persists safe pointers that let MindOS build preview, artifact, and file
8
+ * change panels without copying transcripts, command output, env, headers, or
9
+ * base64 blobs into a second store.
10
+ */
11
+ export type AgentArtifactKind = 'file' | 'image' | 'diff' | 'patch' | 'checkpoint' | 'branch' | 'pr' | 'uri' | 'unknown';
12
+ export type AgentArtifactSource = 'acp-tool-call' | 'runtime-output' | 'manual';
13
+ export type AgentArtifactStatus = 'pending' | 'in_progress' | 'completed' | 'failed' | 'unknown';
14
+ export type AgentArtifactLedgerRecord = {
15
+ schemaVersion: 1;
16
+ id: string;
17
+ runtimeId: string;
18
+ agentKind: AgentNodeKind;
19
+ source: AgentArtifactSource;
20
+ kind: AgentArtifactKind;
21
+ status: AgentArtifactStatus;
22
+ createdAt: number;
23
+ updatedAt: number;
24
+ sessionId?: string;
25
+ externalSessionId?: string;
26
+ runId?: string;
27
+ toolCallId?: string;
28
+ toolName?: string;
29
+ title?: string;
30
+ summary?: string;
31
+ cwd?: string;
32
+ path?: string;
33
+ line?: number;
34
+ uri?: string;
35
+ mimeType?: string;
36
+ size?: number;
37
+ metadata?: Record<string, unknown>;
38
+ };
39
+ export type AppendAgentArtifactInput = {
40
+ id?: string;
41
+ runtimeId: string;
42
+ agentKind?: AgentNodeKind;
43
+ source: AgentArtifactSource;
44
+ kind?: AgentArtifactKind;
45
+ status?: AgentArtifactStatus;
46
+ sessionId?: string;
47
+ externalSessionId?: string;
48
+ runId?: string;
49
+ toolCallId?: string;
50
+ toolName?: string;
51
+ title?: string;
52
+ summary?: string;
53
+ cwd?: string;
54
+ path?: string;
55
+ line?: number;
56
+ uri?: string;
57
+ mimeType?: string;
58
+ size?: number;
59
+ metadata?: Record<string, unknown>;
60
+ };
61
+ export type ListAgentArtifactsOptions = {
62
+ runtimeId?: string;
63
+ sessionId?: string;
64
+ externalSessionId?: string;
65
+ runId?: string;
66
+ toolCallId?: string;
67
+ kind?: AgentArtifactKind;
68
+ source?: AgentArtifactSource;
69
+ limit?: number;
70
+ };
71
+ export type RecordArtifactsFromAcpToolCallInput = {
72
+ runtimeId: string;
73
+ sessionId: string;
74
+ externalSessionId?: string;
75
+ runId?: string;
76
+ cwd?: string;
77
+ toolCall: AcpToolCallFull;
78
+ };
79
+ export declare function appendAgentArtifact(input: AppendAgentArtifactInput): AgentArtifactLedgerRecord | undefined;
80
+ export declare function listAgentArtifacts(options?: ListAgentArtifactsOptions): AgentArtifactLedgerRecord[];
81
+ export declare function recordArtifactsFromAcpToolCall(input: RecordArtifactsFromAcpToolCallInput): AgentArtifactLedgerRecord[];
82
+ export declare function reloadAgentArtifactsFromDiskForTest(): void;
83
+ export declare function resetAgentArtifactsForTest(): void;
84
+ //# sourceMappingURL=artifact-ledger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-ledger.d.ts","sourceRoot":"","sources":["../../../src/agent/ledger/artifact-ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,421 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { createHash } from 'node:crypto';
4
+ import { effectiveMindRoot } from '../../foundation/mind-root/index.js';
5
+ import { resolveExistingSafe } from '../../foundation/security/index.js';
6
+ import { AGENT_ARTIFACT_LEDGER_SHARD_KEY, AGENT_ARTIFACT_LEDGER_STORE_KEY, deleteProcessGlobal, getProcessGlobal, } from '../global-state.js';
7
+ import { redactSensitiveObject, redactSensitiveText } from '../redaction.js';
8
+ const MAX_ARTIFACTS = 1000;
9
+ const MAX_TEXT_CHARS = 1000;
10
+ const MAX_PATH_CHARS = 1200;
11
+ const LEDGER_DIR_NAME = '.mindos';
12
+ const SHARD_FILE_PATTERN = /^agent-artifact-ledger\.(\d+)-(\d+)\.jsonl$/;
13
+ const IMAGE_EXTENSION_RE = /\.(?:png|jpe?g|webp|gif|svg)$/i;
14
+ const PATCH_EXTENSION_RE = /\.(?:patch|diff)$/i;
15
+ const BRANCH_URI_RE = /^(?:git:)?branch:/i;
16
+ const PR_URI_RE = /^(?:https?:\/\/|git:)?(?:pull-request|pr)[:/]/i;
17
+ const INLINE_BLOB_PREFIX_RE = /^(?:data:|iVBORw0KGgo|\/9j\/|UklGR)/;
18
+ function shardIdentity() {
19
+ return getProcessGlobal(AGENT_ARTIFACT_LEDGER_SHARD_KEY, () => ({
20
+ pid: process.pid,
21
+ startTs: Math.round(performance.timeOrigin),
22
+ }));
23
+ }
24
+ function resolveLedgerRoot() {
25
+ try {
26
+ const root = effectiveMindRoot();
27
+ return typeof root === 'string' && root.trim() ? root : undefined;
28
+ }
29
+ catch {
30
+ return undefined;
31
+ }
32
+ }
33
+ function ledgerDirPath(mindRoot) {
34
+ return resolveExistingSafe(mindRoot, LEDGER_DIR_NAME);
35
+ }
36
+ function ownShardPath(mindRoot) {
37
+ const { pid, startTs } = shardIdentity();
38
+ return resolveExistingSafe(mindRoot, path.posix.join(LEDGER_DIR_NAME, `agent-artifact-ledger.${pid}-${startTs}.jsonl`));
39
+ }
40
+ function emptyStore(mindRoot) {
41
+ return { records: [], ...(mindRoot ? { mindRoot } : {}) };
42
+ }
43
+ function getStore() {
44
+ const mindRoot = resolveLedgerRoot();
45
+ const store = getProcessGlobal(AGENT_ARTIFACT_LEDGER_STORE_KEY, () => (mindRoot ? readPersistedStore(mindRoot) : emptyStore()));
46
+ if (store.mindRoot !== mindRoot) {
47
+ deleteProcessGlobal(AGENT_ARTIFACT_LEDGER_STORE_KEY);
48
+ return getProcessGlobal(AGENT_ARTIFACT_LEDGER_STORE_KEY, () => (mindRoot ? readPersistedStore(mindRoot) : emptyStore()));
49
+ }
50
+ return store;
51
+ }
52
+ function listShardFiles(mindRoot) {
53
+ try {
54
+ const dir = ledgerDirPath(mindRoot);
55
+ if (!fs.existsSync(dir))
56
+ return [];
57
+ return fs.readdirSync(dir)
58
+ .filter((name) => SHARD_FILE_PATTERN.test(name))
59
+ .sort()
60
+ .map((name) => path.join(dir, name));
61
+ }
62
+ catch {
63
+ return [];
64
+ }
65
+ }
66
+ function readPersistedStore(mindRoot) {
67
+ const recordsById = new Map();
68
+ for (const file of listShardFiles(mindRoot)) {
69
+ try {
70
+ for (const line of fs.readFileSync(file, 'utf-8').split('\n')) {
71
+ const trimmed = line.trim();
72
+ if (!trimmed)
73
+ continue;
74
+ let op;
75
+ try {
76
+ op = JSON.parse(trimmed);
77
+ }
78
+ catch {
79
+ continue;
80
+ }
81
+ if (op.version !== 1 || op.type !== 'artifact_upsert')
82
+ continue;
83
+ const record = normalizePersistedRecord(op.record);
84
+ if (!record)
85
+ continue;
86
+ const existing = recordsById.get(record.id);
87
+ if (!existing || record.updatedAt >= existing.updatedAt)
88
+ recordsById.set(record.id, record);
89
+ }
90
+ }
91
+ catch {
92
+ // A torn or unreadable shard must never block artifact projection.
93
+ }
94
+ }
95
+ return {
96
+ mindRoot,
97
+ records: [...recordsById.values()]
98
+ .sort((a, b) => b.updatedAt - a.updatedAt)
99
+ .slice(0, MAX_ARTIFACTS),
100
+ };
101
+ }
102
+ function appendOwnShardOperation(store, record) {
103
+ if (!store.mindRoot)
104
+ return;
105
+ try {
106
+ const file = ownShardPath(store.mindRoot);
107
+ fs.mkdirSync(path.dirname(file), { recursive: true });
108
+ const op = {
109
+ version: 1,
110
+ type: 'artifact_upsert',
111
+ ts: Date.now(),
112
+ record,
113
+ };
114
+ fs.appendFileSync(file, `${JSON.stringify(op)}\n`, 'utf-8');
115
+ }
116
+ catch {
117
+ // Artifact persistence is diagnostic; it must not affect runtime execution.
118
+ }
119
+ }
120
+ export function appendAgentArtifact(input) {
121
+ const normalized = normalizeArtifactInput(input);
122
+ if (!normalized)
123
+ return undefined;
124
+ const store = getStore();
125
+ const existingIndex = store.records.findIndex((record) => record.id === normalized.id);
126
+ const existing = existingIndex >= 0 ? store.records[existingIndex] : undefined;
127
+ const record = {
128
+ ...existing,
129
+ ...normalized,
130
+ createdAt: existing?.createdAt ?? normalized.createdAt,
131
+ updatedAt: normalized.updatedAt,
132
+ metadata: mergeMetadata(existing?.metadata, normalized.metadata),
133
+ };
134
+ if (existingIndex >= 0) {
135
+ store.records[existingIndex] = record;
136
+ }
137
+ else {
138
+ store.records.unshift(record);
139
+ }
140
+ store.records = store.records
141
+ .sort((a, b) => b.updatedAt - a.updatedAt)
142
+ .slice(0, MAX_ARTIFACTS);
143
+ appendOwnShardOperation(store, record);
144
+ return record;
145
+ }
146
+ export function listAgentArtifacts(options = {}) {
147
+ const limit = Math.max(1, Math.min(options.limit ?? MAX_ARTIFACTS, MAX_ARTIFACTS));
148
+ return getStore().records
149
+ .filter((record) => !options.runtimeId || record.runtimeId === options.runtimeId)
150
+ .filter((record) => !options.sessionId || record.sessionId === options.sessionId)
151
+ .filter((record) => !options.externalSessionId || record.externalSessionId === options.externalSessionId)
152
+ .filter((record) => !options.runId || record.runId === options.runId)
153
+ .filter((record) => !options.toolCallId || record.toolCallId === options.toolCallId)
154
+ .filter((record) => !options.kind || record.kind === options.kind)
155
+ .filter((record) => !options.source || record.source === options.source)
156
+ .slice(0, limit);
157
+ }
158
+ export function recordArtifactsFromAcpToolCall(input) {
159
+ const pointers = artifactPointersFromAcpToolCall(input.toolCall);
160
+ const records = [];
161
+ for (const pointer of pointers) {
162
+ const record = appendAgentArtifact({
163
+ runtimeId: input.runtimeId,
164
+ agentKind: 'acp',
165
+ source: 'acp-tool-call',
166
+ status: normalizeArtifactStatus(input.toolCall.status),
167
+ sessionId: input.sessionId,
168
+ externalSessionId: input.externalSessionId,
169
+ runId: input.runId,
170
+ cwd: input.cwd,
171
+ toolCallId: input.toolCall.toolCallId,
172
+ toolName: input.toolCall.kind ?? 'tool',
173
+ title: input.toolCall.title,
174
+ summary: pointer.summary,
175
+ path: pointer.path,
176
+ line: pointer.line,
177
+ uri: pointer.uri,
178
+ mimeType: pointer.mimeType,
179
+ kind: pointer.kind ?? kindFromAcpToolCall(input.toolCall, pointer),
180
+ metadata: {
181
+ sourceStatus: input.toolCall.status,
182
+ ...(input.toolCall.kind ? { acpToolKind: input.toolCall.kind } : {}),
183
+ },
184
+ });
185
+ if (record)
186
+ records.push(record);
187
+ }
188
+ return records;
189
+ }
190
+ export function reloadAgentArtifactsFromDiskForTest() {
191
+ deleteProcessGlobal(AGENT_ARTIFACT_LEDGER_STORE_KEY);
192
+ getStore();
193
+ }
194
+ export function resetAgentArtifactsForTest() {
195
+ deleteProcessGlobal(AGENT_ARTIFACT_LEDGER_STORE_KEY);
196
+ }
197
+ function artifactPointersFromAcpToolCall(toolCall) {
198
+ const pointers = [];
199
+ for (const location of toolCall.locations ?? []) {
200
+ if (!location?.path)
201
+ continue;
202
+ pointers.push({
203
+ path: location.path,
204
+ ...(Number.isFinite(location.line) ? { line: location.line } : {}),
205
+ kind: kindFromPath(location.path),
206
+ summary: toolCall.title,
207
+ });
208
+ }
209
+ for (const block of toolCall.content ?? []) {
210
+ const pointer = pointerFromContentBlock(block);
211
+ if (pointer)
212
+ pointers.push(pointer);
213
+ }
214
+ return dedupePointers(pointers);
215
+ }
216
+ function pointerFromContentBlock(block) {
217
+ if (block.type === 'resource_link') {
218
+ return pointerFromUri(block.uri, block.name);
219
+ }
220
+ if (block.type === 'resource') {
221
+ return pointerFromUri(block.resource.uri);
222
+ }
223
+ if (block.type === 'image' && block.mimeType && !INLINE_BLOB_PREFIX_RE.test(block.data)) {
224
+ return {
225
+ uri: truncateText(block.data, MAX_PATH_CHARS),
226
+ mimeType: truncateText(block.mimeType, 120),
227
+ kind: 'image',
228
+ };
229
+ }
230
+ return null;
231
+ }
232
+ function pointerFromUri(uri, title) {
233
+ const normalized = sanitizePointerText(uri, MAX_PATH_CHARS);
234
+ if (!normalized || INLINE_BLOB_PREFIX_RE.test(normalized))
235
+ return null;
236
+ if (normalized.startsWith('file://')) {
237
+ const filePath = normalized.slice('file://'.length);
238
+ return {
239
+ path: filePath,
240
+ uri: normalized,
241
+ kind: kindFromPath(filePath),
242
+ ...(title ? { summary: sanitizePointerText(title, MAX_TEXT_CHARS) } : {}),
243
+ };
244
+ }
245
+ return {
246
+ uri: normalized,
247
+ kind: kindFromUri(normalized),
248
+ ...(title ? { summary: sanitizePointerText(title, MAX_TEXT_CHARS) } : {}),
249
+ };
250
+ }
251
+ function normalizeArtifactInput(input) {
252
+ const runtimeId = sanitizePointerText(input.runtimeId, 160);
253
+ if (!runtimeId)
254
+ return null;
255
+ const pathValue = sanitizePointerText(input.path, MAX_PATH_CHARS);
256
+ const uriValue = sanitizePointerText(input.uri, MAX_PATH_CHARS);
257
+ if (!pathValue && !uriValue && !input.id)
258
+ return null;
259
+ const now = Date.now();
260
+ const baseForId = input.id ?? [
261
+ runtimeId,
262
+ input.sessionId,
263
+ input.externalSessionId,
264
+ input.runId,
265
+ input.toolCallId,
266
+ pathValue,
267
+ input.line,
268
+ uriValue,
269
+ ].filter((part) => part !== undefined && part !== '').join('|');
270
+ const id = sanitizePointerText(input.id, 240) ?? `artifact-${hashText(baseForId)}`;
271
+ return {
272
+ schemaVersion: 1,
273
+ id,
274
+ runtimeId,
275
+ agentKind: input.agentKind ?? 'acp',
276
+ source: input.source,
277
+ kind: input.kind ?? kindFromPath(pathValue) ?? kindFromUri(uriValue) ?? 'unknown',
278
+ status: normalizeArtifactStatus(input.status),
279
+ createdAt: now,
280
+ updatedAt: now,
281
+ ...(sanitizePointerText(input.sessionId, 240) ? { sessionId: sanitizePointerText(input.sessionId, 240) } : {}),
282
+ ...(sanitizePointerText(input.externalSessionId, 240) ? { externalSessionId: sanitizePointerText(input.externalSessionId, 240) } : {}),
283
+ ...(sanitizePointerText(input.runId, 240) ? { runId: sanitizePointerText(input.runId, 240) } : {}),
284
+ ...(sanitizePointerText(input.toolCallId, 240) ? { toolCallId: sanitizePointerText(input.toolCallId, 240) } : {}),
285
+ ...(sanitizePointerText(input.toolName, 240) ? { toolName: sanitizePointerText(input.toolName, 240) } : {}),
286
+ ...(sanitizePointerText(input.title, 300) ? { title: sanitizePointerText(input.title, 300) } : {}),
287
+ ...(sanitizePointerText(input.summary, MAX_TEXT_CHARS) ? { summary: sanitizePointerText(input.summary, MAX_TEXT_CHARS) } : {}),
288
+ ...(sanitizePointerText(input.cwd, MAX_PATH_CHARS) ? { cwd: sanitizePointerText(input.cwd, MAX_PATH_CHARS) } : {}),
289
+ ...(pathValue ? { path: pathValue } : {}),
290
+ ...(Number.isFinite(input.line) && input.line !== undefined ? { line: Math.max(1, Math.floor(input.line)) } : {}),
291
+ ...(uriValue ? { uri: uriValue } : {}),
292
+ ...(sanitizePointerText(input.mimeType, 120) ? { mimeType: sanitizePointerText(input.mimeType, 120) } : {}),
293
+ ...(typeof input.size === 'number' && Number.isFinite(input.size) && input.size >= 0 ? { size: Math.floor(input.size) } : {}),
294
+ ...(input.metadata ? { metadata: sanitizeMetadata(input.metadata) } : {}),
295
+ };
296
+ }
297
+ function normalizePersistedRecord(value) {
298
+ if (!value || typeof value !== 'object' || Array.isArray(value))
299
+ return null;
300
+ const record = value;
301
+ if (record.schemaVersion !== 1)
302
+ return null;
303
+ if (typeof record.id !== 'string' || typeof record.runtimeId !== 'string')
304
+ return null;
305
+ if (!isArtifactSource(record.source) || !isArtifactKind(record.kind) || !isArtifactStatus(record.status))
306
+ return null;
307
+ if (typeof record.createdAt !== 'number' || typeof record.updatedAt !== 'number')
308
+ return null;
309
+ const normalized = normalizeArtifactInput({
310
+ ...record,
311
+ id: record.id,
312
+ runtimeId: record.runtimeId,
313
+ source: record.source,
314
+ kind: record.kind,
315
+ status: record.status,
316
+ });
317
+ if (!normalized)
318
+ return null;
319
+ return {
320
+ ...normalized,
321
+ createdAt: record.createdAt,
322
+ updatedAt: record.updatedAt,
323
+ };
324
+ }
325
+ function normalizeArtifactStatus(status) {
326
+ if (status === 'pending' || status === 'in_progress' || status === 'completed' || status === 'failed')
327
+ return status;
328
+ return 'unknown';
329
+ }
330
+ function isArtifactSource(source) {
331
+ return source === 'acp-tool-call' || source === 'runtime-output' || source === 'manual';
332
+ }
333
+ function isArtifactKind(kind) {
334
+ return kind === 'file'
335
+ || kind === 'image'
336
+ || kind === 'diff'
337
+ || kind === 'patch'
338
+ || kind === 'checkpoint'
339
+ || kind === 'branch'
340
+ || kind === 'pr'
341
+ || kind === 'uri'
342
+ || kind === 'unknown';
343
+ }
344
+ function isArtifactStatus(status) {
345
+ return status === 'pending'
346
+ || status === 'in_progress'
347
+ || status === 'completed'
348
+ || status === 'failed'
349
+ || status === 'unknown';
350
+ }
351
+ function kindFromAcpToolCall(toolCall, pointer) {
352
+ if (pointer.kind)
353
+ return pointer.kind;
354
+ const pathKind = kindFromPath(pointer.path);
355
+ if (pathKind)
356
+ return pathKind;
357
+ const uriKind = kindFromUri(pointer.uri);
358
+ if (uriKind)
359
+ return uriKind;
360
+ if (toolCall.kind === 'edit' || toolCall.kind === 'read' || toolCall.kind === 'delete' || toolCall.kind === 'move' || toolCall.kind === 'search') {
361
+ return 'file';
362
+ }
363
+ return 'unknown';
364
+ }
365
+ function kindFromPath(value) {
366
+ if (!value)
367
+ return undefined;
368
+ if (IMAGE_EXTENSION_RE.test(value))
369
+ return 'image';
370
+ if (PATCH_EXTENSION_RE.test(value))
371
+ return value.toLowerCase().endsWith('.patch') ? 'patch' : 'diff';
372
+ return 'file';
373
+ }
374
+ function kindFromUri(value) {
375
+ if (!value)
376
+ return undefined;
377
+ if (BRANCH_URI_RE.test(value))
378
+ return 'branch';
379
+ if (PR_URI_RE.test(value))
380
+ return 'pr';
381
+ if (IMAGE_EXTENSION_RE.test(value))
382
+ return 'image';
383
+ if (PATCH_EXTENSION_RE.test(value))
384
+ return value.toLowerCase().endsWith('.patch') ? 'patch' : 'diff';
385
+ return 'uri';
386
+ }
387
+ function dedupePointers(pointers) {
388
+ const seen = new Set();
389
+ const deduped = [];
390
+ for (const pointer of pointers) {
391
+ const key = `${pointer.path ?? ''}:${pointer.line ?? ''}:${pointer.uri ?? ''}`;
392
+ if (seen.has(key))
393
+ continue;
394
+ seen.add(key);
395
+ deduped.push(pointer);
396
+ }
397
+ return deduped;
398
+ }
399
+ function sanitizePointerText(value, maxLength) {
400
+ if (typeof value !== 'string')
401
+ return undefined;
402
+ const text = redactSensitiveText(value).trim();
403
+ if (!text || INLINE_BLOB_PREFIX_RE.test(text))
404
+ return undefined;
405
+ return truncateText(text, maxLength);
406
+ }
407
+ function truncateText(value, maxLength) {
408
+ return value.length > maxLength ? `${value.slice(0, maxLength)}...` : value;
409
+ }
410
+ function sanitizeMetadata(metadata) {
411
+ return redactSensitiveObject(metadata);
412
+ }
413
+ function mergeMetadata(existing, next) {
414
+ if (!existing && !next)
415
+ return undefined;
416
+ return sanitizeMetadata({ ...(existing ?? {}), ...(next ?? {}) });
417
+ }
418
+ function hashText(value) {
419
+ return createHash('sha256').update(value).digest('hex').slice(0, 24);
420
+ }
421
+ //# sourceMappingURL=artifact-ledger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-ledger.js","sourceRoot":"","sources":["../../../src/agent/ledger/artifact-ledger.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ export * from './run-ledger-types.js';
2
2
  export * from './run-ledger.js';
3
3
  export * from './run-timeline-events.js';
4
4
  export * from './run-cancellation.js';
5
+ export * from './artifact-ledger.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/ledger/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/ledger/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC"}
@@ -2,4 +2,5 @@ export * from './run-ledger-types.js';
2
2
  export * from './run-ledger.js';
3
3
  export * from './run-timeline-events.js';
4
4
  export * from './run-cancellation.js';
5
+ export * from './artifact-ledger.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/ledger/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/ledger/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC"}