{"record":{"id":"e981598cb78335a3","repo":"earendil-works/pi","slug":"storage-e98159","errorCode":"storage","errorMessage":"Missing sequence row for session ${sessionId}","messagePattern":"Missing sequence row for session (.+?)","errorType":"exception","errorClass":"SessionError","httpStatus":null,"severity":"error","filePath":"packages/session-backends/sqlite-node/src/sqlite/storage/session-sequences.ts","lineNumber":14,"sourceCode":"import { SessionError } from \"@earendil-works/pi-agent-core\";\nimport { sql } from \"../sql.ts\";\nimport type { SqliteDatabase } from \"../types.ts\";\n\nexport function createSequence(db: SqliteDatabase, sessionId: string, nextSeq = 1) {\n\tsql`INSERT INTO session_sequences (session_id, next_seq) VALUES (${sessionId}, ${nextSeq})`.run(db);\n}\n\nexport function getNextSequence(db: SqliteDatabase, sessionId: string) {\n\tconst sequenceRow = sql`SELECT next_seq FROM session_sequences WHERE session_id = ${sessionId}`.get<{\n\t\tnext_seq: number;\n\t}>(db);\n\tif (!sequenceRow) {\n\t\tthrow new SessionError(\"storage\", `Missing sequence row for session ${sessionId}`);\n\t}\n\treturn sequenceRow.next_seq;\n}\n\nexport function setNextSequence(db: SqliteDatabase, sessionId: string, nextSeq: number) {\n\tsql`UPDATE session_sequences SET next_seq = ${nextSeq} WHERE session_id = ${sessionId}`.run(db);\n}\n\nexport function advanceSequence(db: SqliteDatabase, sessionId: string, seq: number) {\n\tsetNextSequence(db, sessionId, seq + 1);\n}\n\nexport function deleteSequence(db: SqliteDatabase, sessionId: string) {\n\tsql`DELETE FROM session_sequences WHERE session_id = ${sessionId}`.run(db);\n}\n","sourceCodeStart":1,"sourceCodeEnd":30,"githubUrl":"https://github.com/earendil-works/pi/blob/4af9d21d3b4d664e4a29fcabfec85171077248e3/packages/session-backends/sqlite-node/src/sqlite/storage/session-sequences.ts#L1-L30","documentation":"Error \"Missing sequence row for session ${sessionId}\" thrown in earendil-works/pi.","triggerScenarios":"Thrown at packages/session-backends/sqlite-node/src/sqlite/storage/session-sequences.ts:14 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["The session's sequence row is missing; recreate the session record."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4af9d21d3b4d664e4a29fcabfec85171077248e3","analyzedAt":"2026-08-24T13:07:14.692Z","schemaVersion":2},"datasetVersion":"2026-08-24T17:17:21.512Z"}