a060666f6f
Adds the agent_sessions table (migration) and a session_store module that owns its lifecycle: - ensure_session: idempotently creates the session row on first chat. - record_turn: accumulates input/output/total tokens, cost and turn count after each completed turn, bumping updated_at. - get_session: user-scoped fetch so a tenant can only read its own session. Backed by SQLite via SQLx, matching the existing service style. Unit-tested against an in-memory database (idempotency, accumulation, user scoping).