|
core: split the Postgres session store into a package
`pg_session_store.py` mixed three layers: schema DDL and migrations, the row <-> `Message` mapping with its archive-aware hydration, and the store itself. Split them into `navi/core/sessions/`: * `ddl.py` — table/index definitions and the one-shot migrations; * `rows.py` — serialization, dangling-tool-call repair, session hydration; * `store.py` — `PgSessionStore` and the pending-sweep loop. `navi/core/pg_session_store.py` stays as a compatibility shim re-exporting both the public surface and the private helpers the tests use. No behavior change: every top-level function and every store method is preserved. |
|---|
|
|
| navi/core/pg_session_store.py |
|---|
|
Too large (Show diff)
|
| navi/core/sessions/__init__.py 0 → 100644 |
|---|
| navi/core/sessions/ddl.py 0 → 100644 |
|---|
| navi/core/sessions/rows.py 0 → 100644 |
|---|
| navi/core/sessions/store.py 0 → 100644 |
|---|