- Add session_messages table and migration for storing conversation turns
- Add getSessionHistory() helper to load recent history with token budget
- Pass conversation history to executeWork() and executeWorkStreaming()
- Persist user/assistant exchanges after completed requests
- Rejected/failed requests do not pollute history
Fixes#39
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>