From the full verification sweep at ed99c35cd (case E36_badsettings_p: -p hi with a malformed --settings file):
node rc=[1] | perry rc=[1]
ISSUES: HOME-PATHS-ONLY-IN-NODE: ['.claude/projects/<CWDKEY>/<UUID>.jsonl']
Exit codes and output match — but on the settings-error path node still records the session transcript and perry records nothing. Same family as the #9421 root cause (an error path where the transcript machinery is skipped or its write dies before the directory exists), but on the settings-error branch rather than --bare. Since #9491 made fs errors throw, check first whether perry's writer runs and throws here (swallowed higher up) or is never reached.
Also from the same sweep, one persisting item to re-check against #9487's closure: B60_install_badtarget still exits 0 under perry where node exits 1 — either the fix missed the install subpath or a train dropped a hunk; whoever takes this issue can verify both in one session.
Repro: harness case E36_badsettings_p in /root/claude-ccstress/; tip binary /root/claude-roots/app_c08.
From the full verification sweep at
ed99c35cd(caseE36_badsettings_p:-p hiwith a malformed--settingsfile):Exit codes and output match — but on the settings-error path node still records the session transcript and perry records nothing. Same family as the #9421 root cause (an error path where the transcript machinery is skipped or its write dies before the directory exists), but on the settings-error branch rather than
--bare. Since #9491 made fs errors throw, check first whether perry's writer runs and throws here (swallowed higher up) or is never reached.Also from the same sweep, one persisting item to re-check against #9487's closure:
B60_install_badtargetstill exits 0 under perry where node exits 1 — either the fix missed theinstallsubpath or a train dropped a hunk; whoever takes this issue can verify both in one session.Repro: harness case
E36_badsettings_pin/root/claude-ccstress/; tip binary/root/claude-roots/app_c08.