feat(FN-925): add memoryEnabled setting with UI toggle and engine integration

- Add memoryEnabled boolean setting to core types and default settings
- Add Memory section toggle to SettingsModal dashboard UI
- Integrate memoryEnabled check in executor and triage engine prompts
- Add tests for settings UI, executor prompt behavior, and triage prompt behavior
- Update SettingsModal section count test for the new Memory section
This commit is contained in:
gsxdsm
2026-04-04 15:06:57 -07:00
parent 3d1cfda517
commit ea4fe6fe0f
8 changed files with 198 additions and 4 deletions

View File

@@ -2224,6 +2224,17 @@ git log --oneline
commandsSection = "\n" + lines.join("\n") + "\n";
}
// Build project memory section from settings
// When enabled, agents consult and update .fusion/memory.md for durable project learnings.
// Actual memory instructions will be injected by FN-810; this placeholder establishes
// the conditional integration point.
const memoryEnabled = settings?.memoryEnabled !== false;
let memorySection = "";
if (memoryEnabled && rootDir) {
// TODO(FN-810): Call buildMemoryInstructions(rootDir) to populate memory context
memorySection = "";
}
// Build steering comments section (last 10 comments only to avoid context bloat)
let steeringSection = "";
if (task.steeringComments && task.steeringComments.length > 0) {
@@ -2253,7 +2264,7 @@ ${task.dependencies.length > 0 ? `Dependencies: ${task.dependencies.join(", ")}`
## PROMPT.md
${task.prompt}
${attachmentsSection}${commandsSection}${progressSection}${steeringSection}
${attachmentsSection}${commandsSection}${memorySection}${progressSection}${steeringSection}
## Review level: ${reviewLevel}
${reviewLevel === 0 ? "No reviews required. Implement directly." : ""}