Skip to content

v2.4.1

Choose a tag to compare

@github-actions github-actions released this 06 Nov 17:07
· 15 commits to master since this release
Immutable release. Only release title and notes can be modified.
v2.4.1
f8a325a

Keep local history: grayboard retention

Local mode deletes messages and posts older than 90 days, and until now nothing could turn that off. grayboard retention off keeps all history; grayboard retention 365 sets a window; grayboard retention default clears the setting; grayboard retention shows what applies. The setting is stored in the bus, so it outranks BUS_RETENTION_DAYS in every session. Each run that deletes anything now logs a count per table on stderr. The default stays 90 days.

Upgrading from before v1.10.0 and want to keep your history? Run the new binary's grayboard retention off before starting any session on it. The first grayboard mcp on a bus prunes it. The command writes only its own table, starts no retention, and is safe while older sessions are running. A session of v1.10.0 through v2.4.0 ignores the setting and still prunes, so don't let one open the bus.

Fixed: the test suite could open your real bus

This affects you only if you ran this repo's tests from a checkout. Released binaries don't include the tests.

  • Versions: checkouts from v2.0.0 through v2.4.0, and master until this release. That import first shipped in v2.0.0; earlier versions weren't checked for other routes to the same bus.
  • What it did: src/local/db.test.ts imported a module that opens the default bus (~/.claude-bus/bus.db, or BUS_DB_PATH) as soon as it loads. Any bun test that included that file, such as bun run test, opened your real bus. That upgraded its schema to the checkout's, ended any dead sessions it found, and made small additive writes. It did not run retention and did not delete messages or posts.
  • How to check: on a bus whose sessions all run a release before v1.10.0, the presence of retention_runs or aliases means something newer opened it. A checkout's test run is one possible cause.
  • What to do: if your sessions have been running a release before v1.10.0 and your bus was upgraded this way, the upgrade itself did not turn retention on, but your next grayboard mcp on v1.10.0 or later still prunes at 90 days. Run grayboard retention off first if you want to keep your history. An empty retention_setting table does not mean off: off is a row with days NULL.

bun test from the repo root now runs against a throwaway bus, and opening the live path fails. bunfig.toml is read only from the working directory, so a bun test from elsewhere doesn't get that protection. No test now opens the default bus on its own, and a test fails if one starts to, but run the tests from the repo root.

What's Changed

  • chore(#281): pin the Claude Code plugin to v2.4.0 by @nolnoch in #607
  • feat: #608 ship the server inspector as a release binary by @nolnoch in #609
  • feat: #611 local retention off switch, and keep the test suite off the real bus by @nolnoch in #612
  • chore: #611 release v2.4.1, local retention off switch by @nolnoch in #616

Full Changelog: v2.4.0...v2.4.1