Releases: gordonlu/dsh-context-lens
Releases · gordonlu/dsh-context-lens
Release list
v0.2.2 — health recovery, signal-first list, scroll fix
dsh-context-lens v0.2.2
Request Context Profiler for DeepSeek Harness — see what changed between model requests, and how cache reuse changed with it.
Highlights
- Cache health recovers: the health card turns green again once 20 requests pass without a cache drop (windowed, not sticky-red); cumulative drop counts stay on their own card
- Second list filter: "hide surface-only growth" (on by default) — the default view now shows real events (drops, structural changes, failures) instead of context-growth noise; uncheck to see context growth again
- View-switch scroll fixed: switching back to the lens lands where you left off; it only jumps to the latest when the conversation actually grew while you were away
- Cache impact in %: the impact readout now shows +10% / -30% instead of "10 pt" — one glance, no unit confusion
Install
dsh plugin --profile web add dsh-context-lensCompatibility
Verified against DeepSeek Harness mainline: CI runs typecheck + 65 tests + build on every push, plus a nightly compatibility job against a fresh harness checkout (real-package server & client-ABI smokes).
Changes in 0.2.2
- Health card:
lastDropOrdinaltracked in projection state (schema v2, old snapshots default to 0); a drop alarms only within the last 20 requests, then recovers with a "no drops in the last N requests" meta - List:
surfaceOnly()= grew but structurally unchanged; combined with the existing hide-unchanged filter, default view is pure signal - Scroll: on view re-entry, scroll-to-bottom happens only when node count grew; otherwise the official chatScroll restore keeps your position
- Units: cache-impact delta shows
%with explicit sign (zh prose keeps 个百分点); en strings switch from "pts" to "%"
v0.2.1 — consistency round
dsh-context-lens v0.2.1
Request Context Profiler for DeepSeek Harness — see what changed between model requests, and how cache reuse changed with it.
Highlights
- Change-first view: session status strip, newest-first one-line request list with global ordinals + change tags + "hide unchanged" filter, comparison panel vs the previous request, technical-details fold
- Pure observer — zero prompt injection, zero extra model calls, no KV simulation
- zh/en
Install
dsh plugin --profile web add dsh-context-lensCompatibility
Verified against DeepSeek Harness mainline (rc.5): server smoke (55 assertions over real harness packages), client-loader ABI smoke (12 assertions), and a full GUI E2E (29 assertions, second web instance + mock LLM + real browser).
Changes in 0.2.1
- Hide-unchanged filter no longer hides significant context growth — the tag semantics and the filter now share one definition (stable = hideable; anything else = interesting)
- Retry semantics verified against mainline: retries re-dispatch inside the same turn/step (one record); a defensive test covers the fresh-turn shape the llm-retry README describes
./invariantexport completed (official package contract) and smoke-mounted against the real invariants serviceschemaBytesis UTF-8 byte length (was JS string length; stateVersion 1 → 2)- npm metadata (repository / keywords / engines), README Quick Start, doc drift cleanup (v0.2, 64 tests, nine vendored packages)
- CI: full gate on push/PR + nightly compatibility job (clones DeepSeek Harness, runs server + client ABI smokes)

