@sema-agent/client-core 0.108.0 → 0.110.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.
Files changed (179) hide show
  1. package/CHANGELOG.md +294 -0
  2. package/README.md +77 -40
  3. package/dist/adapt/arms.js +41 -13
  4. package/dist/adapt/textStream.d.ts +2 -0
  5. package/dist/adapt/textStream.js +37 -16
  6. package/dist/adapter/activeRunSelfHeal.js +1 -1
  7. package/dist/adapter/downstream/eventToSdkMessage.js +11 -5
  8. package/dist/agentSession/engineAgentRegistryRead.js +2 -0
  9. package/dist/bashExitReading.d.ts +12 -0
  10. package/dist/bashExitReading.js +44 -0
  11. package/dist/checkpointRowVerdict.d.ts +1 -1
  12. package/dist/checkpointRowVerdict.js +4 -2
  13. package/dist/compensations.js +1 -1
  14. package/dist/declared/supportFloorDeclared.js +1 -1
  15. package/dist/displayUntrusted.js +132 -14
  16. package/dist/engineAgentAbsence.d.ts +2 -0
  17. package/dist/engineAgentAbsence.js +28 -0
  18. package/dist/engineErrorCodes.d.ts +7 -0
  19. package/dist/engineErrorCodes.js +7 -0
  20. package/dist/engineHealthFacts.d.ts +26 -0
  21. package/dist/engineHealthFacts.js +63 -4
  22. package/dist/engineInlineTaskStats.d.ts +4 -3
  23. package/dist/engineInlineTaskStats.js +18 -2
  24. package/dist/engineNoticeCodes.d.ts +138 -0
  25. package/dist/engineNoticeCodes.js +662 -55
  26. package/dist/engineRepoint.d.ts +140 -0
  27. package/dist/engineRepoint.js +285 -0
  28. package/dist/engineRowRef.js +2 -0
  29. package/dist/engineSessionMessages.d.ts +2 -1
  30. package/dist/engineSessionMessages.js +5 -0
  31. package/dist/errorSupplementRoles.js +5 -1
  32. package/dist/fleet/fleetProjection.js +3 -2
  33. package/dist/fleetTaskDesc.js +3 -3
  34. package/dist/generated/engineFactTables.d.ts +3 -0
  35. package/dist/generated/engineFactTables.js +18 -0
  36. package/dist/generated/engineNoticeTables.js +3 -0
  37. package/dist/generated/sdkFactTables.d.ts +1 -0
  38. package/dist/generated/sdkFactTables.js +4 -0
  39. package/dist/hitl/approvalAskers.d.ts +6 -0
  40. package/dist/hitl/approvalAskers.js +30 -0
  41. package/dist/hitl/approvalCardReasons.js +25 -4
  42. package/dist/hitl/approvalRequestFrameReading.d.ts +21 -0
  43. package/dist/hitl/approvalRequestFrameReading.js +90 -0
  44. package/dist/hitl/approvalResolution.d.ts +8 -1
  45. package/dist/hitl/approvalResolution.js +4 -0
  46. package/dist/hitl/approvalsFeed.js +1 -1
  47. package/dist/hitl/askGateWire.js +0 -2
  48. package/dist/hitl/askParkRowRouting.js +5 -2
  49. package/dist/hitl/automaticAnswerVerdict.d.ts +5 -2
  50. package/dist/hitl/automaticAnswerVerdict.js +18 -4
  51. package/dist/hitl/decisionConflict.d.ts +2 -1
  52. package/dist/hitl/decisionConflict.js +10 -4
  53. package/dist/hitl/decisionRefusal.js +1 -0
  54. package/dist/hitl/decisionSend.d.ts +3 -0
  55. package/dist/hitl/decisionSend.js +29 -11
  56. package/dist/hitl/editedApprovalAcceptance.d.ts +25 -0
  57. package/dist/hitl/editedApprovalAcceptance.js +26 -0
  58. package/dist/hitl/frameRouter.js +13 -19
  59. package/dist/hitl/gateLedger.d.ts +0 -4
  60. package/dist/hitl/gateLedger.js +0 -19
  61. package/dist/hitl/hitlBridge.d.ts +5 -0
  62. package/dist/hitl/hitlBridge.js +13 -9
  63. package/dist/hitl/hitlHostSurface.d.ts +1 -0
  64. package/dist/hitl/hitlHostSurface.js +7 -2
  65. package/dist/hitl/hostWithdrawal.d.ts +15 -0
  66. package/dist/hitl/hostWithdrawal.js +38 -0
  67. package/dist/hitl/livePendingAsk.js +17 -16
  68. package/dist/hitl/localAllowRule.js +2 -1
  69. package/dist/hitl/noAllowCause.d.ts +1 -1
  70. package/dist/hitl/noAllowCause.js +4 -2
  71. package/dist/hitl/parkExpiryJudgements.js +26 -1
  72. package/dist/hitl/parkOwnership.d.ts +2 -0
  73. package/dist/hitl/parkOwnership.js +48 -8
  74. package/dist/hitl/parkResolver.js +32 -16
  75. package/dist/hitl/parkedUnresumable.d.ts +13 -0
  76. package/dist/hitl/parkedUnresumable.js +80 -0
  77. package/dist/hitl/permissionRuleScope.d.ts +4 -0
  78. package/dist/hitl/permissionRuleScope.js +31 -0
  79. package/dist/hitl/persistedRulesWire.d.ts +2 -0
  80. package/dist/hitl/persistedRulesWire.js +13 -12
  81. package/dist/hitl/planReviewWire.js +14 -4
  82. package/dist/hitl/sessionAllowRoute.js +5 -4
  83. package/dist/hitl/sessionPolicyWire.js +6 -4
  84. package/dist/hitl/standingRows.d.ts +2 -5
  85. package/dist/hitl/standingRows.js +30 -15
  86. package/dist/hitl/toolApprovalWire.d.ts +42 -9
  87. package/dist/hitl/toolApprovalWire.js +267 -44
  88. package/dist/hooksWireCaps.js +35 -4
  89. package/dist/hostSettingsSource.js +2 -0
  90. package/dist/hostTurnSettings.d.ts +10 -4
  91. package/dist/hostTurnSettings.js +112 -5
  92. package/dist/i18n/messages.en.d.ts +251 -0
  93. package/dist/i18n/messages.en.js +254 -2
  94. package/dist/i18n/messages.zh.js +264 -2
  95. package/dist/index.d.ts +48 -12
  96. package/dist/index.js +29 -7
  97. package/dist/inheritEnvCapability.js +2 -0
  98. package/dist/inputAuthor.d.ts +16 -0
  99. package/dist/inputAuthor.js +44 -0
  100. package/dist/interruptRefusalNote.d.ts +2 -0
  101. package/dist/interruptRefusalNote.js +17 -0
  102. package/dist/liveModelCatalog.d.ts +2 -0
  103. package/dist/liveModelCatalog.js +21 -7
  104. package/dist/liveQuestionStore.d.ts +4 -1
  105. package/dist/liveQuestionStore.js +12 -3
  106. package/dist/localEngineJudge.d.ts +75 -0
  107. package/dist/localEngineJudge.js +242 -0
  108. package/dist/localEngineOccupancy.d.ts +88 -0
  109. package/dist/localEngineOccupancy.js +269 -0
  110. package/dist/localEngineSeatReading.d.ts +29 -0
  111. package/dist/localEngineSeatReading.js +294 -0
  112. package/dist/localEngineSpawn.d.ts +113 -0
  113. package/dist/localEngineSpawn.js +486 -0
  114. package/dist/localEngineStep.d.ts +286 -0
  115. package/dist/localEngineStep.js +1086 -0
  116. package/dist/localEngineStopLadder.d.ts +29 -0
  117. package/dist/localEngineStopLadder.js +139 -0
  118. package/dist/localEngineSwapCard.d.ts +43 -0
  119. package/dist/localEngineSwapCard.js +205 -0
  120. package/dist/localEngineTiming.d.ts +8 -0
  121. package/dist/localEngineTiming.js +8 -0
  122. package/dist/mcpEngineLeg.d.ts +3 -0
  123. package/dist/mcpEngineLeg.js +38 -1
  124. package/dist/mcpPanel.js +2 -0
  125. package/dist/mcpReconnect.d.ts +9 -1
  126. package/dist/mcpReconnect.js +132 -20
  127. package/dist/mcpWireCaps.js +2 -2
  128. package/dist/memoryEntriesWire.d.ts +1 -1
  129. package/dist/memoryEntriesWire.js +5 -0
  130. package/dist/modelCapabilityProbe.js +4 -3
  131. package/dist/modsFace.d.ts +8 -1
  132. package/dist/modsFace.js +27 -0
  133. package/dist/noticePresentation.d.ts +2 -0
  134. package/dist/noticePresentation.js +79 -1
  135. package/dist/notifications.d.ts +17 -6
  136. package/dist/notifications.js +67 -19
  137. package/dist/ownKey.d.ts +5 -0
  138. package/dist/ownKey.js +8 -1
  139. package/dist/peerFrames.d.ts +40 -2
  140. package/dist/peerFrames.js +158 -3
  141. package/dist/pluginHooksWire.d.ts +2 -1
  142. package/dist/pluginHooksWire.js +56 -1
  143. package/dist/replayBody.js +10 -2
  144. package/dist/request/taskRequest.d.ts +5 -0
  145. package/dist/request/taskRequest.js +138 -21
  146. package/dist/resumeRefusalCopy.d.ts +1 -3
  147. package/dist/resumeRefusalCopy.js +2 -1
  148. package/dist/retryStatus.d.ts +2 -2
  149. package/dist/retryStatus.js +2 -0
  150. package/dist/ruleReadings.js +1 -1
  151. package/dist/seam.d.ts +24 -2
  152. package/dist/seam.js +15 -2
  153. package/dist/seatContract.d.ts +125 -10
  154. package/dist/seatContract.js +373 -7
  155. package/dist/sessionBackground.js +4 -1
  156. package/dist/sessionBackgroundHandoff.js +2 -1
  157. package/dist/sessionEngine.d.ts +2 -0
  158. package/dist/sessionEngine.js +111 -0
  159. package/dist/sessionMemoryStatus.d.ts +2 -1
  160. package/dist/sessionSyncFileHistory.d.ts +4 -0
  161. package/dist/sessionSyncFileHistory.js +28 -0
  162. package/dist/sseIdleTriage.d.ts +13 -1
  163. package/dist/sseIdleTriage.js +24 -6
  164. package/dist/subagent/engineSubagentTail.js +6 -0
  165. package/dist/subagentContentStore.d.ts +12 -0
  166. package/dist/subagentContentStore.js +72 -11
  167. package/dist/terminalStatuses.d.ts +1 -0
  168. package/dist/terminalStatuses.js +4 -1
  169. package/dist/toolResult.js +18 -5
  170. package/dist/turnFailurePresentation.js +9 -2
  171. package/dist/typePins.d.ts +11 -0
  172. package/dist/usageAnalytics.d.ts +17 -0
  173. package/dist/usageAnalytics.js +44 -2
  174. package/dist/wireFailureShape.d.ts +22 -5
  175. package/dist/wireFailureShape.js +47 -26
  176. package/dist/wireRefusalCopy.d.ts +31 -1
  177. package/dist/wireRefusalCopy.js +167 -2
  178. package/docs/INTEGRATION-CLIENTS.md +3269 -21
  179. package/package.json +5 -5
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from './seam.js';
2
2
  export * from './workflow.js';
3
- export { _resetEngineTaskNotificationForTest, _resetNotificationQueuePortForTest, _setWatcherTimingForTest, _tickWatchOnceForTest, classifyHookFailureFrame, classifyHookNoticeFrame, deriveNotificationResidualLines, dropQueuedNotificationsForRun, enqueueBgChildNotification, enqueueEngineWorkflowNotification, enqueuePlanReviewOutcome, HOOK_NOTICE_WARN_PREFIX, hookNoticeLastCheckText, installBgTaskStatusProbe, installNotificationQueuePort, installWorkflowStatusProbe, isEngineWorkflowNotified, isHookNoticeFrame, isOwnWorkflowRun, isTaskNotificationObjective, isWorkflowCompletionCardEnqueued, listOwnWorkflowRuns, markEngineWorkflowNotified, normalizeTaskNotification, noteOwnWorkflowRun, noteWorkflowCompletionCardEnqueued, notificationDropCounters, notificationQueuePortMisses, outstandingAbandonedCount, outstandingBgTaskPrompt, outstandingDeliverableWorkflowCount, outstandingWorkflowCount, parseTranscriptNotificationSeeds, readTaskNotificationXml, registerOutstandingBgTask, registerOutstandingWorkflowRun, renderTaskNotificationXml, splitApiErrorSupplement, subscribeOutstandingWorkflows, TASK_NOTIFICATION_TAG, taskNotificationDedupKey, taskNotificationDedupKeyFromWire, taskNotificationDeliverySupplement, } from './notifications.js';
4
- export type { EngineWorkflowCompletion, GoalHookNotice, HookEntryType, HookFailureNotice, HookFailureReason, HookFailureVerdict, HookNoticeReason, HookNoticeVerdict, HookNoticeWire, NotificationDropCounters, NotificationQueuePort, QueuedCommandLike, TaskNotificationFields, TaskNotificationXmlRead, TranscriptNotificationSeeds, } from './notifications.js';
3
+ export { _resetEngineTaskNotificationForTest, _resetNotificationQueuePortForTest, _setWatcherTimingForTest, _tickWatchOnceForTest, classifyHookFailureFrame, classifyHookNoticeFrame, deriveNotificationResidualLines, dropQueuedNotificationsForRun, enqueueBgChildNotification, enqueueEngineWorkflowNotification, enqueuePlanReviewOutcome, HOOK_NOTICE_WARN_PREFIX, hookNoticeLastCheckText, installBgTaskStatusProbe, installNotificationQueuePort, installWorkflowRunReader, isEngineWorkflowNotified, isHookNoticeFrame, isOwnWorkflowRun, isTaskNotificationObjective, isWorkflowCompletionCardEnqueued, listOwnWorkflowRuns, markEngineWorkflowNotified, normalizeTaskNotification, noteOwnWorkflowRun, noteWorkflowCompletionCardEnqueued, notificationDropCounters, notificationQueuePortMisses, outstandingAbandonedCount, outstandingBgTaskPrompt, outstandingDeliverableWorkflowCount, outstandingWorkflowCount, parseTranscriptNotificationSeeds, readTaskNotificationXml, registerOutstandingBgTask, registerOutstandingWorkflowRun, renderTaskNotificationXml, splitApiErrorSupplement, subscribeOutstandingWorkflows, TASK_NOTIFICATION_TAG, taskNotificationDedupKey, taskNotificationDedupKeyFromWire, taskNotificationDeliverySupplement, workflowRunTerminalReadingOf, } from './notifications.js';
4
+ export type { EngineWorkflowCompletion, GoalHookNotice, HookEntryType, HookFailureNotice, HookFailureReason, HookFailureVerdict, HookNoticeReason, HookNoticeVerdict, HookNoticeWire, NotificationDropCounters, NotificationQueuePort, QueuedCommandLike, TaskNotificationFields, TaskNotificationXmlRead, TranscriptNotificationSeeds, WorkflowRunReader, WorkflowRunTerminalReading, } from './notifications.js';
5
5
  export * from './peerFrames.js';
