READMESource: master@8736826f
dsh-session-repair
Scans and repairs DSH session logs (~/.dsh/sessions/**/session.jsonl.zstd).
Fixes
- Single-frame corrupt logs — a session file re-compressed as one zstd frame breaks
the harness at boot (
first frame is not exactly one header line). The plugin rebuilds the log in the canonical multi-frame layout: one JSON line per zstd frame. - Unknown event types — events written by newer harness builds (e.g.
llm/failover) make older harnesses refuse the whole log (SessionFormatUnsupportedError). The plugin marks such events"ignorable": true(the event is kept; the harness skips it).
Tools
session_repair_scan— read-only report of every session log: zstd frame count, line count, header validity, parse errors, unknown event types.session_repair_fix— repairs problem logs (or onesessionId). Backs up each file as<file>.bak-repair-<timestamp>before replacing it, then verifies the rebuilt layout (frames == lines). Restart the harness afterwards.
Requirements
zstdCLI on PATH (Debian/Ubuntu:apt install zstd).- The known-type allowlist is conservative; pass
extraKnownTypesto fix if a type is actually known to the running harness.
Safety
- Never writes in place: backup → rebuild to temp → verify → atomic rename.
- Scan is strictly read-only.
No comments yet. Be the first to write one.