[245-sub] Time adapter — circadian awareness for Timmy #307

Closed
opened 2026-03-18 20:57:31 +00:00 by kimi · 0 comments
Collaborator

Parent: #245 — Stream adapters

What

A simple adapter that emits time-of-day events so Timmy knows when it is.

Deliverables

  1. src/timmy/adapters/time_adapter.py:

    • Emits events: morning (6-9am), afternoon (12-2pm), evening (6-8pm), late_night (11pm-3am)
    • Emits new_day at midnight
    • Tracks time_since_last_interaction — how long since the last user message
    • All times in local timezone (from config or system)
  2. Test in tests/timmy/adapters/test_time_adapter.py

Depends on

Event bus (#306)

Scope

1 file + tests. No external APIs. Pure Python datetime. Kimi-ready.

Acceptance

  • Adapter emits SensoryEvents through the EventBus
  • Tests mock datetime to verify time-of-day detection
  • tox -e unit passes
## Parent: #245 — Stream adapters ### What A simple adapter that emits time-of-day events so Timmy knows when it is. ### Deliverables 1. `src/timmy/adapters/time_adapter.py`: - Emits events: `morning` (6-9am), `afternoon` (12-2pm), `evening` (6-8pm), `late_night` (11pm-3am) - Emits `new_day` at midnight - Tracks `time_since_last_interaction` — how long since the last user message - All times in local timezone (from config or system) 2. Test in `tests/timmy/adapters/test_time_adapter.py` ### Depends on Event bus (#306) ### Scope 1 file + tests. No external APIs. Pure Python datetime. Kimi-ready. ### Acceptance - Adapter emits SensoryEvents through the EventBus - Tests mock datetime to verify time-of-day detection - `tox -e unit` passes
kimi added the 222-epickimi-ready labels 2026-03-18 20:57:31 +00:00
Sign in to join this conversation.
No Label 222-epic kimi-ready
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Rockachopa/Timmy-time-dashboard#307