6
6
  export * from './steering.js';
7
7
  export type { DiagnosticsAttachment, } from './diagnostics.js';
@@ -19,8 +19,8 @@ export { isReplayMarked } from './replayBody.js';
19
19
  export { composeEventLeg, EVENT_LEG_KINDS, EVENT_LEG_TABLE, approvalFrameContextOf } from './eventLeg.js';
20
20
  export type { ApprovalFrameContext, EventLeg, EventLegBindCause, EventLegBoundInfo, EventLegElicitationFrame, EventLegFrameInfo, EventLegHitlEnvelope, EventLegHitlPorts, EventLegIdleTriagePorts, EventLegKind, EventLegLiveSpec, EventLegOwnerPorts, EventLegPortName, EventLegPorts, EventLegQuestionFrame, EventLegRefusal, EventLegReport, EventLegRow, EventLegRunPorts, EventLegRunSpec, EventLegSpec, EventLegStage, EventLegTap, EventLegToolApprovalFrame, } from './eventLeg.js';
21
21
  export { frameBindingOf, inheritFrameBinding } from './frameBinding.js';
22
- export { __resetSubagentContentStoreConfigForTests, __resetSubagentOwnerLedgerForTests, clearSubagentContent, coerceOutput, configureSubagentContentStore, getBgParentRun, getBgParentRunOwner, getBgTerminalFacts, getSubagentContentSnapshot, isOwnEngineRun, parentToolCallIdOf, planSubagentViewSlots, publishSubagentContentEvent, pushSubagentLocalEcho, recordBgParentRun, recordOwnEngineRun, recordSubagentOwner, recordSubagentOwnerFromProgress, registerSubagentAlias, settleSubagentContent, SUBAGENT_CONTENT_STORE_DEFAULTS, subagentContentStoreConfig, subagentOwnerSessionConflicts, subscribeSubagentContent, subagentContentEventOf, } from './subagentContentStore.js';
23
- export type { BgTerminalFacts, SubagentContentEvent, SubagentContentItem, SubagentContentSnapshot, SubagentContentStoreConfig, SubagentOwnerRecord, SubagentOwnerSessionConflict, SubagentViewSlot, } from './subagentContentStore.js';
22
+ export { __resetSubagentContentStoreConfigForTests, __resetSubagentOwnerLedgerForTests, clearSubagentContent, coerceOutput, configureSubagentContentStore, getBgParentRun, getBgParentRunOwner, getBgTerminalFacts, getSubagentContentSnapshot, isOwnEngineRun, noteSeatSubagentAlias, parentToolCallIdOf, planSubagentViewSlots, publishSubagentContentEvent, pushSubagentLocalEcho, recordBgParentRun, recordOwnEngineRun, recordSubagentOwner, readSeatSubagentAlias, recordSubagentOwnerFromProgress, registerSubagentAlias, settleSubagentContent, SUBAGENT_CONTENT_STORE_DEFAULTS, subagentContentStoreConfig, subagentOwnerSessionConflicts, subscribeSubagentContent, subagentContentEventOf, } from './subagentContentStore.js';
23
+ export type { BgTerminalFacts, SeatSubagentAlias, SubagentAliasScope, SubagentContentEvent, SubagentContentItem, SubagentContentSnapshot, SubagentContentStoreConfig, SubagentOwnerRecord, SubagentOwnerSessionConflict, SubagentViewSlot, } from './subagentContentStore.js';
24
24
  export * from './engineAgentPanelStore.js';
25
25
  export * from './engineAgentAbsence.js';
26
26
  export * from './fleetAgentPanelProjection.js';
@@ -28,6 +28,8 @@ export { reducePanelFrame, createPanelReduceState, PANEL_DELTA_OPS } from './pan
28
28
  export type { PanelFrame, PanelDelta, PanelRowFields, PanelReduceState } from './panelReduce.js';
29
29
  export { _resetLiveQuestionStore, hasLocalQuestionResponder, hasQuestionOverlay, hasQuestionOverlayFor, onQuestionFrame, onQuestionFrameFor, publishQuestionFrame, publishQuestionFrameFor, registerLocalQuestionResponder, respondToQuestion, setQuestionRespond, } from './liveQuestionStore.js';
30
30
  export type { AskQuestion, AskQuestionOption, QuestionAnswer, QuestionFrame, } from './liveQuestionStore.js';
31
+ export { withdrawParkQuestion, PARK_QUESTION_WITHDRAW_REFUSALS } from './hitl/hostWithdrawal.js';
32
+ export type { HostWithdrawal, ParkQuestionWithdrawal, ParkQuestionWithdrawRefusal } from './hitl/hostWithdrawal.js';
31
33
  export * from './engineInlineTaskStats.js';
32
34
  export * from './printToolResultFrame.js';
33
35
  export * from './printModelStatus.js';
@@ -89,7 +91,23 @@ export * from './gateOutcome.js';
89
91
  export * from './postureKnob.js';
90
92
  export * from './engineIdentity.js';
91
93
  export { readEngineHealthFacts } from './engineHealthFacts.js';
92
- export type { EngineHealthFacts, EngineHealthCenterFacts, EngineHealthAuthFacts, EngineHealthDrainingFacts, EngineHealthLeaseFacts } from './engineHealthFacts.js';
94
+ export { readModsDeploymentPackages, type ModsDeploymentPackagesReading } from './engineHealthFacts.js';
95
+ export type { EngineHealthFacts, EngineHealthCenterFacts, EngineHealthAuthFacts, EngineHealthDrainingFacts, EngineHealthLeaseFacts, EngineHealthFirstAttachFacts, EngineHealthInflightFacts } from './engineHealthFacts.js';
96
+ export { localEngineAnchorOf, localEnginePlanDriftOf, judgeLocalEngine, localEngineLaneOf, localEngineVerdictSentence } from './localEngineJudge.js';
97
+ export type { LocalEngineAnchorReading, LocalEnginePlanFingerprint, LocalEnginePlanDrift, LocalEngineAnchorPidState, LocalEngineDataRootRelation, LocalEngineJudgeInput, LocalEngineRef, LocalEngineAnchoredProcess, LocalEngineVerdict, LocalEngineUpgradePath, } from './localEngineJudge.js';
98
+ export { countClientRegistry, fleetBackgroundLiveOf, localEngineSelfOf, localEngineRegistryStatusOf, localEngineIdle, localEngineDemandOf, localEngineExitFate, localEngineExitFateSentence, } from './localEngineOccupancy.js';
99
+ export type { ClientRegistryDirectory, ClientRegistryRecordReading, ClientRegistryCount, LocalEngineFleetReading, FleetBackgroundLive, LocalEngineSelfItem, LocalEngineSelfReading, LocalEngineSelfInput, LocalEngineSelf, LocalEngineRegistryStatus, LocalEngineOccupancy, LocalEngineDefaultLane, LocalEngineDemandSession, LocalEngineDemandInput, LocalEngineDemandSource, LocalEngineDemand, LocalEngineExitFate, } from './localEngineOccupancy.js';
100
+ export { LOCAL_ENGINE_SWAP_CAUSES, localEngineSwapAutoable, engineSwapCardOf, engineSwapCardText } from './localEngineSwapCard.js';
101
+ export type { LocalEngineSwapCause, LocalEngineSwapPolicy, EngineSwapCardTarget, EngineSwapCardUnknown, EngineSwapCardInput, EngineSwapCardOthers, EngineSwapCard, EngineSwapCardText, } from './localEngineSwapCard.js';
102
+ export { LOCAL_ENGINE_SPAWN_ENV, LOCAL_ENGINE_HOST_BITS, LOCAL_ENGINE_SPAWN_SHAPE, localEngineOperatorSingleUserOf, localEngineSpawnEnv, localEngineSeedEnv, localEnginePrincipalOf, localEnginePrincipalSentence, engineBootRefusalOf, engineBootRefusalSentence, localEngineFirstShareSentence, } from './localEngineSpawn.js';
103
+ export type { LocalEngineSpawnPathSlot, LocalEngineSpawnDerived, LocalEngineSpawnValue, LocalEngineSpawnEnvRow, LocalEngineBudgets, LocalEngineSpawnPaths, LocalEngineSpawnEnvInput, LocalEngineSpawnApplied, LocalEngineSpawnEnv, LocalEngineSettingsLayerName, LocalEngineSettingsLayers, LocalEngineSeedInput, LocalEngineSeedFrom, LocalEngineSeedDropped, LocalEngineSeed, LocalEnginePrincipal, LocalEnginePrincipalView, LocalEngineBootRefusal, } from './localEngineSpawn.js';
104
+ export { LOCAL_ENGINE_STOP_LADDER, stopLadderStep } from './localEngineStopLadder.js';
105
+ export type { StopLadderSignal, StopLadderState, StopLadderObservation, StopLadderStepResult } from './localEngineStopLadder.js';
106
+ export { LOCAL_ENGINE_INITIAL_STATE, LOCAL_ENGINE_FAIL_CODES, localEngineStep, engineSwapAnswerOutcomeOf } from './localEngineStep.js';
107
+ export { LOCAL_ENGINE_TIMING } from './localEngineTiming.js';
108
+ export type { LocalEnginePolicy, LocalEngineStepOccupancy, LocalEngineTarget, LocalEngineStateDownReason, LocalEngineCauseEntry, LocalEngineAutoTry, LocalEngineCtx, LocalEngineCardHold, LocalEngineLockIntent, LocalEnginePlan, LocalEngineRelation, LocalEngineState, LocalEngineEvent, LocalEngineFailCode, LocalEngineNotice, LocalEngineEffect, LocalEngineStepResult, } from './localEngineStep.js';
109
+ export { localEngineSeatReadingOf, localEngineSeatSentence, localEngineNoticeText, localEngineFailText, engineTargetLocalOf, engineRestartOutcomeOf, } from './localEngineSeatReading.js';
110
+ export type { LocalEngineSeatHostFacts, EngineRestartOperation } from './localEngineSeatReading.js';
93
111
  export { transportFailureScene } from './engineWireFor.js';
94
112
  export type { EngineWireNoAnswerKind, TransportFailureChainEnd, TransportFailureLayer, TransportFailureScene, TransportFailureSocket } from './engineWireFor.js';
95
113
  export { engineUrlTransportVerdict, normalizeEngineBaseUrl } from './engineUrl.js';
@@ -123,7 +141,7 @@ export * from './engineWireSdk.js';
123
141
  export * from './classifierVerdictWire.js';
124
142
  export { stripSystemReminderBlocks, unwrapSystemReminder } from './systemReminderTag.js';
125
143
  export { findSystemReminderOpenTag, type SystemReminderOpenTagSpan } from './systemReminderTag.js';
