Source: external review report, 2026-08-24 (severity: Low)
Problem
Feature-detection results (e.g. SHELLFRAME_TPUT_OK=0) are cached in .toolrc.local. Once cached, they persist after the environment changes — install tput later and shellframe keeps running in the degraded path until someone knows to delete the file.
What it needs
Pick one:
- Invalidate on a cheap fingerprint — store
$BASH_VERSION, $TERM, and command -v tput path alongside the flags; re-detect when any differ
- TTL — re-detect if the file is older than N days
- Escape hatch at minimum —
SHELLFRAME_REDETECT=1 env var and a documented rm .toolrc.local in README troubleshooting
Recommend fingerprint + documented escape hatch.
Tests
- Unit: write a cache with a different
TERM, source the loader → re-detection runs
Effort: XS
Deps: none
Source: external review report, 2026-08-24 (severity: Low)
Problem
Feature-detection results (e.g.
SHELLFRAME_TPUT_OK=0) are cached in.toolrc.local. Once cached, they persist after the environment changes — installtputlater and shellframe keeps running in the degraded path until someone knows to delete the file.What it needs
Pick one:
$BASH_VERSION,$TERM, andcommand -v tputpath alongside the flags; re-detect when any differSHELLFRAME_REDETECT=1env var and a documentedrm .toolrc.localin README troubleshootingRecommend fingerprint + documented escape hatch.
Tests
TERM, source the loader → re-detection runsEffort: XS
Deps: none