agentflight 0.2.0 → 0.3.1
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/CHANGELOG.md +140 -0
- package/README.md +171 -88
- package/dist/adapters/agentloopkit.d.ts.map +1 -1
- package/dist/adapters/agentloopkit.js +26 -7
- package/dist/adapters/agentloopkit.js.map +1 -1
- package/dist/adapters/projscan.d.ts.map +1 -1
- package/dist/adapters/projscan.js +26 -7
- package/dist/adapters/projscan.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +11 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/doctor.d.ts +1 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +17 -0
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/replay.d.ts +1 -0
- package/dist/commands/replay.d.ts.map +1 -1
- package/dist/commands/replay.js +20 -8
- package/dist/commands/replay.js.map +1 -1
- package/dist/commands/report.d.ts +1 -0
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +19 -2
- package/dist/commands/report.js.map +1 -1
- package/dist/commands/resume.d.ts +1 -0
- package/dist/commands/resume.d.ts.map +1 -1
- package/dist/commands/resume.js +20 -1
- package/dist/commands/resume.js.map +1 -1
- package/dist/commands/snapshot.d.ts +13 -0
- package/dist/commands/snapshot.d.ts.map +1 -0
- package/dist/commands/snapshot.js +45 -0
- package/dist/commands/snapshot.js.map +1 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +28 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +26 -2
- package/dist/commands/verify.js.map +1 -1
- package/dist/core/risk.d.ts.map +1 -1
- package/dist/core/risk.js +3 -0
- package/dist/core/risk.js.map +1 -1
- package/dist/core/session.d.ts +14 -1
- package/dist/core/session.d.ts.map +1 -1
- package/dist/core/session.js +78 -0
- package/dist/core/session.js.map +1 -1
- package/dist/core/verification.js +3 -1
- package/dist/core/verification.js.map +1 -1
- package/dist/renderers/html-replay.d.ts +4 -5
- package/dist/renderers/html-replay.d.ts.map +1 -1
- package/dist/renderers/html-replay.js +40 -2
- package/dist/renderers/html-replay.js.map +1 -1
- package/dist/renderers/markdown-report.d.ts +2 -1
- package/dist/renderers/markdown-report.d.ts.map +1 -1
- package/dist/renderers/markdown-report.js +13 -0
- package/dist/renderers/markdown-report.js.map +1 -1
- package/dist/renderers/resume-prompt.d.ts +2 -0
- package/dist/renderers/resume-prompt.d.ts.map +1 -1
- package/dist/renderers/resume-prompt.js +6 -0
- package/dist/renderers/resume-prompt.js.map +1 -1
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -1
- package/docs/assets/agentflight-replay-timeline.png +0 -0
- package/docs/development/dogfooding.md +173 -0
- package/docs/development/release.md +66 -0
- package/docs/examples/basic-agentflight-session.md +164 -0
- package/docs/roadmap.md +49 -0
- package/package.json +12 -1
package/dist/core/session.js
CHANGED
|
@@ -18,6 +18,17 @@ export function buildSessionRecord(options) {
|
|
|
18
18
|
packageManager: options.packageManager,
|
|
19
19
|
verificationCommands: options.verificationCommands ?? [],
|
|
20
20
|
verificationRuns: [],
|
|
21
|
+
events: [
|
|
22
|
+
buildSessionEvent({
|
|
23
|
+
type: "session_started",
|
|
24
|
+
timestamp: now,
|
|
25
|
+
title: "Session started",
|
|
26
|
+
metadata: {
|
|
27
|
+
git: options.git,
|
|
28
|
+
packageManager: options.packageManager
|
|
29
|
+
}
|
|
30
|
+
}, 1)
|
|
31
|
+
],
|
|
21
32
|
tools: options.tools ?? {
|
|
22
33
|
projscan: unavailableTool,
|
|
23
34
|
agentloopkit: unavailableTool
|
|
@@ -45,11 +56,71 @@ export async function startSession(options) {
|
|
|
45
56
|
export function getVerificationRuns(session) {
|
|
46
57
|
return session.verificationRuns ?? [];
|
|
47
58
|
}
|
|
59
|
+
export function getSessionEvents(session) {
|
|
60
|
+
return session.events ?? [];
|
|
61
|
+
}
|
|
62
|
+
export function getSessionTimelineEvents(session) {
|
|
63
|
+
const events = getSessionEvents(session);
|
|
64
|
+
if (events.length > 0)
|
|
65
|
+
return events;
|
|
66
|
+
const synthesizedEvents = [
|
|
67
|
+
buildSessionEvent({
|
|
68
|
+
type: "session_started",
|
|
69
|
+
timestamp: session.startedAt,
|
|
70
|
+
title: "Session started"
|
|
71
|
+
}, 1)
|
|
72
|
+
];
|
|
73
|
+
for (const run of getVerificationRuns(session)) {
|
|
74
|
+
synthesizedEvents.push(buildSessionEvent({
|
|
75
|
+
type: run.status === "passed" ? "verification_passed" : "verification_failed",
|
|
76
|
+
timestamp: run.finishedAt,
|
|
77
|
+
title: run.status === "passed" ? "Verification passed" : "Verification failed",
|
|
78
|
+
metadata: {
|
|
79
|
+
command: run.command,
|
|
80
|
+
exitCode: run.exitCode,
|
|
81
|
+
stdoutPath: run.stdoutPath,
|
|
82
|
+
stderrPath: run.stderrPath
|
|
83
|
+
}
|
|
84
|
+
}, synthesizedEvents.length + 1));
|
|
85
|
+
}
|
|
86
|
+
return synthesizedEvents;
|
|
87
|
+
}
|
|
88
|
+
export function getLatestSessionEvent(session, type) {
|
|
89
|
+
return (getSessionEvents(session)
|
|
90
|
+
.filter((event) => event.type === type)
|
|
91
|
+
.at(-1) ?? null);
|
|
92
|
+
}
|
|
93
|
+
export function buildSessionEvent(input, ordinal) {
|
|
94
|
+
const timestamp = normalizeEventTimestamp(input.timestamp);
|
|
95
|
+
const event = {
|
|
96
|
+
id: `evt-${formatDateForId(new Date(timestamp))}-${slugify(input.type)}-${String(ordinal).padStart(3, "0")}`,
|
|
97
|
+
type: input.type,
|
|
98
|
+
timestamp,
|
|
99
|
+
title: input.title
|
|
100
|
+
};
|
|
101
|
+
if (input.message !== undefined)
|
|
102
|
+
event.message = input.message;
|
|
103
|
+
if (input.metadata !== undefined)
|
|
104
|
+
event.metadata = input.metadata;
|
|
105
|
+
return event;
|
|
106
|
+
}
|
|
107
|
+
export function addSessionEvent(session, input) {
|
|
108
|
+
const events = getSessionEvents(session);
|
|
109
|
+
return {
|
|
110
|
+
...session,
|
|
111
|
+
events: [...events, buildSessionEvent(input, events.length + 1)]
|
|
112
|
+
};
|
|
113
|
+
}
|
|
48
114
|
export async function saveSession(repoRoot, session) {
|
|
49
115
|
const paths = resolveAgentFlightPaths(repoRoot);
|
|
50
116
|
await writeJsonFileSafe(`${paths.sessions}/${session.id}.json`, session, { overwrite: true });
|
|
51
117
|
await writeJsonFileSafe(paths.currentSession, session, { overwrite: true });
|
|
52
118
|
}
|
|
119
|
+
export async function appendSessionEvent(repoRoot, session, input) {
|
|
120
|
+
const updatedSession = addSessionEvent(session, input);
|
|
121
|
+
await saveSession(repoRoot, updatedSession);
|
|
122
|
+
return updatedSession;
|
|
123
|
+
}
|
|
53
124
|
export async function appendVerificationRun(repoRoot, session, run) {
|
|
54
125
|
const updatedSession = {
|
|
55
126
|
...session,
|
|
@@ -73,6 +144,13 @@ function formatDateForId(now) {
|
|
|
73
144
|
const iso = now.toISOString();
|
|
74
145
|
return `${iso.slice(0, 10).replaceAll("-", "")}-${iso.slice(11, 19).replaceAll(":", "")}`;
|
|
75
146
|
}
|
|
147
|
+
function normalizeEventTimestamp(timestamp) {
|
|
148
|
+
if (timestamp instanceof Date)
|
|
149
|
+
return timestamp.toISOString();
|
|
150
|
+
if (typeof timestamp === "string")
|
|
151
|
+
return timestamp;
|
|
152
|
+
return new Date().toISOString();
|
|
153
|
+
}
|
|
76
154
|
function renderInitialHandoff(session) {
|
|
77
155
|
const proof = session.verificationCommands.length
|
|
78
156
|
? session.verificationCommands.map((command) => `- ${command}`).join("\n")
|
package/dist/core/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -156,7 +156,9 @@ function determineReadiness(input) {
|
|
|
156
156
|
}
|
|
157
157
|
function buildNextAction(readiness, missingCommands, riskLevel) {
|
|
158
158
|
if (readiness === "Blocked") {
|
|
159
|
-
return
|
|
159
|
+
return missingCommands.length > 0
|
|
160
|
+
? `Fix the failed command, then rerun agentflight verify -- ${missingCommands[0]}`
|
|
161
|
+
: "Fix the failed verification command, then rerun agentflight verify.";
|
|
160
162
|
}
|
|
161
163
|
if (missingCommands.length > 0) {
|
|
162
164
|
return `Run agentflight verify -- ${missingCommands[0]}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/core/verification.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/core/verification.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import type { VerificationRun } from "../types/index.js";
|
|
2
|
-
export
|
|
3
|
-
label: string;
|
|
4
|
-
timestamp: string;
|
|
5
|
-
}
|
|
1
|
+
import type { RiskCategorySummary, SessionEvent, VerificationRun } from "../types/index.js";
|
|
2
|
+
export type ReplayTimelineItem = Pick<SessionEvent, "type" | "timestamp" | "title" | "message" | "metadata">;
|
|
6
3
|
export interface HtmlReplayInput {
|
|
7
4
|
task: string;
|
|
8
5
|
sessionId: string;
|
|
9
6
|
startedAt: string;
|
|
10
7
|
timeline: ReplayTimelineItem[];
|
|
11
8
|
changedFiles: string[];
|
|
9
|
+
changedFileGroups?: RiskCategorySummary[] | undefined;
|
|
12
10
|
riskBadges: string[];
|
|
13
11
|
verificationEvidence: VerificationRun[];
|
|
12
|
+
reviewReadiness?: string | undefined;
|
|
14
13
|
recommendation: string;
|
|
15
14
|
}
|
|
16
15
|
export declare function renderHtmlReplay(input: HtmlReplayInput): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-replay.d.ts","sourceRoot":"","sources":["../../src/renderers/html-replay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"html-replay.d.ts","sourceRoot":"","sources":["../../src/renderers/html-replay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE5F,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,YAAY,EACZ,MAAM,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,CACxD,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,iBAAiB,CAAC,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;IACtD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,oBAAoB,EAAE,eAAe,EAAE,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CA2E/D"}
|
|
@@ -15,7 +15,14 @@ export function renderHtmlReplay(input) {
|
|
|
15
15
|
.meta { color: #57606a; font-size: 14px; }
|
|
16
16
|
.badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
|
|
17
17
|
.badge { border: 1px solid #d0d7de; border-radius: 999px; padding: 4px 10px; background: #ffffff; font-size: 13px; }
|
|
18
|
+
.summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0 0 28px; }
|
|
19
|
+
.summary-card { background: #ffffff; border: 1px solid #d0d7de; border-radius: 8px; padding: 14px; min-width: 0; }
|
|
20
|
+
.summary-card span { color: #57606a; display: block; font-size: 12px; font-weight: 600; text-transform: uppercase; }
|
|
21
|
+
.summary-card strong { display: block; font-size: 18px; margin-top: 4px; overflow-wrap: anywhere; }
|
|
18
22
|
.panel { background: #ffffff; border: 1px solid #d0d7de; border-radius: 8px; padding: 18px; margin: 16px 0; }
|
|
23
|
+
.timeline { border-left: 3px solid #d0d7de; padding-left: 16px; }
|
|
24
|
+
.timeline-item { margin: 0 0 14px; }
|
|
25
|
+
.timeline-item strong { display: block; }
|
|
19
26
|
.verification-grid { display: grid; gap: 12px; }
|
|
20
27
|
.verification-card { border: 1px solid #d0d7de; border-radius: 8px; padding: 14px; background: #fbfcfe; }
|
|
21
28
|
.verification-card.passed { border-color: #2da44e; }
|
|
@@ -25,6 +32,7 @@ export function renderHtmlReplay(input) {
|
|
|
25
32
|
ul { margin: 0; padding-left: 22px; }
|
|
26
33
|
li { margin: 6px 0; }
|
|
27
34
|
code { background: #f0f3f6; border-radius: 4px; padding: 2px 5px; }
|
|
35
|
+
@media (max-width: 760px) { .summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
|
28
36
|
</style>
|
|
29
37
|
</head>
|
|
30
38
|
<body>
|
|
@@ -36,12 +44,16 @@ export function renderHtmlReplay(input) {
|
|
|
36
44
|
<div class="badges">${input.riskBadges.map((badge) => `<span class="badge">${escapeHtml(badge)}</span>`).join("")}</div>
|
|
37
45
|
</header>
|
|
38
46
|
|
|
47
|
+
${renderSummary(input)}
|
|
48
|
+
|
|
39
49
|
<section class="panel">
|
|
40
50
|
<h2>Timeline</h2>
|
|
41
51
|
${renderTimeline(input.timeline)}
|
|
42
52
|
</section>
|
|
43
53
|
|
|
44
54
|
<section class="panel">
|
|
55
|
+
<h2>Changed File Groups</h2>
|
|
56
|
+
${renderFileGroups(input.changedFileGroups ?? [])}
|
|
45
57
|
<h2>Changed Files</h2>
|
|
46
58
|
${renderFileList(input.changedFiles)}
|
|
47
59
|
</section>
|
|
@@ -62,11 +74,37 @@ export function renderHtmlReplay(input) {
|
|
|
62
74
|
</html>
|
|
63
75
|
`;
|
|
64
76
|
}
|
|
77
|
+
function renderSummary(input) {
|
|
78
|
+
const passed = input.verificationEvidence.filter((item) => item.status === "passed").length;
|
|
79
|
+
const failed = input.verificationEvidence.filter((item) => item.status === "failed").length;
|
|
80
|
+
const risk = input.riskBadges[0] ?? "unknown";
|
|
81
|
+
const readiness = input.reviewReadiness ?? "Unknown";
|
|
82
|
+
return `<section class="summary-grid" aria-label="Session summary">
|
|
83
|
+
${renderSummaryCard("Risk", risk)}
|
|
84
|
+
${renderSummaryCard("Changed Files", String(input.changedFiles.length))}
|
|
85
|
+
${renderSummaryCard("Proof", `${passed} passed / ${failed} failed`)}
|
|
86
|
+
${renderSummaryCard("Readiness", readiness)}
|
|
87
|
+
</section>`;
|
|
88
|
+
}
|
|
89
|
+
function renderSummaryCard(label, value) {
|
|
90
|
+
return `<div class="summary-card"><span>${escapeHtml(label)}</span><strong>${escapeHtml(value)}</strong></div>`;
|
|
91
|
+
}
|
|
65
92
|
function renderTimeline(items) {
|
|
66
93
|
if (items.length === 0)
|
|
67
94
|
return "<p>No timeline events recorded.</p>";
|
|
68
|
-
return `<
|
|
69
|
-
.map((item) => `<
|
|
95
|
+
return `<div class="timeline">${items
|
|
96
|
+
.map((item) => `<div class="timeline-item">
|
|
97
|
+
<strong>${escapeHtml(item.title)}</strong>
|
|
98
|
+
<div class="meta">${escapeHtml(item.timestamp)} · ${escapeHtml(item.type)}</div>
|
|
99
|
+
${item.message ? `<div>${escapeHtml(item.message)}</div>` : ""}
|
|
100
|
+
</div>`)
|
|
101
|
+
.join("")}</div>`;
|
|
102
|
+
}
|
|
103
|
+
function renderFileGroups(groups) {
|
|
104
|
+
if (groups.length === 0)
|
|
105
|
+
return "<p>No changed file groups detected.</p>";
|
|
106
|
+
return `<ul>${groups
|
|
107
|
+
.map((group) => `<li><strong>${escapeHtml(group.category)}</strong>: ${group.files.map((file) => `<code>${escapeHtml(file)}</code>`).join(", ")}</li>`)
|
|
70
108
|
.join("")}</ul>`;
|
|
71
109
|
}
|
|
72
110
|
function renderFileList(files) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-replay.js","sourceRoot":"","sources":["../../src/renderers/html-replay.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"html-replay.js","sourceRoot":"","sources":["../../src/renderers/html-replay.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import type { RiskAnalysis, ToolAdapterResult, VerificationRun } from "../types/index.js";
|
|
1
|
+
import type { RiskAnalysis, SessionEvent, ToolAdapterResult, VerificationRun } from "../types/index.js";
|
|
2
2
|
import type { ReviewReadiness } from "../core/verification.js";
|
|
3
3
|
export interface MarkdownReportInput {
|
|
4
4
|
task: string;
|
|
5
5
|
sessionId: string;
|
|
6
6
|
startedAt: string;
|
|
7
7
|
changedFiles: string[];
|
|
8
|
+
timelineEvents?: SessionEvent[] | undefined;
|
|
8
9
|
risk: RiskAnalysis;
|
|
9
10
|
verificationCommands: string[];
|
|
10
11
|
verificationEvidence: VerificationRun[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-report.d.ts","sourceRoot":"","sources":["../../src/renderers/markdown-report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"markdown-report.d.ts","sourceRoot":"","sources":["../../src/renderers/markdown-report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,eAAe,EAAE,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACxC,cAAc,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,OAAO,EAAE;QACP,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,YAAY,EAAE,iBAAiB,CAAC;KACjC,CAAC;CACH;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAuCvE"}
|
|
@@ -8,6 +8,9 @@ ${input.task}
|
|
|
8
8
|
- Session ID: ${input.sessionId}
|
|
9
9
|
- Started: ${input.startedAt}
|
|
10
10
|
|
|
11
|
+
## Timeline
|
|
12
|
+
${renderTimeline(input.timelineEvents ?? [])}
|
|
13
|
+
|
|
11
14
|
## Changed Files
|
|
12
15
|
${renderList(input.changedFiles, "No changed files detected.")}
|
|
13
16
|
|
|
@@ -56,6 +59,16 @@ function renderVerification(input) {
|
|
|
56
59
|
: "";
|
|
57
60
|
return `${evidence}${gaps}`;
|
|
58
61
|
}
|
|
62
|
+
function renderTimeline(events) {
|
|
63
|
+
if (events.length === 0)
|
|
64
|
+
return "No timeline events recorded.";
|
|
65
|
+
return events
|
|
66
|
+
.map((event) => {
|
|
67
|
+
const message = event.message ? ` - ${event.message}` : "";
|
|
68
|
+
return `- ${event.timestamp}: ${event.title}${message}`;
|
|
69
|
+
})
|
|
70
|
+
.join("\n");
|
|
71
|
+
}
|
|
59
72
|
function renderReviewFocus(risk) {
|
|
60
73
|
return risk.categories.length
|
|
61
74
|
? risk.categories
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-report.js","sourceRoot":"","sources":["../../src/renderers/markdown-report.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"markdown-report.js","sourceRoot":"","sources":["../../src/renderers/markdown-report.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ export interface ResumePromptInput {
|
|
|
7
7
|
riskLevel: RiskLevel;
|
|
8
8
|
riskReasons: string[];
|
|
9
9
|
verificationGaps: string[];
|
|
10
|
+
latestSnapshotNote?: string | undefined;
|
|
11
|
+
verificationState?: string | undefined;
|
|
10
12
|
nextAction: string;
|
|
11
13
|
}
|
|
12
14
|
export declare function renderResumePrompt(input: ResumePromptInput): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume-prompt.d.ts","sourceRoot":"","sources":["../../src/renderers/resume-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"resume-prompt.d.ts","sourceRoot":"","sources":["../../src/renderers/resume-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAoCnE"}
|
|
@@ -15,6 +15,12 @@ ${renderList(input.changedFiles, "No changed files detected.")}
|
|
|
15
15
|
## Risks
|
|
16
16
|
${renderList(input.riskReasons, "No specific risks detected yet.")}
|
|
17
17
|
|
|
18
|
+
## Latest Snapshot
|
|
19
|
+
${input.latestSnapshotNote ?? "No snapshot recorded."}
|
|
20
|
+
|
|
21
|
+
## Verification State
|
|
22
|
+
${input.verificationState ?? "No verification state recorded."}
|
|
23
|
+
|
|
18
24
|
## Verification Gaps
|
|
19
25
|
${renderList(input.verificationGaps, "No verification gaps recorded.")}
|
|
20
26
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume-prompt.js","sourceRoot":"","sources":["../../src/renderers/resume-prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resume-prompt.js","sourceRoot":"","sources":["../../src/renderers/resume-prompt.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,kBAAkB,CAAC,KAAwB;IACzD,OAAO;;;EAGP,KAAK,CAAC,IAAI;;;aAGC,KAAK,CAAC,SAAS;gBACZ,KAAK,CAAC,MAAM,IAAI,SAAS;gBACzB,KAAK,CAAC,SAAS;;;EAG7B,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE,4BAA4B,CAAC;;;EAG5D,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,iCAAiC,CAAC;;;EAGhE,KAAK,CAAC,kBAAkB,IAAI,uBAAuB;;;EAGnD,KAAK,CAAC,iBAAiB,IAAI,iCAAiC;;;EAG5D,UAAU,CAAC,KAAK,CAAC,gBAAgB,EAAE,gCAAgC,CAAC;;;EAGpE,KAAK,CAAC,UAAU;;;;;;;;CAQjB,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,KAAe,EAAE,KAAa;IAChD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5E,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -50,11 +50,21 @@ export interface AgentFlightSession {
|
|
|
50
50
|
repoSummary?: string;
|
|
51
51
|
verificationCommands: string[];
|
|
52
52
|
verificationRuns?: VerificationRun[];
|
|
53
|
+
events?: SessionEvent[];
|
|
53
54
|
tools: {
|
|
54
55
|
projscan: ToolAdapterResult;
|
|
55
56
|
agentloopkit: ToolAdapterResult;
|
|
56
57
|
};
|
|
57
58
|
}
|
|
59
|
+
export type SessionEventType = "session_started" | "verification_started" | "verification_passed" | "verification_failed" | "snapshot_created" | "report_generated" | "replay_generated" | "resume_generated" | "doctor_run";
|
|
60
|
+
export interface SessionEvent {
|
|
61
|
+
id: string;
|
|
62
|
+
type: SessionEventType;
|
|
63
|
+
timestamp: string;
|
|
64
|
+
title: string;
|
|
65
|
+
message?: string;
|
|
66
|
+
metadata?: Record<string, unknown>;
|
|
67
|
+
}
|
|
58
68
|
export type RiskCategory = "auth" | "billing/payments" | "database/migrations" | "security/secrets" | "config" | "tests" | "docs" | "frontend" | "backend/api" | "dependencies" | "unknown";
|
|
59
69
|
export type RiskLevel = "low" | "medium" | "high" | "unknown";
|
|
60
70
|
export interface RiskCategorySummary {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
# Dogfooding
|
|
2
|
+
|
|
3
|
+
AgentFlight dogfoods Baseframe Labs tooling from day one.
|
|
4
|
+
|
|
5
|
+
## ProjScan
|
|
6
|
+
|
|
7
|
+
Version used during setup: `4.3.1`.
|
|
8
|
+
|
|
9
|
+
Commands discovered and used:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx projscan@latest --help
|
|
13
|
+
npx projscan@latest --version
|
|
14
|
+
npx projscan@latest init
|
|
15
|
+
npx projscan@latest start --intent "Build AgentFlight, a local-first flight recorder for AI coding agents"
|
|
16
|
+
npx projscan@latest coordinate --format json
|
|
17
|
+
npx projscan@latest preflight --mode before_edit --format json
|
|
18
|
+
npx projscan@latest privacy-check --offline
|
|
19
|
+
npx projscan@latest doctor
|
|
20
|
+
npx projscan@latest start --mode before_commit --intent "Review AgentFlight MVP core commands after package and build setup"
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Evidence:
|
|
24
|
+
|
|
25
|
+
- `projscan init` created `.projscanrc.json`.
|
|
26
|
+
- Initial health was `68/100`, reflecting the fresh repository state.
|
|
27
|
+
- Pre-edit preflight verdict was `proceed`.
|
|
28
|
+
- Offline privacy check confirmed telemetry disabled for the run.
|
|
29
|
+
- Post-core health improved to `94/100` before README completion.
|
|
30
|
+
|
|
31
|
+
## AgentLoopKit
|
|
32
|
+
|
|
33
|
+
Version used during setup: `0.28.7`.
|
|
34
|
+
|
|
35
|
+
Commands discovered and used:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
npx agentloopkit@latest --help
|
|
39
|
+
npx agentloopkit@latest --version
|
|
40
|
+
npx agentloopkit@latest init
|
|
41
|
+
npx agentloopkit@latest doctor
|
|
42
|
+
npx agentloopkit@latest create-task --title "Build AgentFlight MVP" --type feature ...
|
|
43
|
+
npx agentloopkit@latest task status .agentloop/tasks/2026-06-13-build-agentflight-mvp.md in-progress
|
|
44
|
+
npx agentloopkit@latest status
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Evidence:
|
|
48
|
+
|
|
49
|
+
- AgentLoopKit initialized `.agentloop/`, `AGENTS.md`, `AGENTLOOP.md`, and `agentloop.config.json`.
|
|
50
|
+
- Active task: `.agentloop/tasks/2026-06-13-build-agentflight-mvp.md`.
|
|
51
|
+
- The task is marked `in-progress`.
|
|
52
|
+
- `agentloop.config.json` now maps test, lint, typecheck, build, and format checks to npm scripts.
|
|
53
|
+
|
|
54
|
+
## AgentFlight Self-Dogfooding
|
|
55
|
+
|
|
56
|
+
The AgentFlight self-dogfood run was performed after `npm run build` produced `dist/cli.js`.
|
|
57
|
+
|
|
58
|
+
Commands run:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
npm run build
|
|
62
|
+
node dist/cli.js init
|
|
63
|
+
node dist/cli.js start --task "Dogfood AgentFlight MVP"
|
|
64
|
+
node dist/cli.js status
|
|
65
|
+
node dist/cli.js report
|
|
66
|
+
node dist/cli.js replay
|
|
67
|
+
node dist/cli.js resume
|
|
68
|
+
node dist/cli.js doctor
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Evidence:
|
|
72
|
+
|
|
73
|
+
- `node dist/cli.js init` initialized `.agentflight/` and detected ProjScan and AgentLoopKit.
|
|
74
|
+
- `node dist/cli.js start --task "Dogfood AgentFlight MVP"` created session `af-20260613-123923-dogfood-agentflight-mvp`.
|
|
75
|
+
- `status` reported `114` changed files and `high` risk because package/dependency and config files changed.
|
|
76
|
+
- `status` was honest that verification evidence was not recorded in the AgentFlight session.
|
|
77
|
+
- `report` wrote `.agentflight/reports/af-20260613-123923-dogfood-agentflight-mvp-proof.md`.
|
|
78
|
+
- `replay` wrote `.agentflight/reports/af-20260613-123923-dogfood-agentflight-mvp-replay.html`.
|
|
79
|
+
- `resume` wrote `.agentflight/current/resume-prompt.md`.
|
|
80
|
+
- `doctor` reported overall `OK`.
|
|
81
|
+
|
|
82
|
+
Self-dogfooding fixes made:
|
|
83
|
+
|
|
84
|
+
- Fixed ESM CLI entrypoint detection for repository paths with spaces.
|
|
85
|
+
- Fixed git porcelain parsing so untracked filenames are not truncated.
|
|
86
|
+
- Tuned risk categorisation so Markdown policy docs are not flagged as secret material solely because their filenames mention secrets.
|
|
87
|
+
|
|
88
|
+
## Final Tooling Evidence
|
|
89
|
+
|
|
90
|
+
Final commands:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
npm run verify
|
|
94
|
+
npm run format:check
|
|
95
|
+
npx projscan@latest doctor
|
|
96
|
+
npx projscan@latest preflight --mode before_commit --format json
|
|
97
|
+
npx agentloopkit@latest doctor
|
|
98
|
+
npx agentloopkit@latest verify --task .agentloop/tasks/2026-06-13-build-agentflight-mvp.md
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Final results:
|
|
102
|
+
|
|
103
|
+
- npm verification passed with `14` test files and `36` tests.
|
|
104
|
+
- Formatting check passed.
|
|
105
|
+
- ProjScan reported health `100/100`.
|
|
106
|
+
- ProjScan preflight returned verdict `proceed`.
|
|
107
|
+
- AgentLoopKit verification passed and wrote a local report.
|
|
108
|
+
- AgentLoopKit doctor remained `warn` because the worktree is intentionally dirty during MVP construction and generated runtime artifacts exist locally.
|
|
109
|
+
|
|
110
|
+
## v0.2.0 In-Progress Dogfooding
|
|
111
|
+
|
|
112
|
+
The v0.2.0 work uses AgentLoopKit task discipline and ProjScan checkpoints before final release preparation.
|
|
113
|
+
|
|
114
|
+
Commands run so far:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
npx agentloopkit@latest create-task --title "Prepare AgentFlight v0.2.0 verification evidence" --type feature ...
|
|
118
|
+
npx projscan@latest start --mode before_edit --intent "Prepare AgentFlight v0.2.0 verification evidence capture"
|
|
119
|
+
npm test -- tests/core/session.test.ts tests/core/verification.test.ts tests/commands/verify.test.ts
|
|
120
|
+
npm test -- tests/commands/evidence-output.test.ts
|
|
121
|
+
npm test -- tests/core/fs-safe.test.ts
|
|
122
|
+
npm run typecheck
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
Evidence so far:
|
|
126
|
+
|
|
127
|
+
- AgentLoopKit created `.agentloop/tasks/2026-06-13-prepare-agentflight-v0-2-0-verification-evidence.md`.
|
|
128
|
+
- ProjScan reported health `100/100` before the implementation pass.
|
|
129
|
+
- Red tests captured the missing verification evidence model, missing `verify` command, evidence-blind outputs, and doctor writable-check bug.
|
|
130
|
+
- Targeted implementation tests now pass for verification capture and evidence-aware outputs.
|
|
131
|
+
|
|
132
|
+
Built CLI self-dogfood commands:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
npm run build
|
|
136
|
+
node dist/cli.js start --task "Dogfood AgentFlight v0.2.0 verification evidence"
|
|
137
|
+
node dist/cli.js verify -- npm run typecheck
|
|
138
|
+
node dist/cli.js verify -- npm run lint
|
|
139
|
+
node dist/cli.js verify -- npm test
|
|
140
|
+
node dist/cli.js verify -- npm run build
|
|
141
|
+
node dist/cli.js status
|
|
142
|
+
node dist/cli.js report
|
|
143
|
+
node dist/cli.js replay
|
|
144
|
+
node dist/cli.js resume
|
|
145
|
+
node dist/cli.js doctor
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
Built CLI evidence:
|
|
149
|
+
|
|
150
|
+
- Session: `af-20260613-132334-dogfood-agentflight-v0-2-0-verification-evidence`.
|
|
151
|
+
- Verification evidence captured: `npm run typecheck`, `npm run lint`, `npm test`, and `npm run build`.
|
|
152
|
+
- `npm test` passed with `16` test files and `49` tests.
|
|
153
|
+
- `status` reported `4 passed, 0 failed`, no configured verification gaps, and `Ready for review`.
|
|
154
|
+
- `report` and `replay` were generated under `.agentflight/reports/`.
|
|
155
|
+
- `resume` included no configured verification gaps and the scoped-work guardrails.
|
|
156
|
+
- `doctor` reported overall `OK`.
|
|
157
|
+
- No v0.2.0 release, tag, or npm publish was performed.
|
|
158
|
+
|
|
159
|
+
Post-implementation tool checks:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
npx projscan@latest preflight --mode before_commit --format json
|
|
163
|
+
npx projscan@latest start --mode hardening --intent "Review AgentFlight v0.2.0 verification evidence implementation"
|
|
164
|
+
npx agentloopkit@latest status
|
|
165
|
+
npx agentloopkit@latest verify
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
Tool evidence:
|
|
169
|
+
|
|
170
|
+
- ProjScan preflight returned `proceed` with health `100/100`.
|
|
171
|
+
- ProjScan hardening returned health `100/100` with attention requested for the dirty worktree and hotspot review suggestions.
|
|
172
|
+
- AgentLoopKit status found all configured commands and requested verification.
|
|
173
|
+
- AgentLoopKit verification passed and wrote `.agentloop/reports/2026-06-13-15-25-verification-report.md`.
|