126
- export { ACTIVE_RUN_BUSY_ERROR_CODE, APPROVAL_EXPIRED, ASK_GONE, asModelFallbackReason, CAPABILITY_IMAGE_INDEX_REQUIRED, CAPABILITY_K8S_LANE_REQUIRED, CAPABILITY_OPERATOR_PRINCIPALS_REQUIRED, CAPABILITY_SELF_ORCHESTRATION_REQUIRED, CONFIG_AGENT_UNKNOWN_TOOL, CONFIG_DELEGATION_ENTRY_CAPS, CONFIG_IMAGE_INVALID, CONFIG_LEGACY_TOOL_NAME, CONFIG_LIMIT_INVALID, CONFIG_LIMIT_UNKNOWN_KEY, CONFIG_MCP_SERVER_NAME_COLLISION, CONFIG_MEMORY_PROJECT_KEY_SPELLING, CONFIG_MEMORY_WRITE_SCOPE_MISMATCH, CONFIG_OUTPUT_STYLE_INVALID, CONFIG_TOOL_FACE_CONTROL, CONFLICT_IDEMPOTENCY_PAYLOAD_MISMATCH, CORRUPT_SESSION_ERROR_CODE, DECIDE_CLAIM_LOST, DECIDE_GATE_MOVED, DECIDE_NOT_PARKED, DECIDE_PARK_MOVED_CODES, DECIDE_ROW_UNREVIVABLE, DECIDE_WORKFLOW_HOST_UNKNOWN, DECIDE_WORKFLOW_LANE_CODES, DECIDE_WORKFLOW_PARK_FORKED, DECIDE_WORKFLOW_PARKS_UNREADABLE, DECIDE_WORKFLOW_REMEMBER_UNSUPPORTED, DELEGATION_CAP_CODES, DELEGATION_CONCURRENCY_CAP, DELEGATION_SESSION_CAP, delegationCapDispositionOf, DRAINING_ERROR_CODE, ENGINE_STOP_REASONS, engineStopReasonToCc, ENV_LIFETIME_EXPIRED, FLEET_LEASE_UNAVAILABLE, GATE_PARKED_ERROR_CODE, idempotencyPayloadMismatchContent, isConfigRefusalCode, isCorruptSessionCode, isDecideParkMovedCode, isDecideRowUnrevivableCode, isDelegationCapCode, isIdempotencyPayloadMismatchCode, isInterruptedToolEndCode, isLimitsExceededCode, isRewindFamilyCode, isRulesRefusalCode, isStatusDerivedCoarseCode, isWorkflowParkRefusalCode, LIMITS_MAX_COST_EXCEEDED, LIMITS_MAX_TOKENS_EXCEEDED, LIMITS_MAX_TURNS_EXCEEDED, LIMITS_MAX_WALLTIME_EXCEEDED, MCP_SERVER_REVOKED, MCP_TOOL_DECLARATION_CHANGED, MCP_TOOL_LISTING_UNREACHED, MODEL_FALLBACK_INHERIT_NO_TIER_BINDING, operatorGateRefusalContent, OUTPUT_INVALID, PARKED_RESUME_STARTUP_FAILED, PROMPT_ASSEMBLED_ROLE_REFUSED, REQUEST_AUTONOMY_LANE_REFUSED, RESUME_AT_ERROR_CODE_PREFIX, RESUME_CONTEXT_UNAVAILABLE, RESUME_ENV_FAILED, RESUME_PLACEMENT_MISMATCH, RESUME_POLICY_FOLD_CODE, RESUME_PREFLIGHT_REJECTED, RESUME_REOPEN_CODES, RESUME_RETRY_LATER_CODES, RESUME_TOOL_CONTRACT_MISMATCH, RESUME_TOOL_UNAVAILABLE, RESUME_USAGE_WINDOW_EXHAUSTED, REWIND_ERROR_CODE_PREFIXES, RUN_ORPHANED, RUN_STALLED, runDeathVerdictNoteOf, SCENARIO_ASSIGNMENT_UNKNOWN_ERROR_CODE, SCENARIO_NOT_ALLOWED_ERROR_CODE, STREAM_MAX_DURATION, TOOL_END_INTERRUPTED_NEVER_STARTED, TOOL_END_INTERRUPTED_OUTCOME_UNKNOWN, USAGE_WINDOW_EXHAUSTED, USER_ATTACHMENT_INVALID_ERROR_CODE, USER_INVOKED_SKILL_UNKNOWN_ERROR_CODE, WORKFLOW_PARK_REFUSAL_CODES, ATTACHMENT_BOUND_ELSEWHERE, ATTACHMENT_BUNDLE_INVALID, ATTACHMENT_BUNDLE_LANE_NOT_ISOLATED, ATTACHMENT_BUNDLE_SEED_FIXED, CONFLICT_SESSION_MEMORY_UNOBSERVED, CONFLICT_SESSION_ARCHIVE_STAMPED, ENV_HOME_UNCONFIRMED, } from './engineErrorCodes.js';
144
+ export { ACTIVE_RUN_BUSY_ERROR_CODE, APPROVAL_EXPIRED, ASK_GONE, asModelFallbackReason, CAPABILITY_IMAGE_INDEX_REQUIRED, CAPABILITY_K8S_LANE_REQUIRED, CAPABILITY_OPERATOR_PRINCIPALS_REQUIRED, CAPABILITY_SELF_ORCHESTRATION_REQUIRED, CONFIG_AGENT_UNKNOWN_TOOL, CONFIG_DELEGATION_ENTRY_CAPS, CONFIG_IMAGE_INVALID, CONFIG_LEGACY_TOOL_NAME, CONFIG_LIMIT_INVALID, CONFIG_LIMIT_UNKNOWN_KEY, CONFIG_MCP_SERVER_NAME_COLLISION, CONFIG_MEMORY_PROJECT_KEY_SPELLING, CONFIG_MEMORY_WRITE_SCOPE_MISMATCH, CONFIG_OUTPUT_STYLE_INVALID, CONFIG_TOOL_FACE_CONTROL, CONFLICT_IDEMPOTENCY_PAYLOAD_MISMATCH, CORRUPT_SESSION_ERROR_CODE, DECIDE_CLAIM_LOST, DECIDE_GATE_MOVED, DECIDE_NOT_PARKED, DECIDE_PARK_MOVED_CODES, DECIDE_ROW_UNREVIVABLE, DECIDE_WORKFLOW_HOST_UNKNOWN, DECIDE_WORKFLOW_LANE_CODES, DECIDE_WORKFLOW_PARK_FORKED, DECIDE_WORKFLOW_PARKS_UNREADABLE, DECIDE_WORKFLOW_REMEMBER_UNSUPPORTED, DELEGATION_CAP_CODES, DELEGATION_CONCURRENCY_CAP, DELEGATION_SESSION_CAP, delegationCapDispositionOf, DRAINING_ERROR_CODE, ENGINE_STOP_REASONS, engineStopReasonToCc, ENV_LIFETIME_EXPIRED, FLEET_LEASE_UNAVAILABLE, GATE_PARKED_ERROR_CODE, idempotencyPayloadMismatchContent, isConfigRefusalCode, isCorruptSessionCode, isDecideParkMovedCode, isDecideRowUnrevivableCode, isDelegationCapCode, isIdempotencyPayloadMismatchCode, isInterruptedToolEndCode, isLimitsExceededCode, isRewindFamilyCode, isRulesRefusalCode, isStatusDerivedCoarseCode, isWorkflowParkRefusalCode, LIMITS_MAX_COST_EXCEEDED, LIMITS_MAX_TOKENS_EXCEEDED, LIMITS_MAX_TURNS_EXCEEDED, LIMITS_MAX_WALLTIME_EXCEEDED, MCP_SERVER_REVOKED, MCP_TOOL_DECLARATION_CHANGED, MCP_TOOL_LISTING_UNREACHED, MODEL_FALLBACK_INHERIT_NO_TIER_BINDING, operatorGateRefusalContent, OUTPUT_INVALID, PARKED_RESUME_STARTUP_FAILED, PROMPT_ASSEMBLED_ROLE_REFUSED, REQUEST_AUTONOMY_LANE_REFUSED, RESUME_AT_ERROR_CODE_PREFIX, RESUME_CONTEXT_UNAVAILABLE, RESUME_ENV_FAILED, RESUME_PLACEMENT_MISMATCH, RESUME_POLICY_FOLD_CODE, RESUME_PREFLIGHT_REJECTED, RESUME_REOPEN_CODES, RESUME_RETRY_LATER_CODES, RESUME_TOOL_CONTRACT_MISMATCH, RESUME_TOOL_UNAVAILABLE, RESUME_USAGE_WINDOW_EXHAUSTED, REWIND_ERROR_CODE_PREFIXES, RUN_ORPHANED, RUN_STALLED, runDeathVerdictNoteOf, SCENARIO_ASSIGNMENT_UNKNOWN_ERROR_CODE, SCENARIO_NOT_ALLOWED_ERROR_CODE, STREAM_MAX_DURATION, TOOL_END_INTERRUPTED_NEVER_STARTED, TOOL_END_INTERRUPTED_OUTCOME_UNKNOWN, USAGE_WINDOW_EXHAUSTED, USER_ATTACHMENT_INVALID_ERROR_CODE, USER_INVOKED_SKILL_UNKNOWN_ERROR_CODE, WORKFLOW_PARK_REFUSAL_CODES, ATTACHMENT_BOUND_ELSEWHERE, ATTACHMENT_BUNDLE_INVALID, ATTACHMENT_BUNDLE_LANE_NOT_ISOLATED, ATTACHMENT_BUNDLE_SEED_FIXED, CONFLICT_SESSION_MEMORY_UNOBSERVED, CONFLICT_SESSION_ARCHIVE_STAMPED, ENV_HOME_UNCONFIRMED, REQUEST_ENV_CREDENTIAL_REFUSED, CONFLICT_SESSION_ID_RETIRED, } from './engineErrorCodes.js';
127
145
  export type { DelegationCapDisposition, ModelFallbackReason, OperatorGateRefusal, RunDeathVerdictCode, } from './engineErrorCodes.js';
128
146
  export { prepareRefusalCodeOf, prepareRefusalNoteOf, type PrepareRefusalCode, type PrepareRefusalNoteFacts } from './prepareRefusal.js';
129
147
  export * from './agentsWireCaps.js';
@@ -169,12 +187,15 @@ export * from './adapter/types.js';
169
187
  export * from './adapter/downstream/turnUsageToModelUsage.js';
170
188
  export * from './adapter/downstream/eventToSdkMessage.js';
171
189
  export { MOD_LOADER_VERBS, readModRegistrationRefusedNotice, modCardSentence, modLoaderFailureSentence, type ModLoaderVerb } from './modsFace.js';
190
+ export { sessionModsOf } from './modsFace.js';
191
+ export { approvalRequestedBySentence } from './modsFace.js';
172
192
  export { modRowsOf } from './adapter/downstream/wiringManifestView.js';
173
193
  export type { WiringManifestView, WiringManifestSections, WiringManifestFleetView } from './adapter/downstream/wiringManifestView.js';
174
194
  export { wiringFleetDoctorDetail } from './wiringFleetDoctor.js';
175
195
  export * from './adapter/downstream/terminalToSdkResult.js';
176
196
  export { resultErrorCodeOf, resultSelectedModelOf, resultSalvagedResultOf, resultParkFailedReasonOf } from './resultFrameKeys.js';
177
197
  export * from './adapter/runStream.js';
198
+ export { runBlockedText } from './promptBlockedCopy.js';
178
199
  export { SEMA_ROW_KIND_KEY, SEMA_ROW_KINDS, rowKindOf, isSyntheticRow, inferLegacyRowKind } from './rowKind.js';
179
200
  export type { SemaRowKind } from './rowKind.js';
180
201
  export { classifySubmitFailure } from './submitFailure.js';
@@ -286,7 +307,7 @@ export * from './detachWire.js';
286
307
  export * from './workflowMonitor.js';
287
308
  export * from './workflowClient.js';
288
309
  export * from './hooksWireCaps.js';
289
- export { ENGINE_FIRED_HOOK_EVENTS, PLUGIN_HOOK_DISPOSITIONS, PLUGIN_HOOK_REASONS, PLUGIN_HOOK_EXCLUSION_REASONS, SETTINGS_HOOK_DROP_REASONS, isEngineFiredHookEvent, pluginHookVerdictOf, pluginHookReasonText, settingsHookDropText, pluginHookExecutorLabel, hooksNotRunNotice, settingsHooksKeptLocally, userPromptSubmitExecutorOf, type EngineFiredHookEvent, type PluginHookDisposition, type PluginHookReason, type PluginHookExclusionReason, type SettingsHookDropReason, type HookSettingsSource, type PluginHookKey, type PluginHookVerdict, type PluginHookExclusion, type SettingsHookDrop, type SettingsHookVerdict, type SettingsHookExclusion, type HooksWireEngineFacts, type PluginHookReaderState, type HooksWirePlan, type HooksWirePlanOptions, type SettingsHooksSalvageRow, type SettingsLayerWithheldRow, type PluginHookModuleVerdict, type SessionHookVerdict, } from './pluginHooksWire.js';
310
+ export { ENGINE_FIRED_HOOK_EVENTS, PLUGIN_HOOK_DISPOSITIONS, PLUGIN_HOOK_REASONS, PLUGIN_HOOK_EXCLUSION_REASONS, SETTINGS_HOOK_DROP_REASONS, isEngineFiredHookEvent, pluginHookVerdictOf, pluginHookReasonText, settingsHookDropText, pluginHookExecutorLabel, hooksNotRunNotice, settingsHooksKeptLocally, pluginHooksKeptLocally, userPromptSubmitExecutorOf, type EngineFiredHookEvent, type PluginHookDisposition, type PluginHookReason, type PluginHookExclusionReason, type SettingsHookDropReason, type HookSettingsSource, type PluginHookKey, type PluginHookVerdict, type PluginHookExclusion, type SettingsHookDrop, type SettingsHookVerdict, type SettingsHookExclusion, type HooksWireEngineFacts, type PluginHookReaderState, type HooksWirePlan, type HooksWirePlanOptions, type SettingsHooksSalvageRow, type SettingsLayerWithheldRow, type PluginHookModuleVerdict, type SessionHookVerdict, } from './pluginHooksWire.js';
290
311
  export { HTTP_POLICY_DROP_REASONS, type HttpPolicyDropReason, type HttpPolicyDropRow } from './httpHookPolicy.js';
