Skip to main content

Class: InMemoryEntitlementHook

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:383

Reservations in memory for tests and single-process hosts; no external billing policy is applied.

Implements​

Constructors​

Constructor​

new InMemoryEntitlementHook(maxSeconds?): InMemoryEntitlementHook

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:386

Parameters​

maxSeconds?​

number = 14_400

The most one reservation covers, in seconds; four hours when absent.

Returns​

InMemoryEntitlementHook

Methods​

forget()​

forget(runId): Promise<void>

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:417

Optional whole-run eviction for in-memory hosts after terminal cleanup and the retention grace. Durable stores omit it to retain their records. Call only after producers have stopped; forgetting removes fences too.

Parameters​

runId​

string

Returns​

Promise<void>

Implementation of​

IEntitlementHook.forget


get()​

get(id): { maxSeconds: number; metered: number; released: boolean; runId: string; settled?: number; } | undefined

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:413

A copied reservation, for inspection by a single-process host.

Parameters​

id​

string

Returns​

{ maxSeconds: number; metered: number; released: boolean; runId: string; settled?: number; } | undefined


meter()​

meter(id, seconds): Promise<void>

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:400

The seconds the run has used so far, every minute: a running total, not an increment.

Parameters​

id​

string

seconds​

number

Returns​

Promise<void>

Implementation of​

IEntitlementHook.meter


release()​

release(id): Promise<void>

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:408

Frees a reservation nothing is billed against: a run that ends unbilled, or a send refused after its reservation.

Parameters​

id​

string

Returns​

Promise<void>

Implementation of​

IEntitlementHook.release


reserve()​

reserve(input): Promise<ReserveResult>

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:387

Reserves at most maxSeconds for a run about to be made; the answer's maxSeconds is what it covers, and the run's limit is cut to it. A refusal sends no bot.

Parameters​

input​
maxSeconds​

number

ownerRef​

string

platform​

MeetingPlatform

runId​

string

Returns​

Promise<ReserveResult>

Implementation of​

IEntitlementHook.reserve


revalidate()​

revalidate(id): Promise<boolean>

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:396

A scheduled run, at dispatch: still paid, still has the hours. Not asked when the hook has revalidateAllowance.

Parameters​

id​

string

Returns​

Promise<boolean>

Implementation of​

IEntitlementHook.revalidate


settle()​

settle(id, billedSeconds): Promise<void>

Defined in: packages/agentos/src/io/channels/meetings/stores/memory.ts:404

Settles the run at the seconds it is billed.

Parameters​

id​

string

billedSeconds​

number

Returns​

Promise<void>

Implementation of​

IEntitlementHook.settle