Skip to content

v0.9.1-preview

Choose a tag to compare

@ComputerByte ComputerByte released this 05 Jul 00:57

v0.9.1-preview

Focused release: offline cache/data management hardening. No UI, workspace, or composer changes.

Offline cache pruning infrastructure

  • Added OfflineCacheRepository.pruneServerCache(serverId, maxSessions, maxAgeDays, sessionIdToPreserve), scoped entirely to one server.
  • The retention decision is a pure, stateless function (sessionIdsToPrune) rather than embedded SQL logic, so the policy itself is thoroughly unit-tested independent of Room.
  • No schema migration was needed — cachedAtEpochMillis already existed on the cached session/message entities from an earlier version.

Conservative retention policy

  • Keeps the 50 most recently active cached sessions per server.
  • Drops anything older than 90 days.
  • Always preserves an explicitly provided active/current session, when one is known.
  • Messages for retained sessions are kept in full.
  • Cached messages for pruned or otherwise-missing sessions are swept as orphan cleanup.

Startup-only execution

  • Pruning runs once per app process start, scoped to configured servers only.
  • Not tied to session-list refresh, chat send, or any other per-action path.
  • No session is known to be "active" this early in the app's lifecycle, so nothing is preserved by default at startup.

Explicitly unchanged / out of scope

  • Logout behavior is unchanged: cookies may clear, but the offline cache is never cleared on logout.
  • No user-facing cache management UI was added.
  • No changes to custom header encryption (still plaintext DataStore; remains documented future work).
  • Workspace and other control-plane screens (Tasks, Skills, Memory, Profiles, Projects, Insights) remain in-memory only — this release does not add offline support for them.

Docs

  • README's "Current Features" now describes the retention policy; the previous "cache grows unbounded" note was removed since it's no longer accurate. Workspace/control-plane screens are still not claimed as offline-capable.

Debug preview build, not for production distribution.