Skip to content

v0.1.1 — rough edges from real-world testing

Choose a tag to compare

@garniergeorges garniergeorges released this 24 Apr 01:52
· 25 commits to main since this release
bb42eea

v0.1.1 — rough edges from real-world testing

First real-world testing of claude-presence exposed six concrete issues when two Claude Code sessions ran side-by-side and dialogued via the broadcast inbox for 20 minutes. All six are fixed in this release.

Fixes

  • Session TTL relaxed from 2 min to 10 min. The old 2-min TTL required an aggressive heartbeat cron to survive idle periods. Both sessions got pruned simultaneously, the next resource_claim failed with a cryptic FOREIGN KEY constraint failed.
  • resource_claim auto-recreates pruned sessions. Instead of crashing with an FK error, the claim silently re-registers the session from the call payload and returns session_recreated: true so the caller knows.
  • session_heartbeat returns structured errors. Was: bare ok: false when session unknown. Now: { ok: false, reason: "session_not_found", advice: "..." }. Also accepts optional recreate_project/branch/intent to re-register on the same call.
  • session_unregister also returns explicit reasons ({ removed, reason } instead of bare boolean).
  • read_inbox exposes unread/total counters. Was: just the message array — rapid re-reads looked empty even when new messages had arrived. Now: { messages, unread_total, total }, computed before marking-as-read. The /inbox slash command surfaces the counters.
  • New "Security & trust model" section in both READMEs. Documents the cooperative-local-sessions use case, self-declared session IDs, advisory-not-enforced locks. Flags future hardening (deriving from_session from MCP connection context).

Also in this release

  • Tests: 25 → 29. All passing in ~1.3 s locally; CI green on Ubuntu + macOS × Node 18/20/22.
  • Branch protection on main now requires CI to pass and linear history.
  • /broadcast and /inbox slash commands (shipped in #2 between v0.1.0 and v0.1.1) bring the total to 6: /register, /presence, /claim, /release, /broadcast, /inbox.
  • Mental model clarified in READMEs: sessions don't talk directly, they share a bulletin board.

Upgrade

cd claude-presence
git pull
npm install && npm run build

(npm link is already in place from v0.1.0 — no re-linking needed.)

PRs in this release

  • #2 — Add /broadcast and /inbox slash commands
  • #3 — v0.1.1 rough edges from real-world testing

Requirements

  • Node.js ≥ 18
  • Claude Code (or any MCP-compatible client)
  • macOS, Linux, Windows

Full changelog: v0.1.0...v0.1.1