@neonwatty/limner 0.1.5 → 0.1.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/dist/commands/compare-image-reference.d.ts +3 -0
- package/dist/commands/compare-image-reference.js +16 -1
- package/dist/commands/compare-image-reference.js.map +1 -1
- package/dist/commands/compare-output.d.ts +2 -0
- package/dist/commands/compare-output.js +19 -0
- package/dist/commands/compare-output.js.map +1 -0
- package/dist/commands/compare.d.ts +3 -0
- package/dist/commands/compare.js +10 -19
- package/dist/commands/compare.js.map +1 -1
- package/dist/commands/ledger.d.ts +1 -0
- package/dist/commands/loop-comparison-adapters.d.ts +3 -0
- package/dist/commands/loop-comparison-adapters.js +15 -1
- package/dist/commands/loop-comparison-adapters.js.map +1 -1
- package/dist/commands/loop.js +16 -1
- package/dist/commands/loop.js.map +1 -1
- package/dist/core/comparison-artifacts.d.ts +12 -0
- package/dist/core/comparison-artifacts.js +36 -0
- package/dist/core/comparison-artifacts.js.map +1 -0
- package/dist/core/ledger-db.js +10 -0
- package/dist/core/ledger-db.js.map +1 -1
- package/dist/core/ledger-events.js +26 -7
- package/dist/core/ledger-events.js.map +1 -1
- package/dist/core/ledger-markdown.d.ts +4 -0
- package/dist/core/ledger-markdown.js +50 -4
- package/dist/core/ledger-markdown.js.map +1 -1
- package/dist/core/ledger-queries.d.ts +1 -0
- package/dist/core/ledger-queries.js +5 -3
- package/dist/core/ledger-queries.js.map +1 -1
- package/dist/core/ledger-store.d.ts +3 -2
- package/dist/core/ledger-store.js.map +1 -1
- package/dist/core/runtime-context.d.ts +1 -0
- package/dist/core/runtime-context.js +18 -0
- package/dist/core/runtime-context.js.map +1 -0
- package/dist/schemas/ledger.d.ts +10 -0
- package/dist/schemas/ledger.js +9 -0
- package/dist/schemas/ledger.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type AgentComparisonPackResult } from '../core/agent-comparison-pack.js';
|
|
2
|
+
import type { LedgerArtifactRef } from '../schemas/ledger.js';
|
|
2
3
|
export declare function compareImageReference(options: {
|
|
3
4
|
workspaceRoot: string;
|
|
4
5
|
target: string;
|
|
@@ -10,6 +11,8 @@ export declare function compareImageReference(options: {
|
|
|
10
11
|
}): Promise<{
|
|
11
12
|
sideBySidePath: string;
|
|
12
13
|
reportPath: string;
|
|
14
|
+
runId: string;
|
|
15
|
+
artifacts: LedgerArtifactRef[];
|
|
13
16
|
specPaths?: {
|
|
14
17
|
idealSpecPath: string;
|
|
15
18
|
referenceSpecPath: string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { mkdir } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { writeAgentComparisonPack } from '../core/agent-comparison-pack.js';
|
|
4
|
+
import { agentComparisonArtifacts, artifact } from '../core/comparison-artifacts.js';
|
|
4
5
|
import { writeImageReferenceReport } from '../core/report-writer.js';
|
|
5
6
|
import { createRunLogger } from '../core/run-logger.js';
|
|
6
7
|
import { createSideBySideImage } from '../core/side-by-side.js';
|
|
@@ -94,7 +95,21 @@ export async function compareImageReference(options) {
|
|
|
94
95
|
}
|
|
95
96
|
await logger.artifact(reportPath, 'report');
|
|
96
97
|
await logger.complete('ok');
|
|
97
|
-
return {
|
|
98
|
+
return {
|
|
99
|
+
sideBySidePath,
|
|
100
|
+
reportPath,
|
|
101
|
+
runId: logger.runId,
|
|
102
|
+
artifacts: [
|
|
103
|
+
...artifact(referencePath, 'reference-screenshot'),
|
|
104
|
+
...artifact(`${referencePath}.console.json`, 'reference-console-log'),
|
|
105
|
+
...artifact(sideBySidePath, 'side-by-side'),
|
|
106
|
+
...artifact(reportPath, 'report'),
|
|
107
|
+
...agentComparisonArtifacts(agentComparison),
|
|
108
|
+
],
|
|
109
|
+
specPaths,
|
|
110
|
+
agentSpec,
|
|
111
|
+
agentComparison,
|
|
112
|
+
};
|
|
98
113
|
}
|
|
99
114
|
catch (error) {
|
|
100
115
|
await logger.event({ type: 'command.failed', status: 'failed', message: error instanceof Error ? error.message : String(error) });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare-image-reference.js","sourceRoot":"","sources":["../../src/commands/compare-image-reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,wBAAwB,EAAkC,MAAM,kCAAkC,CAAC;AAC5G,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"compare-image-reference.js","sourceRoot":"","sources":["../../src/commands/compare-image-reference.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export function printAgentComparison(agentComparison) {
|
|
2
|
+
if (!agentComparison)
|
|
3
|
+
return;
|
|
4
|
+
console.log(`Agent comparison prompt: ${agentComparison.promptPath}`);
|
|
5
|
+
console.log(`Codex comparison prompt: ${agentComparison.codexPromptPath}`);
|
|
6
|
+
console.log(`Claude comparison prompt: ${agentComparison.claudePromptPath}`);
|
|
7
|
+
console.log(`Agent comparison schema: ${agentComparison.schemaPath}`);
|
|
8
|
+
console.log(`Agent comparison response target: ${agentComparison.responsePath}`);
|
|
9
|
+
if (agentComparison.status === 'validated') {
|
|
10
|
+
console.log(`Image comparison: ${agentComparison.imageComparisonPath}`);
|
|
11
|
+
if (agentComparison.structureComparisonPath)
|
|
12
|
+
console.log(`Structure comparison: ${agentComparison.structureComparisonPath}`);
|
|
13
|
+
console.log(`Comparison summary: ${agentComparison.summaryPath}`);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
console.log(`Agent comparison status: ${agentComparison.status}`);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=compare-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compare-output.js","sourceRoot":"","sources":["../../src/commands/compare-output.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,oBAAoB,CAAC,eAA2C;IAC9E,IAAI,CAAC,eAAe;QAAE,OAAO;IAC7B,OAAO,CAAC,GAAG,CAAC,4BAA4B,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,4BAA4B,eAAe,CAAC,eAAe,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,6BAA6B,eAAe,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,4BAA4B,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,qCAAqC,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC;IACjF,IAAI,eAAe,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,qBAAqB,eAAe,CAAC,mBAAmB,EAAE,CAAC,CAAC;QACxE,IAAI,eAAe,CAAC,uBAAuB;YAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,eAAe,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAC7H,OAAO,CAAC,GAAG,CAAC,uBAAuB,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Command } from 'commander';
|
|
2
2
|
import { type AgentComparisonPackResult } from '../core/agent-comparison-pack.js';
|
|
3
|
+
import type { LedgerArtifactRef } from '../schemas/ledger.js';
|
|
3
4
|
export { compareImageReference } from './compare-image-reference.js';
|
|
4
5
|
export declare function compareReferenceImplementation(options: {
|
|
5
6
|
workspaceRoot: string;
|
|
@@ -13,6 +14,8 @@ export declare function compareReferenceImplementation(options: {
|
|
|
13
14
|
sideBySidePath: string;
|
|
14
15
|
reportPath: string;
|
|
15
16
|
metricsPath: string;
|
|
17
|
+
runId: string;
|
|
18
|
+
artifacts: LedgerArtifactRef[];
|
|
16
19
|
agentComparison?: AgentComparisonPackResult;
|
|
17
20
|
}>;
|
|
18
21
|
export declare function registerCompareCommand(program: Command): void;
|
package/dist/commands/compare.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { mkdir, writeFile } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { writeAgentComparisonPack } from '../core/agent-comparison-pack.js';
|
|
4
|
+
import { referenceImplementationArtifacts } from '../core/comparison-artifacts.js';
|
|
4
5
|
import { loadRegionContract } from '../core/dom-metrics.js';
|
|
5
6
|
import { capturePage } from '../core/playwright-capture.js';
|
|
6
7
|
import { writeReferenceImplementationReport } from '../core/report-writer.js';
|
|
@@ -9,6 +10,7 @@ import { createSideBySideImage } from '../core/side-by-side.js';
|
|
|
9
10
|
import { startStaticServer } from '../core/static-server.js';
|
|
10
11
|
import { resolveTarget, resolveWorkspace } from '../core/workspace.js';
|
|
11
12
|
import { compareImageReference } from './compare-image-reference.js';
|
|
13
|
+
import { printAgentComparison } from './compare-output.js';
|
|
12
14
|
export { compareImageReference } from './compare-image-reference.js';
|
|
13
15
|
export async function compareReferenceImplementation(options) {
|
|
14
16
|
const workspace = resolveWorkspace(options.workspaceRoot);
|
|
@@ -95,7 +97,14 @@ export async function compareReferenceImplementation(options) {
|
|
|
95
97
|
}
|
|
96
98
|
await logger.artifact(reportPath, 'report');
|
|
97
99
|
await logger.complete('ok');
|
|
98
|
-
return {
|
|
100
|
+
return {
|
|
101
|
+
sideBySidePath,
|
|
102
|
+
reportPath,
|
|
103
|
+
metricsPath,
|
|
104
|
+
runId: logger.runId,
|
|
105
|
+
artifacts: referenceImplementationArtifacts({ referencePath, implementationPath, sideBySidePath, metricsPath, reportPath, agentComparison }),
|
|
106
|
+
agentComparison,
|
|
107
|
+
};
|
|
99
108
|
}
|
|
100
109
|
catch (error) {
|
|
101
110
|
await logger.event({ type: 'command.failed', status: 'failed', message: error instanceof Error ? error.message : String(error) });
|
|
@@ -174,22 +183,4 @@ export function registerCompareCommand(program) {
|
|
|
174
183
|
console.log(`Report: ${result.reportPath}`);
|
|
175
184
|
});
|
|
176
185
|
}
|
|
177
|
-
function printAgentComparison(agentComparison) {
|
|
178
|
-
if (!agentComparison)
|
|
179
|
-
return;
|
|
180
|
-
console.log(`Agent comparison prompt: ${agentComparison.promptPath}`);
|
|
181
|
-
console.log(`Codex comparison prompt: ${agentComparison.codexPromptPath}`);
|
|
182
|
-
console.log(`Claude comparison prompt: ${agentComparison.claudePromptPath}`);
|
|
183
|
-
console.log(`Agent comparison schema: ${agentComparison.schemaPath}`);
|
|
184
|
-
console.log(`Agent comparison response target: ${agentComparison.responsePath}`);
|
|
185
|
-
if (agentComparison.status === 'validated') {
|
|
186
|
-
console.log(`Image comparison: ${agentComparison.imageComparisonPath}`);
|
|
187
|
-
if (agentComparison.structureComparisonPath)
|
|
188
|
-
console.log(`Structure comparison: ${agentComparison.structureComparisonPath}`);
|
|
189
|
-
console.log(`Comparison summary: ${agentComparison.summaryPath}`);
|
|
190
|
-
}
|
|
191
|
-
else {
|
|
192
|
-
console.log(`Agent comparison status: ${agentComparison.status}`);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
186
|
//# sourceMappingURL=compare.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/commands/compare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,wBAAwB,EAAkC,MAAM,kCAAkC,CAAC;AAC5G,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,kCAAkC,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/commands/compare.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type AgentComparisonPackResult } from '../core/agent-comparison-pack.js';
|
|
2
2
|
import type { LedgerMode } from '../schemas/ledger.js';
|
|
3
|
+
import type { LedgerArtifactRef } from '../schemas/ledger.js';
|
|
3
4
|
export type LoopCompareInput = {
|
|
4
5
|
workspaceRoot: string;
|
|
5
6
|
target: string;
|
|
@@ -12,6 +13,8 @@ export type LoopCompareInput = {
|
|
|
12
13
|
export type LoopCompareResult = {
|
|
13
14
|
sideBySidePath: string;
|
|
14
15
|
reportPath?: string;
|
|
16
|
+
runId?: string;
|
|
17
|
+
artifacts: LedgerArtifactRef[];
|
|
15
18
|
agentComparison?: AgentComparisonPackResult;
|
|
16
19
|
};
|
|
17
20
|
export declare function runLoopComparison(input: LoopCompareInput): Promise<LoopCompareResult>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { mkdir, writeFile } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { writeAgentComparisonPack } from '../core/agent-comparison-pack.js';
|
|
4
|
+
import { agentComparisonArtifacts, artifact } from '../core/comparison-artifacts.js';
|
|
4
5
|
import { loadRegionContract } from '../core/dom-metrics.js';
|
|
5
6
|
import { capturePage } from '../core/playwright-capture.js';
|
|
6
7
|
import { createRunLogger } from '../core/run-logger.js';
|
|
@@ -74,7 +75,20 @@ async function compareImageImplementation(input) {
|
|
|
74
75
|
await logger.artifact(agentComparison.schemaPath, 'agent-comparison-schema');
|
|
75
76
|
await logger.artifact(reportPath, 'report');
|
|
76
77
|
await logger.complete('ok');
|
|
77
|
-
return {
|
|
78
|
+
return {
|
|
79
|
+
sideBySidePath,
|
|
80
|
+
reportPath,
|
|
81
|
+
runId: logger.runId,
|
|
82
|
+
artifacts: [
|
|
83
|
+
...artifact(implementationPath, 'implementation-screenshot'),
|
|
84
|
+
...artifact(`${implementationPath}.console.json`, 'implementation-console-log'),
|
|
85
|
+
...artifact(`${implementationPath}.metrics.json`, 'implementation-dom-metrics'),
|
|
86
|
+
...artifact(sideBySidePath, 'side-by-side'),
|
|
87
|
+
...artifact(reportPath, 'report'),
|
|
88
|
+
...agentComparisonArtifacts(agentComparison),
|
|
89
|
+
],
|
|
90
|
+
agentComparison,
|
|
91
|
+
};
|
|
78
92
|
}
|
|
79
93
|
catch (error) {
|
|
80
94
|
await logger.event({ type: 'command.failed', status: 'failed', message: error instanceof Error ? error.message : String(error) });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-comparison-adapters.js","sourceRoot":"","sources":["../../src/commands/loop-comparison-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,wBAAwB,EAAkC,MAAM,kCAAkC,CAAC;AAC5G,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"loop-comparison-adapters.js","sourceRoot":"","sources":["../../src/commands/loop-comparison-adapters.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/loop.js
CHANGED
|
@@ -2,6 +2,7 @@ import { ledgerModeSchema } from '../schemas/ledger.js';
|
|
|
2
2
|
import { openLedgerDatabase } from '../core/ledger-db.js';
|
|
3
3
|
import { defaultLoopInstructions } from '../core/loop-instructions.js';
|
|
4
4
|
import { resolveLedgerPaths } from '../core/ledger-paths.js';
|
|
5
|
+
import { getRuntimeContext } from '../core/runtime-context.js';
|
|
5
6
|
import { createLedgerStore } from '../core/ledger-store.js';
|
|
6
7
|
import { runLoopComparison } from './loop-comparison-adapters.js';
|
|
7
8
|
export function startLoop(input) {
|
|
@@ -86,6 +87,7 @@ export async function compareLoop(input) {
|
|
|
86
87
|
actor: 'cli',
|
|
87
88
|
command: 'loop compare',
|
|
88
89
|
resultStatus: 'running',
|
|
90
|
+
inputsSummary: JSON.stringify(compareContext(input)),
|
|
89
91
|
});
|
|
90
92
|
try {
|
|
91
93
|
const result = await runLoopComparison({
|
|
@@ -104,8 +106,10 @@ export async function compareLoop(input) {
|
|
|
104
106
|
eventType,
|
|
105
107
|
actor: 'cli',
|
|
106
108
|
command: 'loop compare',
|
|
109
|
+
runId: result.runId,
|
|
107
110
|
resultStatus: result.agentComparison?.status ?? 'ok',
|
|
108
|
-
|
|
111
|
+
inputsSummary: JSON.stringify(compareContext(input)),
|
|
112
|
+
artifactRefs: result.artifacts,
|
|
109
113
|
});
|
|
110
114
|
return result;
|
|
111
115
|
}
|
|
@@ -117,6 +121,7 @@ export async function compareLoop(input) {
|
|
|
117
121
|
actor: 'cli',
|
|
118
122
|
command: 'loop compare',
|
|
119
123
|
resultStatus: 'failed',
|
|
124
|
+
inputsSummary: JSON.stringify(compareContext(input)),
|
|
120
125
|
notes: error instanceof Error ? error.message : String(error),
|
|
121
126
|
});
|
|
122
127
|
throw error;
|
|
@@ -148,4 +153,14 @@ function selector(input) {
|
|
|
148
153
|
mode: input.mode,
|
|
149
154
|
};
|
|
150
155
|
}
|
|
156
|
+
function compareContext(input) {
|
|
157
|
+
return {
|
|
158
|
+
...getRuntimeContext(),
|
|
159
|
+
headed: input.headed === true,
|
|
160
|
+
headless: input.headed !== true,
|
|
161
|
+
fullPage: input.fullPage === true,
|
|
162
|
+
hasUrl: Boolean(input.url),
|
|
163
|
+
hasStorageState: Boolean(input.storageState),
|
|
164
|
+
};
|
|
165
|
+
}
|
|
151
166
|
//# sourceMappingURL=loop.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/commands/loop.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/commands/loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AgentComparisonPackResult } from './agent-comparison-pack.js';
|
|
2
|
+
import type { LedgerArtifactRef } from '../schemas/ledger.js';
|
|
3
|
+
export declare function artifact(path: string | undefined, kind: string): LedgerArtifactRef[];
|
|
4
|
+
export declare function agentComparisonArtifacts(agentComparison: AgentComparisonPackResult | undefined): LedgerArtifactRef[];
|
|
5
|
+
export declare function referenceImplementationArtifacts(input: {
|
|
6
|
+
referencePath: string;
|
|
7
|
+
implementationPath: string;
|
|
8
|
+
sideBySidePath: string;
|
|
9
|
+
metricsPath: string;
|
|
10
|
+
reportPath: string;
|
|
11
|
+
agentComparison?: AgentComparisonPackResult;
|
|
12
|
+
}): LedgerArtifactRef[];
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export function artifact(path, kind) {
|
|
2
|
+
return path ? [{ path, kind, role: 'artifact' }] : [];
|
|
3
|
+
}
|
|
4
|
+
function expectedOutput(path, kind, exists = false) {
|
|
5
|
+
return path ? [{ path, kind, role: 'expected-output', exists }] : [];
|
|
6
|
+
}
|
|
7
|
+
export function agentComparisonArtifacts(agentComparison) {
|
|
8
|
+
if (!agentComparison)
|
|
9
|
+
return [];
|
|
10
|
+
return [
|
|
11
|
+
...artifact(agentComparison.promptPath, 'agent-comparison-prompt'),
|
|
12
|
+
...artifact(agentComparison.codexPromptPath, 'agent-comparison-prompt-codex'),
|
|
13
|
+
...artifact(agentComparison.claudePromptPath, 'agent-comparison-prompt-claude'),
|
|
14
|
+
...artifact(agentComparison.schemaPath, 'agent-comparison-schema'),
|
|
15
|
+
...artifact(agentComparison.examplePath, 'agent-comparison-example'),
|
|
16
|
+
...expectedOutput(agentComparison.responsePath, 'agent-response-target', agentComparison.status !== 'awaiting-agent'),
|
|
17
|
+
...artifact(agentComparison.imageComparisonPath, 'image-comparison'),
|
|
18
|
+
...artifact(agentComparison.structureComparisonPath, 'structure-comparison'),
|
|
19
|
+
...artifact(agentComparison.summaryPath, 'comparison-summary'),
|
|
20
|
+
];
|
|
21
|
+
}
|
|
22
|
+
export function referenceImplementationArtifacts(input) {
|
|
23
|
+
return [
|
|
24
|
+
...artifact(input.referencePath, 'reference-screenshot'),
|
|
25
|
+
...artifact(`${input.referencePath}.console.json`, 'reference-console-log'),
|
|
26
|
+
...artifact(`${input.referencePath}.metrics.json`, 'reference-dom-metrics'),
|
|
27
|
+
...artifact(input.implementationPath, 'implementation-screenshot'),
|
|
28
|
+
...artifact(`${input.implementationPath}.console.json`, 'implementation-console-log'),
|
|
29
|
+
...artifact(`${input.implementationPath}.metrics.json`, 'implementation-dom-metrics'),
|
|
30
|
+
...artifact(input.sideBySidePath, 'side-by-side'),
|
|
31
|
+
...artifact(input.metricsPath, 'dom-metrics'),
|
|
32
|
+
...artifact(input.reportPath, 'report'),
|
|
33
|
+
...agentComparisonArtifacts(input.agentComparison),
|
|
34
|
+
];
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=comparison-artifacts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparison-artifacts.js","sourceRoot":"","sources":["../../src/core/comparison-artifacts.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,QAAQ,CAAC,IAAwB,EAAE,IAAY;IAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,cAAc,CAAC,IAAwB,EAAE,IAAY,EAAE,MAAM,GAAG,KAAK;IAC5E,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,eAAsD;IAC7F,IAAI,CAAC,eAAe;QAAE,OAAO,EAAE,CAAC;IAChC,OAAO;QACL,GAAG,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,yBAAyB,CAAC;QAClE,GAAG,QAAQ,CAAC,eAAe,CAAC,eAAe,EAAE,+BAA+B,CAAC;QAC7E,GAAG,QAAQ,CAAC,eAAe,CAAC,gBAAgB,EAAE,gCAAgC,CAAC;QAC/E,GAAG,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,yBAAyB,CAAC;QAClE,GAAG,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE,0BAA0B,CAAC;QACpE,GAAG,cAAc,CAAC,eAAe,CAAC,YAAY,EAAE,uBAAuB,EAAE,eAAe,CAAC,MAAM,KAAK,gBAAgB,CAAC;QACrH,GAAG,QAAQ,CAAC,eAAe,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;QACpE,GAAG,QAAQ,CAAC,eAAe,CAAC,uBAAuB,EAAE,sBAAsB,CAAC;QAC5E,GAAG,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE,oBAAoB,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,KAOhD;IACC,OAAO;QACL,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,sBAAsB,CAAC;QACxD,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,aAAa,eAAe,EAAE,uBAAuB,CAAC;QAC3E,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,aAAa,eAAe,EAAE,uBAAuB,CAAC;QAC3E,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,2BAA2B,CAAC;QAClE,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,kBAAkB,eAAe,EAAE,4BAA4B,CAAC;QACrF,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,kBAAkB,eAAe,EAAE,4BAA4B,CAAC;QACrF,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC;QACjD,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC;QAC7C,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC;QACvC,GAAG,wBAAwB,CAAC,KAAK,CAAC,eAAe,CAAC;KACnD,CAAC;AACJ,CAAC"}
|
package/dist/core/ledger-db.js
CHANGED
|
@@ -61,6 +61,8 @@ function migrate(db) {
|
|
|
61
61
|
run_id text,
|
|
62
62
|
kind text not null,
|
|
63
63
|
path text not null,
|
|
64
|
+
role text not null default 'artifact',
|
|
65
|
+
exists_on_disk integer,
|
|
64
66
|
hash text,
|
|
65
67
|
snapshot_path text,
|
|
66
68
|
created_at text not null
|
|
@@ -102,5 +104,13 @@ function migrate(db) {
|
|
|
102
104
|
values ('schemaVersion', '${schemaVersion}')
|
|
103
105
|
on conflict(key) do update set value = excluded.value;
|
|
104
106
|
`);
|
|
107
|
+
ensureColumn(db, 'artifacts', 'role', "text not null default 'artifact'");
|
|
108
|
+
ensureColumn(db, 'artifacts', 'exists_on_disk', 'integer');
|
|
109
|
+
}
|
|
110
|
+
function ensureColumn(db, tableName, columnName, definition) {
|
|
111
|
+
const columns = db.prepare(`pragma table_info(${tableName})`).all();
|
|
112
|
+
if (!columns.some((column) => column.name === columnName)) {
|
|
113
|
+
db.exec(`alter table ${tableName} add column ${columnName} ${definition}`);
|
|
114
|
+
}
|
|
105
115
|
}
|
|
106
116
|
//# sourceMappingURL=ledger-db.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger-db.js","sourceRoot":"","sources":["../../src/core/ledger-db.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,aAAa,GAAG,CAAC,CAAC;AAQxB,MAAM,UAAU,kBAAkB,CAAC,KAA0B;IAC3D,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5C,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,OAAO,CAAC,EAAkB;IACjC,EAAE,CAAC,IAAI,CAAC
|
|
1
|
+
{"version":3,"file":"ledger-db.js","sourceRoot":"","sources":["../../src/core/ledger-db.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,aAAa,GAAG,CAAC,CAAC;AAQxB,MAAM,UAAU,kBAAkB,CAAC,KAA0B;IAC3D,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5C,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,OAAO,CAAC,EAAkB;IACjC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA2FsB,aAAa;;GAE1C,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,kCAAkC,CAAC,CAAC;IAC1E,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,YAAY,CAAC,EAAkB,EAAE,SAAiB,EAAE,UAAkB,EAAE,UAAkB;IACjG,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,qBAAqB,SAAS,GAAG,CAAC,CAAC,GAAG,EAAwB,CAAC;IAC1F,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;QAC1D,EAAE,CAAC,IAAI,CAAC,eAAe,SAAS,eAAe,UAAU,IAAI,UAAU,EAAE,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { existsSync } from 'node:fs';
|
|
2
|
+
import { agentFeedbackSchema, ledgerArtifactRefSchema } from '../schemas/ledger.js';
|
|
2
3
|
import { createLedgerId } from './ledger-ids.js';
|
|
3
4
|
export function insertLedgerEvent(db, input, now) {
|
|
4
5
|
const feedback = agentFeedbackSchema.parse(input.agentFeedback);
|
|
@@ -8,16 +9,34 @@ export function insertLedgerEvent(db, input, now) {
|
|
|
8
9
|
inputs_summary, result_status, artifact_refs_json, agent_feedback, notes, created_at
|
|
9
10
|
) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
10
11
|
`).run(createLedgerId('evt'), input.trajectoryId ?? null, input.iterationId ?? null, input.runId ?? null, input.eventType, input.actor ?? 'cli', input.command ?? null, input.inputsSummary ?? null, input.resultStatus ?? null, JSON.stringify(input.artifactRefs ?? []), feedback ?? null, input.notes ?? null, now);
|
|
12
|
+
if (input.trajectoryId && input.iterationId && input.runId) {
|
|
13
|
+
db.prepare(`
|
|
14
|
+
insert into runs (run_id, trajectory_id, iteration_id, command, status, started_at, completed_at)
|
|
15
|
+
values (?, ?, ?, ?, ?, ?, ?)
|
|
16
|
+
on conflict(run_id) do update set status = excluded.status, completed_at = excluded.completed_at
|
|
17
|
+
`).run(input.runId, input.trajectoryId, input.iterationId, input.command ?? 'unknown', input.resultStatus ?? 'unknown', now, now);
|
|
18
|
+
}
|
|
11
19
|
if (input.trajectoryId) {
|
|
12
|
-
for (const
|
|
13
|
-
|
|
14
|
-
continue;
|
|
20
|
+
for (const ref of input.artifactRefs ?? []) {
|
|
21
|
+
const artifact = normalizeArtifactRef(ref);
|
|
15
22
|
db.prepare(`
|
|
16
23
|
insert into artifacts (
|
|
17
|
-
artifact_id, trajectory_id, iteration_id, run_id, kind, path, hash, snapshot_path, created_at
|
|
18
|
-
) values (?, ?, ?, ?,
|
|
19
|
-
`).run(createLedgerId('art'), input.trajectoryId, input.iterationId ?? null, input.runId ?? null,
|
|
24
|
+
artifact_id, trajectory_id, iteration_id, run_id, kind, path, role, exists_on_disk, hash, snapshot_path, created_at
|
|
25
|
+
) values (?, ?, ?, ?, ?, ?, ?, ?, null, null, ?)
|
|
26
|
+
`).run(createLedgerId('art'), input.trajectoryId, input.iterationId ?? null, input.runId ?? null, artifact.kind, artifact.path, artifact.role, artifact.exists ? 1 : 0, now);
|
|
20
27
|
}
|
|
21
28
|
}
|
|
22
29
|
}
|
|
30
|
+
function normalizeArtifactRef(ref) {
|
|
31
|
+
const parsed = ledgerArtifactRefSchema.parse(ref);
|
|
32
|
+
if (typeof parsed === 'string') {
|
|
33
|
+
return { path: parsed, kind: 'event-artifact', role: 'artifact', exists: existsSync(parsed) };
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
path: parsed.path,
|
|
37
|
+
kind: parsed.kind,
|
|
38
|
+
role: parsed.role,
|
|
39
|
+
exists: parsed.exists ?? existsSync(parsed.path),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
23
42
|
//# sourceMappingURL=ledger-events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger-events.js","sourceRoot":"","sources":["../../src/core/ledger-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"ledger-events.js","sourceRoot":"","sources":["../../src/core/ledger-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAA0B,MAAM,sBAAsB,CAAC;AAG5G,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,UAAU,iBAAiB,CAAC,EAAkB,EAAE,KAAuB,EAAE,GAAW;IACxF,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAChE,EAAE,CAAC,OAAO,CAAC;;;;;GAKV,CAAC,CAAC,GAAG,CACJ,cAAc,CAAC,KAAK,CAAC,EACrB,KAAK,CAAC,YAAY,IAAI,IAAI,EAC1B,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,KAAK,IAAI,IAAI,EACnB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,KAAK,IAAI,KAAK,EACpB,KAAK,CAAC,OAAO,IAAI,IAAI,EACrB,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,YAAY,IAAI,IAAI,EAC1B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,EACxC,QAAQ,IAAI,IAAI,EAChB,KAAK,CAAC,KAAK,IAAI,IAAI,EACnB,GAAG,CACJ,CAAC;IACF,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC3D,EAAE,CAAC,OAAO,CAAC;;;;KAIV,CAAC,CAAC,GAAG,CACJ,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,OAAO,IAAI,SAAS,EAC1B,KAAK,CAAC,YAAY,IAAI,SAAS,EAC/B,GAAG,EACH,GAAG,CACJ,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC3C,EAAE,CAAC,OAAO,CAAC;;;;OAIV,CAAC,CAAC,GAAG,CACJ,cAAc,CAAC,KAAK,CAAC,EACrB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,KAAK,IAAI,IAAI,EACnB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACvB,GAAG,CACJ,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAsB;IAClD,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IAChG,CAAC;IACD,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;KACjD,CAAC;AACJ,CAAC"}
|
|
@@ -15,6 +15,8 @@ type ExportedTrajectory = {
|
|
|
15
15
|
eventType: string;
|
|
16
16
|
actor?: string;
|
|
17
17
|
command?: string;
|
|
18
|
+
runId?: string;
|
|
19
|
+
inputsSummary?: string;
|
|
18
20
|
resultStatus?: string;
|
|
19
21
|
artifactRefsJson?: string;
|
|
20
22
|
agentFeedback?: string;
|
|
@@ -24,6 +26,8 @@ type ExportedTrajectory = {
|
|
|
24
26
|
artifacts: Array<{
|
|
25
27
|
kind: string;
|
|
26
28
|
path: string;
|
|
29
|
+
role?: string;
|
|
30
|
+
existsOnDisk?: number | null;
|
|
27
31
|
snapshotPath?: string | null;
|
|
28
32
|
}>;
|
|
29
33
|
};
|
|
@@ -14,9 +14,12 @@ export function formatLedgerMarkdown(exported) {
|
|
|
14
14
|
'## Timeline',
|
|
15
15
|
'',
|
|
16
16
|
...exported.events.flatMap(formatEvent),
|
|
17
|
-
'## Artifacts',
|
|
17
|
+
'## Written Artifacts',
|
|
18
18
|
'',
|
|
19
|
-
...(exported.artifacts.
|
|
19
|
+
...formatArtifacts(exported.artifacts.filter((artifact) => artifact.role !== 'expected-output')),
|
|
20
|
+
'## Expected Outputs',
|
|
21
|
+
'',
|
|
22
|
+
...formatArtifacts(exported.artifacts.filter((artifact) => artifact.role === 'expected-output')),
|
|
20
23
|
'',
|
|
21
24
|
];
|
|
22
25
|
return lines.join('\n');
|
|
@@ -27,20 +30,63 @@ function formatEvent(event) {
|
|
|
27
30
|
`- ${event.createdAt ?? 'unknown'} ${event.eventType} (${event.resultStatus ?? 'unknown'})`,
|
|
28
31
|
` - actor: ${event.actor ?? 'unknown'}`,
|
|
29
32
|
` - command: ${event.command ?? 'unknown'}`,
|
|
33
|
+
...(event.runId ? [` - run: ${event.runId}`] : []),
|
|
30
34
|
...(event.agentFeedback ? [` - feedback: ${event.agentFeedback}`] : []),
|
|
35
|
+
...formatContext(event.inputsSummary),
|
|
31
36
|
...(event.notes ? [` - notes: ${event.notes}`] : []),
|
|
32
|
-
...refs.map((ref) => ` - artifact: ${ref}`),
|
|
37
|
+
...refs.map((ref) => ` - ${ref.role === 'expected-output' ? 'expected output' : 'artifact'}: ${ref.kind}: ${ref.path}`),
|
|
33
38
|
];
|
|
34
39
|
}
|
|
40
|
+
function formatContext(raw) {
|
|
41
|
+
if (!raw)
|
|
42
|
+
return [];
|
|
43
|
+
try {
|
|
44
|
+
const parsed = JSON.parse(raw);
|
|
45
|
+
const parts = [
|
|
46
|
+
`cli ${stringValue(parsed.cliVersion)}`,
|
|
47
|
+
parsed.headless === true ? 'headless' : parsed.headed === true ? 'headed' : undefined,
|
|
48
|
+
parsed.fullPage === true ? 'full-page' : 'viewport',
|
|
49
|
+
stringValue(parsed.cwd),
|
|
50
|
+
].filter(Boolean);
|
|
51
|
+
return parts.length > 0 ? [` - context: ${parts.join(', ')}`] : [];
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return [];
|
|
55
|
+
}
|
|
56
|
+
}
|
|
35
57
|
function parseRefs(raw) {
|
|
36
58
|
if (!raw)
|
|
37
59
|
return [];
|
|
38
60
|
try {
|
|
39
61
|
const parsed = JSON.parse(raw);
|
|
40
|
-
|
|
62
|
+
if (!Array.isArray(parsed))
|
|
63
|
+
return [];
|
|
64
|
+
return parsed.flatMap((value) => {
|
|
65
|
+
if (typeof value === 'string')
|
|
66
|
+
return [{ path: value, kind: 'event-artifact' }];
|
|
67
|
+
if (value && typeof value === 'object' && 'path' in value && typeof value.path === 'string') {
|
|
68
|
+
return [{ path: value.path, kind: getString(value, 'kind') ?? 'event-artifact', role: getString(value, 'role') }];
|
|
69
|
+
}
|
|
70
|
+
return [];
|
|
71
|
+
});
|
|
41
72
|
}
|
|
42
73
|
catch {
|
|
43
74
|
return [];
|
|
44
75
|
}
|
|
45
76
|
}
|
|
77
|
+
function formatArtifacts(artifacts) {
|
|
78
|
+
if (artifacts.length === 0)
|
|
79
|
+
return ['- None recorded'];
|
|
80
|
+
return artifacts.map((artifact) => {
|
|
81
|
+
const exists = artifact.existsOnDisk === null || artifact.existsOnDisk === undefined ? 'unknown' : artifact.existsOnDisk === 1 ? 'yes' : 'no';
|
|
82
|
+
return `- ${artifact.kind} (${exists}): ${artifact.path}`;
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
function getString(value, key) {
|
|
86
|
+
const record = value;
|
|
87
|
+
return typeof record[key] === 'string' ? record[key] : undefined;
|
|
88
|
+
}
|
|
89
|
+
function stringValue(value) {
|
|
90
|
+
return typeof value === 'string' && value.length > 0 ? value : undefined;
|
|
91
|
+
}
|
|
46
92
|
//# sourceMappingURL=ledger-markdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger-markdown.js","sourceRoot":"","sources":["../../src/core/ledger-markdown.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ledger-markdown.js","sourceRoot":"","sources":["../../src/core/ledger-markdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,12 +27,14 @@ export function exportTrajectoryRows(db, trajectory) {
|
|
|
27
27
|
return {
|
|
28
28
|
trajectory,
|
|
29
29
|
iterations: getIterations(db, trajectoryId),
|
|
30
|
-
events: db.prepare(`select event_type as eventType, actor, command,
|
|
31
|
-
artifact_refs_json as artifactRefsJson, agent_feedback as agentFeedback, notes, created_at as createdAt
|
|
30
|
+
events: db.prepare(`select event_type as eventType, actor, command, run_id as runId, inputs_summary as inputsSummary,
|
|
31
|
+
result_status as resultStatus, artifact_refs_json as artifactRefsJson, agent_feedback as agentFeedback, notes, created_at as createdAt
|
|
32
32
|
from ledger_events where trajectory_id = ? order by rowid`).all(trajectoryId),
|
|
33
|
+
runs: db.prepare('select run_id as runId, iteration_id as iterationId, command, status from runs where trajectory_id = ? order by rowid').all(trajectoryId),
|
|
33
34
|
instructionVersions: db.prepare('select version_id as versionId, instructions_json as instructionsJson from instruction_versions where trajectory_id = ? order by rowid').all(trajectoryId),
|
|
34
35
|
notes: db.prepare('select note_id as noteId, body from notes where trajectory_id = ? order by rowid').all(trajectoryId),
|
|
35
|
-
artifacts: db.prepare(
|
|
36
|
+
artifacts: db.prepare(`select artifact_id as artifactId, kind, path, role, exists_on_disk as existsOnDisk,
|
|
37
|
+
hash, snapshot_path as snapshotPath from artifacts where trajectory_id = ? order by rowid`).all(trajectoryId),
|
|
36
38
|
};
|
|
37
39
|
}
|
|
38
40
|
const trajectoryColumns = `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger-queries.js","sourceRoot":"","sources":["../../src/core/ledger-queries.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAAC,EAAkB,EAAE,KAA6B;IACjF,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI;QAC5B,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC;QACrC,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;QACpB,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;KAC/D,EAAE,CAAC;QACX,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,iBAAiB,sBAAsB,KAAK,gCAAgC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAwB,CAAC;AAClJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAkB,EAAE,YAAoB;IACpE,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,iBAAiB,4CAA4C,CAAC,CAAC,GAAG,CAAC,YAAY,CAAkC,CAAC;AAChJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAkB,EAAE,YAAoB;IACpE,OAAO,EAAE,CAAC,OAAO,CAAC,gHAAgH,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACxJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAkB,EAAE,UAA6B;IACpF,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC7C,OAAO;QACL,UAAU;QACV,UAAU,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC;QAC3C,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC;;gEAEyC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QAC/E,mBAAmB,EAAE,EAAE,CAAC,OAAO,CAAC,wIAAwI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QAC3L,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QACvH,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"ledger-queries.js","sourceRoot":"","sources":["../../src/core/ledger-queries.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAAC,EAAkB,EAAE,KAA6B;IACjF,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI;QAC5B,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC;QACrC,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;QACpB,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC;QACnC,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;KAC/D,EAAE,CAAC;QACX,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,iBAAiB,sBAAsB,KAAK,gCAAgC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAwB,CAAC;AAClJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAkB,EAAE,YAAoB;IACpE,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,iBAAiB,4CAA4C,CAAC,CAAC,GAAG,CAAC,YAAY,CAAkC,CAAC;AAChJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAAkB,EAAE,YAAoB;IACpE,OAAO,EAAE,CAAC,OAAO,CAAC,gHAAgH,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACxJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAkB,EAAE,UAA6B;IACpF,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC7C,OAAO;QACL,UAAU;QACV,UAAU,EAAE,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC;QAC3C,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC;;gEAEyC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QAC/E,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,uHAAuH,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QAC3J,mBAAmB,EAAE,EAAE,CAAC,OAAO,CAAC,wIAAwI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QAC3L,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;QACvH,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC;gGACsE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;KAChH,CAAC;AACJ,CAAC;AAED,MAAM,iBAAiB,GAAG;;;;;;;;CAQzB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type LedgerEventActor, type LedgerMode } from '../schemas/ledger.js';
|
|
1
|
+
import { type LedgerArtifactRef, type LedgerEventActor, type LedgerMode } from '../schemas/ledger.js';
|
|
2
2
|
import type { LedgerDatabase } from './ledger-db.js';
|
|
3
3
|
export type StartTrajectoryInput = {
|
|
4
4
|
mode: LedgerMode;
|
|
@@ -28,7 +28,7 @@ export type AppendEventInput = {
|
|
|
28
28
|
command?: string;
|
|
29
29
|
inputsSummary?: string;
|
|
30
30
|
resultStatus?: string;
|
|
31
|
-
artifactRefs?:
|
|
31
|
+
artifactRefs?: LedgerArtifactRef[];
|
|
32
32
|
agentFeedback?: string;
|
|
33
33
|
notes?: string;
|
|
34
34
|
};
|
|
@@ -57,6 +57,7 @@ export declare function createLedgerStore(db: LedgerDatabase): {
|
|
|
57
57
|
trajectory: TrajectorySummary;
|
|
58
58
|
iterations: unknown[];
|
|
59
59
|
events: unknown[];
|
|
60
|
+
runs: unknown[];
|
|
60
61
|
instructionVersions: unknown[];
|
|
61
62
|
notes: unknown[];
|
|
62
63
|
artifacts: unknown[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger-store.js","sourceRoot":"","sources":["../../src/core/ledger-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"ledger-store.js","sourceRoot":"","sources":["../../src/core/ledger-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getRuntimeContext(argv?: string[]): Record<string, unknown>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
export function getRuntimeContext(argv = process.argv) {
|
|
3
|
+
return {
|
|
4
|
+
cliVersion: readPackageVersion(),
|
|
5
|
+
cwd: process.cwd(),
|
|
6
|
+
argv: argv.slice(2),
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
function readPackageVersion() {
|
|
10
|
+
try {
|
|
11
|
+
const packageJson = JSON.parse(readFileSync(new URL('../../package.json', import.meta.url), 'utf8'));
|
|
12
|
+
return packageJson.version;
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
return 'unknown';
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=runtime-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.js","sourceRoot":"","sources":["../../src/core/runtime-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,UAAU,iBAAiB,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI;IACnD,OAAO;QACL,UAAU,EAAE,kBAAkB,EAAE;QAChC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAgB,CAAC;QACpH,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
package/dist/schemas/ledger.d.ts
CHANGED
|
@@ -18,8 +18,18 @@ export declare const ledgerEventActorSchema: z.ZodEnum<{
|
|
|
18
18
|
cli: "cli";
|
|
19
19
|
}>;
|
|
20
20
|
export declare const agentFeedbackSchema: z.ZodOptional<z.ZodString>;
|
|
21
|
+
export declare const ledgerArtifactRefSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
22
|
+
path: z.ZodString;
|
|
23
|
+
kind: z.ZodString;
|
|
24
|
+
role: z.ZodDefault<z.ZodEnum<{
|
|
25
|
+
artifact: "artifact";
|
|
26
|
+
"expected-output": "expected-output";
|
|
27
|
+
}>>;
|
|
28
|
+
exists: z.ZodOptional<z.ZodBoolean>;
|
|
29
|
+
}, z.core.$strip>]>;
|
|
21
30
|
export type LedgerMode = z.infer<typeof ledgerModeSchema>;
|
|
22
31
|
export type TrajectoryStatus = z.infer<typeof trajectoryStatusSchema>;
|
|
23
32
|
export type IterationStatus = z.infer<typeof iterationStatusSchema>;
|
|
24
33
|
export type LedgerEventActor = z.infer<typeof ledgerEventActorSchema>;
|
|
25
34
|
export type AgentFeedback = z.infer<typeof agentFeedbackSchema>;
|
|
35
|
+
export type LedgerArtifactRef = z.infer<typeof ledgerArtifactRefSchema>;
|
package/dist/schemas/ledger.js
CHANGED
|
@@ -4,4 +4,13 @@ export const trajectoryStatusSchema = z.enum(['active', 'closed']);
|
|
|
4
4
|
export const iterationStatusSchema = z.enum(['active', 'closed']);
|
|
5
5
|
export const ledgerEventActorSchema = z.enum(['user', 'agent', 'cli']);
|
|
6
6
|
export const agentFeedbackSchema = z.string().max(255).optional();
|
|
7
|
+
export const ledgerArtifactRefSchema = z.union([
|
|
8
|
+
z.string(),
|
|
9
|
+
z.object({
|
|
10
|
+
path: z.string().min(1),
|
|
11
|
+
kind: z.string().min(1),
|
|
12
|
+
role: z.enum(['artifact', 'expected-output']).default('artifact'),
|
|
13
|
+
exists: z.boolean().optional(),
|
|
14
|
+
}),
|
|
15
|
+
]);
|
|
7
16
|
//# sourceMappingURL=ledger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/schemas/ledger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,CAAC,CAAC,CAAC;AAC1G,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AACvE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"ledger.js","sourceRoot":"","sources":["../../src/schemas/ledger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,CAAC,CAAC,CAAC;AAC1G,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AACvE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC,CAAC,MAAM,EAAE;IACV,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACjE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;KAC/B,CAAC;CACH,CAAC,CAAC"}
|
package/package.json
CHANGED