@rulvar/core 1.236.0 → 1.238.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1679,6 +1679,46 @@ interface TerminalEnvelope {
1679
1679
  /** Agents admitted over the run's lifetime, resume seed included. */
1680
1680
  agentsSpawned: number;
1681
1681
  /**
1682
+ * Whether the artifact this terminal carries passed the declared
1683
+ * finish contract (RV2506), mirrored onto the envelope since RV3304:
1684
+ * the 2026-08-12 comparison run settled ok/complete over a retained
1685
+ * contradiction, and neither the HTTP response nor the persisted
1686
+ * rebuild could say whether anything ever judged the deliverable.
1687
+ * Absent when no contract judged anything; absence means NOT
1688
+ * RECORDED, never "accepted".
1689
+ */
1690
+ deliverableAccepted?: boolean;
1691
+ /**
1692
+ * Whether this terminal carries a deliverable to read at all
1693
+ * (RV2506); same mirror and posture. Distinct from
1694
+ * `deliverableAccepted`: an unjudged artifact still EXISTS, and a
1695
+ * run with no artifact still has a completion claim.
1696
+ */
1697
+ resultAvailable?: boolean;
1698
+ /**
1699
+ * The journal seq of the decision entry recording the acceptance of
1700
+ * the artifact this terminal carries (RV2506); same mirror, absent
1701
+ * unless the acceptance actually rendered. Read it with
1702
+ * `rulvar inspect` to see WHICH validators accepted WHICH hash.
1703
+ */
1704
+ acceptedArtifactRef?: number;
1705
+ /**
1706
+ * The claim consistency pass meta, detached (RV3304): `judgedStage`,
1707
+ * `judgedHash`, the coverage grade and the `findings` count, so the
1708
+ * surface a consumer gates on says WHAT was semantically verified,
1709
+ * over WHICH document, and what the judge found, without reaching
1710
+ * into the workflow value. Mutating this copy never touches the
1711
+ * outcome the engine owns.
1712
+ */
1713
+ claimConsistencyMeta?: Record<string, unknown>;
1714
+ /**
1715
+ * The host declared config identity the run was started under
1716
+ * (RV3210), echoed here since RV3304 so a decision consumer binds
1717
+ * the verdict above to the configuration that produced it without a
1718
+ * second read of the run record. Absent when the run declared none.
1719
+ */
1720
+ configFingerprint?: string;
1721
+ /**
1682
1722
  * Where THIS copy of the envelope was assembled (RV1209). Absent, the
1683
1723
  * historical byte contract, means the settlement chokepoint built it
1684
1724
  * from the live outcome, so every field above is the run's own
@@ -8726,6 +8766,62 @@ declare function formatCharacterValidator(options?: {
8726
8766
  /** Single `Cf` characters to admit; everything else still rejects. */allow?: readonly string[];
8727
8767
  name?: string;
8728
8768
  }): FinishValidator;
8769
+ /**
8770
+ * Every declared literal must appear in the finish result at least
8771
+ * once (RV3308). The 2026-08-12 comparison run passed an exact twelve
8772
+ * heading contract and a citation floor while its "all publishable
8773
+ * packages" table silently dropped four of the seventeen names: shape
8774
+ * validators cannot see an enumerable universe, so the universe is
8775
+ * declared as literals and each one is held. Purely textual and
8776
+ * deterministic; fenced code counts, because tables and inline code
8777
+ * are legitimate places to name a package. Default name
8778
+ * 'required-mentions'.
8779
+ */
8780
+ declare function requiredMentionsValidator(options: {
8781
+ terms: readonly string[];
8782
+ name?: string;
8783
+ }): FinishValidator;
8784
+ /**
8785
+ * One declaration for the shape a host both PROMPTS for and GATES on
8786
+ * (RV3308). The 2026-08-12 comparison run drifted exactly here: the
8787
+ * harness prompt named one heading while its finish contract named an
8788
+ * older one, the host accepted its own contract, and the common audit
8789
+ * refused the answer. A manifest is read twice, by
8790
+ * {@link manifestValidators} to build the gate and by
8791
+ * {@link renderContractRequirements} to build the prompt block, so
8792
+ * the two surfaces cannot disagree by construction.
8793
+ */
8794
+ interface OutputContractManifest {
8795
+ /** The exact heading lines, ordered and exclusive when present. */
8796
+ sections?: readonly string[];
8797
+ /** Literal strings the result must contain, each at least once. */
8798
+ requiredMentions?: readonly string[];
8799
+ /** Whitespace word bounds, either side optional. */
8800
+ words?: {
8801
+ min?: number;
8802
+ max?: number;
8803
+ };
8804
+ /** Minimum citation occurrences over {@link DEFAULT_CITATION_PATTERN} or `citationPattern`. */
8805
+ minCitations?: number;
8806
+ /** Overrides the citation shape; only meaningful beside `minCitations`. */
8807
+ citationPattern?: string;
8808
+ }
8809
+ /**
8810
+ * The manifest's gate half (RV3308): heading structure (ordered,
8811
+ * exclusive), word bounds, the citation floor, and the mention
8812
+ * universe, in that stable order, each through the existing named
8813
+ * validator. Everything is derived from the SAME object the prompt
8814
+ * block renders from.
8815
+ */
8816
+ declare function manifestValidators(manifest: OutputContractManifest): FinishValidator[];
8817
+ /**
8818
+ * The manifest's prompt half (RV3308): a deterministic requirements
8819
+ * block enumerating the SAME headings, bounds, citation floor and
8820
+ * literals the validators hold, byte for byte, for the host to embed
8821
+ * in its question. Rendering is pure string assembly; nothing here
8822
+ * consults the result.
8823
+ */
8824
+ declare function renderContractRequirements(manifest: OutputContractManifest): string;
8729
8825
  //#endregion
8730
8826
  //#region src/orchestrator/contradictions.d.ts
8731
8827
  /** One child's serialized output as the pass reads it. */
