@ordewell/core 0.11.3 → 0.12.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/AUTHORS.md +3 -1
- package/dist/{IRunner-ihalYfTo.d.mts → IRunner-BwzyUVIL.d.mts} +62 -18
- package/dist/{IRunner-DOMtDTVt.d.ts → IRunner-DjJkYwko.d.ts} +62 -18
- package/dist/{ModeResolver-DyXeZ9ib.d.ts → ModeResolver-CHsaoV7M.d.ts} +1 -1
- package/dist/{ModeResolver-BDAgouuE.d.mts → ModeResolver-b_7bPlBS.d.mts} +1 -1
- package/dist/{Task-BL4Idm9r.d.mts → Task-BTEH-ztX.d.mts} +301 -26
- package/dist/{Task-BL4Idm9r.d.ts → Task-BTEH-ztX.d.ts} +301 -26
- package/dist/{chunk-MYXMIVWA.mjs → chunk-BFLVOYNR.mjs} +3 -3
- package/dist/{chunk-YAFNYNFX.mjs → chunk-BKTDYGIP.mjs} +14 -2
- package/dist/chunk-BKTDYGIP.mjs.map +1 -0
- package/dist/{chunk-QTZ5XTBY.mjs → chunk-F6WS3JLQ.mjs} +446 -10
- package/dist/chunk-F6WS3JLQ.mjs.map +1 -0
- package/dist/{chunk-7WNLN63J.mjs → chunk-HP2LNKST.mjs} +315 -51
- package/dist/chunk-HP2LNKST.mjs.map +1 -0
- package/dist/index.d.mts +239 -78
- package/dist/index.d.ts +239 -78
- package/dist/index.js +5120 -1715
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4247 -1515
- package/dist/index.mjs.map +1 -1
- package/dist/parsing.d.mts +2 -2
- package/dist/parsing.d.ts +2 -2
- package/dist/parsing.js.map +1 -1
- package/dist/parsing.mjs +3 -3
- package/dist/plan-utils.d.mts +4 -4
- package/dist/plan-utils.d.ts +4 -4
- package/dist/plan-utils.js +135 -19
- package/dist/plan-utils.js.map +1 -1
- package/dist/plan-utils.mjs +25 -3
- package/dist/{runSettingsText-BuLVBlXS.d.mts → runSettingsText-CvZ40IPv.d.ts} +1083 -190
- package/dist/{runSettingsText-DVOd7vKC.d.ts → runSettingsText-x-YML2ay.d.mts} +1083 -190
- package/dist/testing.d.mts +18 -2
- package/dist/testing.d.ts +18 -2
- package/dist/testing.js +71 -7
- package/dist/testing.js.map +1 -1
- package/dist/testing.mjs +68 -7
- package/dist/testing.mjs.map +1 -1
- package/package.json +2 -1
- package/dist/chunk-7WNLN63J.mjs.map +0 -1
- package/dist/chunk-QTZ5XTBY.mjs.map +0 -1
- package/dist/chunk-YAFNYNFX.mjs.map +0 -1
- /package/dist/{chunk-MYXMIVWA.mjs.map → chunk-BFLVOYNR.mjs.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export { A as ApprovalRecord, a as AttemptUsage, b as AwaitingReason, B as BUILTIN_SKILL_NAMES, C as ContextCheckpoint, c as ContextFill, d as ConversationMessage, e as CostProvenance, D as DEFAULT_LOOP_ROUNDS, f as DEFAULT_RUNNERS, g as DEFAULT_SUPERVISOR_RETRY_LIMIT, h as DIGEST_FINDINGS, j as ExecutionCommandName, k as ExecutionRecord, F as FindingSeverity, G as GuardTarget, l as GuardTrip, H as HANDOFF_LIMITS, m as HANDOFF_PUSH_CHARS, n as Handoff, o as HandoffArtifact, q as HandoffCommit, r as HandoffDigest, s as HandoffEvidence, t as HandoffFinding, u as
|
|
3
|
-
import {
|
|
4
|
-
export { A as ACT_RISK, a as AUTORUN_RISK, d as AccountLimitStatus, e as AccountLimitWindow, f as AccountLimitsFrame, g as AccountLimitsMessage, h as AdoptSessionResponse, i as
|
|
5
|
-
import { O as IConfig, P as IFileSystem, am as PlannerToolHandler, aj as PlannerShellSandbox, aw as ResearchShell, N as IApproval, au as ReadFileOpts,
|
|
6
|
-
export { A as AUTO_COMMANDS, b as AgentAdapterFactory, g as AllProviderModels, h as AnswerApprovalArgs, l as ApprovalKind, m as ApprovalMode, p as ApprovalPolicyOptions, q as ApprovalRequest, r as ApprovalSource, C as CatalogModel, u as CheckpointArgs, v as CommandClassification, w as CommandTier, x as CommandWords, D as DEFAULT_PLANNER_ALLOWLIST, y as DEFAULT_SCRIPT_TIMEOUT_MS, z as DENY_ALL, E as DiscoveryCommand, F as EditPlanArgs, G as FetchAllProviderModelsOptions, I as GIT_READONLY_SUBCOMMANDS, J as GREP_DEFAULT_HEAD_LIMIT, M as GrepOutputMode, S as InvokedCommand, T as LineBuffer, U as ListModelsArgs, V as ListRunnersArgs, W as LoadSkillArgs, X as McpClientConfig, Y as McpCredential, Z as McpRefusal, _ as McpTool, $ as McpToolContext, a1 as MessageTaskArgs, a2 as ModelCatalog, a3 as ModelShortcut, a4 as ORCHESTRATOR_SHORTCUTS, a5 as ORDEWELL_MCP_PATH, a6 as ORDEWELL_MCP_SERVER_NAME, a7 as OneTaskArgs, aa as OwnSealedRuns, ab as OwnerOnlyFile, ac as PLANNER_EXECUTION_TOOLS, ad as PLANNER_SANDBOX_DOCS, ae as PLANNER_TOOLS, ah as PlannerSandboxAvailability, ai as PlannerSandboxDeps, ak as PlannerStartOptions, al as PlannerTokenScope, ao as ProviderCredentialSource, aq as ProviderModelsResult, as as READ_ONLY_TASK_TOOLS, at as REFUSED_COMMANDS, ax as ResearchShellDeps, ay as RetryTaskArgs, aA as RunCommandArgs, aB as RunPlanArgs, aC as RunnerAuthSpec, aD as RunnerAuthStatus, aF as RunnerCommandKind, aG as RunnerEntry, aI as RunnerFeatures, aK as RunnerMcpServer, aL as RunnerMode, aM as RunnerModelDiscovery, aN as RunnerModelRef, aP as SEALED_LIMITS, aQ as SEARCH_EXCLUSIONS, aR as SandboxBackend, aS as SandboxInvocation, aT as SandboxLaunch, aU as SandboxLimits, aV as SandboxProfile, aY as ScriptFullOutput, aZ as ScriptRun, a_ as ScriptStatus, a$ as SealedAvailability, b0 as SealedRunOptions, b1 as ShellDialect, b3 as SpawnFn, b4 as StandingDecision, b7 as SubmitPlanArgs, b8 as TASK_COMPLETE_TOOL, b9 as TASK_COMPLETION_CONTRACT, ba as TASK_SEALED_LIMITS, bb as TASK_TOOLS, bd as TaskDiffArgs, bg as TaskModeUnsupportedError, bh as TaskOutputArgs, bi as TaskQueryArgs, bj as TaskRunCommandArgs,
|
|
7
|
-
import { R as RunnerModeInfo } from './ModeResolver-
|
|
8
|
-
export { a as autonomyLevelLabel, p as parseAutonomyFlag, b as parseAutonomyLevel, r as runnerModesFrom } from './ModeResolver-
|
|
1
|
+
import { aK as RunnerId, aD as ResearchProgress, bh as UsageRecord, aC as ResearchLogEntry, b1 as Task, i as DiscoveredModel, I as IIsolationPreview, z as IWorktreeIsolation, a4 as IsolationTaskStatus, a5 as IsolationView, af as PlanIsolation, a8 as LegacyPlanState, aL as RunnerSessionCost, aB as ReportedWindow, an as PlannerUsage, ba as TaskSkillSnapshot, aZ as SkillsService, E as ExecutionActor, bb as TaskSnapshot, ag as PlanState, bj as Verdict, a_ as StoredHandoff, p as HandoffCheck } from './Task-BTEH-ztX.js';
|
|
2
|
+
export { A as ApprovalRecord, a as AttemptUsage, b as AwaitingReason, B as BUILTIN_SKILL_NAMES, C as ContextCheckpoint, c as ContextFill, d as ConversationMessage, e as CostProvenance, D as DEFAULT_LOOP_ROUNDS, f as DEFAULT_RUNNERS, g as DEFAULT_SUPERVISOR_RETRY_LIMIT, h as DIGEST_FINDINGS, j as ExecutionCommandName, k as ExecutionRecord, F as FindingSeverity, G as GuardTarget, l as GuardTrip, H as HANDOFF_LIMITS, m as HANDOFF_PUSH_CHARS, n as Handoff, o as HandoffArtifact, q as HandoffCommit, r as HandoffDigest, s as HandoffEvidence, t as HandoffFinding, u as HandoffLogs, v as HandoffPatch, w as HandoffPins, x as HandoffPreviewOptions, y as HandoffTaskName, J as IntegrationDisposal, K as InvalidSkill, L as IsolationAvailability, M as IsolationHandoff, N as IsolationHandoffRepo, O as IsolationInactiveReason, P as IsolationLandedTask, Q as IsolationLanding, R as IsolationMergeBlock, S as IsolationMergeBlockReason, T as IsolationMergeResult, U as IsolationOutcome, V as IsolationPreview, W as IsolationPruneResult, X as IsolationRemoval, Y as IsolationRepo, Z as IsolationRepoRevert, _ as IsolationRevertResult, $ as IsolationRevertTask, a0 as IsolationRun, a1 as IsolationTaskRecord, a2 as IsolationTaskRef, a3 as IsolationTaskRepo, a6 as LandedTask, a7 as LandedWork, a9 as LoopSubject, aa as MAX_LOOP_ROUNDS, ab as ModelUsage, ac as PatchFlag, ad as PatchView, ah as PlanStatus, ai as PlanUsage, aj as PlannerCompaction, ak as PlannerCompactionOutcome, al as PlannerContextPause, am as PlannerResendState, ao as PrepareIntent, ap as PreparedTask, aq as PreservedWork, ar as PreviewRepo, as as PreviousWork, at as REPORT_MAX_CHARS, au as ROOT_NODE, av as RefusedRemoval, aw as RepairEvidence, ax as RepairWait, ay as ReplyRun, az as RepoGroupLayout, aA as RepoHead, aE as ResearchStep, aF as ResearchStepOutcome, aH as RevertCommand, aI as RevertWatch, aJ as RunSettings, aM as SEVERITY_LABEL, aN as ScriptConsent, aO as ScriptResult, aP as SessionBilling, aQ as SetupFailure, aR as ShadowedSkill, aS as SkillAppliesTo, aT as SkillCatalog, aU as SkillInfo, aV as SkillLoad, aW as SkillLoadNotice, aX as SkillMetadata, aY as SkillSource, b0 as SupervisorLevel, b4 as TaskIsolation, b5 as TaskIsolationState, b6 as TaskLoop, b7 as TaskModelAssignment, bc as TaskStatus, bd as TaskType, be as TaskUsageSummary, bf as TreeSnapshot, bg as UsageLine, bi as UsageTotals, bk as VerificationCheck, bl as WrittenTaskRef, bm as actorAuthority, bn as addAttemptUsage, bo as addModelUsage, bp as addPlannerUsage, bq as addUsage, br as addUsageTotals, bs as artifactLines, bt as betweenRounds, bu as boundedHandoffLines, bv as byteSize, bw as checkHandoff, bx as checkOf, by as contextMeterText, bz as contextMeterTitle, bA as costText, bB as countedSessionCost, bC as createEmptyPlan, bD as createSkillsService, bE as createTask, bF as endAttemptUsage, bG as findingLines, bH as findingRefText, bI as flattenTasks, bJ as flattenTasksWithParents, bK as formatCost, bL as formatTokenCount, bM as handoffDigest, bN as handoffLines, bO as handoffPreviewLines, bP as handoffReferenceText, bQ as handoffWakeLines, bR as inLoop, bS as isAwaitingReason, bT as isMeasured, bU as isSupervisorLevel, bV as isUserMessage, bW as loopRemovalRefusal, bX as loopRoundOf, bY as migratePlanState, bZ as modelCostTitle, b_ as namedHandoff, b$ as openingLines, c0 as outOfRounds, c1 as parseFindingRef, c2 as partedPromptUsage, c3 as patchChangesText, c4 as patchFlagText, c5 as patchLines, c6 as patchLinesText, c7 as patchText, c8 as patchView, c9 as pausedOnLimit, ca as planUsage, cb as plannerContextFill, cc as readableTaskIds, cd as rejoinPlanTree, ce as removedAttempt, cf as resolveWrittenRef, cg as resumedSessionWindow, ch as savedPatchOf, ci as savedPatchView, cj as savedPatchViews, ck as severityLabel, cl as startAttemptUsage, cm as storedHandoff, cn as subagentCostTitle, co as taskUsageSummary, cp as tasksTotalText, cq as usageLine, cr as usageText, cs as waitsForApproval, ct as withPatch, cu as wordsFrom, cv as worstSeverity } from './Task-BTEH-ztX.js';
|
|
3
|
+
import { dE as TurnBudgets, bp as PlanIntake, aC as IWebFetcher, W as ConversationTurn, bE as PlannerModes, bT as ResolveAll, dN as WebReadPolicy, dK as WebRead, dL as WebReadDecision, dM as WebReadOptions, bl as PendingApprovals, az as IAiService, bv as PlannerContextDeps, bw as PlannerContextStatus, N as ContextCondenseRequest, U as ConversationRequest, bz as PlannerModelCandidate, c9 as RunnerAuthExec, c8 as RunnerAuth, b as AccountLimitBucket, c as AccountLimitSnapshot, u as AssignmentWriter, t as AssignmentScope, dh as TaskQueryCatalog, r as AssignmentCatalog, cc as RunnerCatalog, cx as SessionMessage, cp as SessionBroadcaster, cz as SessionNotice, bt as PlanStore, db as TaskOrchestrator, ac as Escalation, bg as OrchestratorObserver, d0 as TaskLogEvent, bS as ResearchTasks, aB as INotification, at as GlobalRunSettings, aH as IsolationRunController, cs as SessionHeld, cu as SessionLease, by as PlannerConversationHost, bx as PlannerConversation, b9 as NodeAuthority, al as ExecutionCommand, G as CommandOutcome, aU as Mandate, bk as PendingApproval, Q as ConversationCompaction, bZ as RewindTarget, c7 as RunView, dk as TaskRevertPreview, c2 as RunMergeView, c0 as RunActivity, de as TaskOutputSource, aK as LeaseHost, dH as UserSettings, aP as LiveTailOptions, aO as LiveTail, cy as SessionMeta, bD as PlannerModelStore, bC as PlannerModelRecall } from './runSettingsText-CvZ40IPv.js';
|
|
4
|
+
export { A as ACT_RISK, a as AUTORUN_RISK, d as AccountLimitStatus, e as AccountLimitWindow, f as AccountLimitsFrame, g as AccountLimitsMessage, h as AdoptSessionResponse, i as AnswerEscalationRequest, j as ApplyTaskOpsResult, k as ApprovalAnswerResponse, l as ApprovalBlock, m as ApprovalRequestMessage, n as ApprovalStatus, o as ApprovalsResponse, p as ApproveReviewResponse, q as AskOptions, s as AssignmentIssue, v as AutoMergeTrigger, B as BlockingSubject, C as CHAT_COMMANDS, w as CHECKPOINT_TRUNCATE_LENGTH, x as CancelPlanningResponse, y as CancelResumeResponse, z as CliAgentAiService, D as CliAgentAiServiceDeps, E as CommandBlock, F as CommandDescriptor, H as CommandPayload, I as CommandStatus, J as CommandsResponse, K as CompactionBlock, L as CompactionStatus, M as Consent, O as ConversationBusyError, P as ConversationCompactResponse, R as ConversationEditError, S as ConversationForkResponse, T as ConversationInput, V as ConversationRewindResponse, X as ConversationView, Y as DEFAULT_WEB_READ_BUDGET, Z as DELEGATION_OFFERED, _ as DELEGATION_RISK, $ as DaemonErrorCode, a0 as DecideOptions, a1 as DiffRow, a2 as DiffRowKind, a3 as DiffStat, a4 as DisplayBlock, a5 as EMPTY_CONVERSATION, a6 as EMPTY_HOLD, a7 as EMPTY_RUN, a8 as EMPTY_TASK_LOG, a9 as EMPTY_TASK_LOG_FOLLOW, aa as EffectRules, ab as ErrorBody, ad as EscalationInput, ae as EscalationKind, af as EscalationOption, ag as EscalationOptionId, ah as EscalationRun, ai as EscalationsResponse, aj as ExecuteCommandResponse, ak as ExecuteResponse, am as ExecutionCommands, an as ExecutionHost, ao as ExecutionSummary, ap as FLOOR_GRANTS, aq as GRANTS, ar as GatedConversation, as as GeneratePlanResponse, au as Grant, av as HEADLESS_CLI_COMMANDS, aw as HandoffBlock, ax as HandoffForkRepo, ay as HandoffPeekSubject, aA as IDLE_ACTIVITY, aD as IsolationDiffResponse, aE as IsolationMergeResponse, aF as IsolationPreviewNotice, aG as IsolationPreviewResponse, aI as LEASE_HEARTBEAT_MS, aJ as LEASE_STALE_MS, aL as LeaseHostKind, aM as LeaseHostOptions, aN as LiveOutputLookup, aQ as LocalEntry, aR as LoopCheckFacts, aS as LoopCheckState, aT as LoopGuard, aV as MandateExclusions, aW as MandateLimits, aX as MandateRefusal, aY as MandateRequest, aZ as MappedTool, a_ as MarkdownToken, a$ as MergeGateEntry, b0 as MergeGateResponse, b1 as MergeWordingHandoff, b2 as MessageBlock, b3 as MessageRole, b4 as ModelsResponse, b5 as NOT_STARTED, b6 as NO_TURN, b7 as Narrowed, b8 as NewTaskFields, ba as NotificationAction, bb as OUTPUT_LINES_DEFAULT, bc as OUTPUT_LINES_MAX, bd as OkResponse, be as OpRef, bf as OpRefusal, bh as OutputPreview, bi as OverrideDirection, bj as PLANNED_WITH_LABEL, bm as PendingApprovalsOptions, bn as PlanBlock, bo as PlanBlocks, bq as PlanMarkerStatus, br as PlanResponse, bs as PlanSnapshot, bu as PlannerCommandSyntax, bA as PlannerModelChoice, bB as PlannerModelMemory, bF as PlannerNotReady, bG as PlannerNotReadyError, bH as PlannerReadinessConfig, bI as PlannerSubmission, bJ as PlannerTurnDiscardedError, bK as PlannerTurnStoppedError, bL as PlannerUsageLimitError, bM as PrdResponse, bN as PromptHold, bO as REPORT_PREVIEW_LINES, bP as RUN_SETTINGS_DEFAULTS, bQ as ReadRunnerAuthOptions, bU as ResolveConflictResponse, bV as RevertPreviewTask, bW as RevertRefusal, bX as RevertRefusalReason, bY as RevertScope, b_ as RewindTargetsResponse, b$ as RootSettings, c1 as RunInput, c3 as RunSettingsError, c4 as RunSnapshotFrame, c5 as RunTask, c6 as RunTaskStatus, ca as RunnerAuthExecOptions, cb as RunnerAuthExecResult, cd as RunnerLoadedBlock, ce as RunnersResponse, cf as SHAPE_LIMITS, cg as STALLED_LABEL, ch as STOPPED_BEFORE_START, ci as SUPERVISOR_LEVEL_LABEL, cj as SerializedConversationMessage, ck as SerializedPendingTurn, cl as SerializedPlan, cm as SerializedTask, cn as SerializedTaskStatus, co as ServerInfoResponse, cq as SessionData, cr as SessionFrame, ct as SessionHeldError, cv as SessionLeaseRecord, cw as SessionListResponse, cA as SessionResponse, cB as SettingsResponse, cC as SettingsService, cD as SettingsUpdateResponse, cE as SkillInvocation, cF as SkillLoadBlock, cG as SkillToken, cH as StartAdmission, cI as StopResponse, cJ as StreamStamp, cK as SubagentBlock, cL as SubagentChild, cM as SubagentStatus, cN as SurfacePlan, cO as SurfacePlanState, cP as SurfaceTask, cQ as TASK_QUERY_ANSWER_MAX_CHARS, cR as TASK_QUERY_ANSWER_OR_OPS, cS as TASK_QUERY_FIELDS, cT as TASK_QUERY_PROTOCOL, cU as TASK_QUERY_REMINDER, cV as TERMINAL_UI_COMMANDS, cW as TakenPrompt, cX as TaskAction, cY as TaskActivity, cZ as TaskAttemptSnapshot, c_ as TaskLogAttemptsResponse, c$ as TaskLogBatch, d1 as TaskLogFollow, d2 as TaskLogFollowInput, d3 as TaskLogHeaderKind, d4 as TaskLogHeaderTask, d5 as TaskLogHeaderUsage, d6 as TaskLogHeaderView, d7 as TaskLogResponse, d8 as TaskLogView, d9 as TaskMessageResponse, da as TaskOp, dc as TaskOrchestratorDeps, dd as TaskOrchestratorOptions, df as TaskPlacement, dg as TaskQuery, di as TaskQueryField, dj as TaskRef, dl as TaskRevertPreviewResponse, dm as TaskRowAction, dn as TaskRowContext, dp as TaskRowHandoff, dq as TaskRowIsolation, dr as TaskRowKind, ds as TaskRowLoop, dt as TaskRowPlacement, du as TaskRowSubject, dv as TaskRowUsage, dw as TaskRowView, dx as TaskRunFacts, dy as TaskStatusKind, dz as ThinkingDisplayBlock, dA as ToolBlock, dB as ToolHeadline, dC as ToolStatus, dD as TreeTask, dF as TurnGate, dG as UsageBlock, dI as WAITS_FOR_APPROVAL_LABEL, dJ as WakeUpItem, dO as Worded, dP as WorkspacesResponse, dQ as abbreviateHome, dR as accountLimitPercentText, dS as accountLimitWindowLabel, dT as accountLimitsOf, dU as accountLimitsText, dV as accountLimitsTitle, dW as activityLabel, dX as aheadOfDraft, dY as applyTaskOps, dZ as approvalKindText, d_ as approvalLabel, d$ as approvalStatusText, e0 as assignedRunnerOf, e1 as assignmentIssue, e2 as assignmentIssueText, e3 as attachingLabel, e4 as automergeSummary, e5 as autorunSummary, e6 as awaitingLabel, e7 as blockNotice, e8 as blockNotices, e9 as blockedByLabel, ea as blockingFailures, eb as canMergeTasks, ec as canSetDependencies, ed as canSplitTask, ee as capConflictFiles, ef as cardEditNeedsUnstarted, eg as cardEditable, eh as checkoutRule, ei as classifyOutcome, ej as closeTurn, ek as coalesceTaskLog, el as compactionText, em as confirmedOverride, en as createAiService, eo as delegationSummary, ep as dependencyCandidates, eq as dependentsNotice, er as dependentsOf, es as describeHeld, et as describeHolder, eu as describeIsolationPreview, ev as describeMergeResult, ew as describePlannerNotReady, ex as diffRows, ey as diffStat, ez as diffSummary, eA as digestTaskLog, eB as drainNext, eC as editableWhileRunning, eD as effectRuleFor, eE as elapsedSince, eF as escalations, eG as executionSummary, eH as followTaskLog, eI as followTurn, eJ as formatElapsed, eK as fromTranscript, eL as getSettingsPath, eM as handoffBaseLine, eN as handoffBranchName, eO as handoffFindingsText, eP as handoffPeekParts, eQ as hasAccountLimits, eR as hasHiddenDetail, eS as hasLongReport, eT as heldMandate, eU as holdLabel, eV as holdPrompt, eX as isRepoGroup, eY as isTaskRunning, eZ as lastServedModel, e_ as loadedSkillTokens, e$ as logContinues, f0 as logResumes, f1 as loopBodyLabel, f2 as loopBodyRound, f3 as loopCheckLabel, f4 as loopCheckState, f5 as loopLeaveNotice, f6 as loopRowParts, f7 as mandateRefusalText, f8 as manualOverrideConfirmation, f9 as manualOverrideStopFirst, fa as mapAgentTool, fb as markAction, fc as markdownHtml, fd as markdownTokens, fe as mergeOutcome, ff as mergeTarget, fg as namedRepos, fh as narrow, fi as newTaskFields, fj as noExecutorRefusal, fk as normalizeAgentArgs, fl as opRefusalText, fm as opsEditable, fn as outputLines, fo as outputPreview, fp as overrideNeedsConfirmation, fq as parseCount, fr as parseDelegation, fs as parseEffectAllowlist, ft as parseSwitch, fu as parseTaskOpsJson, fv as parseTaskQueryJson, fw as pastGateConfirmation, fx as planBlocks, fy as planMarkerParts, fz as plannerMessage, fA as plannerNotReady, fB as plannerNotReadyFor, fC as plannerTranscript, fD as processLeaseHost, fE as ranSealed, fF as readRunnerAuth, fG as receiptLabel, fH as reconcileApprovals, fI as recordRunnerAuth, fJ as recordedRunnerAuth, fK as reduceConversation, fL as reduceRun, fM as reduceTaskLog, fN as renderTaskQueryAnswer, fO as repairWaitLabel, fP as repairedLanded, fQ as repairedNotice, fR as repeatingChecks, fS as replayTaskLog, fT as repoBaseLine, fU as repoResultLines, fV as reposWithWork, fW as resetRunnerAuth, fX as resolveSkillInvocation, fY as resolveTaskRef, fZ as resolveUserTaskRef, f_ as resumeLabel, f$ as resumeTime, g0 as revertEffect, g1 as revertListLine, g2 as revertTaskRef, g3 as rootAuthority, g4 as rootMandate, g5 as runHoldsEditors, g6 as runSettingsOf, g7 as runnerToolSubject, g8 as scriptExitText, g9 as scriptRunText, ga as secondsText, gb as serializePlan, gc as serializeTask, gd as serializeTaskStatus, ge as skillTokens, gf as skippedLabel, gg as stopTurn, gh as subtreeIds, gi as summarizeToolCall, gj as supervisorSummary, gk as surfacePlan, gl as surfacePlanState, gm as takeAt, gn as taskActionCommand, go as taskActivity, gp as taskChatAvailable, gq as taskLogCommands, gr as taskLogForSurface, gs as taskLogHeaderView, gt as taskOrderLabel, gu as taskPlacement, gv as taskQuerySignature, gw as taskRef, gx as taskRefOf, gy as taskRowActions, gz as taskRowView, gA as taskStartedNotice, gB as taskStatusKind, gC as textHasTaskOps, gD as textHasTaskQuery, gE as titledRefs, gF as titledTaskRef, gG as titledTaskRefOf, gH as toTaskLogEvent, gI as toolHeadline, gJ as trailerSummary, gK as trimToolOutput, gL as truncateCheckpointSummary, gM as unsendAll, gN as unsendLatest, gO as wakeUpItems, gP as walkPlan, gQ as withoutSealedMark, gR as workspaceEnvOf } from './runSettingsText-CvZ40IPv.js';
|
|
5
|
+
import { O as IConfig, P as IFileSystem, am as PlannerToolHandler, aj as PlannerShellSandbox, aw as ResearchShell, N as IApproval, au as ReadFileOpts, bs as ToolOutcome, L as GrepOptions, b2 as ShellLaunch, K as GlobOptions, H as FindSymbolOptions, B as BashOptions, bn as TaskShellSite, bm as TaskShell, Q as IRunner, ag as PlannerBackendId, ap as ProviderModelLists, f as AiProvider, n as ApprovalModeSetting, aO as RunnerRegistry, aH as RunnerEnv, a8 as OrchestratorOption, d as AgentProcessDeps, bf as TaskModeAgentAdapter, e as AgentStartOptions, a as AgentAdapter, c as AgentEvent, aE as RunnerCommand$1, s as AttachState, k as ApprovalDecision, an as ProjectMcpServer, R as IRunnerSession, bk as TaskRunnerConfig, o as ApprovalPolicy, j as ApprovalAnswer, a9 as OrdewellMcpServer, bc as TaskCompleteArgs, aX as ScriptExit, t as CheckpointAnswer, b6 as StructuredTurnEnd, b5 as StructuredEvent, be as TaskMessageFrom, ar as QueuedTaskMessage, bo as TaskStartOptions, bp as TaskTokenScope, a0 as McpToolReply, br as TaskWebReads, av as ReadTaskArgs, i as ApplyPatchArgs, aW as ScriptBody, aJ as RunnerManifest, bl as TaskRunnerFlags } from './IRunner-DjJkYwko.js';
|
|
6
|
+
export { A as AUTO_COMMANDS, b as AgentAdapterFactory, g as AllProviderModels, h as AnswerApprovalArgs, l as ApprovalKind, m as ApprovalMode, p as ApprovalPolicyOptions, q as ApprovalRequest, r as ApprovalSource, C as CatalogModel, u as CheckpointArgs, v as CommandClassification, w as CommandTier, x as CommandWords, D as DEFAULT_PLANNER_ALLOWLIST, y as DEFAULT_SCRIPT_TIMEOUT_MS, z as DENY_ALL, E as DiscoveryCommand, F as EditPlanArgs, G as FetchAllProviderModelsOptions, I as GIT_READONLY_SUBCOMMANDS, J as GREP_DEFAULT_HEAD_LIMIT, M as GrepOutputMode, S as InvokedCommand, T as LineBuffer, U as ListModelsArgs, V as ListRunnersArgs, W as LoadSkillArgs, X as McpClientConfig, Y as McpCredential, Z as McpRefusal, _ as McpTool, $ as McpToolContext, a1 as MessageTaskArgs, a2 as ModelCatalog, a3 as ModelShortcut, a4 as ORCHESTRATOR_SHORTCUTS, a5 as ORDEWELL_MCP_PATH, a6 as ORDEWELL_MCP_SERVER_NAME, a7 as OneTaskArgs, aa as OwnSealedRuns, ab as OwnerOnlyFile, ac as PLANNER_EXECUTION_TOOLS, ad as PLANNER_SANDBOX_DOCS, ae as PLANNER_TOOLS, af as PlannerAllowlist, ah as PlannerSandboxAvailability, ai as PlannerSandboxDeps, ak as PlannerStartOptions, al as PlannerTokenScope, ao as ProviderCredentialSource, aq as ProviderModelsResult, as as READ_ONLY_TASK_TOOLS, at as REFUSED_COMMANDS, ax as ResearchShellDeps, ay as RetryTaskArgs, aA as RunCommandArgs, aB as RunPlanArgs, aC as RunnerAuthSpec, aD as RunnerAuthStatus, aF as RunnerCommandKind, aG as RunnerEntry, aI as RunnerFeatures, aK as RunnerMcpServer, aL as RunnerMode, aM as RunnerModelDiscovery, aN as RunnerModelRef, aP as SEALED_LIMITS, aQ as SEARCH_EXCLUSIONS, aR as SandboxBackend, aS as SandboxInvocation, aT as SandboxLaunch, aU as SandboxLimits, aV as SandboxProfile, aY as ScriptFullOutput, aZ as ScriptRun, a_ as ScriptStatus, a$ as SealedAvailability, b0 as SealedRunOptions, b1 as ShellDialect, b3 as SpawnFn, b4 as StandingDecision, b7 as SubmitPlanArgs, b8 as TASK_COMPLETE_TOOL, b9 as TASK_COMPLETION_CONTRACT, ba as TASK_SEALED_LIMITS, bb as TASK_TOOLS, bd as TaskDiffArgs, bg as TaskModeUnsupportedError, bh as TaskOutputArgs, bi as TaskQueryArgs, bj as TaskRunCommandArgs, bq as TaskToolHandler, bu as approvalScopes, bv as classifyCommand, bw as clearPlannerSandboxCache, bx as clearResearchShellCache, by as collectProviderCredentials, bz as commandAllowedBy, bA as commandLine, bB as effectiveApprovalMode, bC as enabledRunners, bD as fetchAllProviderModels, bE as findRunnerCommand, bF as isGranted, bG as isRunnerApproval, bH as knownModelId, bI as mcpClientConfig, bJ as ownerOnlyConfigFile, bK as parseAllowlist, bL as parseApprovalModeSetting, bM as researchShellWarning, bN as researchToolsPath, bO as resolveModelShortcut, bP as resolvePlannerSandbox, bQ as resolveProvider, bR as resolveResearchShell, bS as scopeAllowed, bT as scriptBodyOf, bU as scriptBodyText, bV as scriptTaskText, bW as sharedMcpServer, bX as taskCompletionContract, bY as timeLimitText, bZ as toApprovalDecision, b_ as toOrchestratorOptions, b$ as toolAllowed } from './IRunner-DjJkYwko.js';
|
|
7
|
+
import { R as RunnerModeInfo } from './ModeResolver-CHsaoV7M.js';
|
|
8
|
+
export { a as autonomyLevelLabel, p as parseAutonomyFlag, b as parseAutonomyLevel, r as runnerModesFrom } from './ModeResolver-CHsaoV7M.js';
|
|
9
9
|
import { WorkerOptions, Worker } from 'worker_threads';
|
|
10
10
|
import { ChildProcess } from 'child_process';
|
|
11
11
|
import { EventEmitter } from 'events';
|
|
@@ -635,61 +635,6 @@ interface VersionCheck {
|
|
|
635
635
|
*/
|
|
636
636
|
declare function startVersionCheck(options: VersionCheckOptions): VersionCheck;
|
|
637
637
|
|
|
638
|
-
/**
|
|
639
|
-
* The effect allowlist (ADR-0035): the user's standing approval for named
|
|
640
|
-
* effects, beside the planner allowlist, which names reads. It pre-approves a
|
|
641
|
-
* script task whose `commands` are all covered; it never covers a `script`
|
|
642
|
-
* body, whose shell text no rule can be matched against.
|
|
643
|
-
*
|
|
644
|
-
* A rule is matched against the whole command, every word in order and flags
|
|
645
|
-
* included, because an effect's flags change what it does: `git push origin
|
|
646
|
-
* feature/*` covers `git push origin feature/login`, never the same push with
|
|
647
|
-
* `--force`. `*` stands for one word, or inside a word for any run of
|
|
648
|
-
* characters, as in the planner allowlist, except that it never stands for
|
|
649
|
-
* what changes the effect: a flag (`--force`, and `/force` on Windows), a
|
|
650
|
-
* refspec's force or delete (`+main`, `:main`), or a `:` outside a URL
|
|
651
|
-
* (`feature/x:main`, which pushes to `main`). The rule writes any of those
|
|
652
|
-
* itself. A rule spells out its operation before any `*`, so
|
|
653
|
-
* `az webapp config * set` is no rule at all.
|
|
654
|
-
*
|
|
655
|
-
* Exclusions are the planner allowlist's `!` entries, with any `!` entry
|
|
656
|
-
* written here; an exclusion wins. A command exclusion is matched as the
|
|
657
|
-
* planner allowlist matches it; a path or URL exclusion holds for an argument
|
|
658
|
-
* that names an absolute path or URL it covers, whole or after a `=`, `@`,
|
|
659
|
-
* `:` or `,` or a short flag (`--url=…`, `-d @…`). A relative path is not
|
|
660
|
-
* resolved, since the body does not say where it runs. A program named by its
|
|
661
|
-
* path is a file the repository ships (ADR-0026), so it is never covered.
|
|
662
|
-
* There are no built-in rules: a default would pre-approve an effect the user
|
|
663
|
-
* never chose.
|
|
664
|
-
*/
|
|
665
|
-
interface EffectRule {
|
|
666
|
-
text: string;
|
|
667
|
-
binary: string;
|
|
668
|
-
words: RuleWord[];
|
|
669
|
-
}
|
|
670
|
-
interface EffectRules {
|
|
671
|
-
rules: EffectRule[];
|
|
672
|
-
exclusions: PlannerAllowlist;
|
|
673
|
-
platform: NodeJS.Platform;
|
|
674
|
-
/** The entries that are no rule, each with the warning that says why it is ignored. */
|
|
675
|
-
ignored: {
|
|
676
|
-
rule: string;
|
|
677
|
-
warning: string;
|
|
678
|
-
}[];
|
|
679
|
-
}
|
|
680
|
-
/**
|
|
681
|
-
* `entries` are the effect allowlist's; `plannerEntries` the planner allowlist
|
|
682
|
-
* in force, whose `!` entries hold here too; `platform` the one the commands
|
|
683
|
-
* run on, which decides how a flag is spelled and how a path resolves.
|
|
684
|
-
*/
|
|
685
|
-
declare function parseEffectAllowlist(entries: readonly string[], plannerEntries?: readonly string[], platform?: NodeJS.Platform): EffectRules;
|
|
686
|
-
/**
|
|
687
|
-
* The rules, by name, that cover every command of a `commands` body, or null
|
|
688
|
-
* when one command is not covered, an exclusion holds for one, or the body is
|
|
689
|
-
* a `script`.
|
|
690
|
-
*/
|
|
691
|
-
declare function effectRuleFor(list: EffectRules, body: ScriptBody): string | null;
|
|
692
|
-
|
|
693
638
|
/**
|
|
694
639
|
* Carries a structured task's tool requests to the session's one approval
|
|
695
640
|
* seam (ADR-0018, A1), so a runner's request is answered through
|
|
@@ -946,6 +891,7 @@ declare abstract class BaseConfig implements IConfig {
|
|
|
946
891
|
get approvalDefaults(): boolean;
|
|
947
892
|
get approvalPreApproved(): string[];
|
|
948
893
|
get effectAllowlist(): string[];
|
|
894
|
+
get notifyCommand(): string[];
|
|
949
895
|
/**
|
|
950
896
|
* Who plans when no surface setting names a planner: an explicit
|
|
951
897
|
* AI_PROVIDER, then a vendor whose key is in the environment,
|
|
@@ -1820,6 +1766,8 @@ declare const ORDEWELL_SETTABLE_ENV: readonly string[];
|
|
|
1820
1766
|
* off, so every later command runs unprompted; the web-read budget bounds
|
|
1821
1767
|
* how much a planner may send out unasked in Full; the effect allowlist
|
|
1822
1768
|
* pre-approves script tasks that change real systems (ADR-0035).
|
|
1769
|
+
* - The notify command is a program Ordewell starts as the user, with no
|
|
1770
|
+
* approval, on every new escalation (ADR-0053).
|
|
1823
1771
|
* - The settings-path override is honoured by the settings service, which
|
|
1824
1772
|
* creates directories recursively when persisting — admitting it turns the
|
|
1825
1773
|
* same write into an arbitrary-path file write.
|
|
@@ -3044,6 +2992,8 @@ declare class PlannerBackend {
|
|
|
3044
2992
|
type ModelsByRunner = Partial<Record<RunnerId, DiscoveredModel[]>>;
|
|
3045
2993
|
interface SessionCatalogDeps {
|
|
3046
2994
|
config: Pick<IConfig, 'enabledRunners' | 'autonomousMode' | 'aiProvider'>;
|
|
2995
|
+
/** Whether a task's mode defaults to its runner's autonomous one: a child's mandate says, the config's level unless set (ADR-0056 M6). */
|
|
2996
|
+
autonomous?: () => boolean;
|
|
3047
2997
|
registry: Pick<RunnerRegistry, 'getManifest'>;
|
|
3048
2998
|
modelResolver: Pick<ModelResolver, 'modelsForRunners' | 'getCachedRunnerModels'>;
|
|
3049
2999
|
/** Read at each call: a toggle or allowlist edit made since the session was built counts (#69). */
|
|
@@ -3070,6 +3020,7 @@ declare class SessionCatalog {
|
|
|
3070
3020
|
private readonly deps;
|
|
3071
3021
|
private discovered;
|
|
3072
3022
|
constructor(deps: SessionCatalogDeps);
|
|
3023
|
+
private autonomous;
|
|
3073
3024
|
/** The runners enabled right now. */
|
|
3074
3025
|
enabledRunners(): RunnerId[];
|
|
3075
3026
|
/** The runners `writer` may put a task on now ({@link assignableRunners}); undefined means any. */
|
|
@@ -3219,9 +3170,8 @@ interface SessionEventRelayDeps {
|
|
|
3219
3170
|
broadcast: SessionBroadcaster;
|
|
3220
3171
|
/** Where isolation notices go, for a host whose notifications are not seen by the user. */
|
|
3221
3172
|
onNotice?: (notice: SessionNotice) => void;
|
|
3222
|
-
store: Pick<PlanStore, 'allTasks' | 'snapshot'>;
|
|
3223
|
-
orchestrator: Pick<TaskOrchestrator, 'getIdleSince' | 'getCompletionReceipt' | 'getToolsAttaching' | 'getQueuedTaskMessages' | 'getMergeGate' | 'holdReason' | 'runMergeView' | 'activity'>;
|
|
3224
|
-
runs: Pick<IsolationRunController, 'taskIsolation'>;
|
|
3173
|
+
store: Pick<PlanStore, 'allTasks' | 'planTasks' | 'snapshot' | 'statusMark'>;
|
|
3174
|
+
orchestrator: Pick<TaskOrchestrator, 'judgingOnce' | 'getIdleSince' | 'getCompletionReceipt' | 'getToolsAttaching' | 'getQueuedTaskMessages' | 'getMergeGate' | 'holdReason' | 'loopStranded' | 'runMergeView' | 'activity' | 'taskIsolation'>;
|
|
3225
3175
|
/** Shared with the Session, which snapshots, restores and clears it. */
|
|
3226
3176
|
usage: PlannerUsageLedger;
|
|
3227
3177
|
/** How many of a task's runner requests wait for an answer (ADR-0018, A1). */
|
|
@@ -3230,6 +3180,10 @@ interface SessionEventRelayDeps {
|
|
|
3230
3180
|
checkpointQuestion?: (taskId: string) => string | undefined;
|
|
3231
3181
|
/** The task waits for the user's approval to start (ADR-0035). */
|
|
3232
3182
|
waitsForApproval?: (taskId: string) => boolean;
|
|
3183
|
+
/** What waits on a person now (ADR-0053). */
|
|
3184
|
+
escalations?: () => Escalation[];
|
|
3185
|
+
/** The list as a status update carried it, for what must see each one with no surface attached. */
|
|
3186
|
+
escalationsSent?: (list: readonly Escalation[]) => void;
|
|
3233
3187
|
}
|
|
3234
3188
|
/**
|
|
3235
3189
|
* Every orchestrator event the relay announces. `onTaskSettled` is persistence
|
|
@@ -3255,13 +3209,29 @@ declare class SessionEventRelay {
|
|
|
3255
3209
|
private readonly onNotice?;
|
|
3256
3210
|
private readonly store;
|
|
3257
3211
|
private readonly orchestrator;
|
|
3258
|
-
private readonly runs;
|
|
3259
3212
|
private readonly usage;
|
|
3260
3213
|
private readonly awaitingApproval;
|
|
3261
3214
|
private readonly checkpointQuestion;
|
|
3262
3215
|
private readonly waitsForApproval;
|
|
3216
|
+
private readonly escalations;
|
|
3217
|
+
private readonly escalationsSent;
|
|
3263
3218
|
private statusHeld;
|
|
3264
3219
|
private statusOwed;
|
|
3220
|
+
/** The second a status update opened: until it ends, one that can wait does. */
|
|
3221
|
+
private statusWindow;
|
|
3222
|
+
/** Something changed that the last status update did not carry, and it can wait for {@link statusWindow} to end. */
|
|
3223
|
+
private statusDue;
|
|
3224
|
+
/** The ids of what waits on a person, as the last status update carried it. */
|
|
3225
|
+
private sentWaits;
|
|
3226
|
+
/** {@link statusWindow} has sent a change to what waits on a person: the next change waits for it to end. */
|
|
3227
|
+
private waitsSent;
|
|
3228
|
+
/** The ids of the work a merge is offered on, as the last status update carried it. */
|
|
3229
|
+
private sentLanded;
|
|
3230
|
+
/** {@link statusWindow} has sent a change to that work: the next change waits for it to end. */
|
|
3231
|
+
private landedSent;
|
|
3232
|
+
/** The run as {@link statusChanged} last read it. */
|
|
3233
|
+
private lastMoved;
|
|
3234
|
+
private livePlan;
|
|
3265
3235
|
/** The planner's requests announced and not yet settled, as they were announced: a surface joining now is owed them. */
|
|
3266
3236
|
private readonly announced;
|
|
3267
3237
|
/** The planner compaction started and not yet ended, as it was announced: a surface joining now is owed it too. */
|
|
@@ -3269,11 +3239,50 @@ declare class SessionEventRelay {
|
|
|
3269
3239
|
constructor(deps: SessionEventRelayDeps);
|
|
3270
3240
|
/** `plan` is read per event: a Session with no plan (or mid-reset) announces nothing about tasks. */
|
|
3271
3241
|
observer(plan: () => LegacyPlanState | null): RelayObserver;
|
|
3242
|
+
/** Send every task's status now, whatever was sent a moment ago: for what a surface must not wait for. */
|
|
3272
3243
|
status(plan: LegacyPlanState | null): void;
|
|
3244
|
+
/**
|
|
3245
|
+
* Send what is owed before something that assumes it arrived: a surface
|
|
3246
|
+
* treats `execution_complete` as the end of the stream, for one, and a
|
|
3247
|
+
* status update coming after it is one it may never read. Called from
|
|
3248
|
+
* outside any observer too, and a surface that failed fails nothing else.
|
|
3249
|
+
*/
|
|
3250
|
+
flushStatus(plan: LegacyPlanState | null): void;
|
|
3251
|
+
/** Nothing goes out for this Session again: what was held back goes now. */
|
|
3252
|
+
closeStatus(plan: LegacyPlanState | null): void;
|
|
3253
|
+
/** A run's progress is at most a second late, so a thousand runners reporting cost a surface one update. */
|
|
3254
|
+
private statusCanWait;
|
|
3255
|
+
/**
|
|
3256
|
+
* The list of what waits on a person (ADR-0053) is a judgement of the plan,
|
|
3257
|
+
* so it is read only when something it reads has moved: a task's status, or
|
|
3258
|
+
* whether the run is moving. An ending that leaves nobody anything to do, or
|
|
3259
|
+
* a start, moves nothing in it, and a fan-out or a wave of verdicts stays
|
|
3260
|
+
* one update a second.
|
|
3261
|
+
*/
|
|
3262
|
+
private statusChanged;
|
|
3263
|
+
/**
|
|
3264
|
+
* The first change to what waits on a person goes out at once, and the rest
|
|
3265
|
+
* wait for the second to end: every update carries every wait, so a hundred
|
|
3266
|
+
* tasks failing together must not each send the plan with all those before
|
|
3267
|
+
* them. The notifier reads the list as it goes out, so it is told of them
|
|
3268
|
+
* then, each once.
|
|
3269
|
+
*/
|
|
3270
|
+
private waitsMayHaveChanged;
|
|
3271
|
+
/**
|
|
3272
|
+
* A task in a worktree reports its landing twice and its release once, and
|
|
3273
|
+
* every update carries every task, so a wide run must not send the plan per
|
|
3274
|
+
* report. What a person acts on still goes first: new work to merge, like a
|
|
3275
|
+
* new wait, goes at once, and the rest waits for the second to end.
|
|
3276
|
+
*/
|
|
3277
|
+
private isolationChanged;
|
|
3278
|
+
private openStatusWindow;
|
|
3273
3279
|
/** Every task's status as it stands, in the message a status update carries. */
|
|
3274
3280
|
statusMessage(): Extract<SessionMessage, {
|
|
3275
3281
|
type: 'status_update';
|
|
3276
3282
|
}>;
|
|
3283
|
+
private judgedStatus;
|
|
3284
|
+
/** A {@link holdStatus} is running: whoever runs it saves as it ends. */
|
|
3285
|
+
get holdingStatus(): boolean;
|
|
3277
3286
|
/**
|
|
3278
3287
|
* Run `op` with status broadcasts held back. Store ops signal the observer
|
|
3279
3288
|
* as they go, which would put a status_update on the wire before the
|
|
@@ -3391,6 +3400,52 @@ interface TaskEditOptions {
|
|
|
3391
3400
|
requireUnstarted?: boolean;
|
|
3392
3401
|
}
|
|
3393
3402
|
|
|
3403
|
+
/** Runs the command with `env` added to its environment; rejects when it fails. */
|
|
3404
|
+
type NotifyRun = (command: readonly string[], env: Record<string, string>) => Promise<void>;
|
|
3405
|
+
interface EscalationNotifierDeps {
|
|
3406
|
+
/** The user's command, read as each new escalation appears; empty when there is none. */
|
|
3407
|
+
command: () => readonly string[];
|
|
3408
|
+
run: NotifyRun;
|
|
3409
|
+
log: (message: string) => void;
|
|
3410
|
+
}
|
|
3411
|
+
/**
|
|
3412
|
+
* Tells the user's notify command of each new escalation, once (ADR-0053). It
|
|
3413
|
+
* sees the list as it goes out, so nothing here is a second reading of the run,
|
|
3414
|
+
* and it remembers only ids, in memory: what a run waits on stays derived.
|
|
3415
|
+
* Nothing it does reaches the run: the command is started and left, and a
|
|
3416
|
+
* failure ends here. A few run at a time and the rest wait in a bounded queue,
|
|
3417
|
+
* so an id dropped from a full queue still counts as told: it stays on the list.
|
|
3418
|
+
*/
|
|
3419
|
+
declare class EscalationNotifier {
|
|
3420
|
+
private readonly deps;
|
|
3421
|
+
/** The ids told of in this plan; null while a plan changes hands. */
|
|
3422
|
+
private told;
|
|
3423
|
+
private failureLogged;
|
|
3424
|
+
private dropLogged;
|
|
3425
|
+
private running;
|
|
3426
|
+
private readonly queue;
|
|
3427
|
+
constructor(deps: EscalationNotifierDeps);
|
|
3428
|
+
/** The list as a status update carries it. */
|
|
3429
|
+
changed(list: readonly Escalation[]): void;
|
|
3430
|
+
/**
|
|
3431
|
+
* A plan is on its way out, and nothing it says now is news: a run stopped
|
|
3432
|
+
* by leaving its session raises waits nobody is there for. Lasts until the
|
|
3433
|
+
* next {@link baseline}, so a plan on its way in says nothing either.
|
|
3434
|
+
*/
|
|
3435
|
+
hush(): void;
|
|
3436
|
+
/** What waits as a plan is adopted counts as told, so a restart does not send what was sent before it. */
|
|
3437
|
+
baseline(list: readonly Escalation[]): void;
|
|
3438
|
+
private tell;
|
|
3439
|
+
private send;
|
|
3440
|
+
private failed;
|
|
3441
|
+
private dropped;
|
|
3442
|
+
}
|
|
3443
|
+
/**
|
|
3444
|
+
* A command as the user wrote it: a whole argument vector, or none. A string is
|
|
3445
|
+
* refused, not split, because splitting one is a shell's job and there is none.
|
|
3446
|
+
*/
|
|
3447
|
+
declare function notifyCommandOf(value: unknown): string[];
|
|
3448
|
+
|
|
3394
3449
|
/**
|
|
3395
3450
|
* Options for plan generation. Progress is not overridable: every planner
|
|
3396
3451
|
* progress event is translated to a SessionMessage inside the Session and
|
|
@@ -3410,6 +3465,8 @@ interface SessionRuntimeSettings {
|
|
|
3410
3465
|
run?: GlobalRunSettings;
|
|
3411
3466
|
/** Whether an API planner compacts its own context before a call that would not fit; absent means on. */
|
|
3412
3467
|
plannerAutoCompaction?: boolean;
|
|
3468
|
+
/** What a task runner loads of the user's own setup; absent means all of it. */
|
|
3469
|
+
taskRunnerConfig?: TaskRunnerConfig;
|
|
3413
3470
|
}
|
|
3414
3471
|
declare function sessionRuntimeSettings(settings: UserSettings): SessionRuntimeSettings;
|
|
3415
3472
|
/** Where a fork landed: the new session's id, and what adopting it needs. */
|
|
@@ -3503,6 +3560,10 @@ interface SessionDeps {
|
|
|
3503
3560
|
cache?: WebResponseCache;
|
|
3504
3561
|
searchProvider?: ISearchProvider;
|
|
3505
3562
|
};
|
|
3563
|
+
/** What runs the user's notify command (ADR-0053); the real process unless a test supplies one. */
|
|
3564
|
+
runNotifyCommand?: NotifyRun;
|
|
3565
|
+
/** The node this session is, below the root (ADR-0056); absent, it is the root, whose mandate its settings hold. */
|
|
3566
|
+
child?: NodeAuthority;
|
|
3506
3567
|
}
|
|
3507
3568
|
/**
|
|
3508
3569
|
* The composition root: builds every collaborator a Session drives and wires
|
|
@@ -3529,6 +3590,8 @@ interface SessionParts {
|
|
|
3529
3590
|
/** The orchestrator's own: Session reads the run and acts on it there, Merge all aside. */
|
|
3530
3591
|
runs: IsolationRunController;
|
|
3531
3592
|
events: SessionEventRelay;
|
|
3593
|
+
/** Told by the Session when a plan changes hands; what it sees comes from the relay. */
|
|
3594
|
+
escalationNotifier: Pick<EscalationNotifier, 'hush' | 'baseline'>;
|
|
3532
3595
|
usage: PlannerUsageLedger;
|
|
3533
3596
|
/** The windows every stream of the session reports, saved with the plan. */
|
|
3534
3597
|
windows: SessionWindows;
|
|
@@ -3543,6 +3606,8 @@ interface SessionParts {
|
|
|
3543
3606
|
lease: (onLost: (held: SessionHeld) => void) => SessionLease;
|
|
3544
3607
|
/** The conversation's host is the Session itself, so only the Session can make it. */
|
|
3545
3608
|
conversation: (host: PlannerConversationHost) => PlannerConversation;
|
|
3609
|
+
/** The node this session is, below the root. */
|
|
3610
|
+
child?: NodeAuthority;
|
|
3546
3611
|
}
|
|
3547
3612
|
/**
|
|
3548
3613
|
* The per-session execution stack — the lifecycle owner. Owns plan
|
|
@@ -3562,6 +3627,7 @@ declare class Session {
|
|
|
3562
3627
|
private readonly usage;
|
|
3563
3628
|
private readonly windows;
|
|
3564
3629
|
private readonly events;
|
|
3630
|
+
private readonly escalationNotifier;
|
|
3565
3631
|
private readonly planner;
|
|
3566
3632
|
private readonly orchestrator;
|
|
3567
3633
|
private readonly runs;
|
|
@@ -3608,9 +3674,18 @@ declare class Session {
|
|
|
3608
3674
|
private saveRefusedFor;
|
|
3609
3675
|
/** User controls in flight; see {@link withSave}. */
|
|
3610
3676
|
private controlsInFlight;
|
|
3677
|
+
/** A save is owed, for the end of {@link SAVE_INTERVAL_MS}; see {@link saveSoon}. */
|
|
3678
|
+
private saveTimer;
|
|
3679
|
+
/** The store's status mark as last saved, or as loaded. */
|
|
3680
|
+
private savedStatuses;
|
|
3681
|
+
/** The user was told the disk is refusing this session's saves, and none has landed since. */
|
|
3682
|
+
private saveFailureSaid;
|
|
3611
3683
|
/** A whole-plan start opening; a second Execute joins it rather than resetting the run under it. */
|
|
3612
3684
|
private runOpening;
|
|
3613
3685
|
private unsubObserver;
|
|
3686
|
+
/** This session's node below the root; undefined at the root, where a person remains. */
|
|
3687
|
+
private readonly child;
|
|
3688
|
+
private readonly authority;
|
|
3614
3689
|
private readonly hostSessionId?;
|
|
3615
3690
|
private currentSessionId;
|
|
3616
3691
|
private readonly skillsService;
|
|
@@ -3625,6 +3700,8 @@ declare class Session {
|
|
|
3625
3700
|
* with why it must not open: a Stop, a newer goal, or its plan scope ending.
|
|
3626
3701
|
*/
|
|
3627
3702
|
private readonly openingsWaiting;
|
|
3703
|
+
/** The installed-planner probe a turn was parked on and the surfaces were told of; null once it answered. */
|
|
3704
|
+
private detection;
|
|
3628
3705
|
/** The conversation's opening, from admission until its turn settles; see {@link behindOpening}. */
|
|
3629
3706
|
private opening;
|
|
3630
3707
|
private readonly editor;
|
|
@@ -3643,13 +3720,36 @@ declare class Session {
|
|
|
3643
3720
|
* tools come here; see {@link ExecutionCommands}.
|
|
3644
3721
|
*/
|
|
3645
3722
|
execute(command: ExecutionCommand, actor: ExecutionActor): Promise<CommandOutcome>;
|
|
3723
|
+
/** What will not move without a person, derived afresh from the plan, the run and the pending approvals (ADR-0053). */
|
|
3724
|
+
escalations(): Escalation[];
|
|
3725
|
+
private judgedEscalations;
|
|
3726
|
+
/** The user's answer to an escalation; see {@link ExecutionCommands.answerEscalation}. */
|
|
3727
|
+
answerEscalation(id: string, option: string, note?: string, confirmed?: boolean): Promise<CommandOutcome>;
|
|
3646
3728
|
/** Run one planner turn with its own {@link TurnEffects}, which only a turn that lands hands back. */
|
|
3647
3729
|
private openTurn;
|
|
3730
|
+
/** Each failed task, with the attempt that failed. */
|
|
3731
|
+
private failedTasks;
|
|
3732
|
+
/**
|
|
3733
|
+
* What a run this actor begins leaves failed. The fresh chance is the user's
|
|
3734
|
+
* to ask for (ADR-0053), and a supervisor's `run_plan` is a retry its guards
|
|
3735
|
+
* count (ADR-0029), so only autorun and a planner leave any; autorun only what
|
|
3736
|
+
* failed in the reply it follows (ADR-0030).
|
|
3737
|
+
*/
|
|
3738
|
+
private failuresLeftBy;
|
|
3648
3739
|
/**
|
|
3649
3740
|
* Autorun (ADR-0030): a plan the planner submitted in the turn that just
|
|
3650
3741
|
* ended starts as if the user had pressed Execute, through the seam, so the
|
|
3651
3742
|
* timeline says autorun started it. Read now, not when the turn opened: the
|
|
3652
|
-
* switch is the user's to flip at any time.
|
|
3743
|
+
* switch is the user's to flip at any time. Work already live, a task the
|
|
3744
|
+
* planner started with `run_task` in that turn, joins it as one scheduled
|
|
3745
|
+
* run, in Full; the seam keeps it out of live work in Guarded. A scheduled
|
|
3746
|
+
* run has the plan's tasks, waiting on a person or a reset or not, so autorun
|
|
3747
|
+
* skips it, and starts nothing over what a usage limit holds: a restart
|
|
3748
|
+
* would take back that run's pause and failures (ADR-0053).
|
|
3749
|
+
* A plan it could not start says why, and a Stop since the plan was submitted
|
|
3750
|
+
* withdraws the start as it withdraws any (ADR-0029), unless a run opened
|
|
3751
|
+
* after that Stop has the plan already. What failed in that turn stays
|
|
3752
|
+
* failed: the fresh chance is the user's to ask for (ADR-0053).
|
|
3653
3753
|
*/
|
|
3654
3754
|
private autorunSubmitted;
|
|
3655
3755
|
/**
|
|
@@ -3701,7 +3801,18 @@ declare class Session {
|
|
|
3701
3801
|
runSettings(): GlobalRunSettings;
|
|
3702
3802
|
/** The user's run settings as they stand for this session (ADR-0030). */
|
|
3703
3803
|
private userRunSettings;
|
|
3704
|
-
/**
|
|
3804
|
+
/** What this node may do without a person, as it stands now (ADR-0056 M1): derived at the root, and never saved. */
|
|
3805
|
+
mandate(): Mandate;
|
|
3806
|
+
/** Each value where it lives today; the level is the caller's to name (ADR-0056 M1). */
|
|
3807
|
+
private rootSettings;
|
|
3808
|
+
private effectRules;
|
|
3809
|
+
/** Whether this node's tasks default to their runner's autonomous mode. */
|
|
3810
|
+
private autonomous;
|
|
3811
|
+
/**
|
|
3812
|
+
* A call at the seam, in the transcript where it happened and on every
|
|
3813
|
+
* surface at once. The call has happened by now, so a failed save is said
|
|
3814
|
+
* rather than thrown: a Stop that took must not answer as refused.
|
|
3815
|
+
*/
|
|
3705
3816
|
private recordExecution;
|
|
3706
3817
|
/** Whether the user approved this task to run; see {@link ApprovalRecord.isApproved}. */
|
|
3707
3818
|
isApproved(taskId: string): boolean;
|
|
@@ -3726,6 +3837,10 @@ declare class Session {
|
|
|
3726
3837
|
plannerCompaction(): Extract<SessionMessage, {
|
|
3727
3838
|
type: 'planner_compaction';
|
|
3728
3839
|
}> | undefined;
|
|
3840
|
+
/** Whether a planner turn waits on the installed-planner probe, for a surface that joins or reconnects meanwhile. */
|
|
3841
|
+
plannerDetection(): Extract<SessionMessage, {
|
|
3842
|
+
type: 'planner_detection';
|
|
3843
|
+
}>;
|
|
3729
3844
|
/** Scopes the user granted this session — surfaced so a UI can show what is already allowed. */
|
|
3730
3845
|
approvedScopes(): string[];
|
|
3731
3846
|
/** The stable id this session persists under — matches the host's id when one was provided. */
|
|
@@ -3772,6 +3887,23 @@ declare class Session {
|
|
|
3772
3887
|
* write: a turn holds what it writes until the mutation that lands it.
|
|
3773
3888
|
*/
|
|
3774
3889
|
private persist;
|
|
3890
|
+
/**
|
|
3891
|
+
* What a change to the plan owes the disk. A task's status is what a
|
|
3892
|
+
* decision and a reload read, so a changed one is saved at once, and what
|
|
3893
|
+
* changed beside it goes with it; anything else can wait for the timer.
|
|
3894
|
+
*/
|
|
3895
|
+
private saveChange;
|
|
3896
|
+
/** Owe a save, made once however often this is called before it comes. */
|
|
3897
|
+
private saveSoon;
|
|
3898
|
+
/**
|
|
3899
|
+
* A save nothing that follows may depend on: a full disk must not take the
|
|
3900
|
+
* daemon down, nor leave a stop or a close half done, its run live and its
|
|
3901
|
+
* lease held. Said once a failing stretch, since the timer tries again for
|
|
3902
|
+
* as long as the disk refuses.
|
|
3903
|
+
*/
|
|
3904
|
+
private tryPersist;
|
|
3905
|
+
/** Make the save owed, before the plan it is owed for goes. */
|
|
3906
|
+
private settleSaves;
|
|
3775
3907
|
/** A new plan on a long-lived Session gets its own persisted identity (unless the host fixed one). */
|
|
3776
3908
|
private remintSessionId;
|
|
3777
3909
|
/**
|
|
@@ -3793,6 +3925,8 @@ declare class Session {
|
|
|
3793
3925
|
* now prepares, so the run here stops.
|
|
3794
3926
|
*/
|
|
3795
3927
|
private leaseLost;
|
|
3928
|
+
/** Something of the run would go on if left: work, a resume, a start on its way, or a loop a retry would carry on (ADR-0045 L5). */
|
|
3929
|
+
private get stopOwed();
|
|
3796
3930
|
/**
|
|
3797
3931
|
* The plan scope ends: everything that belongs to the plan this Session
|
|
3798
3932
|
* holds goes, so nothing of it reaches the next one — a new plan, another
|
|
@@ -3826,9 +3960,9 @@ declare class Session {
|
|
|
3826
3960
|
get planState(): LegacyPlanState | null;
|
|
3827
3961
|
/**
|
|
3828
3962
|
* The live plan in the shape a saved session is read back as. The disk
|
|
3829
|
-
* boundary
|
|
3830
|
-
*
|
|
3831
|
-
*
|
|
3963
|
+
* boundary fails an `in_progress` task — nothing is running when a session
|
|
3964
|
+
* comes off a file — so a surface that re-reads the plan mid-run must come
|
|
3965
|
+
* here instead, or every task it is watching reads as interrupted.
|
|
3832
3966
|
* An archived snapshot carries the task as it is now: a retry or continue
|
|
3833
3967
|
* keeps the archive while the live task runs on and spends more.
|
|
3834
3968
|
*/
|
|
@@ -3864,6 +3998,12 @@ declare class Session {
|
|
|
3864
3998
|
* no longer be refused as one sent during it.
|
|
3865
3999
|
*/
|
|
3866
4000
|
private plannerTurnMayOpen;
|
|
4001
|
+
/**
|
|
4002
|
+
* The installed-planner probe, for a turn at the gate to wait on. No planner
|
|
4003
|
+
* has heard of that turn, so the surfaces are told what it waits for, once
|
|
4004
|
+
* however many wait.
|
|
4005
|
+
*/
|
|
4006
|
+
private plannerDetected;
|
|
3867
4007
|
/** End every turn waiting at the planner gate before it opens; false when none was. */
|
|
3868
4008
|
private endWaiting;
|
|
3869
4009
|
/**
|
|
@@ -4021,7 +4161,9 @@ declare class Session {
|
|
|
4021
4161
|
* as executing does, and the run takes them in. A run the scheduler was not
|
|
4022
4162
|
* driving, one task started on its own, becomes the plan's run, as Execute
|
|
4023
4163
|
* would make it. The planner's run_plan joins with `approved` 0: the
|
|
4024
|
-
* scheduler starts only approved tasks, so `left` tasks still wait.
|
|
4164
|
+
* scheduler starts only approved tasks, so `left` tasks still wait. A run a
|
|
4165
|
+
* usage limit holds stays held, and the line says so, since nothing it names
|
|
4166
|
+
* starts before the reset.
|
|
4025
4167
|
*/
|
|
4026
4168
|
private joinRun;
|
|
4027
4169
|
private startOneTask;
|
|
@@ -4105,6 +4247,8 @@ declare class Session {
|
|
|
4105
4247
|
runSnapshot(): RunView;
|
|
4106
4248
|
/** The ancestors a task waits on at its merge gate (ADR-0020); empty when it waits for no Merge all. */
|
|
4107
4249
|
mergeGate(taskId: string): string[];
|
|
4250
|
+
/** What reverting the task would do now, for a surface to confirm before `revert_task` (ADR-0054). Reads only. */
|
|
4251
|
+
revertPreview(taskId: string): Promise<TaskRevertPreview>;
|
|
4108
4252
|
/** What Merge all would merge now; null once everything landed is merged. */
|
|
4109
4253
|
runMergeView(): RunMergeView | null;
|
|
4110
4254
|
/** The run's integration branch against its base ref, as a unified diff. */
|
|
@@ -4134,6 +4278,11 @@ declare class Session {
|
|
|
4134
4278
|
* otherwise (Mark not done), because only they know whether they kept the work.
|
|
4135
4279
|
*/
|
|
4136
4280
|
discardRun(): Promise<void>;
|
|
4281
|
+
/**
|
|
4282
|
+
* Narrower than {@link stopOwed}: a run that ended on a failure, or whose
|
|
4283
|
+
* loop a body task stopped, is what these are for. Such a loop ends with the
|
|
4284
|
+
* run, once git has let it go, so a refused discard leaves it standing.
|
|
4285
|
+
*/
|
|
4137
4286
|
private requireSettledRun;
|
|
4138
4287
|
/** Add the task that merges a conflicted task's branch by hand; see {@link PlanEditor.addConflictResolver}. */
|
|
4139
4288
|
resolveConflictAsTask(taskId: string): Promise<LegacyPlanState | null>;
|
|
@@ -4142,8 +4291,11 @@ declare class Session {
|
|
|
4142
4291
|
* one queued behind a planner turn's edit, one waiting on its card, one
|
|
4143
4292
|
* still opening its run. A card still asking is cleared, so its start
|
|
4144
4293
|
* answers as stopped rather than waiting on a question that no longer stands.
|
|
4294
|
+
* The user's stands the supervisor down too; a supervisor's own, for a change
|
|
4295
|
+
* it means to run, does not.
|
|
4145
4296
|
*/
|
|
4146
|
-
stopExecution(): void;
|
|
4297
|
+
stopExecution(actor?: ExecutionActor): void;
|
|
4298
|
+
private stopRun;
|
|
4147
4299
|
/** Something will start without being asked again; see {@link TaskOrchestrator.startsPending}. */
|
|
4148
4300
|
get startsPending(): boolean;
|
|
4149
4301
|
/**
|
|
@@ -4159,11 +4311,16 @@ declare class Session {
|
|
|
4159
4311
|
* a hold would stall every task's status for as long, and an
|
|
4160
4312
|
* `execution_complete` the control triggers would overtake the status held
|
|
4161
4313
|
* back — which a surface treats as the end of the stream. Instead each status
|
|
4162
|
-
* announced while one runs is saved first (see {@link observer}).
|
|
4314
|
+
* announced while one runs is saved first (see {@link observer}). The save
|
|
4315
|
+
* that ends it fails as {@link saved}'s does.
|
|
4163
4316
|
*/
|
|
4164
4317
|
private withSave;
|
|
4165
|
-
|
|
4166
|
-
|
|
4318
|
+
/**
|
|
4319
|
+
* A control that finishes synchronously: its status is held until it is
|
|
4320
|
+
* saved. Its effect has landed by then, so a failed save is said rather than
|
|
4321
|
+
* thrown: the caller would report a control that took as one that failed,
|
|
4322
|
+
* and a surface would keep showing what it answered.
|
|
4323
|
+
*/
|
|
4167
4324
|
private saved;
|
|
4168
4325
|
/**
|
|
4169
4326
|
* The one mutation seam: every structural plan mutation runs the same
|
|
@@ -4200,6 +4357,8 @@ declare class Session {
|
|
|
4200
4357
|
sessionId?: string;
|
|
4201
4358
|
persist?: boolean;
|
|
4202
4359
|
}): void;
|
|
4360
|
+
/** The plan a load adopts goes to disk first; whoever asked hears that nothing here changed if it cannot. */
|
|
4361
|
+
private writeLoaded;
|
|
4203
4362
|
/**
|
|
4204
4363
|
* Take the loaded plan's run over, then correct what the surfaces were told
|
|
4205
4364
|
* by what git found: the saved record cannot know what the user merged
|
|
@@ -4993,6 +5152,8 @@ declare function continuability(task: Task): Continuability;
|
|
|
4993
5152
|
declare function canContinue(task: Task): boolean;
|
|
4994
5153
|
|
|
4995
5154
|
declare function stripAnsi(text: string): string;
|
|
5155
|
+
/** `text` as one word of a POSIX shell, whatever it holds. */
|
|
5156
|
+
declare function shellQuoted(text: string): string;
|
|
4996
5157
|
|
|
4997
5158
|
/**
|
|
4998
5159
|
* A workspace path that does not exist, or exists but is not a directory.
|
|
@@ -5313,4 +5474,4 @@ declare function parseVersion(version: string): number[] | null;
|
|
|
5313
5474
|
/** Negative, zero or positive as `a` is older than, the same as, or newer than `b`; an unreadable version sorts oldest. */
|
|
5314
5475
|
declare function compareVersions(a: string, b: string): number;
|
|
5315
5476
|
|
|
5316
|
-
export { ALL_PROVIDERS, AbstractRunner, AbstractRunnerSession, AccountLimitBucket, type AccountLimitCollector, type AccountLimitListener, AccountLimitMonitor, type AccountLimitMonitorOptions, type AccountLimitReading, AccountLimitSnapshot, type Adr0013IsolationRun, type Adr0013PlanIsolation, type Adr0013TaskRecord, AgentAdapter, AgentEvent, AgentProcessDeps, AgentStartOptions, AiProvider, AlreadyExecutingError, ApprovalAnswer, ApprovalDecision, ApprovalModeSetting, ApprovalPolicy, AssignmentScope, BaseAiService, BaseConfig, BaseFileSystem, BashOptions, BatchQuoteError, BufferedTaskOutputSource, type ByPlannerBackend, CLAUDE_CODE_MANIFEST, CLI_PROVIDERS, CMD_EXE_MAX_COMMAND_LINE, CODEX_SANDBOX_DOCS, CODEX_SANDBOX_OFF_LINE, type CachedPage, type CappedRows, CheckpointAnswer, type CheckpointListener, type ClaudeAccountLimitOptions, ClaudeCodeAdapter, type CodexAccountLimitOptions, CodexAdapter, CodexSandboxAvailability, CommandLineTooLongError, CommandOutcome, type ConfiguredPlanner, ConsoleLogger, ContextCollector, type Continuability, ConversationCompaction, type ConversationFork, ConversationRequest, type ConversationRewind, ConversationTurn, DAEMON_SUBPROTOCOL, DAEMON_TOKEN_SUBPROTOCOL_PREFIX, DEFAULT_MAX_PARALLEL, type DirEntry, DiscoveredModel, DuckDuckGoSearchProvider,
|
|
5477
|
+
export { ALL_PROVIDERS, AbstractRunner, AbstractRunnerSession, AccountLimitBucket, type AccountLimitCollector, type AccountLimitListener, AccountLimitMonitor, type AccountLimitMonitorOptions, type AccountLimitReading, AccountLimitSnapshot, type Adr0013IsolationRun, type Adr0013PlanIsolation, type Adr0013TaskRecord, AgentAdapter, AgentEvent, AgentProcessDeps, AgentStartOptions, AiProvider, AlreadyExecutingError, ApprovalAnswer, ApprovalDecision, ApprovalModeSetting, ApprovalPolicy, AssignmentScope, BaseAiService, BaseConfig, BaseFileSystem, BashOptions, BatchQuoteError, BufferedTaskOutputSource, type ByPlannerBackend, CLAUDE_CODE_MANIFEST, CLI_PROVIDERS, CMD_EXE_MAX_COMMAND_LINE, CODEX_SANDBOX_DOCS, CODEX_SANDBOX_OFF_LINE, type CachedPage, type CappedRows, CheckpointAnswer, type CheckpointListener, type ClaudeAccountLimitOptions, ClaudeCodeAdapter, type CodexAccountLimitOptions, CodexAdapter, CodexSandboxAvailability, CommandLineTooLongError, CommandOutcome, type ConfiguredPlanner, ConsoleLogger, ContextCollector, type Continuability, ConversationCompaction, type ConversationFork, ConversationRequest, type ConversationRewind, ConversationTurn, DAEMON_SUBPROTOCOL, DAEMON_TOKEN_SUBPROTOCOL_PREFIX, DEFAULT_MAX_PARALLEL, type DirEntry, DiscoveredModel, DuckDuckGoSearchProvider, EmbeddedNewlineError, type EnvAdmission, EnvConfig, Escalation, type ExecImpl, ExecutableNotFoundError, ExecutionActor, ExecutionCommand, FindSymbolOptions, GREP_PCRE_PROBE_ARGS, GeminiService, type GitExecFn, GlobOptions, GlobalRunSettings, type GrepInvocation, GrepOptions, type GrepRegex, HARNESS_PLANNER_REASON, HandoffCheck, type HasBinFn, HttpWebFetcher, type HttpWebFetcherOptions, IAiService, IApproval, IConfig, IFileSystem, IIsolationPreview, type ILogger, INotification, IRunner, IRunnerSession, type ISearchProvider, IWorktreeIsolation, IsolationTaskStatus, IsolationView, type KillTreeDeps, type LaunchDeps, type LaunchPlan, LeaseHost, LegacyPlanState, LiveTail, LiveTailOptions, Mandate, McpToolReply, ModelResolver, type ModelResolverDeps, type NativeShellLauncher, type NativeShellOffer, NoPlanError, NodeAuthority, OPENCODE_MANIFEST, ORDEWELL_SETTABLE_ENV, OpenAiService, OpenCodeAdapter, type OpenCodeGoAccountLimitOptions, OrchestratorObserver, OrchestratorOption, OrdewellMcpServer, PROVIDER_CREDENTIAL_ENV, PROVIDER_DETECT_PRIORITY, PROVIDER_LABEL, PROVIDER_PRIORITY, PROVIDER_SHORT_LABEL, type ParsedCommand, PendingApproval, PendingApprovals, type PingFetch, PlanEditError, PlanIsolation, type PlanRequest, PlanState, PlanStore, Planner, type PlannerBackendEntry, PlannerBackendId, type PlannerChoice, PlannerModelCandidate, type PlannerModelLookup, PlannerModelRecall, type PlannerModelSource, PlannerModelStore, type PlannerSelectionChange, type PlannerSelectionCurrent, type PlannerSelectionResult, type PlannerSelectionState, PlannerShellSandbox, PlannerToolHandler, type PlannerUsability, PlannerUsage, type PrdBlock, ProviderModelLists, type ProviderRegistration, QueuedTaskMessage, ReadFileOpts, ReadTaskArgs, ReportedWindow, type ResearchChat, ResearchLogEntry, ResearchShell, type ResearchTurn, type ResolvedChoice, type ResolvedPlanner, RewindTarget, RunActivity, RunMergeView, RunView, RunnerApprovals, RunnerAuth, RunnerAuthExec, RunnerCommand$1 as RunnerCommand, RunnerId, RunnerInstallation, type RunnerInstallationOptions, RunnerManifest, RunnerModeInfo, RunnerRegistry, RunnerSessionCost, type RunnerSpawnOptions, SCRIPT_RUNNER, SETTINGS_ENV_ALLOWLIST, SETTINGS_ENV_REFUSED, STATE_DIR, STATE_DIR_IGNORE, STOPPED_TOOL_RESULT, SYMBOL_LANGUAGES, type SaveSession, type SavedState, ScriptBody, ScriptExit, ScriptRunner, ScriptSession, type SearchHit, type SearchOutcome, type SearchPage, type SearchTransport, Session, SessionBroadcaster, type SessionDeps, SessionHeld, SessionLease, SessionMessage, SessionMeta, SessionNotFoundError, SessionNotice, type SessionPlanner, type SessionRuntimeSettings, ShellLaunch, SkillsService, type SpawnSpec, StdioAgentAdapter, StoredHandoff, StructuredEvent, StructuredRunner, type StructuredRunnerDeps, StructuredSession, StructuredTurnEnd, Task, TaskCompleteArgs, TaskControlError, type TaskEditOptions, TaskLogEvent, type TaskLogFile, type TaskLogLocation, TaskLogRecorder, type TaskLogRecorderDeps, TaskMessageFrom, TaskModeAgentAdapter, TaskOrchestrator, TaskOutputSource, TaskQueryCatalog, TaskRevertPreview, TaskRunnerConfig, TaskRunnerFlags, TaskShell, TaskShellSite, TaskStartOptions, TaskTokenScope, type TokenCarriers, type ToolCall, ToolOutcome, type ToolResult, UsageRecord, UserSettings, VERSION_CHECK_NOTICE, VERSION_CHECK_URL, VerdictEngine, type VerdictListener, type VersionCheck, type VersionCheckOptions, WINDOWS_MAX_COMMAND_LINE, WebRead, WebReadDecision, type WebResponse, WebResponseCache, type WebResponseCacheOptions, type WebTransport, type WorkspaceCheckDeps, WorkspaceNotAProjectError, WorkspaceNotFoundError, type WorkspaceProjectCheckDeps, type WorktreeIsolationDeps, admitSettingsEnv, applyHeadLimit, assertWorkspaceExists, assertWorkspaceIsProject, augmentedPath, bearerHeaderValue, buildFallbackGrepArgs, buildGlobArgs, buildGrepArgs, canContinue, claudeAccountLimitCollector, clearAugmentedPathCache, clearDaemonToken, clearState, clipboardCopyCommand, codexAccountLimitCollector, codexSandboxNotice, compareVersions, configuredProviders, continuability, createIsolationPreview, createNativeShellLauncher, createSession, createTaskAdapter, createWorktreeIsolation, daemonTokenPath, defaultEnabledRunners, defaultLogger, definitionPattern, deleteSession, detectInstalledPlanner, discoverGeminiModels, ensureDir, ensurePrivateDir, ensureStateDirIgnored, extractPrdBlock, extractPresentedToken, filterFallbackByAnchoredInclude, findInstalledPlanner, formatSearchOutput, getLatestSession, getProviderMeta, getStateDir, globalDataDir, grantScopeFor, grepRegexFromProbe, idSegment, includeGlobFor, installedPlannerAnswered, installedPlannerDetected, isApiProvider, isCliProvider, isExecutableResolved, isOpenAiProvider, isPlannerBackend, isVendorModelFor, isolationViewOfPlan, killTree, languageForId, listSessions, listTaskLogAttempts, listTree, loadSession, loadSessionPlanState, loadState, looksLikeChallenge, migrateOldConfigDir, migratePlanIsolation, mintDaemonToken, mintSessionId, nativeShellInvocation, nativeShellOffer, normalizeGeminiModel, notifyCommandOf, openCodeGoAccountLimitCollector, openTaskLog, parseExecutionCommand, parseMaxParallel, parseSearchHits, parseVersion, planDirectLaunch, plannerBackendEntries, prefixModelId, prepareTaskOutputFile, providerForRunner, readDaemonToken, readTaskLog, readTaskPatch, recordInstalledPlanner, recordedInstalledPlanner, referencePattern, removedPluginNotice, repositoryRunnerConfigPaths, resetInstalledPlanner, resolveProviderFromPrefix, resolveTaskRunnerFlags, resolveWithin, runnerForProvider, sanitizeSlug, savePrdMarkdown, saveSession, saveState, saveTaskPatch, selectPlanner, sessionDataDir, sessionRuntimeSettings, sharedSearchProvider, sharedWebResponseCache, shellQuoted, startVersionCheck, stateExists, stripAnsi, stripModelPrefix, supportsTaskMode, taskPatchFile, tokenSubprotocols, tokensMatch, wellKnownBinDirs, windowsCommandLine, withPath, writeFileAtomic, writePrivateFile };
|