Repository navigation
Summary
Adds support for the new Kiro 1.0 session storage format (~/.kiro/sessions/), which replaced the old workspace-sessions directory in late June. Without this, no new conversations were being indexed.
Changes
Kiro 1.0 Session Loader
- New discovery function
_list_kiro_sessions()scans~/.kiro/sessions/<sha256_prefix>/<session_id>/ - New message loader
_load_kiro_session_messages()parsesmessages.jsonlextracting user, assistant, and tool context messages - Tool call/result pairs generate compact tool context summaries for searchability
- Skips system message types (session_start, session_metadata, turn_start/end, usage_summary, etc.)
- Code block replacement and skip-message filtering applied to new format
- Deduplication: when a session exists in both old and new locations, the Kiro 1.0 version wins
- SHA256-prefix directory naming validated against real data
Dashboard
- Added "Newest message" timestamp to status dashboard (local time with AM/PM)
- Warning indicator (orange) when newest message is >1 day old
- Error indicator (red) when newest message is >4 days old — likely stalled indexing
CI
- Added GitHub Actions workflow (
test.yml) running full test suite on Python 3.11/3.12/3.13 - Triggers on all branches except main, and on PRs to main
Documentation
- README: new "Session Data Sources (macOS)" table documenting all 5 formats with locations
- Architecture steering: added "Session Formats (IDE)" section with format specs
- Development steering: updated fixture list and test structure
Testing
- 54 new tests covering discovery, message loading, tool context generation, edge cases, deduplication
- Full suite: 769 tests passing, zero regressions