personal memory agent

Remove journal_root from EventContext to fix anti-pattern master

Event handlers now access journal path the same way as route handlers: via `from convey import state` then `state.journal_root`. This removes the duplicate access pattern where EventContext passed journal_root as a field while the rest of the codebase uses state.journal_root. - Remove journal_root field from EventContext dataclass - Update module docstring to document the import pattern - Remove unused os import from apps/events.py - Update tests to not pass journal_root to EventContext - Document available imports for event handlers in APPS.md 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>


+14 -34
4 changed files