Skip to content

Rulvar API reference


Rulvar API reference / @rulvar/store-sqlite / SqliteTranscriptStore

Interface: SqliteTranscriptStore

Defined in: packages/store-sqlite/src/store.ts:127

The fenced transcript twin over a SqliteStore database (the fenced run state RFC, F2): a TranscriptStore that declares fencedWrites because its blobs live in the SAME database as the lease rows, giving the fence check and the blob mutation one transactional domain. Obtain it from SqliteStore.transcripts; its lifetime is the owning store's (one shared connection, one close()).

Extends

Properties

PropertyModifierTypeDescriptionOverridesDefined in
fencedWritesreadonlytrueFenced writes capability (the fenced run state RFC, phase 2), the transcript-side twin of the JournalStore marker: a store declaring it verifies a lease-carrying put or delete against the CURRENT lease of the run the ref's leading path segment names, atomically with the mutation, and rejects stale holders with the typed LeaseHeldError leaving the prior blob intact. The engine threads the segment's lease into every blob write of a leased resume (checkpoints, compaction summaries, worktree patches, workflow sources). The shipped file and in-memory transcript stores do NOT declare it (they are single-writer by contract); a fenced implementation needs the blobs and the lease state in one transactional domain, which is exactly how the sqlite twin ships: SqliteStore.transcripts() in @rulvar/store-sqlite keeps blobs beside the lease rows of the same database.TranscriptStore.fencedWritespackages/store-sqlite/src/store.ts:128

Methods

delete()

ts
delete(ref, lease?): Promise<void>;

Defined in: packages/core/dist/index.d.ts

Deletes one blob; a missing ref is a no-op, never an error (M8-T04 amendment, OQ-20: retention is impossible without blob deletion). The cascade over a run's blobs is ENGINE-side (Engine.deleteRun), never a store obligation.

Parameters

ParameterType
refstring
lease?Lease

Returns

Promise&lt;void&gt;

Inherited from

TranscriptStore.delete


get()

ts
get(ref): Promise<Bytes | null>;

Defined in: packages/core/dist/index.d.ts

Parameters

ParameterType
refstring

Returns

Promise&lt;Bytes | null&gt;

Inherited from

TranscriptStore.get


list()

ts
list(runId): Promise<string[]>;

Defined in: packages/core/dist/index.d.ts

Parameters

ParameterType
runIdstring

Returns

Promise&lt;string[]&gt;

Inherited from

TranscriptStore.list


put()

ts
put(
   ref, 
   blob, 
lease?): Promise<void>;

Defined in: packages/core/dist/index.d.ts

Parameters

ParameterType
refstring
blobBytes
lease?Lease

Returns

Promise&lt;void&gt;

Inherited from

TranscriptStore.put