Add to Omni/Task/Core.hs (or new Omni/Agent/EventStore.hs):
1. Schema migration for agent_events table 2. insertEvent :: Text -> Text -> AgentEvent -> IO () 3. getEventsForTask :: Text -> IO [AgentEvent] 4. getEventsForSession :: Text -> IO [AgentEvent] 5. getLatestSession :: Text -> IO (Maybe Text)
Schema:
CREATE TABLE agent_events (
id INTEGER PRIMARY KEY,
task_id TEXT NOT NULL,
session_id TEXT NOT NULL,
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
event_type TEXT NOT NULL,
content TEXT NOT NULL,
FOREIGN KEY (task_id) REFERENCES tasks(id)
);
CREATE INDEX idx_agent_events_task ON agent_events(task_id);
CREATE INDEX idx_agent_events_session ON agent_events(session_id);
No activity yet.