@@ -10361,7 +10457,21 @@ interface OrchestrateClaimConsistency {
10361
10457
  * explicitly (a ConfigError without that synthesis, the
10362
10458
  * contradictions precedent), and non-empty findings block the
10363
10459
  * `skipWhenDraftValid` gate: a draft contradicting its own pool
10364
- * never earns the skip. 'fail' fails the run typed with
10460
+ * never earns the skip. The carry can only ride a prompt that still
10461
+ * lies ahead, so it binds the pass that runs BEFORE the synthesis:
10462
+ * under `stage: 'both'` the draft pass carries and the final pass
10463
+ * reports, and `stage: 'final'` with 'carry' is a ConfigError at
10464
+ * intake, because a posture that reads as a gate must not quietly
10465
+ * behave as 'report'. 'repair' (RV3307) is the honest carry for the
10466
+ * final pass: judged findings ride ONE more synthesis invocation
10467
+ * (the same CLAIM CONTRADICTIONS block, over a prompt that now lies
10468
+ * ahead again), the repaired document is judged again, and findings
10469
+ * that survive the round fail the run typed, exactly like a dead or
10470
+ * declined judge under this posture, because a gate armed to repair
10471
+ * must not pass silently. It needs a pass that runs AFTER a
10472
+ * synthesis, so `stage` must be 'final' or 'both' (a ConfigError
10473
+ * beside the default 'draft', whose findings the ordinary carry
10474
+ * already consumes). 'fail' fails the run typed with
10365
10475
  * `data.source` 'orchestrator_claim_consistency' BEFORE any
10366
10476
  * synthesis dispatch; the judge itself has already been paid, which
10367
10477
  * is the honest minimum for a semantic verdict. A judge that does
@@ -10369,7 +10479,7 @@ interface OrchestrateClaimConsistency {
10369
10479
  * run only under 'fail': a gate armed to stop the run must not pass
10370
10480
  * silently when its judge dies.
10371
10481
  */
10372
- onFound?: "report" | "carry" | "fail";
10482
+ onFound?: "report" | "carry" | "fail" | "repair";
10373
10483
  /**
10374
10484
  * WHICH document the pass judges (RV2509), default `'draft'`, the
10375
10485
  * historical behavior byte for byte. The pass has always read the
@@ -10585,6 +10695,18 @@ interface OrchestrateClaimConsistencyMeta {
10585
10695
  */
10586
10696
  judgeDeclined?: true;
10587
10697
  /**
10698
+ * How many judged contradictions the pass FOUND on the judged
10699
+ * document, present exactly when the judge settled ok (RV3304): `0`
10700
+ * is a clean verdict, a positive count is a disagreement that stayed
10701
+ * wherever the posture did not stop the run. The findings themselves
10702
+ * ride `claimContradictions` beside this meta on the acceptance
10703
+ * envelope, but the meta travels ALONE onto RunOutcome, the
10704
+ * journaled run settle, and the terminal envelope, and the
10705
+ * 2026-08-12 comparison run settled ok/complete over a retained
10706
+ * finding no terminal surface could count.
10707
+ */
10708
+ findings?: number;
10709
+ /**
10588
10710
  * The one field a consumer reads INSTEAD of inferring semantic
10589
10711
  * health from an empty findings array (RV1702):
10590
10712
  * {@link claimCoverageOf} over this meta, so `completion:
@@ -11273,6 +11395,24 @@ interface EvidenceContract {
11273
11395
  /** Estimated non-evidence overhead calls; default 8. */
11274
11396
  overheadCalls?: number;
11275
11397
  /**
11398
+ * A journal observed prior for the per-entry call estimate
11399
+ * (RV3309): the figure `toolCalibrationFromJournal` folds from a
11400
+ * prior run of the same profile (aggregate or a p90 over several),
11401
+ * fractional on purpose. Preflight uses the HIGHER of the declared
11402
+ * estimate and this prior when it computes the evidence call floor,
11403
+ * never the lower, so a stale generous declaration still holds and
11404
+ * an optimistic one stops hiding the observed reality: the
11405
+ * 2026-08-12 comparison run observed 4.211 calls per entry where
11406
+ * the default estimate says 3. When the prior raises the floor,
11407
+ * preflight names it in an `evidence-estimate-below-observed`
11408
+ * finding beside the usual floor arithmetic. `source` is echoed in
11409
+ * that finding so a reader knows which journal spoke.
11410
+ */
11411
+ calibration?: {
11412
+ callsPerEntry: number;
11413
+ source?: string;
11414
+ };
11415
+ /**
11276
11416
  * What the floor does at the child's terminal settle (RV507). The
11277
11417
  * default 'warn' keeps the historical behavior: the contract is a
11278
11418
  * preflight signal only. 'refuse' turns an ok finish whose message
@@ -12155,7 +12295,7 @@ interface RunHandle<R> {
12155
12295
  //#endregion
12156
12296
  //#region src/engine/terminal-envelope.d.ts
12157
12297
  /** The outcome facts the assembler reads; a structural subset of RunOutcome. */
12158
- type TerminalOutcomeFacts = Pick<RunOutcome<unknown>, "status" | "error" | "completion"> & {
12298
+ type TerminalOutcomeFacts = Pick<RunOutcome<unknown>, "status" | "error" | "completion" | "deliverableAccepted" | "resultAvailable" | "acceptedArtifactRef" | "claimConsistencyMeta"> & {
12159
12299
  usage: RunOutcome<unknown>["usage"];
12160
12300
  cost: Pick<RunOutcome<unknown>["cost"], "totalUsd" | "grossUsd" | "byModel"> & {
12161
12301
  usageApprox?: boolean;
@@ -12183,7 +12323,8 @@ declare function terminalEnvelopeOf(input: {
12183
12323
  settlement?: {
12184
12324
  settledReason?: "superseded";
12185
12325
  };
12186
- provenance?: "journal";
12326
+ provenance?: "journal"; /** The run's declared config identity (RV3210), echoed onto the envelope (RV3304). */
12327
+ configFingerprint?: string;
12187
12328
  }): TerminalEnvelope;
12188
12329
  //#endregion
12189
12330
  //#region src/l0/decision-chain.d.ts
@@ -13075,6 +13216,18 @@ declare function lastRunSettle(entries: readonly JournalEntry[]): {
13075
13216
  * recorded" rather than as a claim.
13076
13217
  */
13077
13218
  rejectedFinishCandidates?: RejectedFinishCandidate[];
13219
+ /**
13220
+ * The semantic outcome the settle recorded (RV3304), read back
13221
+ * the same defensive way: the acceptance verdict, the
13222
+ * deliverable presence, the acceptance ref and the judge meta,
13223
+ * so a restarted reader recovers the facts a live consumer
13224
+ * gated on. Absent on journals written before the lift carried
13225
+ * them; absence means NOT RECORDED, never a verdict.
13226
+ */
13227
+ deliverableAccepted?: boolean;
13228
+ resultAvailable?: boolean;
13229
+ acceptedArtifactRef?: number;
13230
+ claimConsistencyMeta?: Record<string, unknown>;
13078
13231
  } | undefined;
13079
13232
  /**
13080
13233
  * Whether a terminal figure counts THIS segment's work or the whole
@@ -14055,6 +14208,17 @@ interface StatementReconciliation {
14055
14208
  componentToleranceUsd: number;
14056
14209
  verdict: "match" | "divergence" | "partial-coverage" | "no-overlap";
14057
14210
  /**
14211
+ * How much of the MATCHED statement claims money (RV3306):
14212
+ * 'complete' when every matched export row (requests mode) or every
14213
+ * component line (categories mode) carries a dollar claim, a row
14214
+ * total or a component split; 'partial' when some do; 'none' when
14215
+ * the statement matched on identity and usage alone, or matched
14216
+ * nothing. Kept apart from row coverage on purpose: coverage says
14217
+ * the records line up, this says whether the provider actually
14218
+ * stated dollars over them.
14219
+ */
14220
+ dollarCoverage: "complete" | "partial" | "none";
14221
+ /**
14058
14222
  * The settlement-grade composite, first class (RV1006): true exactly
14059
14223
  * when the verdict is 'match' AND coverage is complete AND no row's
14060
14224
  * usage is unknown AND no model went unpriced. A 'match' alone is
@@ -14063,9 +14227,22 @@ interface StatementReconciliation {
14063
14227
  * consumer must not assemble this predicate by hand. The last two
14064
14228
  * conditions overlap today's verdict semantics deliberately: the
14065
14229
  * predicate states the full contract so it cannot drift apart from
14066
- * a future verdict refinement.
14230
+ * a future verdict refinement. Note what it does NOT require: a
14231
+ * dollar claim. A usage-only export that matches on identity and
14232
+ * tokens reads `settleable: true`; gate MONETARY closure on
14233
+ * `monetarySettleable` below.
14067
14234
  */
14068
14235
  settleable: boolean;
14236
+ /**
14237
+ * The MONETARY settlement predicate (RV3306): `settleable` AND
14238
+ * complete dollar coverage. `settleable` answers "do the records
14239
+ * agree"; this answers "may money close against this statement".
14240
+ * The 2026-08-12 audit named the difference on this exact module: a
14241
+ * usage-only request export settled 'match' without one dollar of
14242
+ * provider evidence, and a finance pipeline gating on `settleable`
14243
+ * alone would have closed money against it.
14244
+ */
14245
+ monetarySettleable: boolean;
14069
14246
  }
14070
14247
  /**
14071
14248
  * Reconciles the invoice against a normalized provider export. Pure and
@@ -14354,6 +14531,18 @@ interface PreflightOrchestratorSpec {
14354
14531
  * configs are byte identical until a host opts in.
14355
14532
  */
14356
14533
  minCeilingHeadroomShare?: number;
14534
+ /**
14535
+ * What a breached headroom floor emits (RV3310). The default
14536
+ * 'warning' keeps RV3208's behavior byte for byte: advisory, and a
14537
+ * host that only throws on errors sails past it. 'error' makes the
14538
+ * breach blocking for exactly such hosts: the 2026-08-12 comparison
14539
+ * harness threw on error findings only, its 2 percent floor held
14540
+ * against a 2.857 percent headroom, and the assurance answer to
14541
+ * "this plan is too thin to survive drift" must be refusal before
14542
+ * the first wire, not a line in a report nobody gates on.
14543
+ * Meaningful only beside a positive `minCeilingHeadroomShare`.
14544
+ */
14545
+ ceilingHeadroomSeverity?: "warning" | "error";
14357
14546
  }
14358
14547
  /** The full input: engine surface, run surface, and the declared wave. */
14359
14548
  interface PreflightInput {
@@ -15375,4 +15564,4 @@ interface SandboxBridge {
15375
15564
  declare const SANDBOX_AGENT_OPT_KEYS: readonly string[];
15376
15565
  declare function createSandboxBridge(ctx: Ctx<never>, options: SandboxBridgeOptions): SandboxBridge;
15377
15566
  //#endregion
15378
- export { AWAIT_SCHEMA, AbandonAttempt, AbandonFold, AbandonPayload, AbandonedSpendView, AbortClass, AcceptanceChildSummary, type AdaptiveEvents, AdmissionController, AdmissionDecision, AdmissionRejectedError, AdmissionStatsBefore, AdmitLineage, AdmitRejectReason, AdmitSpec, AdmitVerdict, AgentCallError, AgentError, type AgentEvents, AgentIdentityInput, type AgentInvocationRow, AgentOpts, AgentProfile, AgentProfilePermissions, AgentProfileTemplateOptions, AgentResult, AgentResultMeta, AgentStatus, type AppliedPricingRow, ApproachSignatureInputs, ApprovalDecision, ApprovalIdentityInput, Artifact, AttemptOutcomeClass, AuditCategory, AuditRecord, AuditRunsOptions, BUDGET_ABORT_REASON, BaseAppend, BillingComponent, BriefOpts, BudgetAccountView, BudgetDefaults, BudgetExhaustedError, BudgetExhaustionDiagnostics, BudgetHooks, BudgetReserve, type Bytes, CANCEL_AGENT_SCHEMA, CHECKPOINT_FORMAT_V1, CLAIM_JUDGE_LABEL, CLAIM_STATEMENT_MAX_CHARS, CLAIM_TTL_DAYS, COMPACTION_SUMMARY_PREFIX, CURRENT_HASH_VERSION, CacheHint, CachePolicy, CacheTtl, CanUseTool, CanonicalId, CanonicalIdentity, CanonicalLadderSpec, CanonicalModelSpec, ChatEvent, ChatRequest, CheckpointState, ChildArtifactPage, ChildExecutionFacts, ChildIdentityInput, ChildResultPage, ChildrenAtFailure, CitationTarget, type ClaimClass, ClaimContradictionFinding, ClaimCoverageGrade, ClaimCoverageInput, type ClaimOp, ClaimPair, ClaimPairOptions, ClaimPairsFold, ClaimPoolReading, type ClaimStatus, ClaimValidationOptions, CollectOpts, CollectedTurn, CompactionConfig, CompiledPermissionChain, CompiledWorkflow, ComponentDelta, ConfigError, Contradiction, ContradictionClaim, ContradictionOptions, ContradictionSource, type CoreEvents, CostAttribution, CostAttributionFacts, type CostBasis, CostReport, CreateEngineOptions, type CriticalPath, Ctx, DECISION_CHAIN_KINDS, DEFAULT_ANCHOR_PATTERN, DEFAULT_ARTIFACT_PATTERN, DEFAULT_CHILD_BUDGET_FRACTION, DEFAULT_CHILD_RESULT_PAGE_CHARS, DEFAULT_CITATION_PATTERN, DEFAULT_CITATION_SAMPLE, DEFAULT_CLAIM_JUDGE_MAX_TURNS, DEFAULT_COMPACTION_THRESHOLD, DEFAULT_ESCALATION_LIMITS, DEFAULT_EVIDENCE_CALLS_PER_ENTRY, DEFAULT_EVIDENCE_GRADE_PHRASES, DEFAULT_EVIDENCE_MIN_SHARE, DEFAULT_EVIDENCE_OVERHEAD_CALLS, DEFAULT_FINISH_MAX_REPAIRS, DEFAULT_FLAT_RESERVE_USD, DEFAULT_MAX_CHILDREN_PER_NODE, DEFAULT_MAX_CLAIM_PAIRS, DEFAULT_MAX_CONTRADICTIONS, DEFAULT_MAX_DEPTH, DEFAULT_MAX_EXCERPT_CHARS, DEFAULT_MAX_OSCILLATIONS_PER_KEY, DEFAULT_MAX_PAIR_EXCERPT_CHARS, DEFAULT_MAX_PINNED_WORKTREES, DEFAULT_MAX_POOL_PER_PAIR, DEFAULT_MAX_QUOTA_DENIALS, DEFAULT_MAX_REVISIONS_PER_RUN, DEFAULT_MAX_RUN_FACT_PAIRS, DEFAULT_MAX_TOTAL_SPAWNS, DEFAULT_MAX_TURNS, DEFAULT_MODEL_RETRY_ATTEMPTS, DEFAULT_NO_PROGRESS_TURNS, DEFAULT_PER_RUN_CONCURRENCY, DEFAULT_RETRY_POLICY, DEFAULT_STREAM_IDLE_TIMEOUT_MS, DEFAULT_SYNTHESIS_MAX_TURNS, DEFAULT_SYNTHESIS_NOTE_MAX_TURNS, DataKeyProvider, DebitResult, DecisionChainRow, DeclaredLadder, DedupIndex, DedupNote, DedupedClaims, DelimitedStatementOptions, DerivedKey, DeriverRegistry, type DeterminismConfig, DeterminismError, type DeterminismEvents, type DeterminismMode, DispositionRule, DispositionTable, DocumentedRates, DonorCandidate, DonorRef, DroppedItem, EMIT_RESULT_TOOL, EMPTY_AUTHORITY_HASH, EMPTY_SCHEMA_HASH, EMPTY_TOOLSET_HASH, ESCALATE_TOOL_NAME, ESCALATION_REPORT_SCHEMA, ESCALATION_REQUEST_SCHEMA, EVENT_SEGMENT_STRIDE, EXPOSURE_WAIT_SWEEP_MS, EffectiveUsageLimits, Effort, Engine, EngineDefaults, EngineQuotaConfig, EngineQuotaRuntime, EntryBillingFold, EntryBillingUnit, EntryKind, EntryRef, EntryStatus, EnvelopeEncryption, EnvelopeEncryptionOptions, ErrorClass, ErrorCode, ErrorPolicy, EscalatedResult, EscalationDecision, EscalationDecisionAbortedError, EscalationDigest, EscalationKind, EscalationLimits, EscalationOptions, EscalationReport, EscalationRequest, EventBus, EvidenceContract, type EvidenceRef, type ExecKeyDerivation, type ExecutorRegistry, type ExplorationSummary, ExtensionAppendInput, ExtensionDispatchSpec, ExternalIdentityInput, ExternalRegistry, ExtractNecessityInput, FINALIZE_SYNTHESIS_INSTRUCTION, FINAL_COMPOSITION_LABEL, FINISH_SCHEMA, FINISH_SECTIONAL_SCHEMA, FINISH_TOOL_NAME, FUTURE_RATES_TOLERANCE_MS, FailRunError, FailoverTarget, FailoverTrigger, FallbackField, FallbackTrigger, FencedCodeMode, FileModelKnowledgeStore, FileModelKnowledgeStoreOptions, FileTranscriptStore, type FinalizationWindowBudget, FinishContract, FinishContractCitations, FinishContractGoldenReject, FinishContractManifest, FinishContractSectionPattern, FinishInfo, FinishSelfTestFailure, FinishSelfTestFixtures, FinishSelfTestReport, FinishValidationChild, FinishValidationInput, FinishValidationSpec, FinishValidationVerdict, FinishValidator, GET_CHILD_RESULT_SCHEMA, GET_CHILD_RESULT_TOOL_NAME, GET_SETTLED_CHILD_RESULTS_SCHEMA, GET_SETTLED_CHILD_RESULTS_TOOL_NAME, Gate, GateAudit, type GateRecord, GitWorktreeProvider, GitWorktreeProviderOptions, GraftBoot, HashVersion, HookVerdict, IMPLEMENTATION_PROFILE_LIMITS, INBOX_PROPOSAL_TTL_DAYS, IN_FLIGHT_EXPOSURE_REFUSAL_PREFIX, IdentityInput, InMemoryStore, InMemoryTranscriptStore, InProcessRunner, IncrementalSynthesisResult, InvalidResolutionError, InvocationRole, type InvocationTable, InvoiceCardinality, InvoiceExport, InvoicePricingProvenance, InvoiceReconciliation, InvoiceRow, type IsolatedExecContext, type IsolatedExecRequest, type IsolatedExecutorTag, type IsolationProvider, type IsolationSpec, Issue$1 as Issue, JOURNAL_ENVELOPE_MARKER, JournalCompatSubCode, JournalCompatibilityError, JournalEntry, JournalIntegrityError, JournalMatcher, JournalMissError, JournalOperation, JournalOrderViolation, type JournalPricingSnapshot, JournalSealedError, JournalSerializationContext, JournalSerializationHook, type JournalStore, JournaledChild, JournaledChildRoster, JournaledCriticalPath, JournaledSynthesisCandidate, JournaledSynthesisCandidateReport, type Json, JsonSchema, JsonlFileStore, KB_ACTIVE_CLAIMS_CAP, KB_CARD_RENDER_BUDGET_CHARS, type KbProposal, type KbProposalTrigger, KeyDeriver, KeyRing, KeyedLimiter, KnowledgeCasError, type KnowledgeSnapshot, LARGE_VALUE_WARN_BYTES, LEGACY_LTID_PREFIX, LEGACY_SIGNATURE_INPUTS, LINEAGE_SIG_VERSION, LadderSpec, type LeasableStore, type Lease, LeaseHeldError, Ledger, LineageCounters, LineageIndex, LineageRef, LineageRelation, LineageStats, LogicalRunTelemetry, LogicalTaskId, MASKED_SECRET, MAX_CHILD_RESULT_PAGE_CHARS, MAX_CRITICAL_UNCOVERED, MAX_DEPTH_CEILING, MAX_RUN_FACTS_SHEET_CHARS, MAX_RUN_ID_LENGTH, MAX_TIMER_DELAY_MS, MatchResult, McpConfig, McpToolSource, MechanicalGateProfile, MechanicalGateVerdict, MemoryQuotaLimiter, type MetaLookupStore, type ModelCaps, ModelChoice, type ModelClaim, ModelEpochInputs, type ModelKnowledgeHandle, type ModelKnowledgeStore, ModelListConstraint, ModelRef, ModelRetry, ModelSpec, Msg, NoProgressDetector, NodeId, NodeLinkValue, NonSerializableValueError, ORCHESTRATE_WORKFLOW_NAME, OnEscalation, OperationDisposition, OrchestrateAcceptance, OrchestrateClaimConsistency, OrchestrateClaimConsistencyMeta, OrchestrateContradictions, OrchestrateContradictionsMeta, OrchestrateDraftToFinal, OrchestrateOptions, OrchestrateSynthesis, OrchestrateSynthesisSkipReason, OrchestratorBudgetSpec, OrchestratorCapConfigError, OrchestratorExtension, OrchestratorExtensionIO, OrchestratorRuntime, Out, PARALLEL_AGENTS_SCHEMA, PROGRESS_REPORT_TOOL_NAME, ParallelSiteCounter, Part, PendingExternal, PendingToolTurn, PermissionConfig, PermissionGate, PermissionHook, PermissionPreset, PermissionRule, PermissionVerdict, PersistedTerminalRefusal, PersistedTerminalResult, type PhaseRow, PhaseTarget, PilotAgentProfileOptions, PilotAgentProfileResult, type PinnedPricingSegment, PipelineCollected, PipelineOpts, PlanInvariantError, type PostFanInBreakdown, PreflightAdmissionRow, PreflightFinding, PreflightInput, PreflightOrchestratorSpec, PreflightReport, PreflightSpawnReport, PreflightSpawnSpec, PreflightToolCeiling, PriceTable, PricedComponent, PricedComponents, PricedUsage, type Pricing, type PricingTier, ProgressReport, type ProviderAdapter, ProviderCallRecord, ProviderStatement, QUOTA_WINDOW_MS, QualityFloors, QuotaCounters, type QuotaDecision, type QuotaEstimate, type QuotaLimiter, type QuotaReservationRequest, QuotaRule, QuotaWindowSnapshot, READ_CHILD_ARTIFACT_SCHEMA, READ_CHILD_ARTIFACT_TOOL_NAME, RESEARCH_PROFILE_LIMITS, REVIEW_PROFILE_LIMITS, ROLE_EFFORT_DEFAULTS, ROOT_ACCOUNT, ROOT_SCOPE, RUN_FACTS_ANCHOR, RUN_PROFILES, RUN_SETTLE_DECISION_TYPE, RandIdentityInput, RandPayload, RateLimitObservation, ReconcileOptions, ReconcileResult, ReconcileStatementOptions, RefEntryAppender, RefEntryClassification, RefusalInfo, RejectedFinishCandidate, RepeatedClaim, ReplayDisposition, ReplayMode, ReplayPlanHashMismatch, Replayer, RepositoryResearchToolset, RepositoryResearchToolsetOptions, ResearchAgentProfileOptions, ResearchAgentProfileResult, ResearchEvidenceEntry, ResolutionArbiter, ResolutionAttempt, ResolutionBy, ResolutionFold, ResolutionLayer, ResolutionOutcome, ResolutionPayload, ResolvedInvocation, ResolvedToolset, ResumeHandle, ResumeOptions, ResumePreview, ResumeReport, RetryClass, RetryPolicy, ReuseConfig, RiskRuleValue, Role, RulvarError, RulvarErrorCode, RunAgentOptions, RunAuditVerdict, RunBudget, RunEventSink, RunExport, RunFactPairOptions, RunFactPairsFold, RunFactsSheet, type RunFilter, RunHandle, RunInternals, type RunMeta, RunOptions, RunOutcome, RunProfile, RunStateAudit, RunStatus, RuntimeEventSink, SANDBOX_AGENT_OPT_KEYS, SPAWN_ADMISSION_DECISION_TYPE, SPAWN_AGENT_SCHEMA, SYNTHESIS_NOTE_LABEL, SandboxBridge, SandboxBridgeOptions, SandboxError, SandboxHostToWorker, SandboxMethod, SandboxWorkerToHost, SchemaPair, SchemaSpec, SchemaValidationResult, ScopeSegment, ScriptRejected, ScriptRunner, ScrubNote, SecretMasker, SectionMatchMode, SectionPatternEntry, SemanticPassSummary, SemanticPassesSummary, Semaphore, SerializationHook, Settled, SettlementError, ShellPatternRules, ShellSegment, ShellVerdict, SinglePhaseAppend, SpanMinter, SpanRegistry, SpawnAdmissionValue, SpawnAgentParams, SpawnKey, SpawnLineage, SpawnLineageOpt, SpawnOrigin, SpawnRecord, Spend, Stage, type StandardJSONSchemaV1, type StandardSchemaV1, StatementCategoryRow, StatementColumnMap, StatementCoverage, StatementReconciliation, StatementRequestRow, StepIdentityInput, type StreamHooks, StructuredOutputTier, SupersededError, SuspendedAppend, SuspensionState, SynthesisCandidateFailure, TERMINAL_TELEMETRY_SCOPE, TOOL_NAME_PATTERN, type TaskClass, TaskDigest, TaskSpec, TelemetryScope, type TerminalEnvelope, TerminalOutcomeFacts, TerminalPatch, TerminalTelemetryScopes, TerminationAccount, TerminationAccountSnapshot, TerminationDeniedValue, TerminationDeniedWriter, TerminationInitValue, TerminationLimits, TerminationResource, ToolAuthority, type ToolBudgetSummary, ToolCalibrationExclusion, ToolCalibrationReport, ToolCalibrationRow, ToolCallRequest, ToolChoice, type ToolContext, ToolContextSeed, ToolContract, type ToolDef, type ToolEvents, type ToolExecutor, type ToolExecutorProvider, ToolInit, type ToolRisk, ToolRuntime, type ToolSource, type ToolSourceSession, ToolsOption, ToolsetAttestation, TranscriptSerializationHook, type TranscriptStore, TriggerClass, TtlState, Usage, UsageLimits, UsageSlice, VerifiedRecommendation, WAIT_FOR_EVENTS_SCHEMA, WAIT_FOR_EVENTS_TOOL_NAME, WAKE_SUMMARY_RENDER_BUDGET_CHARS, WakeBudgetBlock, WakeDigest, WakeTrigger, WireError, Workflow, WorkflowCallOpts, type WorkflowEvent, type WorkflowEventBody, WorkflowRegistry, accountSpendFromJournal, admissionReserveUsd, affordableOutputTokens, agentErrorFromWire, agentErrorToWire, agentResultWire, agentScope, applyClaimOps, applyStructuredOutputTier, approachSigCoarse, approachSigOf, archiveDeprecatedModelOps, assertFencedWrites, assertSafeRunId, atCompactionThreshold, attestToolset, auditRun, auditRuns, buildAbandonFold, buildAdapterRegistry, buildCostReport, buildDeriverRegistry, buildOrchestratorTools, buildTerminationInitValue, buildToolContext, canRideLoopTurn, canonicalIsolationTag, canonicalizeLadder, canonicalizeSchema, capIssues, capsHashOf, checkFloors, checkpointRefFor, childCoveragePrefix, childRostersFromJournal, citationTargetsValidator, citedValueValidator, claimCoverageOf, claimExpired, claimExpiry, claimIssues, claimOpIssues, classifyAgentError, classifyAttemptOutcome, collectDeclaredLadders, compactMessages, compareRates, compilePermissionChain, compilePermissionPreset, compileSecretMasker, compileVerifiedLayer, constantTimeEqual, costReportFromJournal, countsAgainstLimit, createCanonicalIdMinter, createCtx, createEngine, createEnvelopeEncryption, createSandboxBridge, criticalPathFromJournal, currentOnlyKeyRing, decodeCheckpoint, dedupeRepeatedClaims, defineWorkflow, deriveContentKey, deriverV1, deriverV2, digestOf, dispatchProjectionReserveUsd, dispositionHook, emptyDigestBlocks, emptyToolset, encodeCheckpoint, enforceToolsetAttestation, entryUsageSlices, escalateTool, evaluatePermission, evaluateReuse, evidenceGradeValidator, evidencePreservedValidator, executeWorkflow, executionFactsOf, exhaustionCodeOf, extractCandidate, failoverTriggerOf, fallbackTriggerOf, filterClaimsForRun, finalizeFires, findContradictions, finishContract, foldLedger, foldTermination, formatCharacterValidator, formatRePrompt, formatScopePath, hasFencedWrites, hasMetaLookup, hashRunArgs, hashRunOutput, hashWorkflowBody, hashWorkflowSource, headingStructureValidator, identityJcs, implementationAgentProfile, invoiceFromJournal, isEscalated, isSchemaPairSpec, isStandardSchemaSpec, isStrictCompatibleSchema, journalPricingSnapshot, kMaxOf, knowledgeHash, ladderLengthOf, ladderRungChoice, lastRunSettle, latestProgressReport, lexShellCommand, liftRetainedParts, lineageWeightOf, localKeyProvider, logicalRunTelemetry, makeOrchestratorWorkflow, maskSecrets, maskSecretsDeep, maskSecretsJson, matchArgvPattern, matchShellCommand, mcp, memoryQuotaLimiter, mergeQuotaDenial, mergeUsageLimits, metaMatchesFilter, minMatchesValidator, modelEpochOf, modelKnowledgeCard, modelSpecIdentity, needsSeparateExtract, nextFailover, nodeLinkKey, normalizeApproachTag, normalizeEntry, normalizeFallbacks, orchestrate, orchestratorAdmissionEstCostUsd, pairDraftClaims, pairRunFactClaims, parallelScope, parseModelRef, parseScopePath, persistedTerminalEnvelope, phiInitialOf, pilotAgentProfile, pipelineScope, planNodeScope, preflightEstimate, priceComponentsOf, priceEntryBilling, priceEntryUsage, priceUsdOf, profileCard, profileRegistrySnapshotHash, progressReportTool, projectHistory, projectIdentity, projectToJsonSchema, proposalStatement, providerOf, quotaActualRequestsDelta, quotaActualTokens, quotaEstimateTokens, quotaRuleAdmission, quotaRuleKey, quotaRuleMatches, readRunMeta, readTerminationInit, reconcileRunMeta, reconcileStatement, reduceAuditTrail, reduceCriticalPath, reduceDecisionChain, reduceInvocationTable, registryKeyRing, remeasureQueue, replayDisposition, repositoryResearchToolset, requiredFieldsValidator, requiredSectionsValidator, researchAgentProfile, resolveModelInvocation, resolvePricing, resolveToolset, retryClassOf, retryDelayMs, reviewAgentProfile, roleConfiguredInRouting, roundOneDisposition, runAgent, runProfile, sanitizeTerminalText, sanitizeTokenCount, sanitizeUsage, sanitizeUsageDelta, scanJournalCompatibility, schemaHash, schemaHashOfSpec, sectionCitationsValidator, sectionPatternCountValidator, selectStructuredOutputTier, selfTestFinishValidation, shouldCompact, snapshotQuotaRules, snapshotUsage, spawnDepthOf, spliceSections, statementFromRows, statementRowsFromDelimited, stripFencedBlocks, sumUsage, summarizeInstruction, summarizeOutput, synthesisCandidatesFromJournal, terminalEnvelopeOf, terminationConfigDrift, tierWithinCaps, toApprovalDecision, toJournalValue, tool, toolAuthority, toolCalibrationFromJournal, toolContract, toolContractHash, toolsetAuthorityHash, toolsetHash, ttlState, usageViolations, validateDetachedResolution, validateEditorialCommit, validateEngineQuotaConfig, validateEntryShape, validateEscalationLimits, validateEscalationReport, validateQuotaRules, validateRetryPolicy, validateSchemaSpec, validateTerminationLimits, validateToolsetAttestation, validateUsageLimits, wordCountValidator, workflowScope, workflowSourceRef, wrapJournalStore, wrapTranscriptStore };
15567
+ export { AWAIT_SCHEMA, AbandonAttempt, AbandonFold, AbandonPayload, AbandonedSpendView, AbortClass, AcceptanceChildSummary, type AdaptiveEvents, AdmissionController, AdmissionDecision, AdmissionRejectedError, AdmissionStatsBefore, AdmitLineage, AdmitRejectReason, AdmitSpec, AdmitVerdict, AgentCallError, AgentError, type AgentEvents, AgentIdentityInput, type AgentInvocationRow, AgentOpts, AgentProfile, AgentProfilePermissions, AgentProfileTemplateOptions, AgentResult, AgentResultMeta, AgentStatus, type AppliedPricingRow, ApproachSignatureInputs, ApprovalDecision, ApprovalIdentityInput, Artifact, AttemptOutcomeClass, AuditCategory, AuditRecord, AuditRunsOptions, BUDGET_ABORT_REASON, BaseAppend, BillingComponent, BriefOpts, BudgetAccountView, BudgetDefaults, BudgetExhaustedError, BudgetExhaustionDiagnostics, BudgetHooks, BudgetReserve, type Bytes, CANCEL_AGENT_SCHEMA, CHECKPOINT_FORMAT_V1, CLAIM_JUDGE_LABEL, CLAIM_STATEMENT_MAX_CHARS, CLAIM_TTL_DAYS, COMPACTION_SUMMARY_PREFIX, CURRENT_HASH_VERSION, CacheHint, CachePolicy, CacheTtl, CanUseTool, CanonicalId, CanonicalIdentity, CanonicalLadderSpec, CanonicalModelSpec, ChatEvent, ChatRequest, CheckpointState, ChildArtifactPage, ChildExecutionFacts, ChildIdentityInput, ChildResultPage, ChildrenAtFailure, CitationTarget, type ClaimClass, ClaimContradictionFinding, ClaimCoverageGrade, ClaimCoverageInput, type ClaimOp, ClaimPair, ClaimPairOptions, ClaimPairsFold, ClaimPoolReading, type ClaimStatus, ClaimValidationOptions, CollectOpts, CollectedTurn, CompactionConfig, CompiledPermissionChain, CompiledWorkflow, ComponentDelta, ConfigError, Contradiction, ContradictionClaim, ContradictionOptions, ContradictionSource, type CoreEvents, CostAttribution, CostAttributionFacts, type CostBasis, CostReport, CreateEngineOptions, type CriticalPath, Ctx, DECISION_CHAIN_KINDS, DEFAULT_ANCHOR_PATTERN, DEFAULT_ARTIFACT_PATTERN, DEFAULT_CHILD_BUDGET_FRACTION, DEFAULT_CHILD_RESULT_PAGE_CHARS, DEFAULT_CITATION_PATTERN, DEFAULT_CITATION_SAMPLE, DEFAULT_CLAIM_JUDGE_MAX_TURNS, DEFAULT_COMPACTION_THRESHOLD, DEFAULT_ESCALATION_LIMITS, DEFAULT_EVIDENCE_CALLS_PER_ENTRY, DEFAULT_EVIDENCE_GRADE_PHRASES, DEFAULT_EVIDENCE_MIN_SHARE, DEFAULT_EVIDENCE_OVERHEAD_CALLS, DEFAULT_FINISH_MAX_REPAIRS, DEFAULT_FLAT_RESERVE_USD, DEFAULT_MAX_CHILDREN_PER_NODE, DEFAULT_MAX_CLAIM_PAIRS, DEFAULT_MAX_CONTRADICTIONS, DEFAULT_MAX_DEPTH, DEFAULT_MAX_EXCERPT_CHARS, DEFAULT_MAX_OSCILLATIONS_PER_KEY, DEFAULT_MAX_PAIR_EXCERPT_CHARS, DEFAULT_MAX_PINNED_WORKTREES, DEFAULT_MAX_POOL_PER_PAIR, DEFAULT_MAX_QUOTA_DENIALS, DEFAULT_MAX_REVISIONS_PER_RUN, DEFAULT_MAX_RUN_FACT_PAIRS, DEFAULT_MAX_TOTAL_SPAWNS, DEFAULT_MAX_TURNS, DEFAULT_MODEL_RETRY_ATTEMPTS, DEFAULT_NO_PROGRESS_TURNS, DEFAULT_PER_RUN_CONCURRENCY, DEFAULT_RETRY_POLICY, DEFAULT_STREAM_IDLE_TIMEOUT_MS, DEFAULT_SYNTHESIS_MAX_TURNS, DEFAULT_SYNTHESIS_NOTE_MAX_TURNS, DataKeyProvider, DebitResult, DecisionChainRow, DeclaredLadder, DedupIndex, DedupNote, DedupedClaims, DelimitedStatementOptions, DerivedKey, DeriverRegistry, type DeterminismConfig, DeterminismError, type DeterminismEvents, type DeterminismMode, DispositionRule, DispositionTable, DocumentedRates, DonorCandidate, DonorRef, DroppedItem, EMIT_RESULT_TOOL, EMPTY_AUTHORITY_HASH, EMPTY_SCHEMA_HASH, EMPTY_TOOLSET_HASH, ESCALATE_TOOL_NAME, ESCALATION_REPORT_SCHEMA, ESCALATION_REQUEST_SCHEMA, EVENT_SEGMENT_STRIDE, EXPOSURE_WAIT_SWEEP_MS, EffectiveUsageLimits, Effort, Engine, EngineDefaults, EngineQuotaConfig, EngineQuotaRuntime, EntryBillingFold, EntryBillingUnit, EntryKind, EntryRef, EntryStatus, EnvelopeEncryption, EnvelopeEncryptionOptions, ErrorClass, ErrorCode, ErrorPolicy, EscalatedResult, EscalationDecision, EscalationDecisionAbortedError, EscalationDigest, EscalationKind, EscalationLimits, EscalationOptions, EscalationReport, EscalationRequest, EventBus, EvidenceContract, type EvidenceRef, type ExecKeyDerivation, type ExecutorRegistry, type ExplorationSummary, ExtensionAppendInput, ExtensionDispatchSpec, ExternalIdentityInput, ExternalRegistry, ExtractNecessityInput, FINALIZE_SYNTHESIS_INSTRUCTION, FINAL_COMPOSITION_LABEL, FINISH_SCHEMA, FINISH_SECTIONAL_SCHEMA, FINISH_TOOL_NAME, FUTURE_RATES_TOLERANCE_MS, FailRunError, FailoverTarget, FailoverTrigger, FallbackField, FallbackTrigger, FencedCodeMode, FileModelKnowledgeStore, FileModelKnowledgeStoreOptions, FileTranscriptStore, type FinalizationWindowBudget, FinishContract, FinishContractCitations, FinishContractGoldenReject, FinishContractManifest, FinishContractSectionPattern, FinishInfo, FinishSelfTestFailure, FinishSelfTestFixtures, FinishSelfTestReport, FinishValidationChild, FinishValidationInput, FinishValidationSpec, FinishValidationVerdict, FinishValidator, GET_CHILD_RESULT_SCHEMA, GET_CHILD_RESULT_TOOL_NAME, GET_SETTLED_CHILD_RESULTS_SCHEMA, GET_SETTLED_CHILD_RESULTS_TOOL_NAME, Gate, GateAudit, type GateRecord, GitWorktreeProvider, GitWorktreeProviderOptions, GraftBoot, HashVersion, HookVerdict, IMPLEMENTATION_PROFILE_LIMITS, INBOX_PROPOSAL_TTL_DAYS, IN_FLIGHT_EXPOSURE_REFUSAL_PREFIX, IdentityInput, InMemoryStore, InMemoryTranscriptStore, InProcessRunner, IncrementalSynthesisResult, InvalidResolutionError, InvocationRole, type InvocationTable, InvoiceCardinality, InvoiceExport, InvoicePricingProvenance, InvoiceReconciliation, InvoiceRow, type IsolatedExecContext, type IsolatedExecRequest, type IsolatedExecutorTag, type IsolationProvider, type IsolationSpec, Issue$1 as Issue, JOURNAL_ENVELOPE_MARKER, JournalCompatSubCode, JournalCompatibilityError, JournalEntry, JournalIntegrityError, JournalMatcher, JournalMissError, JournalOperation, JournalOrderViolation, type JournalPricingSnapshot, JournalSealedError, JournalSerializationContext, JournalSerializationHook, type JournalStore, JournaledChild, JournaledChildRoster, JournaledCriticalPath, JournaledSynthesisCandidate, JournaledSynthesisCandidateReport, type Json, JsonSchema, JsonlFileStore, KB_ACTIVE_CLAIMS_CAP, KB_CARD_RENDER_BUDGET_CHARS, type KbProposal, type KbProposalTrigger, KeyDeriver, KeyRing, KeyedLimiter, KnowledgeCasError, type KnowledgeSnapshot, LARGE_VALUE_WARN_BYTES, LEGACY_LTID_PREFIX, LEGACY_SIGNATURE_INPUTS, LINEAGE_SIG_VERSION, LadderSpec, type LeasableStore, type Lease, LeaseHeldError, Ledger, LineageCounters, LineageIndex, LineageRef, LineageRelation, LineageStats, LogicalRunTelemetry, LogicalTaskId, MASKED_SECRET, MAX_CHILD_RESULT_PAGE_CHARS, MAX_CRITICAL_UNCOVERED, MAX_DEPTH_CEILING, MAX_RUN_FACTS_SHEET_CHARS, MAX_RUN_ID_LENGTH, MAX_TIMER_DELAY_MS, MatchResult, McpConfig, McpToolSource, MechanicalGateProfile, MechanicalGateVerdict, MemoryQuotaLimiter, type MetaLookupStore, type ModelCaps, ModelChoice, type ModelClaim, ModelEpochInputs, type ModelKnowledgeHandle, type ModelKnowledgeStore, ModelListConstraint, ModelRef, ModelRetry, ModelSpec, Msg, NoProgressDetector, NodeId, NodeLinkValue, NonSerializableValueError, ORCHESTRATE_WORKFLOW_NAME, OnEscalation, OperationDisposition, OrchestrateAcceptance, OrchestrateClaimConsistency, OrchestrateClaimConsistencyMeta, OrchestrateContradictions, OrchestrateContradictionsMeta, OrchestrateDraftToFinal, OrchestrateOptions, OrchestrateSynthesis, OrchestrateSynthesisSkipReason, OrchestratorBudgetSpec, OrchestratorCapConfigError, OrchestratorExtension, OrchestratorExtensionIO, OrchestratorRuntime, Out, OutputContractManifest, PARALLEL_AGENTS_SCHEMA, PROGRESS_REPORT_TOOL_NAME, ParallelSiteCounter, Part, PendingExternal, PendingToolTurn, PermissionConfig, PermissionGate, PermissionHook, PermissionPreset, PermissionRule, PermissionVerdict, PersistedTerminalRefusal, PersistedTerminalResult, type PhaseRow, PhaseTarget, PilotAgentProfileOptions, PilotAgentProfileResult, type PinnedPricingSegment, PipelineCollected, PipelineOpts, PlanInvariantError, type PostFanInBreakdown, PreflightAdmissionRow, PreflightFinding, PreflightInput, PreflightOrchestratorSpec, PreflightReport, PreflightSpawnReport, PreflightSpawnSpec, PreflightToolCeiling, PriceTable, PricedComponent, PricedComponents, PricedUsage, type Pricing, type PricingTier, ProgressReport, type ProviderAdapter, ProviderCallRecord, ProviderStatement, QUOTA_WINDOW_MS, QualityFloors, QuotaCounters, type QuotaDecision, type QuotaEstimate, type QuotaLimiter, type QuotaReservationRequest, QuotaRule, QuotaWindowSnapshot, READ_CHILD_ARTIFACT_SCHEMA, READ_CHILD_ARTIFACT_TOOL_NAME, RESEARCH_PROFILE_LIMITS, REVIEW_PROFILE_LIMITS, ROLE_EFFORT_DEFAULTS, ROOT_ACCOUNT, ROOT_SCOPE, RUN_FACTS_ANCHOR, RUN_PROFILES, RUN_SETTLE_DECISION_TYPE, RandIdentityInput, RandPayload, RateLimitObservation, ReconcileOptions, ReconcileResult, ReconcileStatementOptions, RefEntryAppender, RefEntryClassification, RefusalInfo, RejectedFinishCandidate, RepeatedClaim, ReplayDisposition, ReplayMode, ReplayPlanHashMismatch, Replayer, RepositoryResearchToolset, RepositoryResearchToolsetOptions, ResearchAgentProfileOptions, ResearchAgentProfileResult, ResearchEvidenceEntry, ResolutionArbiter, ResolutionAttempt, ResolutionBy, ResolutionFold, ResolutionLayer, ResolutionOutcome, ResolutionPayload, ResolvedInvocation, ResolvedToolset, ResumeHandle, ResumeOptions, ResumePreview, ResumeReport, RetryClass, RetryPolicy, ReuseConfig, RiskRuleValue, Role, RulvarError, RulvarErrorCode, RunAgentOptions, RunAuditVerdict, RunBudget, RunEventSink, RunExport, RunFactPairOptions, RunFactPairsFold, RunFactsSheet, type RunFilter, RunHandle, RunInternals, type RunMeta, RunOptions, RunOutcome, RunProfile, RunStateAudit, RunStatus, RuntimeEventSink, SANDBOX_AGENT_OPT_KEYS, SPAWN_ADMISSION_DECISION_TYPE, SPAWN_AGENT_SCHEMA, SYNTHESIS_NOTE_LABEL, SandboxBridge, SandboxBridgeOptions, SandboxError, SandboxHostToWorker, SandboxMethod, SandboxWorkerToHost, SchemaPair, SchemaSpec, SchemaValidationResult, ScopeSegment, ScriptRejected, ScriptRunner, ScrubNote, SecretMasker, SectionMatchMode, SectionPatternEntry, SemanticPassSummary, SemanticPassesSummary, Semaphore, SerializationHook, Settled, SettlementError, ShellPatternRules, ShellSegment, ShellVerdict, SinglePhaseAppend, SpanMinter, SpanRegistry, SpawnAdmissionValue, SpawnAgentParams, SpawnKey, SpawnLineage, SpawnLineageOpt, SpawnOrigin, SpawnRecord, Spend, Stage, type StandardJSONSchemaV1, type StandardSchemaV1, StatementCategoryRow, StatementColumnMap, StatementCoverage, StatementReconciliation, StatementRequestRow, StepIdentityInput, type StreamHooks, StructuredOutputTier, SupersededError, SuspendedAppend, SuspensionState, SynthesisCandidateFailure, TERMINAL_TELEMETRY_SCOPE, TOOL_NAME_PATTERN, type TaskClass, TaskDigest, TaskSpec, TelemetryScope, type TerminalEnvelope, TerminalOutcomeFacts, TerminalPatch, TerminalTelemetryScopes, TerminationAccount, TerminationAccountSnapshot, TerminationDeniedValue, TerminationDeniedWriter, TerminationInitValue, TerminationLimits, TerminationResource, ToolAuthority, type ToolBudgetSummary, ToolCalibrationExclusion, ToolCalibrationReport, ToolCalibrationRow, ToolCallRequest, ToolChoice, type ToolContext, ToolContextSeed, ToolContract, type ToolDef, type ToolEvents, type ToolExecutor, type ToolExecutorProvider, ToolInit, type ToolRisk, ToolRuntime, type ToolSource, type ToolSourceSession, ToolsOption, ToolsetAttestation, TranscriptSerializationHook, type TranscriptStore, TriggerClass, TtlState, Usage, UsageLimits, UsageSlice, VerifiedRecommendation, WAIT_FOR_EVENTS_SCHEMA, WAIT_FOR_EVENTS_TOOL_NAME, WAKE_SUMMARY_RENDER_BUDGET_CHARS, WakeBudgetBlock, WakeDigest, WakeTrigger, WireError, Workflow, WorkflowCallOpts, type WorkflowEvent, type WorkflowEventBody, WorkflowRegistry, accountSpendFromJournal, admissionReserveUsd, affordableOutputTokens, agentErrorFromWire, agentErrorToWire, agentResultWire, agentScope, applyClaimOps, applyStructuredOutputTier, approachSigCoarse, approachSigOf, archiveDeprecatedModelOps, assertFencedWrites, assertSafeRunId, atCompactionThreshold, attestToolset, auditRun, auditRuns, buildAbandonFold, buildAdapterRegistry, buildCostReport, buildDeriverRegistry, buildOrchestratorTools, buildTerminationInitValue, buildToolContext, canRideLoopTurn, canonicalIsolationTag, canonicalizeLadder, canonicalizeSchema, capIssues, capsHashOf, checkFloors, checkpointRefFor, childCoveragePrefix, childRostersFromJournal, citationTargetsValidator, citedValueValidator, claimCoverageOf, claimExpired, claimExpiry, claimIssues, claimOpIssues, classifyAgentError, classifyAttemptOutcome, collectDeclaredLadders, compactMessages, compareRates, compilePermissionChain, compilePermissionPreset, compileSecretMasker, compileVerifiedLayer, constantTimeEqual, costReportFromJournal, countsAgainstLimit, createCanonicalIdMinter, createCtx, createEngine, createEnvelopeEncryption, createSandboxBridge, criticalPathFromJournal, currentOnlyKeyRing, decodeCheckpoint, dedupeRepeatedClaims, defineWorkflow, deriveContentKey, deriverV1, deriverV2, digestOf, dispatchProjectionReserveUsd, dispositionHook, emptyDigestBlocks, emptyToolset, encodeCheckpoint, enforceToolsetAttestation, entryUsageSlices, escalateTool, evaluatePermission, evaluateReuse, evidenceGradeValidator, evidencePreservedValidator, executeWorkflow, executionFactsOf, exhaustionCodeOf, extractCandidate, failoverTriggerOf, fallbackTriggerOf, filterClaimsForRun, finalizeFires, findContradictions, finishContract, foldLedger, foldTermination, formatCharacterValidator, formatRePrompt, formatScopePath, hasFencedWrites, hasMetaLookup, hashRunArgs, hashRunOutput, hashWorkflowBody, hashWorkflowSource, headingStructureValidator, identityJcs, implementationAgentProfile, invoiceFromJournal, isEscalated, isSchemaPairSpec, isStandardSchemaSpec, isStrictCompatibleSchema, journalPricingSnapshot, kMaxOf, knowledgeHash, ladderLengthOf, ladderRungChoice, lastRunSettle, latestProgressReport, lexShellCommand, liftRetainedParts, lineageWeightOf, localKeyProvider, logicalRunTelemetry, makeOrchestratorWorkflow, manifestValidators, maskSecrets, maskSecretsDeep, maskSecretsJson, matchArgvPattern, matchShellCommand, mcp, memoryQuotaLimiter, mergeQuotaDenial, mergeUsageLimits, metaMatchesFilter, minMatchesValidator, modelEpochOf, modelKnowledgeCard, modelSpecIdentity, needsSeparateExtract, nextFailover, nodeLinkKey, normalizeApproachTag, normalizeEntry, normalizeFallbacks, orchestrate, orchestratorAdmissionEstCostUsd, pairDraftClaims, pairRunFactClaims, parallelScope, parseModelRef, parseScopePath, persistedTerminalEnvelope, phiInitialOf, pilotAgentProfile, pipelineScope, planNodeScope, preflightEstimate, priceComponentsOf, priceEntryBilling, priceEntryUsage, priceUsdOf, profileCard, profileRegistrySnapshotHash, progressReportTool, projectHistory, projectIdentity, projectToJsonSchema, proposalStatement, providerOf, quotaActualRequestsDelta, quotaActualTokens, quotaEstimateTokens, quotaRuleAdmission, quotaRuleKey, quotaRuleMatches, readRunMeta, readTerminationInit, reconcileRunMeta, reconcileStatement, reduceAuditTrail, reduceCriticalPath, reduceDecisionChain, reduceInvocationTable, registryKeyRing, remeasureQueue, renderContractRequirements, replayDisposition, repositoryResearchToolset, requiredFieldsValidator, requiredMentionsValidator, requiredSectionsValidator, researchAgentProfile, resolveModelInvocation, resolvePricing, resolveToolset, retryClassOf, retryDelayMs, reviewAgentProfile, roleConfiguredInRouting, roundOneDisposition, runAgent, runProfile, sanitizeTerminalText, sanitizeTokenCount, sanitizeUsage, sanitizeUsageDelta, scanJournalCompatibility, schemaHash, schemaHashOfSpec, sectionCitationsValidator, sectionPatternCountValidator, selectStructuredOutputTier, selfTestFinishValidation, shouldCompact, snapshotQuotaRules, snapshotUsage, spawnDepthOf, spliceSections, statementFromRows, statementRowsFromDelimited, stripFencedBlocks, sumUsage, summarizeInstruction, summarizeOutput, synthesisCandidatesFromJournal, terminalEnvelopeOf, terminationConfigDrift, tierWithinCaps, toApprovalDecision, toJournalValue, tool, toolAuthority, toolCalibrationFromJournal, toolContract, toolContractHash, toolsetAuthorityHash, toolsetHash, ttlState, usageViolations, validateDetachedResolution, validateEditorialCommit, validateEngineQuotaConfig, validateEntryShape, validateEscalationLimits, validateEscalationReport, validateQuotaRules, validateRetryPolicy, validateSchemaSpec, validateTerminationLimits, validateToolsetAttestation, validateUsageLimits, wordCountValidator, workflowScope, workflowSourceRef, wrapJournalStore, wrapTranscriptStore };
package/dist/index.js CHANGED
@@ -1327,6 +1327,20 @@ function detachedError(error) {
1327
1327
  }
1328
1328
  }
1329
1329
  /**
1330
+ * A detached copy of the judge meta (RV3304), the `detachedError`
1331
+ * posture: Json shaped by construction, so a structured clone
1332
+ * reproduces it exactly, and a host that smuggled something exotic
1333
+ * past the type falls back to a shallow copy rather than throwing at
1334
+ * the settlement chokepoint.
1335
+ */
1336
+ function detachedMeta(meta) {
1337
+ try {
1338
+ return structuredClone(meta);
1339
+ } catch {
1340
+ return { ...meta };
1341
+ }
1342
+ }
1343
+ /**
1330
1344
  * Assembles one terminal envelope (RV1105). `settlement` present means
1331
1345
  * nothing durable records the terminal: `settled` reads false, and the
1332
1346
  * optional `settledReason: 'superseded'` names the fenced-out segment
@@ -1356,6 +1370,11 @@ function terminalEnvelopeOf(input) {
1356
1370
  };
1357
1371
  if (outcome.error !== void 0) envelope.error = detachedError(outcome.error);
1358
1372
  if (outcome.completion !== void 0) envelope.completion = outcome.completion;
1373
+ if (outcome.deliverableAccepted !== void 0) envelope.deliverableAccepted = outcome.deliverableAccepted;
1374
+ if (outcome.resultAvailable !== void 0) envelope.resultAvailable = outcome.resultAvailable;
1375
+ if (outcome.acceptedArtifactRef !== void 0) envelope.acceptedArtifactRef = outcome.acceptedArtifactRef;
1376
+ if (outcome.claimConsistencyMeta !== void 0) envelope.claimConsistencyMeta = detachedMeta(outcome.claimConsistencyMeta);
1377
+ if (input.configFingerprint !== void 0) envelope.configFingerprint = input.configFingerprint;
1359
1378
  if (outcome.cost.wireRequests !== void 0) envelope.wireRequests = outcome.cost.wireRequests;
1360
1379
  if (input.settlement?.settledReason !== void 0) envelope.settledReason = input.settlement.settledReason;
1361
1380
  if (input.provenance !== void 0) envelope.provenance = input.provenance;
@@ -3139,11 +3158,17 @@ function requireTimerDelayMs(value, site) {
3139
3158
  * same shapes with the same wording.
3140
3159
  */
3141
3160
  function validateEvidenceContract(value, site) {
3142
- if (typeof value !== "object" || value === null || Array.isArray(value)) throw new ConfigError(`${site} must be { minEntries, estCallsPerEntry?, overheadCalls?, enforce? }; got ${typeof value}`);
3143
- const { minEntries, estCallsPerEntry, overheadCalls, enforce } = value;
3161
+ if (typeof value !== "object" || value === null || Array.isArray(value)) throw new ConfigError(`${site} must be { minEntries, estCallsPerEntry?, overheadCalls?, calibration?, enforce? }; got ${typeof value}`);
3162
+ const { minEntries, estCallsPerEntry, overheadCalls, calibration, enforce } = value;
3144
3163
  requirePositiveInteger$2(minEntries, `${site}.minEntries`);
3145
3164
  if (estCallsPerEntry !== void 0) requirePositiveInteger$2(estCallsPerEntry, `${site}.estCallsPerEntry`);
3146
3165
  if (overheadCalls !== void 0) requireNonNegativeInteger(overheadCalls, `${site}.overheadCalls`);
3166
+ if (calibration !== void 0) {
3167
+ if (typeof calibration !== "object" || calibration === null || Array.isArray(calibration)) throw new ConfigError(`${site}.calibration must be { callsPerEntry, source? }; got ${typeof calibration}`);
3168
+ const { callsPerEntry, source } = calibration;
3169
+ if (typeof callsPerEntry !== "number" || !Number.isFinite(callsPerEntry) || callsPerEntry <= 0) throw new ConfigError(`${site}.calibration.callsPerEntry must be a positive finite number; got ` + JSON.stringify(callsPerEntry));
3170
+ if (source !== void 0 && (typeof source !== "string" || source.length === 0)) throw new ConfigError(`${site}.calibration.source must be a non empty string when present; got ` + JSON.stringify(source));
3171
+ }
3147
3172
  if (enforce !== void 0 && enforce !== "warn" && enforce !== "refuse") throw new ConfigError(`${site}.enforce must be 'warn' or 'refuse'; got ${JSON.stringify(enforce)}`);
3148
3173
  }
3149
3174
  /**
@@ -8806,17 +8831,36 @@ function lastRunSettle(entries) {
8806
8831
  if (value?.decisionType === "run_settle" && typeof value.runStatus === "string" && RUN_STATUSES.has(value.runStatus)) {
8807
8832
  const completion = value.completion;
8808
8833
  const rejected = readRejectedFinishCandidates(value.rejectedFinishCandidates);
8834
+ const judgeMeta = readClaimConsistencyMeta(value.claimConsistencyMeta);
8809
8835
  return {
8810
8836
  runStatus: value.runStatus,
8811
8837
  seq: entry.seq,
8812
8838
  ...typeof value.outputHash === "string" ? { outputHash: value.outputHash } : {},
8813
8839
  ...completion === "complete" || completion === "partial" || completion === "rejected" ? { completion } : {},
8814
- ...rejected === void 0 ? {} : { rejectedFinishCandidates: rejected }
8840
+ ...rejected === void 0 ? {} : { rejectedFinishCandidates: rejected },
8841
+ ...typeof value.deliverableAccepted === "boolean" ? { deliverableAccepted: value.deliverableAccepted } : {},
8842
+ ...typeof value.resultAvailable === "boolean" ? { resultAvailable: value.resultAvailable } : {},
8843
+ ...typeof value.acceptedArtifactRef === "number" && Number.isSafeInteger(value.acceptedArtifactRef) && value.acceptedArtifactRef >= 0 ? { acceptedArtifactRef: value.acceptedArtifactRef } : {},
8844
+ ...judgeMeta === void 0 ? {} : { claimConsistencyMeta: judgeMeta }
8815
8845
  };
8816
8846
  }
8817
8847
  }
8818
8848
  }
8819
8849
  /**
8850
+ * The judge meta of a persisted settle, or `undefined` (RV3304). The
8851
+ * whole object drops unless its load bearing fields are shaped as the
8852
+ * live producer writes them (`judgeInvoked`, the coverage grade, the
8853
+ * judged stage and hash): a partially shaped meta read as a verdict
8854
+ * would claim semantic ground the journal does not hold, the same
8855
+ * posture as `readRejectedFinishCandidates`.
8856
+ */
8857
+ function readClaimConsistencyMeta(raw) {
8858
+ if (typeof raw !== "object" || raw === null || Array.isArray(raw)) return;
8859
+ const meta = raw;
8860
+ if (typeof meta.judgeInvoked !== "boolean" || typeof meta.coverage !== "string" || meta.judgedStage !== "draft" && meta.judgedStage !== "final" || typeof meta.judgedHash !== "string") return;
8861
+ return { ...raw };
8862
+ }
8863
+ /**
8820
8864
  * The rejected finish candidates of a persisted settle, or `undefined`
8821
8865
  * (RV2605). The WHOLE list drops on any malformed row, the same posture
8822
8866
  * the live lift takes (RV2507): a partial history read as complete
@@ -9286,6 +9330,21 @@ function reduceInvocationTable(events) {
9286
9330
  */
9287
9331
  const CLAIM_JUDGE_LABEL = "claim-consistency-judge";
9288
9332
  /**
9333
+ * Whether a synthesize span's label names a claim-consistency judge
9334
+ * invocation: the exact {@link CLAIM_JUDGE_LABEL}, or a suffixed
9335
+ * variant of it (the final pass dispatches under
9336
+ * `claim-consistency-judge-final` since RV2509 so the two passes of
9337
+ * `stage: 'both'` stay separable). BOTH reducers must classify through
9338
+ * this one predicate (RV3302): the live fold compared the label for
9339
+ * exact equality while the journal fold accepted the suffix, and the
9340
+ * 2026-08-12 comparison run reported semanticJudgeMs 0 with the whole
9341
+ * 272923 ms window read as final composition on the live surface
9342
+ * while the journal fold correctly split 224864 against 48059.
9343
+ */
9344
+ function isClaimJudgeLabel(label) {
9345
+ return label === "claim-consistency-judge" || (label?.startsWith(`claim-consistency-judge-`) ?? false);
9346
+ }
9347
+ /**
9289
9348
  * The label the final synthesis (composition) invocation dispatches
9290
9349
  * under (RV2901). The engine labelling its OWN dispatches is what lets
9291
9350
  * `criticalPathFromJournal` split the synthesize bucket offline: the
@@ -9366,7 +9425,7 @@ function reduceCriticalPath(events) {
9366
9425
  if (started === void 0) break;
9367
9426
  if (started.role === "synthesize") {
9368
9427
  const wall = Math.max(0, at - started.at);
9369
- const judge = started.label === CLAIM_JUDGE_LABEL;
9428
+ const judge = isClaimJudgeLabel(started.label);
9370
9429
  synthesisMs += wall;
9371
9430
  if (judge) semanticJudgeMs += wall;
9372
9431
  else finalCompositionMs += wall;
@@ -9510,7 +9569,7 @@ function criticalPathFromJournal(entries) {
9510
9569
  continue;
9511
9570
  }
9512
9571
  labelledSynthesis = true;
9513
- if (label === "claim-consistency-judge" || label.startsWith(`claim-consistency-judge-`)) semanticJudgeMs += wall;
9572
+ if (isClaimJudgeLabel(label)) semanticJudgeMs += wall;
9514
9573
  else finalCompositionMs += wall;
9515
9574
  }
9516
9575
  const segments = logicalRunTelemetry(ordered).segments;
@@ -15765,6 +15824,20 @@ function sliceRemainder(slice, records) {
15765
15824
  if (reasoning > 0) remainder.reasoningTokens = reasoning;
15766
15825
  return USAGE_FIELDS.some((field) => remainder[field] > 0) || (remainder.reasoningTokens ?? 0) > 0 ? remainder : void 0;
15767
15826
  }
15827
+ /**
15828
+ * One export row's usage envelope (RV3311): every row carries the SAME
15829
+ * field set, `reasoningTokens` included (0 when the provider reported
15830
+ * none), and the object is detached from the journal entry it was read
15831
+ * from. The 2026-08-12 comparison run's invoice had 77 rows with the
15832
+ * field and one without, and a FinOps consumer folding the column had
15833
+ * to know that absence meant zero on exactly one row shape.
15834
+ */
15835
+ function rowUsage(usage) {
15836
+ return {
15837
+ ...usage,
15838
+ reasoningTokens: usage.reasoningTokens ?? 0
15839
+ };
15840
+ }
15768
15841
  /** One allocation pool per (entry, serving model) slice of the gross fold. */
15769
15842
  function allocationKey(entrySeq, servedBy) {
15770
15843
  return `${String(entrySeq)} ${servedBy}`;
@@ -15880,7 +15953,7 @@ function invoiceFromJournal(entries, priceUsd, options) {
15880
15953
  ...record.responseId === void 0 ? {} : { responseId: record.responseId },
15881
15954
  ...record.wireResponseIds === void 0 ? {} : { wireResponseIds: record.wireResponseIds },
15882
15955
  ...record.wireRequests === void 0 ? {} : { wireRequests: record.wireRequests },
15883
- usage: record.usage,
15956
+ usage: rowUsage(record.usage),
15884
15957
  ...record.usageApprox === true ? { usageApprox: true } : {},
15885
15958
  ...usageUnknown ? { usageUnknown: true } : {},
15886
15959
  ...usd === void 0 ? {} : { usd },
@@ -15898,7 +15971,7 @@ function invoiceFromJournal(entries, priceUsd, options) {
15898
15971
  servedBy: slice.servedBy,
15899
15972
  ...slice.role === void 0 ? {} : { role: slice.role },
15900
15973
  outcome: "unattributed",
15901
- usage: slice.usage,
15974
+ usage: rowUsage(slice.usage),
15902
15975
  ...entry.usageApprox === true ? { usageApprox: true } : {},
15903
15976
  ...usd === void 0 ? {} : { usd },
15904
15977
  allocatedUsd: 0,
@@ -15920,7 +15993,7 @@ function invoiceFromJournal(entries, priceUsd, options) {
15920
15993
  servedBy: slice.servedBy,
15921
15994
  ...slice.role === void 0 ? {} : { role: slice.role },
15922
15995
  outcome: "unattributed",
15923
- usage: remainder,
15996
+ usage: rowUsage(remainder),
15924
15997
  ...entry.usageApprox === true ? { usageApprox: true } : {},
15925
15998
  ...usd === void 0 ? {} : { usd },
15926
15999
  allocatedUsd: 0,
@@ -15950,7 +16023,7 @@ function invoiceFromJournal(entries, priceUsd, options) {
15950
16023
  role: typeof record.role === "string" ? record.role : "loop",
15951
16024
  attempt: typeof record.attempt === "number" ? record.attempt : 1,
15952
16025
  outcome: typeof record.outcome === "string" ? record.outcome : "ok",
15953
- usage: record.usage,
16026
+ usage: rowUsage(record.usage),
15954
16027
  ...usd === void 0 ? {} : { usd },
15955
16028
  ...typeof record.responseId === "string" ? { responseId: record.responseId } : {}
15956
16029
  });
@@ -16111,6 +16184,7 @@ function reconcileStatement(invoice, statement, options) {
16111
16184
  let statementComponents;
16112
16185
  let matchedStatementRows = 0;
16113
16186
  let matchedUsdRows = 0;
16187
+ let matchedDollarRows = 0;
16114
16188
  let tokenMismatches = 0;
16115
16189
  let partialOverlap = false;
16116
16190
  const tokenMismatchSample = [];
@@ -16215,6 +16289,7 @@ function reconcileStatement(invoice, statement, options) {
16215
16289
  for (const row of statement.rows) {
16216
16290
  if (!matchedStatement.has(row.responseId)) continue;
16217
16291
  matchedStatementRows += 1;
16292
+ if (row.usd !== void 0 || row.componentsUsd !== void 0) matchedDollarRows += 1;
16218
16293
  if (row.usd !== void 0) {
16219
16294
  matchedUsdRows += 1;
16220
16295
  totalSeen = true;
@@ -16320,6 +16395,10 @@ function reconcileStatement(invoice, statement, options) {
16320
16395
  else if (matchedRows === 0 && !partialOverlap) verdict = "no-overlap";
16321
16396
  else if (!coverageComplete) verdict = "partial-coverage";
16322
16397
  else verdict = "match";
16398
+ const dollarClaims = statement.kind === "requests" ? matchedDollarRows : components.filter((line) => line.statementUsd !== void 0).length;
16399
+ const dollarSlots = statement.kind === "requests" ? matchedStatementRows : components.length;
16400
+ const dollarCoverage = dollarSlots > 0 && dollarClaims === dollarSlots ? "complete" : dollarClaims > 0 ? "partial" : "none";
16401
+ const settleable = verdict === "match" && coverageComplete && usageUnknownRows === 0 && unpricedModels.size === 0;
16323
16402
  return {
16324
16403
  mode: statement.kind,
16325
16404
  coverage: {
@@ -16345,7 +16424,9 @@ function reconcileStatement(invoice, statement, options) {
16345
16424
  usageUnknownRows,
16346
16425
  componentToleranceUsd,
16347
16426
  verdict,
16348
- settleable: verdict === "match" && coverageComplete && usageUnknownRows === 0 && unpricedModels.size === 0
16427
+ dollarCoverage,
16428
+ settleable,
16429
+ monetarySettleable: settleable && dollarCoverage === "complete"
16349
16430
  };
16350
16431
  }
16351
16432
  /** A cell that is absent by export convention: missing, null, or ''. */
@@ -16587,10 +16668,15 @@ function persistedTerminalEnvelope(input) {
16587
16668
  outcome: {
16588
16669
  status: settle.runStatus,
16589
16670
  ...settle.completion === void 0 ? {} : { completion: settle.completion },
16671
+ ...settle.deliverableAccepted === void 0 ? {} : { deliverableAccepted: settle.deliverableAccepted },
16672
+ ...settle.resultAvailable === void 0 ? {} : { resultAvailable: settle.resultAvailable },
16673
+ ...settle.acceptedArtifactRef === void 0 ? {} : { acceptedArtifactRef: settle.acceptedArtifactRef },
16674
+ ...settle.claimConsistencyMeta === void 0 ? {} : { claimConsistencyMeta: settle.claimConsistencyMeta },
16590
16675
  usage: ledger.usage,
16591
16676
  cost: costReportFromJournal(input.entries, input.priceUsd)
16592
16677
  },
16593
16678
  agentsSpawned: ledger.agentsSpawned,
16679
+ ...input.meta?.configFingerprint === void 0 ? {} : { configFingerprint: input.meta.configFingerprint },
16594
16680
  provenance: "journal"
16595
16681
  })
16596
16682
  };
@@ -21400,6 +21486,93 @@ function formatCharacterValidator(options) {
21400
21486
  }
21401
21487
  };
21402
21488
  }
21489
+ /**
21490
+ * Every declared literal must appear in the finish result at least
21491
+ * once (RV3308). The 2026-08-12 comparison run passed an exact twelve
21492
+ * heading contract and a citation floor while its "all publishable
21493
+ * packages" table silently dropped four of the seventeen names: shape
21494
+ * validators cannot see an enumerable universe, so the universe is
21495
+ * declared as literals and each one is held. Purely textual and
21496
+ * deterministic; fenced code counts, because tables and inline code
21497
+ * are legitimate places to name a package. Default name
21498
+ * 'required-mentions'.
21499
+ */
21500
+ function requiredMentionsValidator(options) {
21501
+ const terms = requireNonEmptyStrings(options.terms, "requiredMentionsValidator terms");
21502
+ const declared = /* @__PURE__ */ new Set();
21503
+ for (const term of terms) {
21504
+ if (declared.has(term)) throw new ConfigError(`requiredMentionsValidator terms carry a duplicate: '${term}'`);
21505
+ declared.add(term);
21506
+ }
21507
+ return {
21508
+ name: options.name ?? "required-mentions",
21509
+ validate: (input) => {
21510
+ const missing = terms.filter((term) => !input.text.includes(term));
21511
+ if (missing.length === 0) return { ok: true };
21512
+ return {
21513
+ ok: false,
21514
+ reasons: [`required mentions missing from the result: ${missing.slice(0, MAX_LISTED_CITATIONS).map((term) => `'${term}'`).join(", ")}${missing.length > MAX_LISTED_CITATIONS ? ` and ${String(missing.length - MAX_LISTED_CITATIONS)} more` : ""} (${String(missing.length)} of ${String(terms.length)} declared literals)`]
21515
+ };
21516
+ }
21517
+ };
21518
+ }
21519
+ function requireManifest(manifest) {
21520
+ if (manifest.sections === void 0 && manifest.requiredMentions === void 0 && manifest.words === void 0 && manifest.minCitations === void 0) throw new ConfigError("an OutputContractManifest must declare at least one of sections, requiredMentions, words, or minCitations: an empty manifest gates nothing and prompts for nothing");
21521
+ if (manifest.citationPattern !== void 0 && manifest.minCitations === void 0) throw new ConfigError("OutputContractManifest.citationPattern is only meaningful beside minCitations");
21522
+ }
21523
+ /**
21524
+ * The manifest's gate half (RV3308): heading structure (ordered,
21525
+ * exclusive), word bounds, the citation floor, and the mention
21526
+ * universe, in that stable order, each through the existing named
21527
+ * validator. Everything is derived from the SAME object the prompt
21528
+ * block renders from.
21529
+ */
21530
+ function manifestValidators(manifest) {
21531
+ requireManifest(manifest);
21532
+ const validators = [];
21533
+ if (manifest.sections !== void 0) validators.push(headingStructureValidator({
21534
+ sections: manifest.sections,
21535
+ ordered: true,
21536
+ exclusive: true
21537
+ }));
21538
+ if (manifest.words !== void 0) validators.push(wordCountValidator(manifest.words));
21539
+ if (manifest.minCitations !== void 0) validators.push(minMatchesValidator({
21540
+ pattern: manifest.citationPattern ?? "[\\w./-]+\\.\\w+:\\d+",
21541
+ min: manifest.minCitations,
21542
+ name: "citation-count"
21543
+ }));
21544
+ if (manifest.requiredMentions !== void 0) validators.push(requiredMentionsValidator({ terms: manifest.requiredMentions }));
21545
+ return validators;
21546
+ }
21547
+ /**
21548
+ * The manifest's prompt half (RV3308): a deterministic requirements
21549
+ * block enumerating the SAME headings, bounds, citation floor and
21550
+ * literals the validators hold, byte for byte, for the host to embed
21551
+ * in its question. Rendering is pure string assembly; nothing here
21552
+ * consults the result.
21553
+ */
21554
+ function renderContractRequirements(manifest) {
21555
+ requireManifest(manifest);
21556
+ const lines = ["The final document must satisfy every requirement below, verbatim."];
21557
+ if (manifest.sections !== void 0) {
21558
+ const sections = requireNonEmptyStrings(manifest.sections, "renderContractRequirements sections");
21559
+ lines.push(`Exactly ${String(sections.length)} section headings, in this order and none besides:`);
21560
+ for (const section of sections) lines.push(section);
21561
+ }
21562
+ if (manifest.words !== void 0) {
21563
+ const { min, max } = manifest.words;
21564
+ if (min !== void 0 && max !== void 0) lines.push(`Whitespace word count between ${String(min)} and ${String(max)}.`);
21565
+ else if (min !== void 0) lines.push(`Whitespace word count at least ${String(min)}.`);
21566
+ else if (max !== void 0) lines.push(`Whitespace word count at most ${String(max)}.`);
21567
+ }
21568
+ if (manifest.minCitations !== void 0) lines.push(`At least ${String(manifest.minCitations)} citations matching /${manifest.citationPattern ?? "[\\w./-]+\\.\\w+:\\d+"}/.`);
21569
+ if (manifest.requiredMentions !== void 0) {
21570
+ const terms = requireNonEmptyStrings(manifest.requiredMentions, "renderContractRequirements requiredMentions");
21571
+ lines.push("Each of these literal strings must appear at least once:");
21572
+ for (const term of terms) lines.push(term);
21573
+ }
21574
+ return lines.join("\n");
21575
+ }
21403
21576
  //#endregion
21404
21577
  //#region src/orchestrator/contradictions.ts
21405
21578
  /**
@@ -22541,7 +22714,11 @@ function validateOrchestrateOptions(opts) {
22541
22714
  const consistency = opts.claimConsistency;
22542
22715
  if (typeof consistency !== "object" || Array.isArray(consistency)) throw new ConfigError(`orchestrate claimConsistency must be an object; got ${JSON.stringify(opts.claimConsistency)}`);
22543
22716
  const onFound = consistency.onFound ?? "report";
22544
- if (onFound !== "report" && onFound !== "carry" && onFound !== "fail") throw new ConfigError("orchestrate claimConsistency.onFound must be 'report', 'carry' or 'fail'; got " + JSON.stringify(consistency.onFound));
22717
+ if (onFound !== "report" && onFound !== "carry" && onFound !== "fail" && onFound !== "repair") throw new ConfigError(`orchestrate claimConsistency.onFound must be 'report', 'carry', 'fail' or 'repair'; got ${JSON.stringify(consistency.onFound)}`);
22718
+ if (onFound === "repair") {
22719
+ if (opts.synthesis === void 0) throw new ConfigError("orchestrate claimConsistency.onFound 'repair' requires synthesis: the bounded repair round re-dispatches it with the judged findings carried");
22720
+ if (opts.synthesis.mode === "incremental") throw new ConfigError("orchestrate claimConsistency.onFound 'repair' needs a 'single' synthesis: the deterministic 'incremental' reconciliation has no prompt for the findings to ride");
22721
+ }
22545
22722
  if (onFound === "carry") {
22546
22723
  if (opts.synthesis === void 0) throw new ConfigError("orchestrate claimConsistency.onFound 'carry' requires synthesis: without the post-fan-in invocation there is no prompt to carry the findings into; use 'report' or 'fail'");
22547
22724
  if (opts.synthesis.mode === "incremental") throw new ConfigError("orchestrate claimConsistency.onFound 'carry' needs a 'single' synthesis: the deterministic 'incremental' reconciliation has no prompt for the findings to ride");
@@ -22549,6 +22726,8 @@ function validateOrchestrateOptions(opts) {
22549
22726
  const stage = consistency.stage ?? "draft";
22550
22727
  if (stage !== "draft" && stage !== "final" && stage !== "both") throw new ConfigError("orchestrate claimConsistency.stage must be 'draft', 'final' or 'both'; got " + JSON.stringify(consistency.stage));
22551
22728
  if (stage !== "draft" && opts.synthesis === void 0) throw new ConfigError(`orchestrate claimConsistency.stage '${stage}' requires synthesis: without the post-fan-in invocation the coordination draft IS the final artifact, and the default 'draft' already judges it`);
22729
+ if (stage === "final" && onFound === "carry") throw new ConfigError("orchestrate claimConsistency.onFound 'carry' cannot pair with stage 'final': the final pass runs after the synthesis, so there is no prompt left to carry the findings into; use 'report' or 'fail', or keep a carried draft pass with stage 'both'");
22730
+ if (stage === "draft" && onFound === "repair") throw new ConfigError("orchestrate claimConsistency.onFound 'repair' needs stage 'final' or 'both': the repair consumes the FINAL pass's findings, and the draft pass already has 'carry'");
22552
22731
  if (consistency.pattern !== void 0) {
22553
22732
  if (typeof consistency.pattern !== "string") throw new ConfigError(`orchestrate claimConsistency.pattern must be a string; got ${typeof consistency.pattern}`);
22554
22733
  let probe;
@@ -24807,7 +24986,7 @@ function makeOrchestratorWorkflow(goal, opts) {
24807
24986
  msg: "orchestrator claim consistency judge declined by admission",
24808
24987
  data: { reason: declined.message.slice(0, 300) }
24809
24988
  }, callingState.spanId);
24810
- if (onFound === "fail") throw new FailRunError("the claim-consistency judge could not be admitted within the orchestrator account, so the armed fail posture cannot pass the draft: " + declined.message.slice(0, 300), { data: {
24989
+ if (onFound === "fail" || onFound === "repair") throw new FailRunError(`the claim-consistency judge could not be admitted within the orchestrator account, so the armed ${onFound} posture cannot pass the draft: ` + declined.message.slice(0, 300), { data: {
24811
24990
  source: "orchestrator_claim_consistency",
24812
24991
  claimConsistencyMeta,
24813
24992
  ...snapshot ?? {}
@@ -24828,7 +25007,7 @@ function makeOrchestratorWorkflow(goal, opts) {
24828
25007
  ...judged.errorMessage === void 0 ? {} : { error: judged.errorMessage }
24829
25008
  }
24830
25009
  }, callingState.spanId);
24831
- if (onFound === "fail") throw new FailRunError(`the claim-consistency judge did not settle ok (status '${judged.status}'), so the armed fail posture cannot pass the draft`, { data: {
25010
+ if (onFound === "fail" || onFound === "repair") throw new FailRunError(`the claim-consistency judge did not settle ok (status '${judged.status}'), so the armed ${onFound} posture cannot pass the draft`, { data: {
24832
25011
  source: "orchestrator_claim_consistency",
24833
25012
  judgeStatus: judged.status,
24834
25013
  claimConsistencyMeta,
@@ -24848,7 +25027,10 @@ function makeOrchestratorWorkflow(goal, opts) {
24848
25027
  reason
24849
25028
  }));
24850
25029
  claimFindingsFound = findings;
24851
- claimConsistencyMeta = finishMeta({ judgeInvoked: true });
25030
+ claimConsistencyMeta = finishMeta({
25031
+ judgeInvoked: true,
25032
+ findings: findings.length
25033
+ });
24852
25034
  announce();
24853
25035
  if (onFound !== "fail" || findings.length === 0) return;
24854
25036
  throw new FailRunError(`the claim-consistency judge found ${String(findings.length)} contradiction${findings.length === 1 ? "" : "s"} between the draft and the settled child pool: ` + findings.map((finding) => `${finding.anchor} (${finding.reason})`).join("; "), { data: {
@@ -24993,7 +25175,7 @@ function makeOrchestratorWorkflow(goal, opts) {
24993
25175
  announceGaps(gapsEntry.seq, failed.map((row) => row.name));
24994
25176
  }
24995
25177
  const carryBlocked = opts?.contradictions?.onFound === "carry" && contradictionsFound !== void 0 && contradictionsFound.length > 0;
24996
- const claimCarryBlocked = opts?.claimConsistency?.onFound === "carry" && claimFindingsFound !== void 0 && claimFindingsFound.length > 0;
25178
+ const claimCarryBlocked = (opts?.claimConsistency?.onFound === "carry" || opts?.claimConsistency?.onFound === "repair") && claimFindingsFound !== void 0 && claimFindingsFound.length > 0;
24997
25179
  if (failed.length === 0 && (carryBlocked || claimCarryBlocked)) internals.events.emit({
24998
25180
  type: "log",
24999
25181
  level: "info",
@@ -25108,7 +25290,7 @@ function makeOrchestratorWorkflow(goal, opts) {
25108
25290
  ...finishValidationPromptLines(validationSpec, synthSectionalFinish ? "draft-base" : void 0),
25109
25291
  ...draftGaps === void 0 ? [] : ["DRAFT CONTRACT GAPS: the coordination draft failed exactly these declared validators; repair the named gaps and preserve the draft otherwise. " + JSON.stringify(draftGaps)],
25110
25292
  ...opts?.contradictions?.onFound !== "carry" || contradictionsFound === void 0 || contradictionsFound.length === 0 ? [] : ["CHILD CONTRADICTIONS: the settled children read these cited locations differently; resolve each one EXPLICITLY in the final result (say which reading holds and why it does) instead of silently picking one. " + JSON.stringify(contradictionsFound)],
25111
- ...opts?.claimConsistency?.onFound !== "carry" || claimFindingsFound === void 0 || claimFindingsFound.length === 0 ? [] : ["CLAIM CONTRADICTIONS: the composed draft contradicts the settled child pool at these cited locations; resolve each one EXPLICITLY in the final result (say which reading holds and why) instead of keeping the inverted claim. " + JSON.stringify(claimFindingsFound)],
25293
+ ...opts?.claimConsistency?.onFound !== "carry" && opts?.claimConsistency?.onFound !== "repair" || claimFindingsFound === void 0 || claimFindingsFound.length === 0 ? [] : ["CLAIM CONTRADICTIONS: the composed draft contradicts the settled child pool at these cited locations; resolve each one EXPLICITLY in the final result (say which reading holds and why) instead of keeping the inverted claim. " + JSON.stringify(claimFindingsFound)],
25112
25294
  ...spec.policyFacts === true ? [(() => {
25113
25295
  const byStatus = {};
25114
25296
  let extensionsGranted = 0;
@@ -25955,6 +26137,33 @@ function makeOrchestratorWorkflow(goal, opts) {
25955
26137
  if (claimStage !== "draft") {
25956
26138
  claimConsistencyDraftMeta = claimStage === "both" ? claimConsistencyMeta : void 0;
25957
26139
  await runClaimConsistencyPass(synthesizedFinal, acceptanceSnapshot, "final");
26140
+ if ((opts?.claimConsistency?.onFound ?? "report") === "repair" && claimFindingsFound !== void 0 && claimFindingsFound.length > 0) {
26141
+ const hashOfDocument = (value) => createHash("sha256").update(jcsSerialize(value ?? null), "utf8").digest("hex");
26142
+ const preRepairHash = hashOfDocument(synthesizedFinal);
26143
+ const carried = claimFindingsFound;
26144
+ try {
26145
+ synthesizedFinal = await runSynthesis(result.output);
26146
+ } catch (thrown) {
26147
+ await journalSynthesisAdmissionDecline(thrown);
26148
+ throw new FailRunError(`the claim-consistency repair round could not dispatch (${thrown instanceof Error ? thrown.message.slice(0, 300) : String(thrown)}); ${String(carried.length)} judged contradiction${carried.length === 1 ? "" : "s"} stand unconsumed and a gate armed to repair must not pass silently`, { data: {
26149
+ source: "orchestrator_claim_consistency",
26150
+ claimContradictions: carried,
26151
+ repairsUsed: 0,
26152
+ preRepairHash,
26153
+ ...acceptanceSnapshot
26154
+ } });
26155
+ }
26156
+ await runClaimConsistencyPass(synthesizedFinal, acceptanceSnapshot, "final");
26157
+ if (claimFindingsFound !== void 0 && claimFindingsFound.length > 0) throw new FailRunError(`the claim-consistency judge still found ${String(claimFindingsFound.length)} contradiction${claimFindingsFound.length === 1 ? "" : "s"} after the bounded repair round: the repaired composition keeps contradicting the settled pool`, { data: {
26158
+ source: "orchestrator_claim_consistency",
26159
+ claimContradictions: claimFindingsFound,
26160
+ claimConsistencyMeta,
26161
+ repairsUsed: 1,
26162
+ preRepairHash,
26163
+ repairedHash: hashOfDocument(synthesizedFinal),
26164
+ ...acceptanceSnapshot
26165
+ } });
26166
+ }
25958
26167
  }
25959
26168
  const envelopeSchemaRecovered = (result.schemaRecoveredTerminalExchanges ?? 0) + synthesisSchemaRecoveredExchanges;
25960
26169
  const deliverable = deliverableVerdict(synthesizedFinal);
@@ -26460,9 +26669,20 @@ function preflightEstimate(input) {
26460
26669
  if (positiveCallCap || limits.toolUnits !== void 0) anyCappedSpawn = true;
26461
26670
  const evidenceContract = spec.evidenceContract ?? profile?.evidenceContract;
26462
26671
  if (evidenceContract !== void 0 && executedToolCallCeiling !== null) {
26463
- const perEntry = evidenceContract.estCallsPerEntry ?? 3;
26672
+ const declaredPerEntry = evidenceContract.estCallsPerEntry ?? 3;
26673
+ const observed = evidenceContract.calibration?.callsPerEntry;
26674
+ const perEntry = observed === void 0 ? declaredPerEntry : Math.max(declaredPerEntry, observed);
26675
+ if (observed !== void 0 && observed > declaredPerEntry) {
26676
+ const source = evidenceContract.calibration?.source === void 0 ? "" : ` (source: ${evidenceContract.calibration.source})`;
26677
+ say({
26678
+ severity: "info",
26679
+ code: "evidence-estimate-below-observed",
26680
+ message: `spawn '${label}' declares ${String(declaredPerEntry)} estimated calls per evidence entry, but the supplied calibration observed ${String(observed)}${source}: the evidence call floor uses the observed figure`,
26681
+ spawn: label
26682
+ });
26683
+ }
26464
26684
  const overhead = evidenceContract.overheadCalls ?? 8;
26465
- const floor = evidenceContract.minEntries * perEntry + overhead;
26685
+ const floor = Math.ceil(evidenceContract.minEntries * perEntry) + overhead;
26466
26686
  if (executedToolCallCeiling < floor) say({
26467
26687
  severity: "warning",
26468
26688
  code: "tool-cap-below-evidence-floor",
@@ -26772,8 +26992,10 @@ function preflightEstimate(input) {
26772
26992
  const ceilingHeadroomUsd = ceilingUsd === void 0 || requiredMinimumCeilingUsd === void 0 ? void 0 : ceilingUsd - requiredMinimumCeilingUsd;
26773
26993
  const ceilingHeadroomShare = ceilingHeadroomUsd === void 0 || ceilingUsd === void 0 || ceilingUsd <= 0 ? void 0 : ceilingHeadroomUsd / ceilingUsd;
26774
26994
  const minCeilingHeadroomShare = input.orchestrator?.minCeilingHeadroomShare ?? 0;
26995
+ const ceilingHeadroomSeverity = input.orchestrator?.ceilingHeadroomSeverity ?? "warning";
26996
+ if (ceilingHeadroomSeverity !== "warning" && ceilingHeadroomSeverity !== "error") throw new ConfigError("preflight orchestrator.ceilingHeadroomSeverity must be 'warning' or 'error'; got " + JSON.stringify(input.orchestrator?.ceilingHeadroomSeverity));
26775
26997
  if (ceilingHeadroomShare !== void 0 && minCeilingHeadroomShare > 0 && ceilingHeadroomShare < minCeilingHeadroomShare) say({
26776
- severity: "warning",
26998
+ severity: ceilingHeadroomSeverity,
26777
26999
  code: "ceiling-headroom-thin",
26778
27000
  message: `the ceiling headroom is ${(ceilingHeadroomShare * 100).toFixed(2)} percent of the ceiling (${(ceilingHeadroomUsd ?? 0).toFixed(4)} USD over the required minimum ${(requiredMinimumCeilingUsd ?? 0).toFixed(4)} USD), below the declared ${(minCeilingHeadroomShare * 100).toFixed(2)} percent floor: a small pricing or context drift refuses the whole wave at admission; raise the ceiling or slim the wave`
26779
27001
  });
@@ -28419,6 +28641,7 @@ function createEngine(options) {
28419
28641
  workflow: wf.name,
28420
28642
  outcome: outcomeFacts,
28421
28643
  agentsSpawned: budget.spent().agentsSpawned,
28644
+ ...configFingerprint === void 0 ? {} : { configFingerprint },
28422
28645
  ...settlementFailure !== void 0 ? { settlement: {} } : supersededBy !== void 0 ? { settlement: { settledReason: "superseded" } } : {}
28423
28646
  });
28424
28647
  const outcome = {
@@ -29036,4 +29259,4 @@ function createSandboxBridge(ctx, options) {
29036
29259
  };
29037
29260
  }
29038
29261
  //#endregion
29039
- export { AWAIT_SCHEMA, AdmissionController, AdmissionRejectedError, AgentCallError, BUDGET_ABORT_REASON, BudgetExhaustedError, CANCEL_AGENT_SCHEMA, CHECKPOINT_FORMAT_V1, CLAIM_JUDGE_LABEL, CLAIM_STATEMENT_MAX_CHARS, CLAIM_TTL_DAYS, COMPACTION_SUMMARY_PREFIX, CURRENT_HASH_VERSION, ConfigError, DECISION_CHAIN_KINDS, DEFAULT_ANCHOR_PATTERN, DEFAULT_ARTIFACT_PATTERN, DEFAULT_CHILD_BUDGET_FRACTION, DEFAULT_CHILD_RESULT_PAGE_CHARS, DEFAULT_CITATION_PATTERN, DEFAULT_CITATION_SAMPLE, DEFAULT_CLAIM_JUDGE_MAX_TURNS, DEFAULT_COMPACTION_THRESHOLD, DEFAULT_ESCALATION_LIMITS, DEFAULT_EVIDENCE_CALLS_PER_ENTRY, DEFAULT_EVIDENCE_GRADE_PHRASES, DEFAULT_EVIDENCE_MIN_SHARE, DEFAULT_EVIDENCE_OVERHEAD_CALLS, DEFAULT_FINISH_MAX_REPAIRS, DEFAULT_FLAT_RESERVE_USD, DEFAULT_MAX_CHILDREN_PER_NODE, DEFAULT_MAX_CLAIM_PAIRS, DEFAULT_MAX_CONTRADICTIONS, DEFAULT_MAX_DEPTH, DEFAULT_MAX_EXCERPT_CHARS, DEFAULT_MAX_OSCILLATIONS_PER_KEY, DEFAULT_MAX_PAIR_EXCERPT_CHARS, DEFAULT_MAX_PINNED_WORKTREES, DEFAULT_MAX_POOL_PER_PAIR, DEFAULT_MAX_QUOTA_DENIALS, DEFAULT_MAX_REVISIONS_PER_RUN, DEFAULT_MAX_RUN_FACT_PAIRS, DEFAULT_MAX_TOTAL_SPAWNS, DEFAULT_MAX_TURNS, DEFAULT_MODEL_RETRY_ATTEMPTS, DEFAULT_NO_PROGRESS_TURNS, DEFAULT_PER_RUN_CONCURRENCY, DEFAULT_RETRY_POLICY, DEFAULT_STREAM_IDLE_TIMEOUT_MS, DEFAULT_SYNTHESIS_MAX_TURNS, DEFAULT_SYNTHESIS_NOTE_MAX_TURNS, DedupIndex, DeterminismError, EMIT_RESULT_TOOL, EMPTY_AUTHORITY_HASH, EMPTY_SCHEMA_HASH, EMPTY_TOOLSET_HASH, ESCALATE_TOOL_NAME, ESCALATION_REPORT_SCHEMA, ESCALATION_REQUEST_SCHEMA, EVENT_SEGMENT_STRIDE, EXPOSURE_WAIT_SWEEP_MS, EscalationDecisionAbortedError, EventBus, ExternalRegistry, FINALIZE_SYNTHESIS_INSTRUCTION, FINAL_COMPOSITION_LABEL, FINISH_SCHEMA, FINISH_SECTIONAL_SCHEMA, FINISH_TOOL_NAME, FUTURE_RATES_TOLERANCE_MS, FailRunError, FileModelKnowledgeStore, FileTranscriptStore, GET_CHILD_RESULT_SCHEMA, GET_CHILD_RESULT_TOOL_NAME, GET_SETTLED_CHILD_RESULTS_SCHEMA, GET_SETTLED_CHILD_RESULTS_TOOL_NAME, GitWorktreeProvider, IMPLEMENTATION_PROFILE_LIMITS, INBOX_PROPOSAL_TTL_DAYS, IN_FLIGHT_EXPOSURE_REFUSAL_PREFIX, InMemoryStore, InMemoryTranscriptStore, InProcessRunner, InvalidResolutionError, JOURNAL_ENVELOPE_MARKER, JournalCompatibilityError, JournalIntegrityError, JournalMatcher, JournalMissError, JournalOrderViolation, JournalSealedError, JsonlFileStore, KB_ACTIVE_CLAIMS_CAP, KB_CARD_RENDER_BUDGET_CHARS, KeyedLimiter, KnowledgeCasError, LARGE_VALUE_WARN_BYTES, LEGACY_LTID_PREFIX, LEGACY_SIGNATURE_INPUTS, LINEAGE_SIG_VERSION, LeaseHeldError, LineageIndex, MASKED_SECRET, MAX_CHILD_RESULT_PAGE_CHARS, MAX_CRITICAL_UNCOVERED, MAX_DEPTH_CEILING, MAX_RUN_FACTS_SHEET_CHARS, MAX_RUN_ID_LENGTH, MAX_TIMER_DELAY_MS, ModelRetry, NoProgressDetector, NonSerializableValueError, ORCHESTRATE_WORKFLOW_NAME, OrchestratorCapConfigError, PARALLEL_AGENTS_SCHEMA, PROGRESS_REPORT_TOOL_NAME, ParallelSiteCounter, PlanInvariantError, QUOTA_WINDOW_MS, READ_CHILD_ARTIFACT_SCHEMA, READ_CHILD_ARTIFACT_TOOL_NAME, RESEARCH_PROFILE_LIMITS, REVIEW_PROFILE_LIMITS, ROLE_EFFORT_DEFAULTS, ROOT_ACCOUNT, ROOT_SCOPE, RUN_FACTS_ANCHOR, RUN_PROFILES, RUN_SETTLE_DECISION_TYPE, ReplayPlanHashMismatch, Replayer, ResolutionArbiter, ResolutionFold, RulvarError, RunBudget, SANDBOX_AGENT_OPT_KEYS, SPAWN_ADMISSION_DECISION_TYPE, SPAWN_AGENT_SCHEMA, SYNTHESIS_NOTE_LABEL, SandboxError, ScriptRejected, Semaphore, SettlementError, SpanRegistry, SupersededError, TERMINAL_TELEMETRY_SCOPE, TOOL_NAME_PATTERN, TerminationAccount, WAIT_FOR_EVENTS_SCHEMA, WAIT_FOR_EVENTS_TOOL_NAME, WAKE_SUMMARY_RENDER_BUDGET_CHARS, accountSpendFromJournal, admissionReserveUsd, affordableOutputTokens, agentErrorFromWire, agentErrorToWire, agentResultWire, agentScope, applyClaimOps, applyStructuredOutputTier, approachSigCoarse, approachSigOf, archiveDeprecatedModelOps, assertFencedWrites, assertSafeRunId, atCompactionThreshold, attestToolset, auditRun, auditRuns, buildAbandonFold, buildAdapterRegistry, buildCostReport, buildDeriverRegistry, buildOrchestratorTools, buildTerminationInitValue, buildToolContext, canRideLoopTurn, canonicalIsolationTag, canonicalizeLadder, canonicalizeSchema, capIssues, capsHashOf, checkFloors, checkpointRefFor, childCoveragePrefix, childRostersFromJournal, citationTargetsValidator, citedValueValidator, claimCoverageOf, claimExpired, claimExpiry, claimIssues, claimOpIssues, classifyAgentError, classifyAttemptOutcome, collectDeclaredLadders, compactMessages, compareRates, compilePermissionChain, compilePermissionPreset, compileSecretMasker, compileVerifiedLayer, constantTimeEqual, costReportFromJournal, countsAgainstLimit, createCanonicalIdMinter, createCtx, createEngine, createEnvelopeEncryption, createSandboxBridge, criticalPathFromJournal, currentOnlyKeyRing, decodeCheckpoint, dedupeRepeatedClaims, defineWorkflow, deriveContentKey, deriverV1, deriverV2, digestOf, dispatchProjectionReserveUsd, dispositionHook, emptyDigestBlocks, emptyToolset, encodeCheckpoint, enforceToolsetAttestation, entryUsageSlices, escalateTool, evaluatePermission, evaluateReuse, evidenceGradeValidator, evidencePreservedValidator, executeWorkflow, executionFactsOf, exhaustionCodeOf, extractCandidate, failoverTriggerOf, fallbackTriggerOf, filterClaimsForRun, finalizeFires, findContradictions, finishContract, foldLedger, foldTermination, formatCharacterValidator, formatRePrompt, formatScopePath, hasFencedWrites, hasMetaLookup, hashRunArgs, hashRunOutput, hashWorkflowBody, hashWorkflowSource, headingStructureValidator, identityJcs, implementationAgentProfile, invoiceFromJournal, isEscalated, isSchemaPairSpec, isStandardSchemaSpec, isStrictCompatibleSchema, journalPricingSnapshot, kMaxOf, knowledgeHash, ladderLengthOf, ladderRungChoice, lastRunSettle, latestProgressReport, lexShellCommand, liftRetainedParts, lineageWeightOf, localKeyProvider, logicalRunTelemetry, makeOrchestratorWorkflow, maskSecrets, maskSecretsDeep, maskSecretsJson, matchArgvPattern, matchShellCommand, mcp, memoryQuotaLimiter, mergeQuotaDenial, mergeUsageLimits, metaMatchesFilter, minMatchesValidator, modelEpochOf, modelKnowledgeCard, modelSpecIdentity, needsSeparateExtract, nextFailover, nodeLinkKey, normalizeApproachTag, normalizeEntry, normalizeFallbacks, orchestrate, orchestratorAdmissionEstCostUsd, pairDraftClaims, pairRunFactClaims, parallelScope, parseModelRef, parseScopePath, persistedTerminalEnvelope, phiInitialOf, pilotAgentProfile, pipelineScope, planNodeScope, preflightEstimate, priceComponentsOf, priceEntryBilling, priceEntryUsage, priceUsdOf, profileCard, profileRegistrySnapshotHash, progressReportTool, projectHistory, projectIdentity, projectToJsonSchema, proposalStatement, providerOf, quotaActualRequestsDelta, quotaActualTokens, quotaEstimateTokens, quotaRuleAdmission, quotaRuleKey, quotaRuleMatches, readRunMeta, readTerminationInit, reconcileRunMeta, reconcileStatement, reduceAuditTrail, reduceCriticalPath, reduceDecisionChain, reduceInvocationTable, registryKeyRing, remeasureQueue, replayDisposition, repositoryResearchToolset, requiredFieldsValidator, requiredSectionsValidator, researchAgentProfile, resolveModelInvocation, resolvePricing, resolveToolset, retryClassOf, retryDelayMs, reviewAgentProfile, roleConfiguredInRouting, roundOneDisposition, runAgent, runProfile, sanitizeTerminalText, sanitizeTokenCount, sanitizeUsage, sanitizeUsageDelta, scanJournalCompatibility, schemaHash, schemaHashOfSpec, sectionCitationsValidator, sectionPatternCountValidator, selectStructuredOutputTier, selfTestFinishValidation, shouldCompact, snapshotQuotaRules, snapshotUsage, spawnDepthOf, spliceSections, statementFromRows, statementRowsFromDelimited, stripFencedBlocks, sumUsage, summarizeInstruction, summarizeOutput, synthesisCandidatesFromJournal, terminalEnvelopeOf, terminationConfigDrift, tierWithinCaps, toApprovalDecision, toJournalValue, tool, toolAuthority, toolCalibrationFromJournal, toolContract, toolContractHash, toolsetAuthorityHash, toolsetHash, ttlState, usageViolations, validateDetachedResolution, validateEditorialCommit, validateEngineQuotaConfig, validateEntryShape, validateEscalationLimits, validateEscalationReport, validateQuotaRules, validateRetryPolicy, validateSchemaSpec, validateTerminationLimits, validateToolsetAttestation, validateUsageLimits, wordCountValidator, workflowScope, workflowSourceRef, wrapJournalStore, wrapTranscriptStore };
29262
+ export { AWAIT_SCHEMA, AdmissionController, AdmissionRejectedError, AgentCallError, BUDGET_ABORT_REASON, BudgetExhaustedError, CANCEL_AGENT_SCHEMA, CHECKPOINT_FORMAT_V1, CLAIM_JUDGE_LABEL, CLAIM_STATEMENT_MAX_CHARS, CLAIM_TTL_DAYS, COMPACTION_SUMMARY_PREFIX, CURRENT_HASH_VERSION, ConfigError, DECISION_CHAIN_KINDS, DEFAULT_ANCHOR_PATTERN, DEFAULT_ARTIFACT_PATTERN, DEFAULT_CHILD_BUDGET_FRACTION, DEFAULT_CHILD_RESULT_PAGE_CHARS, DEFAULT_CITATION_PATTERN, DEFAULT_CITATION_SAMPLE, DEFAULT_CLAIM_JUDGE_MAX_TURNS, DEFAULT_COMPACTION_THRESHOLD, DEFAULT_ESCALATION_LIMITS, DEFAULT_EVIDENCE_CALLS_PER_ENTRY, DEFAULT_EVIDENCE_GRADE_PHRASES, DEFAULT_EVIDENCE_MIN_SHARE, DEFAULT_EVIDENCE_OVERHEAD_CALLS, DEFAULT_FINISH_MAX_REPAIRS, DEFAULT_FLAT_RESERVE_USD, DEFAULT_MAX_CHILDREN_PER_NODE, DEFAULT_MAX_CLAIM_PAIRS, DEFAULT_MAX_CONTRADICTIONS, DEFAULT_MAX_DEPTH, DEFAULT_MAX_EXCERPT_CHARS, DEFAULT_MAX_OSCILLATIONS_PER_KEY, DEFAULT_MAX_PAIR_EXCERPT_CHARS, DEFAULT_MAX_PINNED_WORKTREES, DEFAULT_MAX_POOL_PER_PAIR, DEFAULT_MAX_QUOTA_DENIALS, DEFAULT_MAX_REVISIONS_PER_RUN, DEFAULT_MAX_RUN_FACT_PAIRS, DEFAULT_MAX_TOTAL_SPAWNS, DEFAULT_MAX_TURNS, DEFAULT_MODEL_RETRY_ATTEMPTS, DEFAULT_NO_PROGRESS_TURNS, DEFAULT_PER_RUN_CONCURRENCY, DEFAULT_RETRY_POLICY, DEFAULT_STREAM_IDLE_TIMEOUT_MS, DEFAULT_SYNTHESIS_MAX_TURNS, DEFAULT_SYNTHESIS_NOTE_MAX_TURNS, DedupIndex, DeterminismError, EMIT_RESULT_TOOL, EMPTY_AUTHORITY_HASH, EMPTY_SCHEMA_HASH, EMPTY_TOOLSET_HASH, ESCALATE_TOOL_NAME, ESCALATION_REPORT_SCHEMA, ESCALATION_REQUEST_SCHEMA, EVENT_SEGMENT_STRIDE, EXPOSURE_WAIT_SWEEP_MS, EscalationDecisionAbortedError, EventBus, ExternalRegistry, FINALIZE_SYNTHESIS_INSTRUCTION, FINAL_COMPOSITION_LABEL, FINISH_SCHEMA, FINISH_SECTIONAL_SCHEMA, FINISH_TOOL_NAME, FUTURE_RATES_TOLERANCE_MS, FailRunError, FileModelKnowledgeStore, FileTranscriptStore, GET_CHILD_RESULT_SCHEMA, GET_CHILD_RESULT_TOOL_NAME, GET_SETTLED_CHILD_RESULTS_SCHEMA, GET_SETTLED_CHILD_RESULTS_TOOL_NAME, GitWorktreeProvider, IMPLEMENTATION_PROFILE_LIMITS, INBOX_PROPOSAL_TTL_DAYS, IN_FLIGHT_EXPOSURE_REFUSAL_PREFIX, InMemoryStore, InMemoryTranscriptStore, InProcessRunner, InvalidResolutionError, JOURNAL_ENVELOPE_MARKER, JournalCompatibilityError, JournalIntegrityError, JournalMatcher, JournalMissError, JournalOrderViolation, JournalSealedError, JsonlFileStore, KB_ACTIVE_CLAIMS_CAP, KB_CARD_RENDER_BUDGET_CHARS, KeyedLimiter, KnowledgeCasError, LARGE_VALUE_WARN_BYTES, LEGACY_LTID_PREFIX, LEGACY_SIGNATURE_INPUTS, LINEAGE_SIG_VERSION, LeaseHeldError, LineageIndex, MASKED_SECRET, MAX_CHILD_RESULT_PAGE_CHARS, MAX_CRITICAL_UNCOVERED, MAX_DEPTH_CEILING, MAX_RUN_FACTS_SHEET_CHARS, MAX_RUN_ID_LENGTH, MAX_TIMER_DELAY_MS, ModelRetry, NoProgressDetector, NonSerializableValueError, ORCHESTRATE_WORKFLOW_NAME, OrchestratorCapConfigError, PARALLEL_AGENTS_SCHEMA, PROGRESS_REPORT_TOOL_NAME, ParallelSiteCounter, PlanInvariantError, QUOTA_WINDOW_MS, READ_CHILD_ARTIFACT_SCHEMA, READ_CHILD_ARTIFACT_TOOL_NAME, RESEARCH_PROFILE_LIMITS, REVIEW_PROFILE_LIMITS, ROLE_EFFORT_DEFAULTS, ROOT_ACCOUNT, ROOT_SCOPE, RUN_FACTS_ANCHOR, RUN_PROFILES, RUN_SETTLE_DECISION_TYPE, ReplayPlanHashMismatch, Replayer, ResolutionArbiter, ResolutionFold, RulvarError, RunBudget, SANDBOX_AGENT_OPT_KEYS, SPAWN_ADMISSION_DECISION_TYPE, SPAWN_AGENT_SCHEMA, SYNTHESIS_NOTE_LABEL, SandboxError, ScriptRejected, Semaphore, SettlementError, SpanRegistry, SupersededError, TERMINAL_TELEMETRY_SCOPE, TOOL_NAME_PATTERN, TerminationAccount, WAIT_FOR_EVENTS_SCHEMA, WAIT_FOR_EVENTS_TOOL_NAME, WAKE_SUMMARY_RENDER_BUDGET_CHARS, accountSpendFromJournal, admissionReserveUsd, affordableOutputTokens, agentErrorFromWire, agentErrorToWire, agentResultWire, agentScope, applyClaimOps, applyStructuredOutputTier, approachSigCoarse, approachSigOf, archiveDeprecatedModelOps, assertFencedWrites, assertSafeRunId, atCompactionThreshold, attestToolset, auditRun, auditRuns, buildAbandonFold, buildAdapterRegistry, buildCostReport, buildDeriverRegistry, buildOrchestratorTools, buildTerminationInitValue, buildToolContext, canRideLoopTurn, canonicalIsolationTag, canonicalizeLadder, canonicalizeSchema, capIssues, capsHashOf, checkFloors, checkpointRefFor, childCoveragePrefix, childRostersFromJournal, citationTargetsValidator, citedValueValidator, claimCoverageOf, claimExpired, claimExpiry, claimIssues, claimOpIssues, classifyAgentError, classifyAttemptOutcome, collectDeclaredLadders, compactMessages, compareRates, compilePermissionChain, compilePermissionPreset, compileSecretMasker, compileVerifiedLayer, constantTimeEqual, costReportFromJournal, countsAgainstLimit, createCanonicalIdMinter, createCtx, createEngine, createEnvelopeEncryption, createSandboxBridge, criticalPathFromJournal, currentOnlyKeyRing, decodeCheckpoint, dedupeRepeatedClaims, defineWorkflow, deriveContentKey, deriverV1, deriverV2, digestOf, dispatchProjectionReserveUsd, dispositionHook, emptyDigestBlocks, emptyToolset, encodeCheckpoint, enforceToolsetAttestation, entryUsageSlices, escalateTool, evaluatePermission, evaluateReuse, evidenceGradeValidator, evidencePreservedValidator, executeWorkflow, executionFactsOf, exhaustionCodeOf, extractCandidate, failoverTriggerOf, fallbackTriggerOf, filterClaimsForRun, finalizeFires, findContradictions, finishContract, foldLedger, foldTermination, formatCharacterValidator, formatRePrompt, formatScopePath, hasFencedWrites, hasMetaLookup, hashRunArgs, hashRunOutput, hashWorkflowBody, hashWorkflowSource, headingStructureValidator, identityJcs, implementationAgentProfile, invoiceFromJournal, isEscalated, isSchemaPairSpec, isStandardSchemaSpec, isStrictCompatibleSchema, journalPricingSnapshot, kMaxOf, knowledgeHash, ladderLengthOf, ladderRungChoice, lastRunSettle, latestProgressReport, lexShellCommand, liftRetainedParts, lineageWeightOf, localKeyProvider, logicalRunTelemetry, makeOrchestratorWorkflow, manifestValidators, maskSecrets, maskSecretsDeep, maskSecretsJson, matchArgvPattern, matchShellCommand, mcp, memoryQuotaLimiter, mergeQuotaDenial, mergeUsageLimits, metaMatchesFilter, minMatchesValidator, modelEpochOf, modelKnowledgeCard, modelSpecIdentity, needsSeparateExtract, nextFailover, nodeLinkKey, normalizeApproachTag, normalizeEntry, normalizeFallbacks, orchestrate, orchestratorAdmissionEstCostUsd, pairDraftClaims, pairRunFactClaims, parallelScope, parseModelRef, parseScopePath, persistedTerminalEnvelope, phiInitialOf, pilotAgentProfile, pipelineScope, planNodeScope, preflightEstimate, priceComponentsOf, priceEntryBilling, priceEntryUsage, priceUsdOf, profileCard, profileRegistrySnapshotHash, progressReportTool, projectHistory, projectIdentity, projectToJsonSchema, proposalStatement, providerOf, quotaActualRequestsDelta, quotaActualTokens, quotaEstimateTokens, quotaRuleAdmission, quotaRuleKey, quotaRuleMatches, readRunMeta, readTerminationInit, reconcileRunMeta, reconcileStatement, reduceAuditTrail, reduceCriticalPath, reduceDecisionChain, reduceInvocationTable, registryKeyRing, remeasureQueue, renderContractRequirements, replayDisposition, repositoryResearchToolset, requiredFieldsValidator, requiredMentionsValidator, requiredSectionsValidator, researchAgentProfile, resolveModelInvocation, resolvePricing, resolveToolset, retryClassOf, retryDelayMs, reviewAgentProfile, roleConfiguredInRouting, roundOneDisposition, runAgent, runProfile, sanitizeTerminalText, sanitizeTokenCount, sanitizeUsage, sanitizeUsageDelta, scanJournalCompatibility, schemaHash, schemaHashOfSpec, sectionCitationsValidator, sectionPatternCountValidator, selectStructuredOutputTier, selfTestFinishValidation, shouldCompact, snapshotQuotaRules, snapshotUsage, spawnDepthOf, spliceSections, statementFromRows, statementRowsFromDelimited, stripFencedBlocks, sumUsage, summarizeInstruction, summarizeOutput, synthesisCandidatesFromJournal, terminalEnvelopeOf, terminationConfigDrift, tierWithinCaps, toApprovalDecision, toJournalValue, tool, toolAuthority, toolCalibrationFromJournal, toolContract, toolContractHash, toolsetAuthorityHash, toolsetHash, ttlState, usageViolations, validateDetachedResolution, validateEditorialCommit, validateEngineQuotaConfig, validateEntryShape, validateEscalationLimits, validateEscalationReport, validateQuotaRules, validateRetryPolicy, validateSchemaSpec, validateTerminationLimits, validateToolsetAttestation, validateUsageLimits, wordCountValidator, workflowScope, workflowSourceRef, wrapJournalStore, wrapTranscriptStore };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rulvar/core",
3
- "version": "1.236.0",
3
+ "version": "1.238.0",
4
4
  "description": "Rulvar core: L0 contracts, journal kernel, ctx primitives, agent runtime, model router, tool system, dynamic orchestrator, InMemory and JSONL stores, event stream.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",