Bug report for danielmiessler/LifeOS 7.40.4
Drafted for Brett to review and post. The analysis below was done by Janet, a digital assistant; the findings are machine-derived and reproducible, and each cites the file and line it came from. Version tested: v7.40.4, tag be9e8ef.
Doctor reports a check it could not run as passing
Where: LIFEOS/TOOLS/Doctor.ts:309-311
The identity-placeholder check wraps its body in try/catch, and the catch returns ok: true:
} catch (e) {
return { ok: true, detail: `check unavailable (${String(e).split('\n')[0]}) — InstallEngine not present on this tree` };
}
When the check throws, the doctor prints a green tick with "check unavailable" in the detail line. An operator scanning the output sees a pass.
Reproduce: run Doctor.ts where InstallEngine.ts is not resolvable from the configured root. Observed:
✅ Identity placeholders rendered — live
check unavailable (ResolveMessage: Cannot find module '.../Tools/InstallEngine.ts') — InstallEngine not present on this tree
Why it matters: the case that triggers it is a config root pointing somewhere the tool did not expect, which is exactly the situation where an operator most needs an honest answer. It is also adjacent to #1974: if the runtime is resolving the wrong root, this check goes green rather than flagging it.
Suggested fix: return a third state, or ok: false. An unavailable check is not a passing check. If green is retained deliberately for tolerance on partial trees, a distinct marker (⚠️ rather than ✅) would keep the output honest at a glance.
Two further findings from the same session turned out to be already reported and are not duplicated here: runtime tools hardcoding ~/.claude (#1974) and Setup step 9d's substitution rewriting InstallEngine's own IDENTITY_PLACEHOLDERS (#1993). Both were independently reproduced on 7.40.4 before those issues were found; the existing reports are more complete than ours, and #1993 additionally catches an empty-string voice-ID case we had missed.
Bug report for danielmiessler/LifeOS 7.40.4
Drafted for Brett to review and post. The analysis below was done by Janet, a digital assistant; the findings are machine-derived and reproducible, and each cites the file and line it came from. Version tested: v7.40.4, tag be9e8ef.
Doctor reports a check it could not run as passing
Where:
LIFEOS/TOOLS/Doctor.ts:309-311The identity-placeholder check wraps its body in try/catch, and the catch returns
ok: true:When the check throws, the doctor prints a green tick with "check unavailable" in the detail line. An operator scanning the output sees a pass.
Reproduce: run
Doctor.tswhereInstallEngine.tsis not resolvable from the configured root. Observed:Why it matters: the case that triggers it is a config root pointing somewhere the tool did not expect, which is exactly the situation where an operator most needs an honest answer. It is also adjacent to #1974: if the runtime is resolving the wrong root, this check goes green rather than flagging it.
Suggested fix: return a third state, or⚠️ rather than ✅) would keep the output honest at a glance.
ok: false. An unavailable check is not a passing check. If green is retained deliberately for tolerance on partial trees, a distinct marker (Two further findings from the same session turned out to be already reported and are not duplicated here: runtime tools hardcoding
~/.claude(#1974) and Setup step 9d's substitution rewritingInstallEngine's ownIDENTITY_PLACEHOLDERS(#1993). Both were independently reproduced on 7.40.4 before those issues were found; the existing reports are more complete than ours, and #1993 additionally catches an empty-string voice-ID case we had missed.