You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Audit finding: these tables were written with a direct
fs.writeFileSync, so a crash mid-write truncates the whole file and the
loader's loadJson swallows the parse error into {} — total loss, and for
capability a truncated revoked.json silently revives a revoked token.
Each plugin now writes to a unique temp file in the same dir and
renameSync's over the target (atomic on one fs); temp cleaned up on
failure, no stale .tmp left. Does NOT address the read-modify-write
TOCTOU (out of scope, noted). Regression tests assert valid on-disk JSON
and no leftover .tmp after a persisting op.
0 commit comments