291
312
  export { salvageSettingsHooksEntries, settingsHooksSalvageNotice, type HooksSalvage, type HooksSalvageDrop, type HooksSalvageRejection, type HooksSalvageOutcome, type HooksSalvageDropCode, type HooksSalvageRejectionCode, } from './settingsHooksSalvage.js';
292
313
  export { hostSettingsSelfCheck, HostSettingsRefused, HOST_SUPPLIED_KEYS, HOST_SETTING_CAUSES, HOST_SETTING_DISPOSITIONS, type HostSuppliedKey, type HostSettingCause, type HostSettingDisposition, type HostSettingPlane, type HostSettingNoticeId, type HostSettingRow, type HostSettingNotice, type HostTurnVerdict, type HostTurnSettingsSources, type HostWebSearchSource, type HostMemorySource, type HostTurnSettingsInput, type HostSettingsCarried, type HostTurnSettings, type HooksPlanFacts, type HostOutputStyleSource, type HostOutputStyleBody, type HostOutputStyleFacts, type HostSettingsSession, type HostSettingsHeld, type HostSettingsAcceptConfirmation, type HostPermissionFacts, hostSettingsConsent, hostSettingsAcceptCurrent, } from './hostTurnSettings.js';
@@ -305,16 +326,22 @@ export * from './model/providerPresets.js';
305
326
  export { __setDecideTimeoutRetryBudgetForTests, backendDeny, DecideTransportRetryExhaustedError, findPendingForTask, HitlBridge, HitlSafetyError, isPlanReviewModeAfter, makeHitlCanUseTool, MAX_DENY_REASON_CHARS, PLAN_REVIEW_MODE_AFTER_WORDS, readDecideCurrentPending, readWireErrorCode, } from './hitl/hitlBridge.js';
306
327
  export type { ActiveGate, ApprovalsResourceLike, AskAnswer, AssistantResourceLike, DecideOperationEnd, DecideOperationEvent, DecideOperationIdentity, DecideOperationObserver, DecideOperationSpan, DecideOperationStart, FindPendingOutcome, GateCurrentPending, GatePrompt, HitlBackendDenyDecision, HitlBridgeOptions, HitlCanUseToolFn, HitlClientLike, HitlDecideDenyOutcome, HitlPermissionDecisionLike, HitlSafetyCode, PlanReviewModeAfter, PlanReviewOutcome, } from './hitl/hitlBridge.js';
307
328
  export * from './hitl/suspendedReopen.js';
308
- export { APPROVAL_RESOLUTION_LANES, APPROVAL_NOT_SENT_CAUSES, APPROVAL_UNSETTLED_CAUSES, APPROVAL_NOTE_RETRACTED_DETAIL, APPROVAL_NOTE_EDIT_REFUSED_DETAIL, isApprovalDecided, approvalNotSentCause, approvalUnsettledCause, approvalResolutionDetail, type ApprovalResolution, type ApprovalResolutionDecided, type ApprovalResolutionNotSent, type ApprovalResolutionUnsettled, type ApprovalResolutionLane, type ApprovalNotSentCause, type ApprovalUnsettledCause, type ApprovalDenyFacts, } from './hitl/approvalResolution.js';
329
+ export { APPROVAL_RESOLUTION_LANES, APPROVAL_NOT_SENT_CAUSES, APPROVAL_UNSETTLED_CAUSES, APPROVAL_NOTE_RETRACTED_DETAIL, APPROVAL_NOTE_EDIT_REFUSED_DETAIL, isApprovalDecided, approvalNotSentCause, approvalUnsettledCause, approvalResolutionDetail, type ApprovalResolution, type ApprovalResolutionDecided, type ApprovalResolutionNotSent, type ApprovalResolutionUnsettled, type ApprovalResolutionLane, type ApprovalNotSentCause, type ApprovalUnsettledCause, type ApprovalDenyFacts, type ToolPermissionSettledElsewhere, } from './hitl/approvalResolution.js';
330
+ export { editedApprovalAcceptanceOf, editedApprovalRefusedLine, EDITED_APPROVAL_STATES, EDITED_APPROVAL_BASES } from './hitl/editedApprovalAcceptance.js';
331
+ export type { EditedApprovalAcceptance, EditedApprovalState } from './hitl/editedApprovalAcceptance.js';
309
332
  export { ENGINE_ABORT_TOOL_RESULT } from './hitl/frameRouter.js';
310
333
  export { toolEndOutputText } from './toolResultContent.js';
311
334
  export { toolOutputMediaAbsenceOf, toolOutputMediaAbsenceSentence } from './toolResultContent.js';
312
335
  export type { ToolOutputMediaAbsence } from './toolResultContent.js';
313
336
  export { _resetHitlHostSurfaceForTest, APPROVAL_PARKING_WARN_TEXT, approvalParkingNoticeText, CANCEL_DENY_BUDGET_MS, CANCEL_DENY_WARN_TEXT, EDIT_NOT_FORWARDED_WARN_TEXT, EDIT_REFUSED_ON_BLIND_ASK_WARN_TEXT, hitlHostSurfaceFor, hitlHostSurfaceMisses, hitlHostSurfaceMissesFor, installHitlHostSurface, installHitlHostSurfaceFor, observeCancelByDeny, REMEMBER_NOT_APPLIED_WARN_TEXT, REPLAYED_APPROVAL_LIST_UNREADABLE_WARN_TEXT, RULE_NOT_SENT_REJECTED_WARN_TEXT, RULE_NOT_SENT_WARN_TEXT, surfaceEditRefusedOnBlindAsk, surfaceForCurrentSession, surfaceRememberNotApplied, } from './hitl/hitlHostSurface.js';
314
337
  export type { ClassifierDenyContext, HitlHostSurface, HitlNotice, } from './hitl/hitlHostSurface.js';
315
- export * from './hitl/toolApprovalWire.js';
338
+ export { APPROVAL_DENY_SETTLED_BY_WORDS, ASK_ORIGIN_WORDS, RESPOND_DECISIONS, RETRACTED_CARD_DECISION_KIND, RULE_OFFERS_ABSENCE_REASONS, RULE_OFFER_BATCH_MEMBER_KINDS, RULE_OFFER_MATCHES, RULE_OFFER_UNCOVERED_REASONS, TOOL_APPROVAL_FRAME_KEYS_MIRROR, WITHDRAWN_CARD_DECISION_KIND, __resetSettledApprovalsForTests, _resetApprovalCardPortForTest, allowNoteNotCarriedSentence, answerCarriage, answerPayloadFor, approvalBoundGrantsDetail, approvalCardFactsOfFrame, approvalCardFactsOfGeneric, approvalCardFactsOfV1, approvalCardFactsOfV1Frame, approvalCardPortFor, approvalCardPortMisses, approvalCardPortMissesFor, approvalIsMandated, approvalPriorCardsDetail, approvalSupersedesDetail, askProbeReasonDetail, claimApprovalCard, classifierNoRulingDetail, decisionAttributionKeyOf, hasApprovalCardPort, hasApprovalCardPortFor, installApprovalCardPort, installApprovalCardPortFor, isFromSubagent, isToolApprovalFrame, isToolApprovalGate, isToolApprovalRespondParkedRedeemed, isToolApprovalRespondReplayed, joinApprovalHolder, observeApprovalAnswerCommitted, readApprovalBoundGrants, readApprovalCardWord, readApprovalClassifierNoRuling, readApprovalDenySettledBy, readApprovalMandate, readApprovalRememberRefused, readBoundGrantEntry, readDenialLimitFallback, readRuleOfferSupply, readRuleOffers, readToolApprovalRespondAck, readToolApprovalRespondParking, rememberRefusalOf, structurallyEqual, surfaceApprovalCard, surfaceFsApprovalAndDecide, surfaceToolApprovalFrameAndRespond, toolNameIsFsWrite, toolNameIsShellExec, toolPermissionRequestAskBits } from './hitl/toolApprovalWire.js';
339
+ export type { AnswerCarriage, AnswerPayloadCaps, AnswerPayloadLane, ApprovalAnswerCommitted, ApprovalAskReason, ApprovalAskReasonByHook, ApprovalAskReasonByPolicy, ApprovalCardAllowDecision, ApprovalCardClaim, ApprovalCardClaimOptions, ApprovalCardDecision, ApprovalCardDenyDecision, ApprovalCardFacts, ApprovalCardFrameFactsOptions, ApprovalCardParkRow, ApprovalCardPort, ApprovalCardRequest, ApprovalCardSupersedes, ApprovalCardV1Facts, ApprovalDenySettledBy, ApprovalGrantBinding, ApprovalHolderIdentity, ApprovalHolderJoin, ApprovalInputSource, ApprovalMandatedFacts, ApprovalPriorCard, ApprovalRequestedBy, AskOrigin, BoundGrantEntryReading, BoundSkillGrantsWire, DecideAnswerPayload, DecideApprovePayload, DecideDenyPayload, DenialLimitFallback, DenialLimitKind, FsApprovalWireDeps, HostApprovalCardHold, PersistedRuleAnchor, ReadRootCandidateView, RememberRefusalCode, RespondAnswerPayload, RespondToolApprovalFn, RespondToolApprovalOpts, RuleOfferBatchMember, RuleOfferMatch, RuleOfferReading, RuleOfferUncoveredDetail, RuleOfferUncoveredReason, RuleOffersAbsence, ToolApprovalDelegation, ToolApprovalFrame, ToolApprovalFrameLaneOpts, ToolApprovalGateLike, ToolApprovalParkingBodyReading, ToolApprovalRespondAckView, ToolApprovalRespondDecision, ToolApprovalRespondParkingView, ToolApprovalRespondRedeemedView } from './hitl/toolApprovalWire.js';
316
340
  export * from './hitl/approvalCardReading.js';
317
341
  export * from './hitl/approvalCardReasons.js';
342
+ export { approvalRequestFrameReadingOf, APPROVAL_REQUEST_FRAME_UNREADABLE_WHYS } from './hitl/approvalRequestFrameReading.js';
343
+ export { approvalAskReasonsOf } from './hitl/approvalAskers.js';
344
+ export type { ApprovalRequestFrameReading, ApprovalRequestFrameUnreadableWhy } from './hitl/approvalRequestFrameReading.js';
318
345
  export { askClassReasonOf, askClassReasonsOf } from './hitl/askClassPair.js';
319
346
  export type { AskClassReasonRow } from './hitl/askClassPair.js';
320
347
  export * from './hitl/editedRuleTextPrecheck.js';
@@ -332,11 +359,11 @@ export { decisionInFlightOf, decisionReadMark } from './hitl/decisionLedger.js';
332
359
  export { ASK_PARK_AUTO_REOPEN_BLOCKS, askParkAutoReopenBlockedContent, askParkAutoReopenBlockOf, askParkRefusalBlockOf, claimAskParkAutoReopenBlockNotice, clearAskParkAutoReopenBlocks, } from './hitl/askParkAutoReopenBlock.js';
333
360
  export type { AskParkAutoReopenBlock, AskParkAutoReopenBlockNotice, AskParkGate } from './hitl/askParkAutoReopenBlock.js';
334
361
  export type { DecisionIdentity } from './hitl/decisionLedger.js';
335
- export { HITL_DECISION_FAMILIES, HITL_DECISION_NOT_APPLIED_CAUSES, HITL_DECISION_NOT_SENT_CAUSES, HITL_DECISION_UNCONFIRMED_CAUSES, sendHitlDecision, hitlDecisionOutcomeContent, } from './hitl/decisionSend.js';
362
+ export { HITL_DECISION_FAMILIES, HITL_DECISION_NOT_APPLIED_CAUSES, HITL_DECISION_NOT_SENT_CAUSES, HITL_DECISION_UNCONFIRMED_CAUSES, sendHitlDecision, hitlDecisionOutcomeContent, toolPermissionSettledLine, } from './hitl/decisionSend.js';
336
363
  export type { HitlApprovalDecisionRequest, HitlAskDecisionRequest, HitlDecisionApplied, HitlDecisionFamily, HitlDecisionGate, HitlDecisionNotApplied, HitlDecisionNotAppliedCause, HitlDecisionNotSent, HitlDecisionNotSentCause, HitlDecisionSendClient, HitlDecisionSendDeps, HitlDecisionSendOutcome, HitlDecisionSendRequest, HitlDecisionSettledElsewhere, HitlDecisionUnconfirmed, HitlDecisionUnconfirmedCause, HitlElicitationDecisionRequest, } from './hitl/decisionSend.js';
337
364
  export { PLAN_REVIEW_QUESTION_ID_PREFIX, REOPEN_ID_TAIL, approvalCallKey, askGateQuestionId, planReviewQuestionId, liveFrameCallKey, armedKeyFromQuestionId, } from './hitl/gateIdentity.js';
338
365
  export { _resetArmedGateRegistryForTest, _setGateArmedWaitMsForTest, clearArmedGate, gateArmedWaitMs, notePlanReviewAnswered, onGateArmed, planReviewArmedKey, registerArmedGate, registerArmedGateFor, registerArmedGateFromQuestionId, registerArmedGateFromQuestionIdFor, waitForGateArmed, wasGateArmed, wasGateArmedFor, } from './hitl/armedGateRegistry.js';
339
- export * from './hitl/parkOwnership.js';
366
+ export { askQuestionsFromPending, isHitlSafetyErrorLike, pendingRowIsOwnedByThisSession, pendingRowOwnershipOf, type ParkOwnershipDeps, } from './hitl/parkOwnership.js';
340
367
  export * from './hitl/parkRowBirthWait.js';
341
368
  export * from './hitl/approvalDecisionNoteAudit.js';
342
369
  export * from './hitl/askParkRowRouting.js';
@@ -358,9 +385,11 @@ export type { ReplayedApprovalDisposition, ReplayPendingBasis } from './hitl/rep
358
385
  export { hasLedgerPositionKey } from './hitl/gateLedger.js';
359
386
  export { durableSeqOf } from './hitl/gateLedger.js';
360
387
  export { MODE_ARBITRATION, automaticAnswerVerdict, mandatedApprovalDetailOf, crossBoundaryTaintOf, crossBoundaryTaintWayOutOf, permissionRequestHookScope, type CrossBoundaryTaintReading, type AutomaticAnswerLane, type AutomaticAnswerAskFace, type AutomaticAnswerFacts, type AutomaticAnswerRoad, type AutomaticAnswerUnknownWhy, type AutomaticAnswerVerdict, type PermissionRequestHookScope, } from './hitl/automaticAnswerVerdict.js';
361
- export { standingRowsOf, type StandingRows, type StandingRowsWhy, type StandingRowWhy, type StandingPersistentRow, type StandingRowsHostFacts, rememberOfferable, localAllowRuleEnforceable, type RememberOffer, type RememberOfferable, type LocalAllowRuleEnforcement, type LocalAllowRuleHostFacts, } from './hitl/standingRows.js';
388
+ export { standingRowsOf, type StandingRows, type StandingRowsWhy, type StandingRowWhy, type StandingPersistentRow, type StandingRowsHostFacts, rememberOfferable, localAllowRuleEnforceable, type RememberOffer, type RememberOfferable, type LocalAllowRuleEnforcement, } from './hitl/standingRows.js';
362
389
  export { classifyDecisionRefusal, liveAskPendingReading, decisionRefusalClosesOut, undeliverableDecisionContent, decideRowUnrevivableNotice, decisionRefusalAskReading, readDecisionRefusalReading, type DecisionRefusalReading, type RefusalRouteContext, type DecisionRefusalAskReading, type DecisionRefusalStanding, type DecisionRefusalClassified, type DecisionRefusalConflict, type LiveAskPendingReading, type UndeliverableDecisionEnd, type UndeliverableDecisionFacts, } from './hitl/decisionRefusal.js';
363
390
  export { decisionGrantChangedContent } from './hitl/decisionConflict.js';
391
+ export { decideFailureNote } from './decideFailureNote.js';
392
+ export { decisionAnswerInvalidContent } from './hitl/decisionConflict.js';
364
393
  export { noAllowCauseOf, type NoAllowCause, type RuleLadderNoAllowFacts } from './hitl/noAllowCause.js';
365
394
  export { policyDenyReason, type PolicyDenyLane, type PolicyDenyReasonFacts } from './hitl/frameRouter.js';
366
395
  export { readApprovalAllowRuleShadow, approvalAllowRuleShadowed, allowRuleShadowSentence, type ApprovalAllowRuleShadow, type ApprovalAllowRuleShadowMember, type AllowRuleShadowedWireMember, } from './hitl/allowRuleShadow.js';
@@ -375,6 +404,7 @@ export { approvalCompleteCauseOf } from './hitl/approvalEndingCause.js';
375
404
  export * from './hitl/askSettlementLine.js';
376
405
  export * from './interactiveHalt.js';
377
406
  export { fireInteractiveInterrupt } from './interactiveInterrupt.js';
407
+ export { interruptRefusalNote } from './interruptRefusalNote.js';
378
408
  export type { InteractiveInterruptRuns, InteractiveInterruptOptions } from './interactiveInterrupt.js';
379
409
  export { readSessionBackgroundable, projectSessionBackgroundable, interactiveEngineWire, retireInteractiveEngineWire, interactiveDetachPosture, streamInteractiveRun, backgroundHandoffEligibility, backgroundHandoffSentence, interactiveStopFacts, } from './sessionBackground.js';
380
410
  export type { SessionBackgroundableReading, InteractiveEngineLane, InteractiveEngineWireInit, InteractiveEngineWire, InteractiveOpeningInput, InteractiveDetachPostureReason, InteractiveDetachPosture, InteractiveStreamOptions, BackgroundHandoffVerdict, BackgroundHandoffRefusal, BackgroundHandoffUnknown, InteractiveStopFacts, } from './sessionBackground.js';
@@ -416,6 +446,8 @@ export { checkpointRowVerdictOf } from './checkpointRowVerdict.js';
416
446
  export type { CheckpointRowVerdictReading } from './checkpointRowVerdict.js';
417
447
  export { checkpointRowBarOf, checkpointRowBarSentence } from './checkpointRowVerdict.js';
418
448
  export type { CheckpointRowBar } from './checkpointRowVerdict.js';
449
+ export { parkedUnresumableRowsOf, parkedUnresumableLine } from './hitl/parkedUnresumable.js';
450
+ export type { ParkedUnresumableRow } from './hitl/parkedUnresumable.js';
419
451
  export { checkpointRequirementsDamagedOf } from './checkpointRowVerdict.js';
420
452
  export type { CheckpointRequirementsDamagedReading } from './checkpointRowVerdict.js';
421
453
  export { READ_CREDENTIAL_NOT_ACCEPTED_NOTICE, isReadCredentialRefusal } from './readCredentialRefusal.js';
@@ -474,3 +506,7 @@ export { sessionEngineBindingFor, commitSessionEngine, readSessionEngine, sessio
474
506
  export type { SessionEngineKind, SessionEngineIdentityKind, SessionEngineBindingInput, SessionEngineRowInput, SessionEngineBindingFailure, SessionEngineSelfPresentation, SessionEngineDeclaredPresentation, SessionEngineAddressPresentation, SessionEngineBindingOk, SessionEngineSelfBinding, SessionEngineDeclaredBinding, SessionEngineAddressBinding, SessionEngineBinding, SessionEngineAssignment, SessionEngineView, SessionEngineSelfView, SessionEngineDeclaredView, SessionEngineAddressView, SessionEngineReading, SessionEngineBoundReading, SessionEngineSessionRef, SessionEngineCommitRequest, SessionEngineRecoverRequest, SessionEngineUnresolvedReason, SessionEngineCommitResult, SessionEngineCommitted, SessionEngineWiring, SessionDispatchRefusal, SessionDispatchDecision, SessionDispatchUrlTarget, SessionDispatchRefused, } from './sessionEngine.js';
475
507
  export { foldSessionPlacement } from './deviceRebind.js';
476
508
  export type { SessionPlacementView } from './deviceRebind.js';
509
+ export { repointEngine, deviceHelloReadingOf, engineRepointVerdictOf, engineRepointMessageOf } from './engineRepoint.js';
510
+ export type { DeviceHelloRejectWord, DeviceHelloReading, EngineRepointInput, EngineRepointHandshakeTarget, EngineRepointHandshakePort, EngineRepointRoster, EngineRepointRecordReading, EngineRepointRecordPresent, EngineRepointMoveResult, EngineRepointRecordPort, EngineRepointSessionsPort, EngineRepointPorts, EngineRepointProofState, EngineRepointHandshakeProof, EngineRepointRosterProof, EngineRepointProofs, EngineRepointVerdict, EngineRepointExit, EngineRepointSessionTally, EngineRepointRefusal, EngineRepointResult, EngineRepointDone, EngineRepointPartial, EngineRepointUnverified, EngineRepointUndetermined, EngineRepointStoreFailed, EngineRepointRefused, } from './engineRepoint.js';
511
+ export { repointSessionEngine } from './sessionEngine.js';
512
+ export type { SessionEngineRepointResult } from './sessionEngine.js';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from './seam.js';
2
2
  export * from './workflow.js';
3
- export { _resetEngineTaskNotificationForTest, _resetNotificationQueuePortForTest, _setWatcherTimingForTest, _tickWatchOnceForTest, classifyHookFailureFrame, classifyHookNoticeFrame, deriveNotificationResidualLines, dropQueuedNotificationsForRun, enqueueBgChildNotification, enqueueEngineWorkflowNotification, enqueuePlanReviewOutcome, HOOK_NOTICE_WARN_PREFIX, hookNoticeLastCheckText, installBgTaskStatusProbe, installNotificationQueuePort, installWorkflowStatusProbe, isEngineWorkflowNotified, isHookNoticeFrame, isOwnWorkflowRun, isTaskNotificationObjective, isWorkflowCompletionCardEnqueued, listOwnWorkflowRuns, markEngineWorkflowNotified, normalizeTaskNotification, noteOwnWorkflowRun, noteWorkflowCompletionCardEnqueued, notificationDropCounters, notificationQueuePortMisses, outstandingAbandonedCount, outstandingBgTaskPrompt, outstandingDeliverableWorkflowCount, outstandingWorkflowCount, parseTranscriptNotificationSeeds, readTaskNotificationXml, registerOutstandingBgTask, registerOutstandingWorkflowRun, renderTaskNotificationXml, splitApiErrorSupplement, subscribeOutstandingWorkflows, TASK_NOTIFICATION_TAG, taskNotificationDedupKey, taskNotificationDedupKeyFromWire, taskNotificationDeliverySupplement, } from './notifications.js';
3
+ export { _resetEngineTaskNotificationForTest, _resetNotificationQueuePortForTest, _setWatcherTimingForTest, _tickWatchOnceForTest, classifyHookFailureFrame, classifyHookNoticeFrame, deriveNotificationResidualLines, dropQueuedNotificationsForRun, enqueueBgChildNotification, enqueueEngineWorkflowNotification, enqueuePlanReviewOutcome, HOOK_NOTICE_WARN_PREFIX, hookNoticeLastCheckText, installBgTaskStatusProbe, installNotificationQueuePort, installWorkflowRunReader, isEngineWorkflowNotified, isHookNoticeFrame, isOwnWorkflowRun, isTaskNotificationObjective, isWorkflowCompletionCardEnqueued, listOwnWorkflowRuns, markEngineWorkflowNotified, normalizeTaskNotification, noteOwnWorkflowRun, noteWorkflowCompletionCardEnqueued, notificationDropCounters, notificationQueuePortMisses, outstandingAbandonedCount, outstandingBgTaskPrompt, outstandingDeliverableWorkflowCount, outstandingWorkflowCount, parseTranscriptNotificationSeeds, readTaskNotificationXml, registerOutstandingBgTask, registerOutstandingWorkflowRun, renderTaskNotificationXml, splitApiErrorSupplement, subscribeOutstandingWorkflows, TASK_NOTIFICATION_TAG, taskNotificationDedupKey, taskNotificationDedupKeyFromWire, taskNotificationDeliverySupplement, workflowRunTerminalReadingOf, } from './notifications.js';
4
4
  export * from './peerFrames.js';
5
5
  export * from './steering.js';
6
6
  export * from './retryStatus.js';
@@ -15,12 +15,13 @@ export { engineRefOf, sameEngineRef, TRANSCRIPT_ROW_SIDECAR_KEYS } from './engin
15
15
  export { isReplayMarked } from './replayBody.js';
16
16
  export { composeEventLeg, EVENT_LEG_KINDS, EVENT_LEG_TABLE, approvalFrameContextOf } from './eventLeg.js';
17
17
  export { frameBindingOf, inheritFrameBinding } from './frameBinding.js';
18
- export { __resetSubagentContentStoreConfigForTests, __resetSubagentOwnerLedgerForTests, clearSubagentContent, coerceOutput, configureSubagentContentStore, getBgParentRun, getBgParentRunOwner, getBgTerminalFacts, getSubagentContentSnapshot, isOwnEngineRun, parentToolCallIdOf, planSubagentViewSlots, publishSubagentContentEvent, pushSubagentLocalEcho, recordBgParentRun, recordOwnEngineRun, recordSubagentOwner, recordSubagentOwnerFromProgress, registerSubagentAlias, settleSubagentContent, SUBAGENT_CONTENT_STORE_DEFAULTS, subagentContentStoreConfig, subagentOwnerSessionConflicts, subscribeSubagentContent, subagentContentEventOf, } from './subagentContentStore.js';
18
+ export { __resetSubagentContentStoreConfigForTests, __resetSubagentOwnerLedgerForTests, clearSubagentContent, coerceOutput, configureSubagentContentStore, getBgParentRun, getBgParentRunOwner, getBgTerminalFacts, getSubagentContentSnapshot, isOwnEngineRun, noteSeatSubagentAlias, parentToolCallIdOf, planSubagentViewSlots, publishSubagentContentEvent, pushSubagentLocalEcho, recordBgParentRun, recordOwnEngineRun, recordSubagentOwner, readSeatSubagentAlias, recordSubagentOwnerFromProgress, registerSubagentAlias, settleSubagentContent, SUBAGENT_CONTENT_STORE_DEFAULTS, subagentContentStoreConfig, subagentOwnerSessionConflicts, subscribeSubagentContent, subagentContentEventOf, } from './subagentContentStore.js';
19
19
  export * from './engineAgentPanelStore.js';
20
20
  export * from './engineAgentAbsence.js';
21
21
  export * from './fleetAgentPanelProjection.js';
22
22
  export { reducePanelFrame, createPanelReduceState, PANEL_DELTA_OPS } from './panelReduce.js';
23
23
  export { _resetLiveQuestionStore, hasLocalQuestionResponder, hasQuestionOverlay, hasQuestionOverlayFor, onQuestionFrame, onQuestionFrameFor, publishQuestionFrame, publishQuestionFrameFor, registerLocalQuestionResponder, respondToQuestion, setQuestionRespond, } from './liveQuestionStore.js';
24
+ export { withdrawParkQuestion, PARK_QUESTION_WITHDRAW_REFUSALS } from './hitl/hostWithdrawal.js';
24
25
  export * from './engineInlineTaskStats.js';
25
26
  export * from './printToolResultFrame.js';
26
27
  export * from './printModelStatus.js';
@@ -76,6 +77,15 @@ export * from './gateOutcome.js';
76
77
  export * from './postureKnob.js';
77
78
  export * from './engineIdentity.js';
78
79
  export { readEngineHealthFacts } from './engineHealthFacts.js';
80
+ export { readModsDeploymentPackages } from './engineHealthFacts.js';
81
+ export { localEngineAnchorOf, localEnginePlanDriftOf, judgeLocalEngine, localEngineLaneOf, localEngineVerdictSentence } from './localEngineJudge.js';
82
+ export { countClientRegistry, fleetBackgroundLiveOf, localEngineSelfOf, localEngineRegistryStatusOf, localEngineIdle, localEngineDemandOf, localEngineExitFate, localEngineExitFateSentence, } from './localEngineOccupancy.js';
83
+ export { LOCAL_ENGINE_SWAP_CAUSES, localEngineSwapAutoable, engineSwapCardOf, engineSwapCardText } from './localEngineSwapCard.js';
84
+ export { LOCAL_ENGINE_SPAWN_ENV, LOCAL_ENGINE_HOST_BITS, LOCAL_ENGINE_SPAWN_SHAPE, localEngineOperatorSingleUserOf, localEngineSpawnEnv, localEngineSeedEnv, localEnginePrincipalOf, localEnginePrincipalSentence, engineBootRefusalOf, engineBootRefusalSentence, localEngineFirstShareSentence, } from './localEngineSpawn.js';
85
+ export { LOCAL_ENGINE_STOP_LADDER, stopLadderStep } from './localEngineStopLadder.js';
86
+ export { LOCAL_ENGINE_INITIAL_STATE, LOCAL_ENGINE_FAIL_CODES, localEngineStep, engineSwapAnswerOutcomeOf } from './localEngineStep.js';
87
+ export { LOCAL_ENGINE_TIMING } from './localEngineTiming.js';
88
+ export { localEngineSeatReadingOf, localEngineSeatSentence, localEngineNoticeText, localEngineFailText, engineTargetLocalOf, engineRestartOutcomeOf, } from './localEngineSeatReading.js';
79
89
  export { transportFailureScene } from './engineWireFor.js';
80
90
  export { engineUrlTransportVerdict, normalizeEngineBaseUrl } from './engineUrl.js';
81
91
  export { submitStreamWithBoundedReopen } from './submitReopen.js';
@@ -103,7 +113,7 @@ export * from './engineWireSdk.js';
103
113
  export * from './classifierVerdictWire.js';
104
114
  export { stripSystemReminderBlocks, unwrapSystemReminder } from './systemReminderTag.js';
105
115
  export { findSystemReminderOpenTag } from './systemReminderTag.js';
106
- export { ACTIVE_RUN_BUSY_ERROR_CODE, APPROVAL_EXPIRED, ASK_GONE, asModelFallbackReason, CAPABILITY_IMAGE_INDEX_REQUIRED, CAPABILITY_K8S_LANE_REQUIRED, CAPABILITY_OPERATOR_PRINCIPALS_REQUIRED, CAPABILITY_SELF_ORCHESTRATION_REQUIRED, CONFIG_AGENT_UNKNOWN_TOOL, CONFIG_DELEGATION_ENTRY_CAPS, CONFIG_IMAGE_INVALID, CONFIG_LEGACY_TOOL_NAME, CONFIG_LIMIT_INVALID, CONFIG_LIMIT_UNKNOWN_KEY, CONFIG_MCP_SERVER_NAME_COLLISION, CONFIG_MEMORY_PROJECT_KEY_SPELLING, CONFIG_MEMORY_WRITE_SCOPE_MISMATCH, CONFIG_OUTPUT_STYLE_INVALID, CONFIG_TOOL_FACE_CONTROL, CONFLICT_IDEMPOTENCY_PAYLOAD_MISMATCH, CORRUPT_SESSION_ERROR_CODE, DECIDE_CLAIM_LOST, DECIDE_GATE_MOVED, DECIDE_NOT_PARKED, DECIDE_PARK_MOVED_CODES, DECIDE_ROW_UNREVIVABLE, DECIDE_WORKFLOW_HOST_UNKNOWN, DECIDE_WORKFLOW_LANE_CODES, DECIDE_WORKFLOW_PARK_FORKED, DECIDE_WORKFLOW_PARKS_UNREADABLE, DECIDE_WORKFLOW_REMEMBER_UNSUPPORTED, DELEGATION_CAP_CODES, DELEGATION_CONCURRENCY_CAP, DELEGATION_SESSION_CAP, delegationCapDispositionOf, DRAINING_ERROR_CODE, ENGINE_STOP_REASONS, engineStopReasonToCc, ENV_LIFETIME_EXPIRED, FLEET_LEASE_UNAVAILABLE, GATE_PARKED_ERROR_CODE, idempotencyPayloadMismatchContent, isConfigRefusalCode, isCorruptSessionCode, isDecideParkMovedCode, isDecideRowUnrevivableCode, isDelegationCapCode, isIdempotencyPayloadMismatchCode, isInterruptedToolEndCode, isLimitsExceededCode, isRewindFamilyCode, isRulesRefusalCode, isStatusDerivedCoarseCode, isWorkflowParkRefusalCode, LIMITS_MAX_COST_EXCEEDED, LIMITS_MAX_TOKENS_EXCEEDED, LIMITS_MAX_TURNS_EXCEEDED, LIMITS_MAX_WALLTIME_EXCEEDED, MCP_SERVER_REVOKED, MCP_TOOL_DECLARATION_CHANGED, MCP_TOOL_LISTING_UNREACHED, MODEL_FALLBACK_INHERIT_NO_TIER_BINDING, operatorGateRefusalContent, OUTPUT_INVALID, PARKED_RESUME_STARTUP_FAILED, PROMPT_ASSEMBLED_ROLE_REFUSED, REQUEST_AUTONOMY_LANE_REFUSED, RESUME_AT_ERROR_CODE_PREFIX, RESUME_CONTEXT_UNAVAILABLE, RESUME_ENV_FAILED, RESUME_PLACEMENT_MISMATCH, RESUME_POLICY_FOLD_CODE, RESUME_PREFLIGHT_REJECTED, RESUME_REOPEN_CODES, RESUME_RETRY_LATER_CODES, RESUME_TOOL_CONTRACT_MISMATCH, RESUME_TOOL_UNAVAILABLE, RESUME_USAGE_WINDOW_EXHAUSTED, REWIND_ERROR_CODE_PREFIXES, RUN_ORPHANED, RUN_STALLED, runDeathVerdictNoteOf, SCENARIO_ASSIGNMENT_UNKNOWN_ERROR_CODE, SCENARIO_NOT_ALLOWED_ERROR_CODE, STREAM_MAX_DURATION, TOOL_END_INTERRUPTED_NEVER_STARTED, TOOL_END_INTERRUPTED_OUTCOME_UNKNOWN, USAGE_WINDOW_EXHAUSTED, USER_ATTACHMENT_INVALID_ERROR_CODE, USER_INVOKED_SKILL_UNKNOWN_ERROR_CODE, WORKFLOW_PARK_REFUSAL_CODES, ATTACHMENT_BOUND_ELSEWHERE, ATTACHMENT_BUNDLE_INVALID, ATTACHMENT_BUNDLE_LANE_NOT_ISOLATED, ATTACHMENT_BUNDLE_SEED_FIXED, CONFLICT_SESSION_MEMORY_UNOBSERVED, CONFLICT_SESSION_ARCHIVE_STAMPED, ENV_HOME_UNCONFIRMED, } from './engineErrorCodes.js';
116
+ export { ACTIVE_RUN_BUSY_ERROR_CODE, APPROVAL_EXPIRED, ASK_GONE, asModelFallbackReason, CAPABILITY_IMAGE_INDEX_REQUIRED, CAPABILITY_K8S_LANE_REQUIRED, CAPABILITY_OPERATOR_PRINCIPALS_REQUIRED, CAPABILITY_SELF_ORCHESTRATION_REQUIRED, CONFIG_AGENT_UNKNOWN_TOOL, CONFIG_DELEGATION_ENTRY_CAPS, CONFIG_IMAGE_INVALID, CONFIG_LEGACY_TOOL_NAME, CONFIG_LIMIT_INVALID, CONFIG_LIMIT_UNKNOWN_KEY, CONFIG_MCP_SERVER_NAME_COLLISION, CONFIG_MEMORY_PROJECT_KEY_SPELLING, CONFIG_MEMORY_WRITE_SCOPE_MISMATCH, CONFIG_OUTPUT_STYLE_INVALID, CONFIG_TOOL_FACE_CONTROL, CONFLICT_IDEMPOTENCY_PAYLOAD_MISMATCH, CORRUPT_SESSION_ERROR_CODE, DECIDE_CLAIM_LOST, DECIDE_GATE_MOVED, DECIDE_NOT_PARKED, DECIDE_PARK_MOVED_CODES, DECIDE_ROW_UNREVIVABLE, DECIDE_WORKFLOW_HOST_UNKNOWN, DECIDE_WORKFLOW_LANE_CODES, DECIDE_WORKFLOW_PARK_FORKED, DECIDE_WORKFLOW_PARKS_UNREADABLE, DECIDE_WORKFLOW_REMEMBER_UNSUPPORTED, DELEGATION_CAP_CODES, DELEGATION_CONCURRENCY_CAP, DELEGATION_SESSION_CAP, delegationCapDispositionOf, DRAINING_ERROR_CODE, ENGINE_STOP_REASONS, engineStopReasonToCc, ENV_LIFETIME_EXPIRED, FLEET_LEASE_UNAVAILABLE, GATE_PARKED_ERROR_CODE, idempotencyPayloadMismatchContent, isConfigRefusalCode, isCorruptSessionCode, isDecideParkMovedCode, isDecideRowUnrevivableCode, isDelegationCapCode, isIdempotencyPayloadMismatchCode, isInterruptedToolEndCode, isLimitsExceededCode, isRewindFamilyCode, isRulesRefusalCode, isStatusDerivedCoarseCode, isWorkflowParkRefusalCode, LIMITS_MAX_COST_EXCEEDED, LIMITS_MAX_TOKENS_EXCEEDED, LIMITS_MAX_TURNS_EXCEEDED, LIMITS_MAX_WALLTIME_EXCEEDED, MCP_SERVER_REVOKED, MCP_TOOL_DECLARATION_CHANGED, MCP_TOOL_LISTING_UNREACHED, MODEL_FALLBACK_INHERIT_NO_TIER_BINDING, operatorGateRefusalContent, OUTPUT_INVALID, PARKED_RESUME_STARTUP_FAILED, PROMPT_ASSEMBLED_ROLE_REFUSED, REQUEST_AUTONOMY_LANE_REFUSED, RESUME_AT_ERROR_CODE_PREFIX, RESUME_CONTEXT_UNAVAILABLE, RESUME_ENV_FAILED, RESUME_PLACEMENT_MISMATCH, RESUME_POLICY_FOLD_CODE, RESUME_PREFLIGHT_REJECTED, RESUME_REOPEN_CODES, RESUME_RETRY_LATER_CODES, RESUME_TOOL_CONTRACT_MISMATCH, RESUME_TOOL_UNAVAILABLE, RESUME_USAGE_WINDOW_EXHAUSTED, REWIND_ERROR_CODE_PREFIXES, RUN_ORPHANED, RUN_STALLED, runDeathVerdictNoteOf, SCENARIO_ASSIGNMENT_UNKNOWN_ERROR_CODE, SCENARIO_NOT_ALLOWED_ERROR_CODE, STREAM_MAX_DURATION, TOOL_END_INTERRUPTED_NEVER_STARTED, TOOL_END_INTERRUPTED_OUTCOME_UNKNOWN, USAGE_WINDOW_EXHAUSTED, USER_ATTACHMENT_INVALID_ERROR_CODE, USER_INVOKED_SKILL_UNKNOWN_ERROR_CODE, WORKFLOW_PARK_REFUSAL_CODES, ATTACHMENT_BOUND_ELSEWHERE, ATTACHMENT_BUNDLE_INVALID, ATTACHMENT_BUNDLE_LANE_NOT_ISOLATED, ATTACHMENT_BUNDLE_SEED_FIXED, CONFLICT_SESSION_MEMORY_UNOBSERVED, CONFLICT_SESSION_ARCHIVE_STAMPED, ENV_HOME_UNCONFIRMED, REQUEST_ENV_CREDENTIAL_REFUSED, CONFLICT_SESSION_ID_RETIRED, } from './engineErrorCodes.js';
107
117
  export { prepareRefusalCodeOf, prepareRefusalNoteOf } from './prepareRefusal.js';
108
118
  export * from './agentsWireCaps.js';
109
119
  export { engineToolDirectoryOf } from './engineToolDirectory.js';
@@ -145,11 +155,14 @@ export * from './adapter/types.js';
145
155
  export * from './adapter/downstream/turnUsageToModelUsage.js';
146
156
  export * from './adapter/downstream/eventToSdkMessage.js';
147
157
  export { MOD_LOADER_VERBS, readModRegistrationRefusedNotice, modCardSentence, modLoaderFailureSentence } from './modsFace.js';
158
+ export { sessionModsOf } from './modsFace.js';
159
+ export { approvalRequestedBySentence } from './modsFace.js';
148
160
  export { modRowsOf } from './adapter/downstream/wiringManifestView.js';
149
161
  export { wiringFleetDoctorDetail } from './wiringFleetDoctor.js';
150
162
  export * from './adapter/downstream/terminalToSdkResult.js';
151
163
  export { resultErrorCodeOf, resultSelectedModelOf, resultSalvagedResultOf, resultParkFailedReasonOf } from './resultFrameKeys.js';
152
164
  export * from './adapter/runStream.js';
165
+ export { runBlockedText } from './promptBlockedCopy.js';
153
166
  export { SEMA_ROW_KIND_KEY, SEMA_ROW_KINDS, rowKindOf, isSyntheticRow, inferLegacyRowKind } from './rowKind.js';
154
167
  export { classifySubmitFailure } from './submitFailure.js';
155
168
  export * from './adapter/activeRunSelfHeal.js';
@@ -232,7 +245,7 @@ export * from './detachWire.js';
232
245
  export * from './workflowMonitor.js';
233
246
  export * from './workflowClient.js';
234
247
  export * from './hooksWireCaps.js';
235
- export { ENGINE_FIRED_HOOK_EVENTS, PLUGIN_HOOK_DISPOSITIONS, PLUGIN_HOOK_REASONS, PLUGIN_HOOK_EXCLUSION_REASONS, SETTINGS_HOOK_DROP_REASONS, isEngineFiredHookEvent, pluginHookVerdictOf, pluginHookReasonText, settingsHookDropText, pluginHookExecutorLabel, hooksNotRunNotice, settingsHooksKeptLocally, userPromptSubmitExecutorOf, } from './pluginHooksWire.js';
248
+ export { ENGINE_FIRED_HOOK_EVENTS, PLUGIN_HOOK_DISPOSITIONS, PLUGIN_HOOK_REASONS, PLUGIN_HOOK_EXCLUSION_REASONS, SETTINGS_HOOK_DROP_REASONS, isEngineFiredHookEvent, pluginHookVerdictOf, pluginHookReasonText, settingsHookDropText, pluginHookExecutorLabel, hooksNotRunNotice, settingsHooksKeptLocally, pluginHooksKeptLocally, userPromptSubmitExecutorOf, } from './pluginHooksWire.js';
236
249
  export { HTTP_POLICY_DROP_REASONS } from './httpHookPolicy.js';
237
250
  export { salvageSettingsHooksEntries, settingsHooksSalvageNotice, } from './settingsHooksSalvage.js';
238
251
  export { hostSettingsSelfCheck, HostSettingsRefused, HOST_SUPPLIED_KEYS, HOST_SETTING_CAUSES, HOST_SETTING_DISPOSITIONS, hostSettingsConsent, hostSettingsAcceptCurrent, } from './hostTurnSettings.js';
@@ -249,13 +262,16 @@ export * from './model/providerPresets.js';
249
262
  export { __setDecideTimeoutRetryBudgetForTests, backendDeny, DecideTransportRetryExhaustedError, findPendingForTask, HitlBridge, HitlSafetyError, isPlanReviewModeAfter, makeHitlCanUseTool, MAX_DENY_REASON_CHARS, PLAN_REVIEW_MODE_AFTER_WORDS, readDecideCurrentPending, readWireErrorCode, } from './hitl/hitlBridge.js';
250
263
  export * from './hitl/suspendedReopen.js';
251
264
  export { APPROVAL_RESOLUTION_LANES, APPROVAL_NOT_SENT_CAUSES, APPROVAL_UNSETTLED_CAUSES, APPROVAL_NOTE_RETRACTED_DETAIL, APPROVAL_NOTE_EDIT_REFUSED_DETAIL, isApprovalDecided, approvalNotSentCause, approvalUnsettledCause, approvalResolutionDetail, } from './hitl/approvalResolution.js';
265
+ export { editedApprovalAcceptanceOf, editedApprovalRefusedLine, EDITED_APPROVAL_STATES, EDITED_APPROVAL_BASES } from './hitl/editedApprovalAcceptance.js';
252
266
  export { ENGINE_ABORT_TOOL_RESULT } from './hitl/frameRouter.js';
253
267
  export { toolEndOutputText } from './toolResultContent.js';
254
268
  export { toolOutputMediaAbsenceOf, toolOutputMediaAbsenceSentence } from './toolResultContent.js';
255
269
  export { _resetHitlHostSurfaceForTest, APPROVAL_PARKING_WARN_TEXT, approvalParkingNoticeText, CANCEL_DENY_BUDGET_MS, CANCEL_DENY_WARN_TEXT, EDIT_NOT_FORWARDED_WARN_TEXT, EDIT_REFUSED_ON_BLIND_ASK_WARN_TEXT, hitlHostSurfaceFor, hitlHostSurfaceMisses, hitlHostSurfaceMissesFor, installHitlHostSurface, installHitlHostSurfaceFor, observeCancelByDeny, REMEMBER_NOT_APPLIED_WARN_TEXT, REPLAYED_APPROVAL_LIST_UNREADABLE_WARN_TEXT, RULE_NOT_SENT_REJECTED_WARN_TEXT, RULE_NOT_SENT_WARN_TEXT, surfaceEditRefusedOnBlindAsk, surfaceForCurrentSession, surfaceRememberNotApplied, } from './hitl/hitlHostSurface.js';
256
- export * from './hitl/toolApprovalWire.js';
270
+ export { APPROVAL_DENY_SETTLED_BY_WORDS, ASK_ORIGIN_WORDS, RESPOND_DECISIONS, RETRACTED_CARD_DECISION_KIND, RULE_OFFERS_ABSENCE_REASONS, RULE_OFFER_BATCH_MEMBER_KINDS, RULE_OFFER_MATCHES, RULE_OFFER_UNCOVERED_REASONS, TOOL_APPROVAL_FRAME_KEYS_MIRROR, WITHDRAWN_CARD_DECISION_KIND, __resetSettledApprovalsForTests, _resetApprovalCardPortForTest, allowNoteNotCarriedSentence, answerCarriage, answerPayloadFor, approvalBoundGrantsDetail, approvalCardFactsOfFrame, approvalCardFactsOfGeneric, approvalCardFactsOfV1, approvalCardFactsOfV1Frame, approvalCardPortFor, approvalCardPortMisses, approvalCardPortMissesFor, approvalIsMandated, approvalPriorCardsDetail, approvalSupersedesDetail, askProbeReasonDetail, claimApprovalCard, classifierNoRulingDetail, decisionAttributionKeyOf, hasApprovalCardPort, hasApprovalCardPortFor, installApprovalCardPort, installApprovalCardPortFor, isFromSubagent, isToolApprovalFrame, isToolApprovalGate, isToolApprovalRespondParkedRedeemed, isToolApprovalRespondReplayed, joinApprovalHolder, observeApprovalAnswerCommitted, readApprovalBoundGrants, readApprovalCardWord, readApprovalClassifierNoRuling, readApprovalDenySettledBy, readApprovalMandate, readApprovalRememberRefused, readBoundGrantEntry, readDenialLimitFallback, readRuleOfferSupply, readRuleOffers, readToolApprovalRespondAck, readToolApprovalRespondParking, rememberRefusalOf, structurallyEqual, surfaceApprovalCard, surfaceFsApprovalAndDecide, surfaceToolApprovalFrameAndRespond, toolNameIsFsWrite, toolNameIsShellExec, toolPermissionRequestAskBits } from './hitl/toolApprovalWire.js';
257
271
  export * from './hitl/approvalCardReading.js';
258
272
  export * from './hitl/approvalCardReasons.js';
273
+ export { approvalRequestFrameReadingOf, APPROVAL_REQUEST_FRAME_UNREADABLE_WHYS } from './hitl/approvalRequestFrameReading.js';
274
+ export { approvalAskReasonsOf } from './hitl/approvalAskers.js';
259
275
  export { askClassReasonOf, askClassReasonsOf } from './hitl/askClassPair.js';
260
276
  export * from './hitl/editedRuleTextPrecheck.js';
261
277
  export * from './coreValuePorts.js';
@@ -267,10 +283,10 @@ export { planReviewCardNote } from './hitl/planReviewCard.js';
267
283
  export { readRunLedgerSnapshot } from './runLedgerSnapshot.js';
268
284
  export { decisionInFlightOf, decisionReadMark } from './hitl/decisionLedger.js';
269
285
  export { ASK_PARK_AUTO_REOPEN_BLOCKS, askParkAutoReopenBlockedContent, askParkAutoReopenBlockOf, askParkRefusalBlockOf, claimAskParkAutoReopenBlockNotice, clearAskParkAutoReopenBlocks, } from './hitl/askParkAutoReopenBlock.js';
270
- export { HITL_DECISION_FAMILIES, HITL_DECISION_NOT_APPLIED_CAUSES, HITL_DECISION_NOT_SENT_CAUSES, HITL_DECISION_UNCONFIRMED_CAUSES, sendHitlDecision, hitlDecisionOutcomeContent, } from './hitl/decisionSend.js';
286
+ export { HITL_DECISION_FAMILIES, HITL_DECISION_NOT_APPLIED_CAUSES, HITL_DECISION_NOT_SENT_CAUSES, HITL_DECISION_UNCONFIRMED_CAUSES, sendHitlDecision, hitlDecisionOutcomeContent, toolPermissionSettledLine, } from './hitl/decisionSend.js';
271
287
  export { PLAN_REVIEW_QUESTION_ID_PREFIX, REOPEN_ID_TAIL, approvalCallKey, askGateQuestionId, planReviewQuestionId, liveFrameCallKey, armedKeyFromQuestionId, } from './hitl/gateIdentity.js';
272
288
  export { _resetArmedGateRegistryForTest, _setGateArmedWaitMsForTest, clearArmedGate, gateArmedWaitMs, notePlanReviewAnswered, onGateArmed, planReviewArmedKey, registerArmedGate, registerArmedGateFor, registerArmedGateFromQuestionId, registerArmedGateFromQuestionIdFor, waitForGateArmed, wasGateArmed, wasGateArmedFor, } from './hitl/armedGateRegistry.js';
273
- export * from './hitl/parkOwnership.js';
289
+ export { askQuestionsFromPending, isHitlSafetyErrorLike, pendingRowIsOwnedByThisSession, pendingRowOwnershipOf, } from './hitl/parkOwnership.js';
274
290
  export * from './hitl/parkRowBirthWait.js';
275
291
  export * from './hitl/approvalDecisionNoteAudit.js';
276
292
  export * from './hitl/askParkRowRouting.js';
@@ -292,6 +308,8 @@ export { MODE_ARBITRATION, automaticAnswerVerdict, mandatedApprovalDetailOf, cro
292
308
  export { standingRowsOf, rememberOfferable, localAllowRuleEnforceable, } from './hitl/standingRows.js';
293
309
  export { classifyDecisionRefusal, liveAskPendingReading, decisionRefusalClosesOut, undeliverableDecisionContent, decideRowUnrevivableNotice, decisionRefusalAskReading, readDecisionRefusalReading, } from './hitl/decisionRefusal.js';
294
310
  export { decisionGrantChangedContent } from './hitl/decisionConflict.js';
311
+ export { decideFailureNote } from './decideFailureNote.js';
312
+ export { decisionAnswerInvalidContent } from './hitl/decisionConflict.js';
295
313
  export { noAllowCauseOf } from './hitl/noAllowCause.js';
296
314
  export { policyDenyReason } from './hitl/frameRouter.js';
297
315
  export { readApprovalAllowRuleShadow, approvalAllowRuleShadowed, allowRuleShadowSentence, } from './hitl/allowRuleShadow.js';
@@ -304,6 +322,7 @@ export { approvalCompleteCauseOf } from './hitl/approvalEndingCause.js';
304
322
  export * from './hitl/askSettlementLine.js';
305
323
  export * from './interactiveHalt.js';
306
324
  export { fireInteractiveInterrupt } from './interactiveInterrupt.js';
325
+ export { interruptRefusalNote } from './interruptRefusalNote.js';
307
326
  export { readSessionBackgroundable, projectSessionBackgroundable, interactiveEngineWire, retireInteractiveEngineWire, interactiveDetachPosture, streamInteractiveRun, backgroundHandoffEligibility, backgroundHandoffSentence, interactiveStopFacts, } from './sessionBackground.js';
308
327
  export { BACKGROUND_HANDOFF_ABORT_REASON, handoffInteractiveRun, handedOffRunsOf, forgetHandedOffRun } from './sessionBackgroundHandoff.js';
309
328
  export { listDevices, readSessionBinding, rebindSession, reconcileRebindOutcome, rebindProvesRequestNotApplied } from './deviceRebind.js';
@@ -326,6 +345,7 @@ export * from './agentSession/backgroundView.js';
326
345
  export { readAssistantInbox } from './assistantInbox.js';
327
346
  export { checkpointRowVerdictOf } from './checkpointRowVerdict.js';
328
347
  export { checkpointRowBarOf, checkpointRowBarSentence } from './checkpointRowVerdict.js';
348
+ export { parkedUnresumableRowsOf, parkedUnresumableLine } from './hitl/parkedUnresumable.js';
329
349
  export { checkpointRequirementsDamagedOf } from './checkpointRowVerdict.js';
330
350
  export { READ_CREDENTIAL_NOT_ACCEPTED_NOTICE, isReadCredentialRefusal } from './readCredentialRefusal.js';
331
351
  export { readEngineAgentRegistry, isEngineAgentRegistryListingSuperseded } from './agentSession/engineAgentRegistryRead.js';
@@ -363,3 +383,5 @@ export { scenarioSkillsOf, observedScenarioSkillsCapability } from './scenarioSk
363
383
  export { observedApprovalFrameFamilies, approvalFrameFamiliesDeclaration } from './approvalFrameFamilies.js';
364
384
  export { sessionEngineBindingFor, commitSessionEngine, readSessionEngine, sessionDispatchTarget, sessionDispatchRefusedFor } from './sessionEngine.js';
365
385
  export { foldSessionPlacement } from './deviceRebind.js';
386
+ export { repointEngine, deviceHelloReadingOf, engineRepointVerdictOf, engineRepointMessageOf } from './engineRepoint.js';
387
+ export { repointSessionEngine } from './sessionEngine.js';
@@ -123,3 +123,5 @@ export function inheritEnvNoticeOf(intent, lang) {
123
123
  return undefined;
124
124
  }
125
125
  }
126
+ const _pinInheritEnv = [true, true];
127
+ void _pinInheritEnv;
@@ -0,0 +1,16 @@
1
+ export interface HumanInputAuthorKeys {
2
+ author?: string;
3
+ authorUnreadable?: true;
4
+ extension?: string;
5
+ }
6
+ export declare function humanInputAuthorKeys(frame: {} | null | undefined): HumanInputAuthorKeys;
7
+ export interface RunOriginKeys {
8
+ runOrigin?: string;
9
+ runOriginUnreadable?: true;
10
+ }
11
+ export declare function runOriginKeys(carrier: {} | null | undefined): RunOriginKeys;
12
+ export interface RunOriginRowKeys {
13
+ readonly _sema_run_origin?: string;
14
+ readonly _sema_run_origin_unreadable?: true;
15
+ }
16
+ export declare function runOriginRowKeys(row: {} | null | undefined): RunOriginRowKeys;
@@ -0,0 +1,44 @@
1
+ import { CORE_INPUT_AUTHORS, CORE_RUN_ORIGINS } from './generated/engineFactTables.js';
2
+ import { guardedRead, ownDataField, readOwnDataNonEmptyString } from './ownKey.js';
3
+ function readClosedWord(carrier, key, flagKey, words) {
4
+ try {
5
+ if (typeof carrier !== 'object' || carrier === null || Array.isArray(carrier))
6
+ return { state: 'absent' };
7
+ if (ownDataField(carrier, flagKey) === true)
8
+ return { state: 'unreadable' };
9
+ const raw = ownDataField(carrier, key);
10
+ if (raw === undefined)
11
+ return { state: 'absent' };
12
+ if (typeof raw === 'string' && words.includes(raw))
13
+ return { state: 'word', word: raw };
14
+ return { state: 'unreadable' };
15
+ }
16
+ catch {
17
+ return { state: 'unreadable' };
18
+ }
19
+ }
20
+ export function humanInputAuthorKeys(frame) {
21
+ if (typeof frame !== 'object' || frame === null || Array.isArray(frame))
22
+ return {};
23
+ const a = readClosedWord(frame, 'author', 'authorUnreadable', CORE_INPUT_AUTHORS);
24
+ const extension = guardedRead(() => readOwnDataNonEmptyString(frame, 'extension'));
25
+ return {
26
+ ...(a.state === 'word' ? { author: a.word } : {}),
27
+ ...(a.state === 'unreadable' ? { authorUnreadable: true } : {}),
28
+ ...(extension !== undefined ? { extension } : {}),
29
+ };
30
+ }
31
+ export function runOriginKeys(carrier) {
32
+ const r = readClosedWord(carrier, 'runOrigin', 'runOriginUnreadable', CORE_RUN_ORIGINS);
33
+ return {
34
+ ...(r.state === 'word' ? { runOrigin: r.word } : {}),
35
+ ...(r.state === 'unreadable' ? { runOriginUnreadable: true } : {}),
36
+ };
37
+ }
38
+ export function runOriginRowKeys(row) {
39
+ const k = runOriginKeys(row);
40
+ return {
41
+ ...(k.runOrigin !== undefined ? { _sema_run_origin: k.runOrigin } : {}),
42
+ ...(k.runOriginUnreadable === true ? { _sema_run_origin_unreadable: true } : {}),
43
+ };
44
+ }
@@ -0,0 +1,2 @@
1
+ import type { UiLanguage } from './env/uiLanguage.js';
2
+ export declare function interruptRefusalNote(reason: string | null | undefined, lang?: UiLanguage): string;
@@ -0,0 +1,17 @@
1
+ import { INTERRUPT_NOT_HELD, INTERRUPT_NOTHING_IN_FLIGHT, STEERING_NOT_RUNNING } from './engineErrorCodes.js';
2
+ import { msg, renderMessage } from './i18n/translate.js';
3
+ function interruptRefusalKeyOf(reason) {
4
+ switch (reason) {
5
+ case INTERRUPT_NOTHING_IN_FLIGHT:
6
+ return 'session.interruptRefusal.nothingInFlight';
7
+ case INTERRUPT_NOT_HELD:
8
+ return 'session.interruptRefusal.notHeld';
9
+ case STEERING_NOT_RUNNING:
10
+ return 'session.interruptRefusal.notRunning';
11
+ default:
12
+ return 'session.interruptRefusal.unrecognised';
13
+ }
14
+ }
15
+ export function interruptRefusalNote(reason, lang) {
16
+ return renderMessage(msg(interruptRefusalKeyOf(reason)), lang);
17
+ }
@@ -36,6 +36,8 @@ export declare function imageVisionReadingOf(model: string | undefined, catalog?
36
36
  readonly vision: ImageVision;
37
37
  readonly model?: string;
38
38
  };
39
+ export type ModelReasoning = 'yes' | 'no' | 'unknown';
40
+ export declare function modelReasoningOf(model: string | undefined, catalog?: LiveModelCatalog | null): ModelReasoning;
39
41
  export type EffortLevelsReading = {
40
42
  readonly kind: 'clamped';
41
43
  readonly levels: readonly string[];
@@ -46,6 +46,9 @@ function ownDataOf(o, key) {
46
46
  return undefined;
47
47
  }
48
48
  }
49
+ function capabilityWordOf(declared) {
50
+ return declared === true ? 'yes' : declared === false ? 'no' : 'unknown';
51
+ }
49
52
  function liveModelRowOf(cat, ref) {
50
53
  const rows = catalogRowsOf(cat);
51
54
  if (rows === undefined)
@@ -92,8 +95,7 @@ export function imageVisionReadingOf(model, catalog = getLiveModelCatalog()) {
92
95
  const target = targetRowOf(model, catalog);
93
96
  if (target.kind !== 'row')
94
97
  return { vision: 'unknown' };
95
- const vision = ownDataOf(target.row, 'vision');
96
- const word = vision === true ? 'yes' : vision === false ? 'no' : 'unknown';
98
+ const word = capabilityWordOf(ownDataOf(target.row, 'vision'));
97
99
  const name = ownDataOf(target.row, 'name');
98
100
  return typeof name === 'string' && name.length > 0 ? { vision: word, model: name } : { vision: word };
99
101
  }
@@ -101,6 +103,18 @@ export function imageVisionReadingOf(model, catalog = getLiveModelCatalog()) {
101
103
  return { vision: 'unknown' };
102
104
  }
103
105
  }
106
+ export function modelReasoningOf(model, catalog = getLiveModelCatalog()) {
107
+ try {
108
+ const target = targetRowOf(model, catalog);
109
+ return target.kind === 'row' ? reasoningWordOfRow(target.row) : 'unknown';
110
+ }
111
+ catch {
112
+ return 'unknown';
113
+ }
114
+ }
115
+ function reasoningWordOfRow(row) {
116
+ return capabilityWordOf(ownDataOf(row, 'reasoning'));
117
+ }
104
118
  const NOT_CLAMPED = Object.freeze({ kind: 'not_clamped' });
105
119
  const NOT_APPLICABLE = Object.freeze({ kind: 'not_applicable' });
106
120
  const unknownEffort = (why) => Object.freeze({ kind: 'unknown', why });
@@ -127,10 +141,10 @@ export function effortLevelsOf(model, catalog = getLiveModelCatalog()) {
127
141
  }
128
142
  return Object.freeze({ kind: 'clamped', levels: Object.freeze(out) });
129
143
  }
130
- const reasoning = ownDataOf(row, 'reasoning');
131
- if (reasoning === true)
144
+ const reasoning = reasoningWordOfRow(row);
145
+ if (reasoning === 'yes')
132
146
  return NOT_CLAMPED;
133
- if (reasoning === false)
147
+ if (reasoning === 'no')
134
148
  return NOT_APPLICABLE;
135
149
  return unknownEffort('reasoning_unreported');
136
150
  }
@@ -747,14 +761,14 @@ export function liveModelRowsOf(catalog = getLiveModelCatalog()) {
747
761
  seen.add(name);
748
762
  const id = nonEmptyString(ownDataOf(row, 'id'));
749
763
  const provider = nonEmptyString(ownDataOf(row, 'provider'));
750
- const reasoning = ownDataOf(row, 'reasoning');
764
+ const reasoning = reasoningWordOfRow(row);
751
765
  const contextWindow = positiveFinite(ownDataOf(row, 'contextWindow'));
752
766
  const maxOutputTokens = positiveFinite(ownDataOf(row, 'maxOutputTokens'));
753
767
  out.push(Object.freeze({
754
768
  name,
755
769
  ...(id !== undefined ? { id } : {}),
756
770
  ...(provider !== undefined ? { provider } : {}),
757
- ...(typeof reasoning === 'boolean' ? { reasoning } : {}),
771
+ ...(reasoning !== 'unknown' ? { reasoning: reasoning === 'yes' } : {}),
758
772
  ...(contextWindow !== undefined ? { contextWindow } : {}),
759
773
  ...(maxOutputTokens !== undefined ? { maxOutputTokens } : {}),
760
774
  isDefault: def.kind === 'listed' && def.name === name,
@@ -1,10 +1,13 @@
1
1
  import type { AskQuestion, AskQuestionOption, QuestionAnswer, QuestionFrame } from '@sema-agent/sdk';
2
2
  export type { AskQuestion, AskQuestionOption, QuestionAnswer, QuestionFrame };
3
+ import type { HostWithdrawal } from './hitl/hostWithdrawal.js';
3
4
  type QuestionFrameHandler = (frame: QuestionFrame) => void;
4
5
  type RespondFn = (id: string, answer: QuestionAnswer, opts?: {
5
6
  signal?: AbortSignal;
6
7
  }) => Promise<unknown>;
7
- export declare function registerLocalQuestionResponder(id: string, fn: RespondFn): () => void;
8
+ type WithdrawHook = (withdrawal: HostWithdrawal) => void;
9
+ export declare function registerLocalQuestionResponder(id: string, fn: RespondFn, onWithdraw?: WithdrawHook): () => void;
10
+ export declare function takeLocalQuestionWithdrawHook(id: string): WithdrawHook | 'no_card' | 'not_withdrawable';
8
11
  export declare function unregisterLocalQuestionResponder(id: string): boolean;
9
12
  export declare function hasLocalQuestionResponder(id: string): boolean;
10
13
  export declare function publishQuestionFrame(frame: QuestionFrame): void;
@@ -2,12 +2,21 @@ import { createSessionSlot, DEFAULT_SESSION_KEY } from './sessionSlot.js';
2
2
  const frameHandlerByKey = createSessionSlot();
3
3
  let respondFn = null;
4
4
  const localResponders = new Map();
5
- export function registerLocalQuestionResponder(id, fn) {
6
- localResponders.set(id, fn);
5
+ export function registerLocalQuestionResponder(id, fn, onWithdraw) {
6
+ localResponders.set(id, typeof onWithdraw === 'function' ? { respond: fn, withdraw: onWithdraw } : { respond: fn });
7
7
  return () => {
8
8
  localResponders.delete(id);
9
9
  };
10
10
  }
11
+ export function takeLocalQuestionWithdrawHook(id) {
12
+ const entry = localResponders.get(id);
13
+ if (entry === undefined)
14
+ return 'no_card';
15
+ if (entry.withdraw === undefined)
16
+ return 'not_withdrawable';
17
+ localResponders.delete(id);
18
+ return entry.withdraw;
19
+ }
11
20
  export function unregisterLocalQuestionResponder(id) {
12
21
  return localResponders.delete(id);
13
22
  }
@@ -50,7 +59,7 @@ export function respondToQuestion(id, answer, opts) {
50
59
  const local = localResponders.get(id);
51
60
  if (local) {
52
61
  localResponders.delete(id);
53
- return local(id, answer, opts);
62
+ return local.respond(id, answer, opts);
54
63
  }
55
64
  if (!respondFn) {
56
65
  return Promise.reject(new Error('no live question respond wired (offline/mock path)'));