Rulvar API reference / @rulvar/core / TaskDigest
Interface: TaskDigest
Defined in: packages/core/src/orchestrator/handles.ts:22
The per-child digest handed to the orchestrator.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
artifactsIndex | string[] | - | packages/core/src/orchestrator/handles.ts:28 |
costUsd | number | - | packages/core/src/orchestrator/handles.ts:27 |
facts? | ChildExecutionFacts | The child's replay-stable execution facts (RV1503), present only under the executionFacts opt-in: what the run itself observed, so the composing root can grade live-observed honestly instead of erasing its own run. See executionFactsOf. | packages/core/src/orchestrator/handles.ts:55 |
logicalTaskId | string | - | packages/core/src/orchestrator/handles.ts:24 |
nodeId | string | - | packages/core/src/orchestrator/handles.ts:23 |
outputSummary | string | - | packages/core/src/orchestrator/handles.ts:26 |
settledHandles? | number[] | On await_any digests (RV1807): the settled subset of the WAITED handle set at return time, the race winner included. The nineteenth benchmark's root probed handles with speculative get_child_result calls and collected eight not-settled errors; this list is the exact consume set, so probing is never needed. | packages/core/src/orchestrator/handles.ts:63 |
status | string | - | packages/core/src/orchestrator/handles.ts:25 |
toolBudget? | { cap?: number; capHit?: boolean; extensionsGranted?: number; finalizationWindowEntered?: boolean; used: number; } | The child's tool budget pressure, the replay-stable subset only (RV4807, the ninth experiment: a specialist starved at 30 of 30 tool calls and the coordinator could not see it at await, so nothing respawned or accepted the degradation knowingly). Present exactly when the child ran under a tool budget: used and cap are the durable pair the terminal journals (RV3002), extensionsGranted and finalizationWindowEntered ride their decision entries, and capHit is derived from the durable pair (true when the executed-call cap was reached). The live-only fidelity fields (units, notices, limiter) stay out: a digest must fold byte-identically live and resumed. | packages/core/src/orchestrator/handles.ts:42 |
toolBudget.cap? | number | - | packages/core/src/orchestrator/handles.ts:44 |
toolBudget.capHit? | boolean | - | packages/core/src/orchestrator/handles.ts:45 |
toolBudget.extensionsGranted? | number | - | packages/core/src/orchestrator/handles.ts:46 |
toolBudget.finalizationWindowEntered? | boolean | - | packages/core/src/orchestrator/handles.ts:47 |
toolBudget.used | number | - | packages/core/src/orchestrator/handles.ts:43 |