rohitg00/agentmemory · warning
${d.id} still failing after fix.
Error message
${d.id} still failing after fix. What it means
Warning printed by `agentmemory doctor --all` when a diagnostic's automatic fix ran without reporting failure (`r.ok === true`) but the subsequent re-check (`d.check(ctx)`) still returns not-ok. It means the fix was applied but did not resolve the underlying condition.
Source
Thrown at src/cli.ts:2685
const status = await d.check(ctx);
if (status.ok) {
p.log.success(`${d.id} ✓${status.detail ? ` (${status.detail})` : ""}`);
continue;
}
failed++;
p.log.warn(`${d.id} ✗ ${status.detail ?? ""}`.trim());
p.log.info(`why: ${d.fixPreview}`);
if (d.manualOnly) {
p.log.info(`(manual fix only — see "${d.id}" docs)`);
}
if (applyAll) {
const r = await applyFixWithReport(d, ctx, false);
if (r.ok) fixed++;
// Re-check only this diagnostic.
const after = await d.check(ctx);
if (!after.ok) p.log.warn(`${d.id} still failing after fix.`);
continue;
}
// Interactive prompt loop — allow [?] More info without leaving the check.
while (true) {
const action = await askFixAction(d);
if (action === "fix") {
const r = await applyFixWithReport(d, ctx, false);
if (r.ok) {
const after = await d.check(ctx);
if (after.ok) {
fixed++;
} else {
p.log.warn(`${d.id} still failing after fix: ${after.detail ?? ""}`);
}
}
break;
}View on GitHub (pinned to e04ba88819)
Solutions
- Note the diagnostic id and run `agentmemory doctor` again — some checks pass only after a restart or later fix
- Choose '? More info' to read the diagnostic's manual guidance
- Fix the underlying condition manually (the fix may only partially address it)
- Report the diagnostic as buggy if its fix claims ok but never satisfies its own check
Example fix
// before $ agentmemory doctor --all daemon-reachable ✗ ... daemon-reachable still failing after fix. // after $ iii-engine start # or start the daemon $ agentmemory doctor daemon-reachable ✓
Defensive patterns
Strategy: retry
Validate before calling
null
Type guard
null
Try / catch
null
Prevention
- Restart the daemon after applying fixes before judging results
- Prefer interactive doctor over --all so you can read 'More info' per diagnostic
- Treat fix-ok-but-check-failing diagnostics as bugs and report them
- Re-run doctor a second time to confirm idempotent fixes
When it happens
Trigger: Running `doctor --all` (or accepting the Fix action) for a diagnostic whose fix is partial, depends on an external state that hasn't settled, or whose check verifies more than the fix repairs.
Common situations: Fix writes config but the daemon must be restarted for the check to pass; check depends on network reachability while the fix only edited local settings; race between fix and re-check.
Related errors
- ${d.id} still failing after fix: ${after.detail ?? ""}
- ${d.id} ✗ ${status.detail ?? ""}
- POST ${url} failed: ${res.status} ${res.statusText}${suffix}
- agentmemory: could not locate bundled plugin/ directory (sea
- observe failed for ${obs.toolName}: ${res.status} ${res.stat
AI-assisted analysis of rohitg00/agentmemory@e04ba88819 (2026-08-30).
Data as JSON: /api/errors/361858e7ce86083f.
Report an issue: GitHub.