Overview
dsh-cache-safe-tool-result
README / EN
Package documentation
Registry summary
dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.
Read the full README on GitHubLIMITATIONS
Known limitations
1. **The geometry is a port, not an import.** The upstream package's default export is a Cordis `Service` that registers itself on construction, so importing it for its `pruneContent` / `PRUNE_MARKER` exports is not side-effect free. `src/truncate.js` is a character-for-character port of the v0.1.5-rc.2 algorithm and is tested for the same geometry. **If upstream changes its algorithm, only that file needs to follow.** 2. **The service contract is a port too.** `pruneSession` / `pruneContent` / `measureContent` / `config` mirror the built-in surface. If a future DSH version adds a method the consumers call, this provider must add it as well. The integration test pins the methods that exist today. 3. **`assistant/attempt` is treated as delivered.** Capacity is lost when a request fails before the provider sees it; correctness is not. 4. **The guard only protects what it can see.** A rewrite performed by a *different* plugin (a compaction strategy that edits history itself, for example) is outside this plugin's control. 5. **Install is two steps by design.** The package install and the profile patch are separate because a bundle patch layer cannot rename a row and cannot see into a preset; the row swap is scripted, dry-runnable and reversible, but it is not zero-touch. 6. **Out of scope**: compaction thresholds, `reasoning_content` or tool-call argument compression, the provider's cache algorithm, and system-prompt or persona tuning. 7. **Nothing here is published to npm.** `package.json` carries `"private": true` deliberately: this is installed from source or GitHub.
