Repository navigation
Peritus v0.1.6
Fixed
- Preserve literal DSML marker and tag text inside OpenCode tool arguments. Reject competing structured preludes and duplicate JSON keys before converting nested arguments into inert host tool calls.
- Read private traces one selected record at a time, skip irrelevant payloads from their headers, and build only the requested human or JSON representation. Output spooling in the normal Peritus cache preserves complete JSON/error responses without retaining the entire trace or output in memory or using the system's potentially RAM-backed temporary directory.
Real testing
- Passed 108 public OpenCode-adapter wire replays, including 24 seeded generated literal inputs, Zen/Go routing, valid JSON and DSML, malformed payload recovery, duplicate-key rejection, and tool selection/count restrictions. The external vendor supplied a deterministic wire fixture; no live inference or host tool execution is claimed.
- Compared the actual old and new trace CLI across human/JSON and complete/extension-only output. All 24 RSS measurements passed; a roughly 64 MiB trace's JSON-output peak dropped from 342 MiB to 18 MiB. Corruption, torn tails, unavailable temporary storage, actual captured provider events, a filtered sparse 10 GiB record, and public-reader append/reopen behavior passed.
Compatibility and packages
This patch resolves the four confirmed parser and trace-reader findings recorded in v0.1.5. Existing run and trace encodings remain compatible. Peak process memory follows the largest selected trace record; selected output uses automatically removed files in the normal Peritus cache.
Native packages include the client, daemon, TUI and sandbox helper for Linux, macOS and Windows on x86-64 and ARM64. Each includes checksums, inventory, SBOM and provenance. Unix packages additionally exercise actual installation and offline terminal startup. The Deep Research plugin remains separately distributed with an unchanged wire contract.
Native candidate readback
The downloaded Linux x86-64 package reports 0.1.6 and processed a roughly 64 MiB trace through the actual JSON CLI at 12.2 MiB peak RSS. Extension filtering, operation with an unusable system temporary directory, and cache-spool cleanup also passed. This supplements the source-level real-interface campaign.