@autonav/core 1.10.0 → 1.12.0
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/cli/nav-memento.d.ts.map +1 -1
- package/dist/cli/nav-memento.js +3 -0
- package/dist/cli/nav-memento.js.map +1 -1
- package/dist/harness/claude-code-harness.d.ts.map +1 -1
- package/dist/harness/claude-code-harness.js +2 -0
- package/dist/harness/claude-code-harness.js.map +1 -1
- package/dist/harness/types.d.ts +2 -0
- package/dist/harness/types.d.ts.map +1 -1
- package/dist/memento/git-operations.d.ts +30 -0
- package/dist/memento/git-operations.d.ts.map +1 -1
- package/dist/memento/git-operations.js +100 -0
- package/dist/memento/git-operations.js.map +1 -1
- package/dist/memento/index.d.ts +2 -2
- package/dist/memento/index.d.ts.map +1 -1
- package/dist/memento/index.js +2 -2
- package/dist/memento/index.js.map +1 -1
- package/dist/memento/loop.d.ts.map +1 -1
- package/dist/memento/loop.js +146 -34
- package/dist/memento/loop.js.map +1 -1
- package/dist/memento/prompts.d.ts +16 -2
- package/dist/memento/prompts.d.ts.map +1 -1
- package/dist/memento/prompts.js +38 -4
- package/dist/memento/prompts.js.map +1 -1
- package/dist/standup/loop.d.ts.map +1 -1
- package/dist/standup/loop.js +19 -2
- package/dist/standup/loop.js.map +1 -1
- package/dist/standup/standup-protocol.d.ts.map +1 -1
- package/dist/standup/standup-protocol.js +65 -17
- package/dist/standup/standup-protocol.js.map +1 -1
- package/package.json +1 -1
package/dist/memento/loop.js
CHANGED
|
@@ -14,7 +14,8 @@ import * as readline from "node:readline";
|
|
|
14
14
|
import { NavigatorAdapter } from "../adapter/index.js";
|
|
15
15
|
import { loadNavigator } from "../query-engine/index.js";
|
|
16
16
|
import chalk from "chalk";
|
|
17
|
-
import { ensureGitRepo,
|
|
17
|
+
import { ensureGitRepo, getCurrentBranch, getRecentGitLog, getRecentDiff, getLastCommitDiffStats, hasUncommittedChanges, getUncommittedFiles, stageAllChanges, commitChanges, pushBranch, createPullRequest, isGhAvailable, getDefaultBranch, createWorktree, removeWorktree, slugifyBranchName, } from "./git-operations.js";
|
|
18
|
+
import { resolveConfigDir } from "../standup/config.js";
|
|
18
19
|
import { createNavProtocolTools } from "./nav-protocol.js";
|
|
19
20
|
import { buildNavPlanPrompt, buildNavSystemPrompt, buildReviewPrompt, buildFixPrompt, buildFixSystemPrompt, } from "./prompts.js";
|
|
20
21
|
import { MatrixAnimation } from "./matrix-animation.js";
|
|
@@ -203,6 +204,28 @@ function pickMood(phase, toolName, input, state) {
|
|
|
203
204
|
return randomFrom(IMPL_READING);
|
|
204
205
|
return randomFrom(IMPL_READING);
|
|
205
206
|
}
|
|
207
|
+
// ── Verbose tool formatting ──────────────────────────────────────────────────
|
|
208
|
+
/**
|
|
209
|
+
* Format a tool_use event for verbose logging.
|
|
210
|
+
*
|
|
211
|
+
* Shows contextual details: Bash commands, file paths, search patterns.
|
|
212
|
+
*/
|
|
213
|
+
function formatToolEvent(prefix, toolName, input) {
|
|
214
|
+
switch (toolName) {
|
|
215
|
+
case "Bash":
|
|
216
|
+
return `[${prefix}] Bash: ${input.command || ""}`;
|
|
217
|
+
case "Read":
|
|
218
|
+
case "Write":
|
|
219
|
+
case "Edit":
|
|
220
|
+
return `[${prefix}] ${toolName}: ${input.file_path || ""}`;
|
|
221
|
+
case "Glob":
|
|
222
|
+
return `[${prefix}] Glob: ${input.pattern || ""}`;
|
|
223
|
+
case "Grep":
|
|
224
|
+
return `[${prefix}] Grep: ${input.pattern || ""}`;
|
|
225
|
+
default:
|
|
226
|
+
return `[${prefix}] Tool: ${toolName}`;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
206
229
|
// ── Rate limit retry wrapper ────────────────────────────────────────────────
|
|
207
230
|
/**
|
|
208
231
|
* Check if an error message indicates a rate limit
|
|
@@ -483,6 +506,7 @@ ${truncatedDiff}
|
|
|
483
506
|
async function reviewImplementation(codeDirectory, navDirectory, options, animation, verbose, harness) {
|
|
484
507
|
const MAX_REVIEW_ROUNDS = options.maxReviewRounds ?? 10;
|
|
485
508
|
let fixApplied = false;
|
|
509
|
+
const reviewHistory = [];
|
|
486
510
|
for (let round = 1; round <= MAX_REVIEW_ROUNDS; round++) {
|
|
487
511
|
// Stage and get diff
|
|
488
512
|
stageAllChanges({ cwd: codeDirectory });
|
|
@@ -499,6 +523,7 @@ async function reviewImplementation(codeDirectory, navDirectory, options, animat
|
|
|
499
523
|
console.log(`\n[Review] Round ${round}/${MAX_REVIEW_ROUNDS}`);
|
|
500
524
|
}
|
|
501
525
|
// Ask opus to review the diff (single-turn, no tools)
|
|
526
|
+
// Pass review history for anti-oscillation on round 2+
|
|
502
527
|
let reviewResult = "";
|
|
503
528
|
try {
|
|
504
529
|
const reviewSession = harness.run({
|
|
@@ -507,7 +532,7 @@ async function reviewImplementation(codeDirectory, navDirectory, options, animat
|
|
|
507
532
|
systemPrompt: "You are a code reviewer. Be concise and actionable. Never use tools — respond directly.",
|
|
508
533
|
cwd: navDirectory,
|
|
509
534
|
permissionMode: "bypassPermissions",
|
|
510
|
-
}, buildReviewPrompt(diff));
|
|
535
|
+
}, buildReviewPrompt(diff, reviewHistory.length > 0 ? reviewHistory : undefined));
|
|
511
536
|
for await (const event of reviewSession) {
|
|
512
537
|
if (event.type === "text") {
|
|
513
538
|
reviewResult += event.text;
|
|
@@ -528,6 +553,13 @@ async function reviewImplementation(codeDirectory, navDirectory, options, animat
|
|
|
528
553
|
}
|
|
529
554
|
return { lgtm: true, fixApplied };
|
|
530
555
|
}
|
|
556
|
+
// Record this round's issues in history (fixApplied will be set after fix)
|
|
557
|
+
const historyEntry = {
|
|
558
|
+
round,
|
|
559
|
+
issues: reviewResult.trim(),
|
|
560
|
+
fixApplied: "",
|
|
561
|
+
};
|
|
562
|
+
reviewHistory.push(historyEntry);
|
|
531
563
|
// Show issues found
|
|
532
564
|
const bulletLines = reviewResult
|
|
533
565
|
.trim()
|
|
@@ -555,6 +587,8 @@ async function reviewImplementation(codeDirectory, navDirectory, options, animat
|
|
|
555
587
|
animation.start();
|
|
556
588
|
}
|
|
557
589
|
// Ask haiku to fix the issues
|
|
590
|
+
// Pass review history so fixer knows what was already addressed
|
|
591
|
+
let fixerText = "";
|
|
558
592
|
try {
|
|
559
593
|
const fixSession = harness.run({
|
|
560
594
|
model: options.model || "claude-haiku-4-5",
|
|
@@ -562,17 +596,23 @@ async function reviewImplementation(codeDirectory, navDirectory, options, animat
|
|
|
562
596
|
systemPrompt: buildFixSystemPrompt(codeDirectory),
|
|
563
597
|
cwd: codeDirectory,
|
|
564
598
|
permissionMode: "bypassPermissions",
|
|
565
|
-
}, buildFixPrompt(codeDirectory, reviewResult));
|
|
599
|
+
}, buildFixPrompt(codeDirectory, reviewResult, reviewHistory.length > 1 ? reviewHistory.slice(0, -1) : undefined));
|
|
566
600
|
for await (const event of fixSession) {
|
|
567
601
|
if (event.type === "tool_use") {
|
|
568
602
|
if (verbose) {
|
|
569
|
-
console.log(
|
|
603
|
+
console.log(formatToolEvent("Fix", event.name, event.input));
|
|
570
604
|
}
|
|
571
605
|
animation.setLastTool(event.name);
|
|
572
606
|
animation.incrementTurns();
|
|
573
607
|
}
|
|
608
|
+
else if (event.type === "text") {
|
|
609
|
+
fixerText += event.text;
|
|
610
|
+
}
|
|
574
611
|
}
|
|
575
612
|
fixApplied = true;
|
|
613
|
+
// Capture fixer summary for history (first ~200 chars of final text)
|
|
614
|
+
const fixSummary = fixerText.trim().substring(0, 200) || "fixes applied";
|
|
615
|
+
historyEntry.fixApplied = fixSummary;
|
|
576
616
|
}
|
|
577
617
|
catch (err) {
|
|
578
618
|
if (verbose) {
|
|
@@ -605,6 +645,22 @@ async function handleUncommittedChanges(codeDirectory, navDirectory, navSystemPr
|
|
|
605
645
|
console.log(chalk.yellow("\nUncommitted changes detected.\n"));
|
|
606
646
|
console.log(chalk.dim("The memento loop uses git history as context for the navigator."));
|
|
607
647
|
console.log(chalk.dim("Uncommitted changes won't be visible.\n"));
|
|
648
|
+
// Show affected files with status indicators
|
|
649
|
+
const uncommittedFiles = getUncommittedFiles({ cwd: codeDirectory });
|
|
650
|
+
if (uncommittedFiles.length > 0) {
|
|
651
|
+
console.log(chalk.dim(" Affected files:"));
|
|
652
|
+
for (const file of uncommittedFiles) {
|
|
653
|
+
const status = file.substring(0, 2);
|
|
654
|
+
const filePath = file.substring(3);
|
|
655
|
+
const statusColor = status.includes("M") ? chalk.yellow :
|
|
656
|
+
status.includes("A") ? chalk.green :
|
|
657
|
+
status.includes("D") ? chalk.red :
|
|
658
|
+
status.includes("?") ? chalk.blue :
|
|
659
|
+
chalk.dim;
|
|
660
|
+
console.log(` ${statusColor(status)} ${filePath}`);
|
|
661
|
+
}
|
|
662
|
+
console.log("");
|
|
663
|
+
}
|
|
608
664
|
// Show brief diff summary
|
|
609
665
|
const diff = getRecentDiff({ cwd: codeDirectory });
|
|
610
666
|
if (diff) {
|
|
@@ -614,11 +670,26 @@ async function handleUncommittedChanges(codeDirectory, navDirectory, navSystemPr
|
|
|
614
670
|
console.log(chalk.dim(` ${lineCount} lines changed (${chalk.green(`+${addedCount}`)} ${chalk.red(`-${removedCount}`)})`));
|
|
615
671
|
console.log("");
|
|
616
672
|
}
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
673
|
+
// Prompt loop — [v] returns to the menu after showing diff
|
|
674
|
+
let answer = "";
|
|
675
|
+
while (true) {
|
|
676
|
+
console.log(" [c] Commit (auto-generate message)");
|
|
677
|
+
console.log(` [r] Ask ${navName} to review, fix issues, then commit`);
|
|
678
|
+
console.log(" [v] View diff");
|
|
679
|
+
console.log(" [d] Discard changes");
|
|
680
|
+
console.log(" [q] Quit\n");
|
|
681
|
+
answer = await promptUser("Choice [c/r/v/d/q]: ");
|
|
682
|
+
if (answer === "v" || answer === "view") {
|
|
683
|
+
if (diff) {
|
|
684
|
+
console.log("\n" + diff + "\n");
|
|
685
|
+
}
|
|
686
|
+
else {
|
|
687
|
+
console.log(chalk.dim("\n (no diff available)\n"));
|
|
688
|
+
}
|
|
689
|
+
continue;
|
|
690
|
+
}
|
|
691
|
+
break;
|
|
692
|
+
}
|
|
622
693
|
switch (answer) {
|
|
623
694
|
case "c":
|
|
624
695
|
case "commit": {
|
|
@@ -716,7 +787,7 @@ async function queryNavForPlanWithStats(codeDirectory, navDirectory, task, itera
|
|
|
716
787
|
}
|
|
717
788
|
mood.lastError = false;
|
|
718
789
|
if (verbose) {
|
|
719
|
-
console.log(
|
|
790
|
+
console.log(formatToolEvent("Nav", toolName, event.input));
|
|
720
791
|
}
|
|
721
792
|
animation.setMessage(pickMood("nav", toolName, event.input, mood));
|
|
722
793
|
animation.setLastTool(toolName);
|
|
@@ -819,7 +890,7 @@ async function runImplementerAgentWithStats(context, plan, options, animation, h
|
|
|
819
890
|
}
|
|
820
891
|
mood.lastError = false;
|
|
821
892
|
if (verbose) {
|
|
822
|
-
console.log(
|
|
893
|
+
console.log(formatToolEvent("Implementer", toolName, event.input));
|
|
823
894
|
}
|
|
824
895
|
animation.setMessage(pickMood("impl", toolName, event.input, mood));
|
|
825
896
|
animation.setLastTool(toolName);
|
|
@@ -1002,10 +1073,15 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1002
1073
|
ensureGitRepo({ cwd: codeDirectory, verbose });
|
|
1003
1074
|
// Check for uncommitted changes - navigator can't see them!
|
|
1004
1075
|
await handleUncommittedChanges(codeDirectory, navDirectory, navSystemPrompt, navIdentity, options, harness);
|
|
1005
|
-
//
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1076
|
+
// Detect default branch once and compute worktree base path
|
|
1077
|
+
const defaultBranch = getDefaultBranch({ cwd: codeDirectory });
|
|
1078
|
+
const worktreesBase = path.join(resolveConfigDir(), "worktrees");
|
|
1079
|
+
// Track the effective branch and worktree for this run
|
|
1080
|
+
let activeBranch = options.branch;
|
|
1081
|
+
let worktreePath = null;
|
|
1082
|
+
// The working directory for the implementer — starts as codeDirectory,
|
|
1083
|
+
// switches to worktree once created after the first plan
|
|
1084
|
+
let workDir = codeDirectory;
|
|
1009
1085
|
const errors = [];
|
|
1010
1086
|
try {
|
|
1011
1087
|
// Main loop - only max-iterations stops the loop (0 = unlimited = run forever)
|
|
@@ -1019,8 +1095,8 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1019
1095
|
else {
|
|
1020
1096
|
console.log(`\nIteration ${state.iteration}...`);
|
|
1021
1097
|
}
|
|
1022
|
-
// Get git log
|
|
1023
|
-
const gitLog = getRecentGitLog({ cwd:
|
|
1098
|
+
// Get git log from the working directory (worktree after iteration 1)
|
|
1099
|
+
const gitLog = getRecentGitLog({ cwd: workDir, count: 20 });
|
|
1024
1100
|
// Create animation with cumulative stats
|
|
1025
1101
|
const animation = new MatrixAnimation({
|
|
1026
1102
|
message: `Consulting ${navIdentity?.name || "navigator"}...`,
|
|
@@ -1049,11 +1125,12 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1049
1125
|
let implementerSummary = "";
|
|
1050
1126
|
try {
|
|
1051
1127
|
// Query navigator for plan (with rate limit retry)
|
|
1128
|
+
// Navigator always reads from workDir (worktree once created)
|
|
1052
1129
|
let navResult = null;
|
|
1053
1130
|
let navRateLimitAttempt = 0;
|
|
1054
1131
|
while (navResult === null) {
|
|
1055
1132
|
try {
|
|
1056
|
-
navResult = await queryNavForPlanWithStats(
|
|
1133
|
+
navResult = await queryNavForPlanWithStats(workDir, navDirectory, task, state.iteration, maxIterations, navSystemPrompt, navIdentity, gitLog, options, animation, verbose, harness);
|
|
1057
1134
|
}
|
|
1058
1135
|
catch (navError) {
|
|
1059
1136
|
const rateLimitInfo = isRateLimitError(navError);
|
|
@@ -1078,6 +1155,25 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1078
1155
|
}
|
|
1079
1156
|
// Record plan in memory (for PR body)
|
|
1080
1157
|
state.planHistory.push({ iteration: state.iteration, summary: plan.summary });
|
|
1158
|
+
// Create worktree after first plan returns
|
|
1159
|
+
if (state.iteration === 1 && !worktreePath) {
|
|
1160
|
+
const branchName = activeBranch || slugifyBranchName(plan.summary);
|
|
1161
|
+
activeBranch = branchName;
|
|
1162
|
+
worktreePath = path.join(worktreesBase, branchName);
|
|
1163
|
+
// Ensure worktrees base directory exists
|
|
1164
|
+
fs.mkdirSync(worktreesBase, { recursive: true });
|
|
1165
|
+
if (verbose) {
|
|
1166
|
+
console.log(`[Memento] Creating worktree: ${worktreePath}`);
|
|
1167
|
+
console.log(`[Memento] Branch: ${branchName} (from ${defaultBranch})`);
|
|
1168
|
+
}
|
|
1169
|
+
createWorktree(codeDirectory, worktreePath, branchName, defaultBranch);
|
|
1170
|
+
workDir = worktreePath;
|
|
1171
|
+
if (!verbose) {
|
|
1172
|
+
animation.stop();
|
|
1173
|
+
console.log(chalk.dim(` └─ Branch: ${branchName}`));
|
|
1174
|
+
animation.start();
|
|
1175
|
+
}
|
|
1176
|
+
}
|
|
1081
1177
|
// Show what the implementer will be working on (truncate to ~60 chars)
|
|
1082
1178
|
const shortSummary = plan.summary.length > 60
|
|
1083
1179
|
? plan.summary.substring(0, 57) + "..."
|
|
@@ -1100,9 +1196,9 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1100
1196
|
animation.setMessage("Implementer implementing...");
|
|
1101
1197
|
animation.setTokens(0);
|
|
1102
1198
|
animation.resetTurns();
|
|
1103
|
-
// Run implementer to implement the plan
|
|
1199
|
+
// Run implementer to implement the plan (in worktree)
|
|
1104
1200
|
// Rate limit retries are handled internally by runImplementerAgentWithStats
|
|
1105
|
-
const implementerResult = await runImplementerAgentWithStats({ codeDirectory, task }, plan, {
|
|
1201
|
+
const implementerResult = await runImplementerAgentWithStats({ codeDirectory: workDir, task }, plan, {
|
|
1106
1202
|
verbose,
|
|
1107
1203
|
model: options.model,
|
|
1108
1204
|
maxTurns: options.maxTurns,
|
|
@@ -1125,22 +1221,22 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1125
1221
|
errors.push(`Iteration ${state.iteration}: Implementer failed - ${truncated}`);
|
|
1126
1222
|
// Continue to next iteration - navigator can see the state and adjust
|
|
1127
1223
|
}
|
|
1128
|
-
// Phase 3: Review
|
|
1224
|
+
// Phase 3: Review (in worktree)
|
|
1129
1225
|
// Animation is still running — reviewImplementation manages stop/start internally
|
|
1130
|
-
await reviewImplementation(
|
|
1226
|
+
await reviewImplementation(workDir, navDirectory, options, animation, verbose, harness);
|
|
1131
1227
|
}
|
|
1132
1228
|
finally {
|
|
1133
1229
|
if (!verbose) {
|
|
1134
1230
|
animation.stop();
|
|
1135
1231
|
}
|
|
1136
1232
|
}
|
|
1137
|
-
// Phase 4: Commit with LLM-generated message
|
|
1138
|
-
stageAllChanges({ cwd:
|
|
1139
|
-
const commitMessage = await generateCommitMessage(
|
|
1140
|
-
const commitHash = commitChanges(commitMessage, { cwd:
|
|
1233
|
+
// Phase 4: Commit with LLM-generated message (in worktree)
|
|
1234
|
+
stageAllChanges({ cwd: workDir });
|
|
1235
|
+
const commitMessage = await generateCommitMessage(workDir, harness);
|
|
1236
|
+
const commitHash = commitChanges(commitMessage, { cwd: workDir, verbose });
|
|
1141
1237
|
// Get diff stats from the commit
|
|
1142
1238
|
if (commitHash) {
|
|
1143
|
-
const diffStats = getLastCommitDiffStats({ cwd:
|
|
1239
|
+
const diffStats = getLastCommitDiffStats({ cwd: workDir });
|
|
1144
1240
|
state.stats.linesAdded += diffStats.linesAdded;
|
|
1145
1241
|
state.stats.linesRemoved += diffStats.linesRemoved;
|
|
1146
1242
|
}
|
|
@@ -1164,15 +1260,15 @@ export async function runMementoLoop(codeDirectory, navDirectory, task, options,
|
|
|
1164
1260
|
console.log(`\nMax iterations (${maxIterations}) reached.`);
|
|
1165
1261
|
// Handle PR creation if requested
|
|
1166
1262
|
let prUrl;
|
|
1167
|
-
if (pr &&
|
|
1263
|
+
if (pr && activeBranch) {
|
|
1168
1264
|
if (!isGhAvailable()) {
|
|
1169
1265
|
console.warn("\nWarning: gh CLI not available. Cannot create PR. Install and authenticate gh CLI.");
|
|
1170
1266
|
}
|
|
1171
1267
|
else {
|
|
1172
1268
|
console.log("\nCreating pull request...");
|
|
1173
|
-
// Push branch
|
|
1174
|
-
pushBranch(
|
|
1175
|
-
cwd:
|
|
1269
|
+
// Push branch (from worktree where commits live)
|
|
1270
|
+
pushBranch(activeBranch, {
|
|
1271
|
+
cwd: workDir,
|
|
1176
1272
|
verbose,
|
|
1177
1273
|
setUpstream: true,
|
|
1178
1274
|
});
|
|
@@ -1188,7 +1284,7 @@ ${state.planHistory.map((h) => `- **${h.iteration}**: ${h.summary}`).join("\n")}
|
|
|
1188
1284
|
---
|
|
1189
1285
|
*Created by autonav memento loop*`;
|
|
1190
1286
|
prUrl = createPullRequest({
|
|
1191
|
-
cwd:
|
|
1287
|
+
cwd: workDir,
|
|
1192
1288
|
verbose,
|
|
1193
1289
|
title: task.length > 70 ? `${task.substring(0, 67)}...` : task,
|
|
1194
1290
|
body: prBody,
|
|
@@ -1202,7 +1298,7 @@ ${state.planHistory.map((h) => `- **${h.iteration}**: ${h.summary}`).join("\n")}
|
|
|
1202
1298
|
iterations: state.iteration,
|
|
1203
1299
|
completionMessage: state.completionMessage,
|
|
1204
1300
|
prUrl,
|
|
1205
|
-
branch:
|
|
1301
|
+
branch: activeBranch || getCurrentBranch({ cwd: workDir }),
|
|
1206
1302
|
durationMs,
|
|
1207
1303
|
errors: errors.length > 0 ? errors : undefined,
|
|
1208
1304
|
};
|
|
@@ -1214,10 +1310,26 @@ ${state.planHistory.map((h) => `- **${h.iteration}**: ${h.summary}`).join("\n")}
|
|
|
1214
1310
|
return {
|
|
1215
1311
|
success: false,
|
|
1216
1312
|
iterations: state.iteration,
|
|
1217
|
-
branch:
|
|
1313
|
+
branch: activeBranch || getCurrentBranch({ cwd: workDir }),
|
|
1218
1314
|
durationMs,
|
|
1219
1315
|
errors,
|
|
1220
1316
|
};
|
|
1221
1317
|
}
|
|
1318
|
+
finally {
|
|
1319
|
+
// Clean up worktree on exit
|
|
1320
|
+
if (worktreePath) {
|
|
1321
|
+
if (verbose) {
|
|
1322
|
+
console.log(`[Memento] Cleaning up worktree: ${worktreePath}`);
|
|
1323
|
+
}
|
|
1324
|
+
try {
|
|
1325
|
+
removeWorktree(codeDirectory, worktreePath);
|
|
1326
|
+
}
|
|
1327
|
+
catch (err) {
|
|
1328
|
+
if (verbose) {
|
|
1329
|
+
console.log(chalk.yellow(`[Memento] Worktree cleanup failed: ${err instanceof Error ? err.message : err}`));
|
|
1330
|
+
}
|
|
1331
|
+
}
|
|
1332
|
+
}
|
|
1333
|
+
}
|
|
1222
1334
|
}
|
|
1223
1335
|
//# sourceMappingURL=loop.js.map
|
package/dist/memento/loop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/memento/loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/memento/loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,14 @@
|
|
|
11
11
|
import { type NavigatorIdentity } from "@autonav/communication-layer";
|
|
12
12
|
import type { ImplementationPlan } from "./types.js";
|
|
13
13
|
export type { NavigatorIdentity };
|
|
14
|
+
/**
|
|
15
|
+
* A single round of review history for anti-oscillation context.
|
|
16
|
+
*/
|
|
17
|
+
export interface ReviewRound {
|
|
18
|
+
round: number;
|
|
19
|
+
issues: string;
|
|
20
|
+
fixApplied: string;
|
|
21
|
+
}
|
|
14
22
|
/**
|
|
15
23
|
* Minimal context passed to nav prompt (no persisted state)
|
|
16
24
|
*/
|
|
@@ -44,12 +52,18 @@ export declare function buildImplementerSystemPrompt(codeDirectory: string): str
|
|
|
44
52
|
/**
|
|
45
53
|
* Build the prompt for the reviewer (navigator/opus) to review a diff.
|
|
46
54
|
* Single-turn, no tools — just read the diff and respond.
|
|
55
|
+
*
|
|
56
|
+
* When reviewHistory is provided, previous rounds are included to prevent
|
|
57
|
+
* oscillation (reviewer contradicting its own earlier feedback).
|
|
47
58
|
*/
|
|
48
|
-
export declare function buildReviewPrompt(diff: string): string;
|
|
59
|
+
export declare function buildReviewPrompt(diff: string, reviewHistory?: ReviewRound[]): string;
|
|
49
60
|
/**
|
|
50
61
|
* Build the prompt for the fixer (implementer/haiku) to fix review issues.
|
|
62
|
+
*
|
|
63
|
+
* When reviewHistory is provided, previous rounds are included so the fixer
|
|
64
|
+
* knows what was already addressed and avoids reverting earlier fixes.
|
|
51
65
|
*/
|
|
52
|
-
export declare function buildFixPrompt(codeDirectory: string, reviewResult: string): string;
|
|
66
|
+
export declare function buildFixPrompt(codeDirectory: string, reviewResult: string, reviewHistory?: ReviewRound[]): string;
|
|
53
67
|
/**
|
|
54
68
|
* Build the system prompt for the fixer agent
|
|
55
69
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/memento/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC;;GAEG;AACH,UAAU,gBAAgB;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,MAAM,EACd,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAC3C,MAAM,CAoDR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAqBpE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,kBAAkB,GACvB,MAAM,CA4BR;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAsB1E;AAED
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/memento/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,UAAU,gBAAgB;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,MAAM,EACd,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAC3C,MAAM,CAoDR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAqBpE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,kBAAkB,GACvB,MAAM,CA4BR;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAsB1E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAuCrF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,WAAW,EAAE,GAC5B,MAAM,CAiCR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAgBlE"}
|