Skip to content

feat: add v2 foundation — types, SQLite schema, dual-write, legacy migration#5

Merged
lewisnsmith merged 1 commit intomainfrom
claude/complete-411-plan-part-a-BIwXM
Apr 12, 2026
Merged

feat: add v2 foundation — types, SQLite schema, dual-write, legacy migration#5
lewisnsmith merged 1 commit intomainfrom
claude/complete-411-plan-part-a-BIwXM

Conversation

@lewisnsmith
Copy link
Copy Markdown
Owner

Introduce the Run → Session → Turn → ToolCall data model foundation:

  • src/types.ts: shared interfaces (ExperimentConfig, Run, Session, Turn, etc.)
  • src/query.ts: new runs/sessions/turns/annotations/meta tables with
    cached prepared statements; methods for CRUD, getRunTree, stale session
    detection, and idempotent legacy JSONL migration
  • src/logger.ts: dual-write path — optional FlightDB handle on
    SessionLoggerOptions writes to SQLite alongside JSONL (fire-and-forget)
  • src/shared.ts: DEFAULT_DB_PATH constant
  • src/index.ts: re-export all new types and query row types
  • test/query-v2.test.ts: 17 tests covering hierarchy CRUD, dual-write,
    legacy migration idempotency, stale session marking, schema idempotency

This is Part A of the v2 refactor plan and unblocks Parts B-F.

https://claude.ai/code/session_011VAzdhxRw1Yaf1mkngfqej

…gration

Introduce the Run → Session → Turn → ToolCall data model foundation:

- src/types.ts: shared interfaces (ExperimentConfig, Run, Session, Turn, etc.)
- src/query.ts: new runs/sessions/turns/annotations/meta tables with
  cached prepared statements; methods for CRUD, getRunTree, stale session
  detection, and idempotent legacy JSONL migration
- src/logger.ts: dual-write path — optional FlightDB handle on
  SessionLoggerOptions writes to SQLite alongside JSONL (fire-and-forget)
- src/shared.ts: DEFAULT_DB_PATH constant
- src/index.ts: re-export all new types and query row types
- test/query-v2.test.ts: 17 tests covering hierarchy CRUD, dual-write,
  legacy migration idempotency, stale session marking, schema idempotency

This is Part A of the v2 refactor plan and unblocks Parts B-F.

https://claude.ai/code/session_011VAzdhxRw1Yaf1mkngfqej
@lewisnsmith lewisnsmith merged commit 108fba0 into main Apr 12, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants