Skip to content

the plugin byte rollup

Choose a tag to compare

@AngelVRodC AngelVRodC released this 07 Sep 23:36
· 36 commits to main since this release

tare tools now answers the question issue #10 asked: how much context a plugin returns, not just which server. Plus the schema/money/window work from #12, which was merged after v0.2.0 but never released.

tools: plugin byte rollup (#13, fixes #10)

  • New plugin dimension in the tools envelope: per-plugin byte volume, recovered from mcp__plugin_<plugin>_<server>__<tool> names that mcpServer already parses — no dependence on the absent attributionPlugin field (#7). Bytes only; tokens/dollars per plugin remain unavailable until that field exists.
  • Plugin names resolve against enabledPlugins in ~/.claude/settings.json (user scope only): <plugin>@<marketplace> entries are stripped to the plugin name, and disabled plugins still count as name authorities — the list is a name authority, not an enabled filter.
  • plugin_<plugin>_<server> splits by longest-first match (the same rule the OpenCode adapter documents), so plugin names containing _ resolve correctly.
  • Names the authority cannot resolve aggregate into one plugin (unresolved) row with a single warning. An absent or malformed settings file omits the dimension and warns — never a zero row.
  • No new flags; the plugin table is never truncated; existing tool/mcp_server rows and schema_version are unchanged.

schema_version, microdollars, window (#12)

  • schema_version on the envelope; all money as integer microdollars instead of floats.
  • Lexical --since/--until window flags with loud validation; events filtered through the window with corpus-wide joins and warnings.

Fixes since v0.2.0

  • fix(transcript): stop counting Workflow journals as transcripts; key the journal classifier on type.
  • fix(attribute): an absent attribution field is reported as unmeasured, not zero.
  • fix(corruption): policy denials split out of the error count.

Verification

  • 176 tests green, gofmt clean, go vet clean, still zero dependencies.
  • Envelope minus the new dimension is byte-identical to the v0.2.0-era baseline on a frozen corpus; tools --json is byte-identical across runs.
  • Full trail in the SDD artifacts for plugin-byte-rollup (explore → proposal → design → spec → tasks → apply → verify → archive).