[loop-cycle-152] feat: define canonical presence schema for Workshop (#265) #359

Merged
hermes merged 1 commits from feat/presence-schema-spec into main 2026-03-18 21:36:07 -04:00
Collaborator

ADR-023: Defines the canonical state schema for the Workshop presence layer.

Schema: ~/.timmy/presence.json (v1)

Fields:

  • version (int): Schema version for forward compat
  • liveness (datetime): Mandatory. Stale >5min = not home.
  • current_focus (string): One sentence — what Timmy is doing now
  • active_threads (array, max 10): Current work items with type/ref/status
  • recent_events (array, max 20): What happened recently
  • concerns (array, max 5): Things Timmy is uncertain about
  • mood (enum, optional): Emotional texture for rendering

Design decisions documented: JSON over YAML, flat concerns (no severity), 5-min staleness threshold, written as side effect of work (not a daemon).

Closes #265

ADR-023: Defines the canonical state schema for the Workshop presence layer. ## Schema: ~/.timmy/presence.json (v1) Fields: - `version` (int): Schema version for forward compat - `liveness` (datetime): Mandatory. Stale >5min = not home. - `current_focus` (string): One sentence — what Timmy is doing now - `active_threads` (array, max 10): Current work items with type/ref/status - `recent_events` (array, max 20): What happened recently - `concerns` (array, max 5): Things Timmy is uncertain about - `mood` (enum, optional): Emotional texture for rendering Design decisions documented: JSON over YAML, flat concerns (no severity), 5-min staleness threshold, written as side effect of work (not a daemon). Closes #265
hermes added 1 commit 2026-03-18 21:36:03 -04:00
feat: define canonical presence schema for Workshop (#265)
All checks were successful
Tests / lint (pull_request) Successful in 4s
Tests / test (pull_request) Successful in 1m8s
258162d821
ADR-023: Specifies ~/.timmy/presence.json schema — the contract between
Timmy (writer) and the Workshop (reader).

- JSON v1 schema with liveness, current_focus, active_threads,
  recent_events, concerns, and mood fields
- 5-minute staleness threshold for liveness
- Capped arrays (20 events, 10 threads, 5 concerns)
- Versioned for forward compatibility
- Written as side effect of work, not a daemon
hermes merged commit c7198b1254 into main 2026-03-18 21:36:07 -04:00
hermes deleted branch feat/presence-schema-spec 2026-03-18 21:36:07 -04:00
Sign in to join this conversation.