Skip to content

fix(recall): show auto-recall failures - #59

Merged
noctuid merged 1 commit into
mainfrom
ui-auto-recall-errors
Sep 14, 2026
Merged

noctuid merged 1 commit into
mainfrom
ui-auto-recall-errors

Conversation

@noctuid

@noctuid noctuid commented Sep 14, 2026

Copy link
Copy Markdown
Owner

Surface auto-recall errors through TUI warning notifications instead of relying on console output that disappears during redraw. Continue to inject no memory context when recall fails.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Empty-string recall errors may not produce warnings, and failed-context clearing lacks integration coverage.

Pull request overview

This pull request surfaces auto-recall failures as TUI warnings while preventing failed recalls from injecting memory context.

Changes:

  • Propagates auto-recall errors.
  • Displays failures through warning notifications.
  • Updates tests and changelog documentation.
File summaries
File Summary
tests/recall.test.ts Updates recall error-result expectations.
tests/bootstrap.test.ts Tests warning notifications.
src/index.ts Propagates and displays auto-recall failures.
CHANGELOG.md Documents the fix.
Review details

Suppressed comments (2)

src/index.ts:663

  • This truthiness check drops failures whose message is an empty string: the RecallClient contract permits error: "", and the catch path also returns Error("").message unchanged. In that case the recall is cleared but no warning is shown, contrary to the goal of surfacing every auto-recall failure; discriminate on undefined instead.
    if (result?.error) {

tests/bootstrap.test.ts:3521

  • This integration test only verifies the warning. The failure path also clears the module-level lastRecallMessage, which the separate context handler later consumes; without invoking that handler here, a regression could still inject stale or new memory context while this test passes. Please assert that the context result contains no recall message after the failed before_agent_start (ideally after first seeding a successful recall).
    const ctx = createMockContext();
    await pi.handlers.get("before_agent_start")!(
      { type: "before_agent_start", prompt: "Hello" },
      ctx
    );
  • Files reviewed: 4/4 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Surface auto-recall errors through TUI warning notifications instead
of relying on console output that disappears during redraw. Continue
to inject no memory context when recall fails.
@noctuid
noctuid force-pushed the ui-auto-recall-errors branch from 5d10ef7 to d482811 Compare September 14, 2026 23:45
@noctuid
noctuid merged commit c565993 into main Sep 14, 2026
2 checks passed
@noctuid
noctuid deleted the ui-auto-recall-errors branch September 14, 2026 23:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants