Skip to content

Rulvar API reference


Rulvar API reference / @rulvar/core / AdmitSpec

Interface: AdmitSpec

Defined in: packages/core/src/orchestrator/admission.ts:179

What the admission point needs to know about one spawn.

Properties

PropertyTypeDescriptionDefined in
ancestry?string[]Decomposition parent-LTID chain (relation 'decompose-child' only).packages/core/src/orchestrator/admission.ts:221
approach?stringRaw approach tag; normalized by the engine.packages/core/src/orchestrator/admission.ts:219
budgetUsd?numberExplicit child budget; clamped by childBudgetFraction.packages/core/src/orchestrator/admission.ts:188
childScopestringThe child's journal scope; doubles as its budget account scope.packages/core/src/orchestrator/admission.ts:184
estCostUsd?numberReserve hint; falls back to the flat engine default.packages/core/src/orchestrator/admission.ts:190
ladderLength?numberThe declared ladder length of the resolved profile (K_l); default 1, the single implicit rung. Under a termination account, a length beyond the frozen kMax rejects with ladder_exceeds_frozen and a NEW lineage is allocated E0 escalation units plus K_l - 1 rungs (DEF-2).packages/core/src/orchestrator/admission.ts:234
lineage?SpawnLineageOptLineage continuation (DEF-3); absence mints a fresh lineage root. A continuation demands a causeRef: the seq of the entry that caused the rebirth.packages/core/src/orchestrator/admission.ts:217
namestringRegistered workflow name or agent profile name; telemetry and cards only.packages/core/src/orchestrator/admission.ts:182
nodeKey?stringThe children-quota key (maxChildrenPerNode); defaults to parentAccountScope. Orchestrators pass their own scope so each node counts its own children.packages/core/src/orchestrator/admission.ts:240
originSpawnOrigin-packages/core/src/orchestrator/admission.ts:180
parentAccountScopestringThe nearest enclosing budget account of the spawner.packages/core/src/orchestrator/admission.ts:186
pendingReserveUsd?numberSame-batch reserves already admitted read-only but not yet committed (a multi-op plan revision): the read-only branch adds them to this spawn's reserve so every embedded admit of one batch is dispatchable under the same snapshot, not just the first.packages/core/src/orchestrator/admission.ts:197
roster?{ admittedChildren: number; floor: number; liveExposureUsd: number; }The sequential roster feasibility inputs (RV2005), passed by the SINGLE spawn_agent path when acceptance.minSpawnedChildren is declared: the admission projects the whole REMAINING roster at this seat's own dispatch projection, live in-flight exposure included, and refuses the first infeasible seat typed 'roster_floor' before any child is paid. Batch seats never carry this: the RV1908 batchGate already judged their batch entire.packages/core/src/orchestrator/admission.ts:207
roster.admittedChildrennumber-packages/core/src/orchestrator/admission.ts:209
roster.floornumber-packages/core/src/orchestrator/admission.ts:208
roster.liveExposureUsdnumber-packages/core/src/orchestrator/admission.ts:210
signature?Partial<ApproachSignatureInputs>Coarse-signature identity inputs; unspecified fields canonize onto the deterministic legacy constants so signatures stay byte-stable (the toolset/schema registries land in M7-T05).packages/core/src/orchestrator/admission.ts:227