Skip to content

Rulvar API reference


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

Class: SqliteAdmissionScheduler ​

Defined in: packages/store-sqlite/src/admission.ts:42

Implements ​

Constructors ​

Constructor ​

ts
new SqliteAdmissionScheduler(options): SqliteAdmissionScheduler;

Defined in: packages/store-sqlite/src/admission.ts:49

Parameters ​

ParameterType
optionsSqliteAdmissionSchedulerOptions

Returns ​

SqliteAdmissionScheduler

Methods ​

cancel() ​

ts
cancel(
   unitId, 
   generation, 
opId): Promise<void>;

Defined in: packages/store-sqlite/src/admission.ts:145

Cancels a queued ticket (nothing to refund); granted ones release; an EXPIRED one returns the concurrency slot expiry parked under it (RV4910), which is the operator's release by identity once the holder is known dead.

Parameters ​

ParameterType
unitIdstring
generationstring
opIdstring

Returns ​

Promise&lt;void&gt;

Implementation of ​

AdmissionScheduler.cancel


checkpointCover() ​

ts
checkpointCover(
   unitId, 
   generation, 
   cover, 
opId): Promise<void>;

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

Durably checkpoints a consumption cover BEFORE the covered batch (the intent-before-effect doctrine applied to capacity): monotone high-water, idempotent by opId, and lease-carried: a fenced store rejects an expired lease's cover write, which is what makes the conservative expiry refund provable rather than optimistic.

Parameters ​

ParameterType
unitIdstring
generationstring
coverAdmissionReservation
opIdstring

Returns ​

Promise&lt;void&gt;

Implementation of ​

AdmissionScheduler.checkpointCover


close() ​

ts
close(): void;

Defined in: packages/store-sqlite/src/admission.ts:67

Returns ​

void


enqueue() ​

ts
enqueue(request, opId): Promise<AdmissionTicketDecision>;

Defined in: packages/store-sqlite/src/admission.ts:115

Conditional create by (unitId, generation) plus immediate grant when every matched level admits; opId makes retries idempotent.

Parameters ​

ParameterType
requestAdmissionRequest
opIdstring

Returns ​

Promise&lt;AdmissionTicketDecision&gt;

Implementation of ​

AdmissionScheduler.enqueue


pump() ​

ts
pump(opId): Promise<AdmissionTicket[]>;

Defined in: packages/store-sqlite/src/admission.ts:158

Advances the scheduler: expires stale leases (conservative settlement: the provably unused wires refund, the concurrency slot parks under the possibly live holder, RV4910), then grants queued tickets in SFQ order while every matched level admits. Returns the newly granted tickets.

Parameters ​

ParameterType
opIdstring

Returns ​

Promise&lt;AdmissionTicket[]&gt;

Implementation of ​

AdmissionScheduler.pump


rebind() ​

ts
rebind(
   unitId, 
   generation, 
   target, 
opId): Promise<AdmissionTicketDecision>;

Defined in: packages/store-sqlite/src/admission.ts:149

The failover transfer (RFC section 4.2, item 4): atomically acquires the TARGET hierarchy's capacity and level-2 slot and releases the source hierarchy in the same transition, BEFORE the target dispatches. A failed transfer leaves the source binding unchanged and the target undispatchable: no window exists in which work runs on a provider account whose slot it never held.

Parameters ​

ParameterType
unitIdstring
generationstring
target{ scope: AdmissionScopeDimensions; }
target.scopeAdmissionScopeDimensions
opIdstring

Returns ​

Promise&lt;AdmissionTicketDecision&gt;

Implementation of ​

AdmissionScheduler.rebind


recover() ​

ts
recover(
   unitId, 
   generation, 
opId): Promise<AdmissionRecovery>;

Defined in: packages/store-sqlite/src/admission.ts:119

The resumed unit's recovery: granted renews the lease, a queued ticket reports its surviving position, and unknown means re-enqueue (the conservative direction).

Parameters ​

ParameterType
unitIdstring
generationstring
opIdstring

Returns ​

Promise&lt;AdmissionRecovery&gt;

Implementation of ​

AdmissionScheduler.recover


release() ​

ts
release(
   unitId, 
   generation, 
   actuals, 
opId): Promise<void>;

Defined in: packages/store-sqlite/src/admission.ts:136

Release with actuals: the unused remainder refunds to each level, over-consumption beyond the reservation lands as bucket debt (it never denies retroactively), and a late settlement after expiry is accepted idempotently as debt rather than discarded, returning the concurrency slot that expiry parked (RV4910).

Parameters ​

ParameterType
unitIdstring
generationstring
actualsAdmissionReservation
opIdstring

Returns ​

Promise&lt;void&gt;

Implementation of ​

AdmissionScheduler.release


renew() ​

ts
renew(
   unitId, 
   generation, 
opId): Promise<void>;

Defined in: packages/store-sqlite/src/admission.ts:123

Renews a granted ticket's lease; unknown tickets are no-ops.

Parameters ​

ParameterType
unitIdstring
generationstring
opIdstring

Returns ​

Promise&lt;void&gt;

Implementation of ​

AdmissionScheduler.renew