A cbor+zstd log management tool (grep, extract, merge, split, repack, redact)
cbor zstd aperture logs

Add Markdown thread renderer (thread --format md) master

New src/markdown_render.rs module. Mirrors builtin.rs's linear path-flattening approach: each root-to-leaf path (thread::all_paths) becomes one ### section; branch points are separate paths. This is the only representation that survives real data -- 2026-06-21 alone has a depth-749 tree (752 nodes) with 20/21 trees branching, far beyond Markdown's 6-level heading/list cap. (Headings-per-turn and nested-list schemes were rejected on this basis.) User messages render as blockquotes (verbatim); system/assistant as raw markdown body; tool calls/results as fenced code blocks. Reuses render::{best_record_id, model_of, tool_event_records} and thread::all_paths -- no new walking/attribution logic. Branch-representation decision recorded in ROADMAP (Phase 2 item 3 resolved). Verified on the depth-749 monster (89,290-line output, no panic). README thread section gains an md example and the Formats list adds md. 164 tests (was 158; +6 markdown integration), 1 ignored. Co-Authored-By: GLM-5.2 <glm-5.2@z.ai>


Author Chris Lee Co-author GLM-5.2 Date Commit 4cf91e58 Parent 20dfe020 Change ID xopyxsup