Skip to content

v0.3.0 — image token economy

Latest

Choose a tag to compare

@VincentJiang06 VincentJiang06 released this 16 Aug 15:50
· 1 commit to main since this release

Image token economy (vision routes)

On image-capable routes every attached screenshot keeps billing on every later request. 0.3.0 makes that spend deliberate:

  • imageBudget (default 3): max screenshots attached per session — state is keyed by the session object, so budgets never leak between conversations sharing one plugin instance
  • sha256 dedupe: an unchanged screen is never re-attached (free, disclosed as economy — not failure)
  • exhaustion is honest: past budget you get the geometry table plus the billing rationale, never a silent skip
  • Proven live on kimi-k2.7-code: attach→dedupe→attach→attach→exhausted, exactly 3 image blocks in requests, vision verified from pixels (evidence)

Gate hardening

  • G1 cache window removed: the quick pre-act doctor costs 0.10–0.18s measured — every act now gets a fresh freshness verdict; the "touch a .ts inside the TTL" hole is gone
  • freshnessTtlSeconds removed (dead knob); leftover keys in existing configs are harmless
  • STEP_TIMEOUT mapped to its real remedy (a wedged DevTools render process times out only screenshots — restart DevTools, observed live)

Doctrine (from live evidence)

Native overlays (wx.showLoading, toasts) render in a layer DevTools screencaps do not capture — byte-identical PNGs proved the dedupe right. The skill now teaches: never assert a toast from a screenshot.

51/51 tests; tarball now ships test/ so npm test works in the installed package. Full audit trail in ATTACK-LEDGER.md (R5 + independent pre-tag fix-audit).