@caupulican/pi-adaptative 0.90.2 → 0.90.5
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/CHANGELOG.md +41 -0
- package/dist/core/agent-session-contracts.d.ts +2 -0
- package/dist/core/agent-session-contracts.d.ts.map +1 -1
- package/dist/core/agent-session-contracts.js.map +1 -1
- package/dist/core/autonomy/bounded-completion.d.ts +10 -1
- package/dist/core/autonomy/bounded-completion.d.ts.map +1 -1
- package/dist/core/autonomy/bounded-completion.js +24 -2
- package/dist/core/autonomy/bounded-completion.js.map +1 -1
- package/dist/core/autonomy/lane-tracker.d.ts +6 -1
- package/dist/core/autonomy/lane-tracker.d.ts.map +1 -1
- package/dist/core/autonomy/lane-tracker.js +17 -1
- package/dist/core/autonomy/lane-tracker.js.map +1 -1
- package/dist/core/background-lane-controller.d.ts +1 -3
- package/dist/core/background-lane-controller.d.ts.map +1 -1
- package/dist/core/background-lane-controller.js.map +1 -1
- package/dist/core/compaction-controller.d.ts.map +1 -1
- package/dist/core/compaction-controller.js +0 -1
- package/dist/core/compaction-controller.js.map +1 -1
- package/dist/core/delegation/managed-lane-controller.d.ts.map +1 -1
- package/dist/core/delegation/managed-lane-controller.js +5 -1
- package/dist/core/delegation/managed-lane-controller.js.map +1 -1
- package/dist/core/delegation/worker-agent-control-coordinator.d.ts +8 -1
- package/dist/core/delegation/worker-agent-control-coordinator.d.ts.map +1 -1
- package/dist/core/delegation/worker-agent-control-coordinator.js +94 -36
- package/dist/core/delegation/worker-agent-control-coordinator.js.map +1 -1
- package/dist/core/delegation/worker-agent-control.d.ts +1 -0
- package/dist/core/delegation/worker-agent-control.d.ts.map +1 -1
- package/dist/core/delegation/worker-agent-control.js.map +1 -1
- package/dist/core/delegation/worker-attempt-executor.d.ts.map +1 -1
- package/dist/core/delegation/worker-attempt-executor.js +7 -2
- package/dist/core/delegation/worker-attempt-executor.js.map +1 -1
- package/dist/core/delegation/worker-authority-resolver.d.ts +2 -0
- package/dist/core/delegation/worker-authority-resolver.d.ts.map +1 -1
- package/dist/core/delegation/worker-authority-resolver.js +49 -6
- package/dist/core/delegation/worker-authority-resolver.js.map +1 -1
- package/dist/core/delegation/worker-delegation-controller.d.ts +8 -5
- package/dist/core/delegation/worker-delegation-controller.d.ts.map +1 -1
- package/dist/core/delegation/worker-delegation-controller.js +158 -40
- package/dist/core/delegation/worker-delegation-controller.js.map +1 -1
- package/dist/core/delegation/worker-fleet-limits.d.ts +9 -2
- package/dist/core/delegation/worker-fleet-limits.d.ts.map +1 -1
- package/dist/core/delegation/worker-fleet-limits.js +39 -3
- package/dist/core/delegation/worker-fleet-limits.js.map +1 -1
- package/dist/core/delegation/worker-lane-projection.d.ts.map +1 -1
- package/dist/core/delegation/worker-lane-projection.js +10 -0
- package/dist/core/delegation/worker-lane-projection.js.map +1 -1
- package/dist/core/delegation/worker-lease-heartbeat.d.ts +16 -0
- package/dist/core/delegation/worker-lease-heartbeat.d.ts.map +1 -0
- package/dist/core/delegation/worker-lease-heartbeat.js +37 -0
- package/dist/core/delegation/worker-lease-heartbeat.js.map +1 -0
- package/dist/core/delegation/worker-lifecycle.d.ts +1 -0
- package/dist/core/delegation/worker-lifecycle.d.ts.map +1 -1
- package/dist/core/delegation/worker-lifecycle.js +6 -0
- package/dist/core/delegation/worker-lifecycle.js.map +1 -1
- package/dist/core/delegation/worker-notification-coordinator.d.ts.map +1 -1
- package/dist/core/delegation/worker-notification-coordinator.js +2 -1
- package/dist/core/delegation/worker-notification-coordinator.js.map +1 -1
- package/dist/core/delegation/worker-profile-resolver.d.ts +28 -1
- package/dist/core/delegation/worker-profile-resolver.d.ts.map +1 -1
- package/dist/core/delegation/worker-profile-resolver.js +38 -9
- package/dist/core/delegation/worker-profile-resolver.js.map +1 -1
- package/dist/core/delegation/worker-runner.js +2 -2
- package/dist/core/delegation/worker-runner.js.map +1 -1
- package/dist/core/delegation/worker-terminal-handoff-coordinator.d.ts +1 -0
- package/dist/core/delegation/worker-terminal-handoff-coordinator.d.ts.map +1 -1
- package/dist/core/delegation/worker-terminal-handoff-coordinator.js +1 -0
- package/dist/core/delegation/worker-terminal-handoff-coordinator.js.map +1 -1
- package/dist/core/delegation/worker-tree-budget-coordinator.d.ts +4 -2
- package/dist/core/delegation/worker-tree-budget-coordinator.d.ts.map +1 -1
- package/dist/core/delegation/worker-tree-budget-coordinator.js +10 -2
- package/dist/core/delegation/worker-tree-budget-coordinator.js.map +1 -1
- package/dist/core/delegation/worker-write-reservation-coordinator.d.ts +14 -0
- package/dist/core/delegation/worker-write-reservation-coordinator.d.ts.map +1 -1
- package/dist/core/delegation/worker-write-reservation-coordinator.js +121 -33
- package/dist/core/delegation/worker-write-reservation-coordinator.js.map +1 -1
- package/dist/core/foreground-terminal-handoff-controller.d.ts +5 -0
- package/dist/core/foreground-terminal-handoff-controller.d.ts.map +1 -1
- package/dist/core/foreground-terminal-handoff-controller.js +28 -12
- package/dist/core/foreground-terminal-handoff-controller.js.map +1 -1
- package/dist/core/orchestration/capability-gateway.d.ts +2 -1
- package/dist/core/orchestration/capability-gateway.d.ts.map +1 -1
- package/dist/core/orchestration/capability-gateway.js +9 -2
- package/dist/core/orchestration/capability-gateway.js.map +1 -1
- package/dist/core/orchestration/contracts.d.ts +16 -1
- package/dist/core/orchestration/contracts.d.ts.map +1 -1
- package/dist/core/orchestration/contracts.js +5 -0
- package/dist/core/orchestration/contracts.js.map +1 -1
- package/dist/core/orchestration/profile-registry.d.ts.map +1 -1
- package/dist/core/orchestration/profile-registry.js +38 -1
- package/dist/core/orchestration/profile-registry.js.map +1 -1
- package/dist/core/orchestration/risk-budget.d.ts +10 -0
- package/dist/core/orchestration/risk-budget.d.ts.map +1 -1
- package/dist/core/orchestration/risk-budget.js +14 -0
- package/dist/core/orchestration/risk-budget.js.map +1 -1
- package/dist/core/orchestration/task-runtime-reducer.d.ts +1 -0
- package/dist/core/orchestration/task-runtime-reducer.d.ts.map +1 -1
- package/dist/core/orchestration/task-runtime-reducer.js +34 -0
- package/dist/core/orchestration/task-runtime-reducer.js.map +1 -1
- package/dist/core/orchestration/task-runtime.d.ts +1 -0
- package/dist/core/orchestration/task-runtime.d.ts.map +1 -1
- package/dist/core/orchestration/task-runtime.js +24 -1
- package/dist/core/orchestration/task-runtime.js.map +1 -1
- package/dist/core/orchestration/worker-model-pins.d.ts +28 -0
- package/dist/core/orchestration/worker-model-pins.d.ts.map +1 -0
- package/dist/core/orchestration/worker-model-pins.js +141 -0
- package/dist/core/orchestration/worker-model-pins.js.map +1 -0
- package/dist/core/provider-prompt-contracts.d.ts.map +1 -1
- package/dist/core/provider-prompt-contracts.js +2 -1
- package/dist/core/provider-prompt-contracts.js.map +1 -1
- package/dist/core/reflection-controller.d.ts.map +1 -1
- package/dist/core/reflection-controller.js +8 -1
- package/dist/core/reflection-controller.js.map +1 -1
- package/dist/core/runtime-builder.d.ts.map +1 -1
- package/dist/core/runtime-builder.js +1 -0
- package/dist/core/runtime-builder.js.map +1 -1
- package/dist/core/settings-manager.d.ts +6 -3
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +26 -2
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/tools/bash.d.ts +3 -0
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +13 -2
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/delegate-status.d.ts +3 -0
- package/dist/core/tools/delegate-status.d.ts.map +1 -1
- package/dist/core/tools/delegate-status.js +26 -1
- package/dist/core/tools/delegate-status.js.map +1 -1
- package/dist/core/tools/delegate.d.ts +15 -1
- package/dist/core/tools/delegate.d.ts.map +1 -1
- package/dist/core/tools/delegate.js +234 -68
- package/dist/core/tools/delegate.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +14 -1
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/file-failure-recovery.d.ts +3 -0
- package/dist/core/tools/file-failure-recovery.d.ts.map +1 -1
- package/dist/core/tools/file-failure-recovery.js +11 -0
- package/dist/core/tools/file-failure-recovery.js.map +1 -1
- package/dist/core/tools/orchestration-panel.d.ts +1 -1
- package/dist/core/tools/orchestration-panel.d.ts.map +1 -1
- package/dist/core/tools/orchestration-panel.js +1 -0
- package/dist/core/tools/orchestration-panel.js.map +1 -1
- package/dist/core/tools/profile-writer.d.ts.map +1 -1
- package/dist/core/tools/profile-writer.js +2 -8
- package/dist/core/tools/profile-writer.js.map +1 -1
- package/dist/core/tools/search-command-guard.d.ts.map +1 -1
- package/dist/core/tools/search-command-guard.js +10 -3
- package/dist/core/tools/search-command-guard.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +10 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/modes/interactive/components/activity-lane.d.ts +1 -1
- package/dist/modes/interactive/components/activity-lane.d.ts.map +1 -1
- package/dist/modes/interactive/components/activity-lane.js +11 -2
- package/dist/modes/interactive/components/activity-lane.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +1 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/utils/shell.d.ts +2 -0
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +3 -1
- package/dist/utils/shell.js.map +1 -1
- package/docs/harness-architecture.md +6 -3
- package/docs/settings.md +39 -6
- package/docs/tool-repair.md +1 -1
- package/docs/worker-profiles.md +2 -2
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/sandbox/package-lock.json +2 -2
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/npm-shrinkwrap.json +12 -12
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegate-status.js","sourceRoot":"","sources":["../../../src/core/tools/delegate-status.ts"],"names":[],"mappings":"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","sourcesContent":["import type { WorkerClaim } from \"../autonomy/contracts.ts\";\nimport type { LaneRecord } from \"../autonomy/lane-tracker.ts\";\nimport type { OrchestrationPanelModel, OrchestrationPanelRow } from \"./orchestration-panel.ts\";\n\nconst MAX_WORKER_CONTROL_ID_CHARS = 512;\n\nexport const DELEGATE_STATUS_ACTIONS = [\"status\", \"review\"] as const;\n\nexport type DelegateStatusAction = (typeof DELEGATE_STATUS_ACTIONS)[number];\n\nexport interface DelegateStatusInput {\n\tlaneId?: string;\n}\n\nexport interface DelegateStatusLaneView {\n\tlaneId: string;\n\tlabel?: string;\n\tprofileId?: string;\n\ttype: LaneRecord[\"type\"];\n\tstatus: LaneRecord[\"status\"];\n\treasonCode?: string;\n\tunreviewed: boolean;\n}\n\nexport interface DelegateStatusToolDetails {\n\tstarted: boolean;\n\taction: DelegateStatusAction;\n\tkind: \"overview\" | \"lane\" | \"review\" | \"error\";\n\tcount?: number;\n\tqueued?: number;\n\trunning?: number;\n\tterminal?: number;\n\tunreviewedCount?: number;\n\tunreviewedLaneIds?: readonly string[];\n\tlanes?: readonly DelegateStatusLaneView[];\n\tlaneId?: string;\n\tstatus?: LaneRecord[\"status\"];\n\tunreviewed?: boolean;\n\treviewed?: boolean;\n\treviewedAt?: string;\n\treason?: string;\n\tclaimSummary?: string;\n\tchangedFiles?: readonly string[];\n\tblockers?: readonly string[];\n}\n\nexport type AcknowledgeWorkerReviewResult =\n\t| { ok: true; requestId: string; reviewedAt: string }\n\t| { ok: false; reason: \"unknown_worker_claim\" | \"not_flagged\" | \"already_reviewed\" };\n\nexport interface DelegateStatusDependencies {\n\tgetLaneRecords(): LaneRecord[];\n\tgetWorkerClaimSnapshots(): WorkerClaim[];\n\tacknowledgeWorkerReview?(requestId: string): AcknowledgeWorkerReviewResult;\n}\n\nfunction isUnreviewed(claim: WorkerClaim | undefined): boolean {\n\treturn claim?.parentReviewRequired === true && claim.parentReviewedAt === undefined;\n}\n\nfunction isDelegatedWorkerLane(record: LaneRecord): boolean {\n\treturn record.type === \"worker\" || record.type === \"tmux-worker\";\n}\n\nfunction formatRecord(record: LaneRecord, claim: WorkerClaim | undefined): string {\n\tconst lines = [`${record.laneId}: ${record.status}${record.reasonCode ? ` (${record.reasonCode})` : \"\"}`];\n\tif (!claim) return lines.join(\"\\n\");\n\tlines.push(`usageReportId: ${claim.usageReportId ?? \"none\"}`);\n\tif (isUnreviewed(claim)) {\n\t\tlines.push(\n\t\t\t`UNREVIEWED MUTATION - this worker's claim requires explicit parent review. Acknowledge with delegate { action: \"review\", laneId: \"${record.laneId}\" }.`,\n\t\t);\n\t} else if (claim.parentReviewRequired && claim.parentReviewedAt) {\n\t\tlines.push(`reviewed at ${claim.parentReviewedAt}`);\n\t}\n\tlines.push(\"UNTRUSTED worker output — verify before acting on it:\");\n\tlines.push(claim.summary.slice(0, 8_000));\n\tif (claim.changedFiles.length > 0) lines.push(`changed files: ${claim.changedFiles.join(\", \")}`);\n\tif (claim.blockers?.length) lines.push(`blockers: ${claim.blockers.join(\"; \")}`);\n\treturn lines.join(\"\\n\").slice(0, 16 * 1024);\n}\n\nfunction laneView(record: LaneRecord, claim: WorkerClaim | undefined): DelegateStatusLaneView {\n\treturn {\n\t\tlaneId: record.laneId,\n\t\t...(record.label ? { label: record.label } : {}),\n\t\t...(record.profileId ? { profileId: record.profileId } : {}),\n\t\ttype: record.type,\n\t\tstatus: record.status,\n\t\t...(record.reasonCode ? { reasonCode: record.reasonCode } : {}),\n\t\tunreviewed: isUnreviewed(claim),\n\t};\n}\n\nfunction lanePanelRow(view: DelegateStatusLaneView, details?: DelegateStatusToolDetails): OrchestrationPanelRow {\n\tconst meta = [\n\t\tview.label ? view.laneId : undefined,\n\t\tview.profileId ? `profile ${view.profileId}` : undefined,\n\t\tview.type === \"tmux-worker\" ? \"tmux\" : undefined,\n\t\tview.reasonCode,\n\t\tview.unreviewed ? \"review required\" : undefined,\n\t].filter((value): value is string => value !== undefined);\n\tconst expandedDetails = [\n\t\tdetails?.claimSummary ? `untrusted claim: ${details.claimSummary}` : undefined,\n\t\tdetails?.changedFiles?.length ? `changed: ${details.changedFiles.join(\", \")}` : undefined,\n\t\t...(details?.blockers ?? []).map((blocker) => `blocker: ${blocker}`),\n\t].filter((value): value is string => value !== undefined);\n\treturn {\n\t\tstatus: view.status,\n\t\tlabel: view.label ?? view.laneId,\n\t\tmeta,\n\t\tdetails: expandedDetails,\n\t};\n}\n\nexport function delegateStatusPanelModel(details: DelegateStatusToolDetails): OrchestrationPanelModel {\n\tif (details.kind === \"error\") {\n\t\treturn {\n\t\t\tlabel: \"workers\",\n\t\t\taction: \"status\",\n\t\t\tstatus: \"error\",\n\t\t\temptyText: details.reason ?? \"Worker status is unavailable.\",\n\t\t};\n\t}\n\tif (details.kind === \"review\") {\n\t\treturn {\n\t\t\tlabel: \"workers\",\n\t\t\taction: details.reviewed ? \"reviewed\" : \"review required\",\n\t\t\tstatus: details.reviewed ? \"success\" : \"warning\",\n\t\t\trows: details.laneId\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tstatus: details.reviewed ? \"reviewed\" : \"blocked\",\n\t\t\t\t\t\t\tlabel: details.laneId,\n\t\t\t\t\t\t\tmeta: details.reviewedAt ? [`reviewed ${details.reviewedAt}`] : undefined,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: undefined,\n\t\t\temptyText: details.reason,\n\t\t};\n\t}\n\tconst lanes = details.lanes ?? [];\n\tconst rows = lanes.map((view) => lanePanelRow(view, details.kind === \"lane\" ? details : undefined));\n\tconst running = details.running ?? lanes.filter((lane) => lane.status === \"running\").length;\n\tconst queued = details.queued ?? lanes.filter((lane) => lane.status === \"queued\").length;\n\tconst terminal = details.terminal ?? lanes.length - running - queued;\n\tconst unreviewed = details.unreviewedCount ?? lanes.filter((lane) => lane.unreviewed).length;\n\treturn {\n\t\tlabel: \"workers\",\n\t\taction: details.kind === \"lane\" ? \"lane\" : \"status\",\n\t\tstatus: unreviewed > 0 ? \"warning\" : running + queued > 0 ? \"running\" : lanes.length > 0 ? \"success\" : \"idle\",\n\t\tsummary: [\n\t\t\trunning ? `${running} running` : undefined,\n\t\t\tqueued ? `${queued} queued` : undefined,\n\t\t\tterminal ? `${terminal} terminal` : undefined,\n\t\t].filter((value): value is string => value !== undefined),\n\t\trows,\n\t\temptyText: \"No worker lanes.\",\n\t\tnotices:\n\t\t\tunreviewed > 0\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tstatus: \"warning\",\n\t\t\t\t\t\t\ttext: `${unreviewed} worker mutation${unreviewed === 1 ? \"\" : \"s\"} awaiting parent review.`,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: undefined,\n\t};\n}\n\nexport function executeDelegateStatusAction(\n\taction: DelegateStatusAction,\n\tinput: DelegateStatusInput,\n\tdeps: DelegateStatusDependencies,\n): { content: Array<{ type: \"text\"; text: string }>; details: DelegateStatusToolDetails } {\n\tif (action === \"review\") {\n\t\tif (!input.laneId?.trim()) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"delegate review requires laneId\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", reviewed: false, reason: \"missing_lane_id\" },\n\t\t\t};\n\t\t}\n\t\tif (input.laneId.length > MAX_WORKER_CONTROL_ID_CHARS) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"delegate review laneId is invalid\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", reviewed: false, reason: \"invalid_lane_id\" },\n\t\t\t};\n\t\t}\n\t\tconst laneId = input.laneId.trim();\n\t\tif (!deps.acknowledgeWorkerReview) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"review acknowledgement is not available in this session\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", reviewed: false, reason: \"review_unsupported\" },\n\t\t\t};\n\t\t}\n\t\tconst outcome = deps.acknowledgeWorkerReview(laneId);\n\t\tif (!outcome.ok) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: `review not acknowledged (${laneId}): ${outcome.reason}` }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", laneId, reviewed: false, reason: outcome.reason },\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tcontent: [{ type: \"text\", text: `reviewed ${laneId} at ${outcome.reviewedAt} — notice cleared` }],\n\t\t\tdetails: { started: true, action, kind: \"review\", laneId, reviewed: true, reviewedAt: outcome.reviewedAt },\n\t\t};\n\t}\n\n\tconst records = deps.getLaneRecords().filter(isDelegatedWorkerLane);\n\tconst claims = new Map(deps.getWorkerClaimSnapshots().map((claim) => [claim.requestId, claim]));\n\tconst unreviewedRecords = records.filter((record) => isUnreviewed(claims.get(record.laneId)));\n\n\tif (input.laneId !== undefined) {\n\t\tif (input.laneId.length > MAX_WORKER_CONTROL_ID_CHARS || !input.laneId.trim()) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"worker lane id is invalid\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"error\", reason: \"invalid_lane_id\" },\n\t\t\t};\n\t\t}\n\t\tconst laneId = input.laneId.trim();\n\t\tconst record = records.find((candidate) => candidate.laneId === laneId);\n\t\tif (!record) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"unknown_worker_lane\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"error\", reason: \"unknown_worker_lane\" },\n\t\t\t};\n\t\t}\n\t\tconst claim = claims.get(record.laneId);\n\t\treturn {\n\t\t\tcontent: [{ type: \"text\", text: formatRecord(record, claim) }],\n\t\t\tdetails: {\n\t\t\t\tstarted: true,\n\t\t\t\taction,\n\t\t\t\tkind: \"lane\",\n\t\t\t\tlaneId: record.laneId,\n\t\t\t\tstatus: record.status,\n\t\t\t\tunreviewed: isUnreviewed(claim),\n\t\t\t\tlanes: [laneView(record, claim)],\n\t\t\t\tclaimSummary: claim?.summary.slice(0, 8_000),\n\t\t\t\tchangedFiles: claim?.changedFiles.slice(0, 64),\n\t\t\t\tblockers: claim?.blockers?.slice(0, 16),\n\t\t\t},\n\t\t};\n\t}\n\n\tconst recentRecords = records.slice(-10);\n\tconst recentLaneIds = new Set(recentRecords.map((record) => record.laneId));\n\tconst queued = records.filter((record) => record.status === \"queued\").length;\n\tconst running = records.filter((record) => record.status === \"running\").length;\n\tconst terminal = records.length - queued - running;\n\tconst recent = recentRecords.map((record) => formatRecord(record, claims.get(record.laneId)).slice(0, 2_048));\n\tconst olderUnreviewed = unreviewedRecords.filter((record) => !recentLaneIds.has(record.laneId));\n\tconst displayedRecords = [...recentRecords, ...olderUnreviewed.slice(0, 10)].filter(\n\t\t(record, index, all) => all.findIndex((candidate) => candidate.laneId === record.laneId) === index,\n\t);\n\tconst overviewLines = [`workers: ${running} running, ${queued} queued, ${terminal} terminal`];\n\tif (unreviewedRecords.length > 0) {\n\t\tconst visibleUnreviewedIds = unreviewedRecords.slice(0, 64).map((record) => record.laneId);\n\t\tconst omitted = unreviewedRecords.length - visibleUnreviewedIds.length;\n\t\toverviewLines.push(\n\t\t\t`${unreviewedRecords.length} unreviewed worker mutation${unreviewedRecords.length === 1 ? \"\" : \"s\"} pending review: ${visibleUnreviewedIds.join(\", \")}${omitted > 0 ? `, and ${omitted} more` : \"\"}. Acknowledge each with delegate { action: \"review\", laneId }.`,\n\t\t);\n\t}\n\tconst olderUnreviewedText =\n\t\tolderUnreviewed.length > 0\n\t\t\t? `\\n\\nOlder unreviewed workers (outside the recent list):\\n${olderUnreviewed\n\t\t\t\t\t.slice(0, 10)\n\t\t\t\t\t.map((record) => formatRecord(record, claims.get(record.laneId)).slice(0, 2_048))\n\t\t\t\t\t.join(\"\\n\\n\")}`\n\t\t\t: \"\";\n\tconst overview = overviewLines.join(\"\\n\");\n\treturn {\n\t\tcontent: [\n\t\t\t{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext:\n\t\t\t\t\trecent.length > 0\n\t\t\t\t\t\t? `${overview}\\n\\n${recent.join(\"\\n\\n\")}${olderUnreviewedText}`.slice(0, 16 * 1024)\n\t\t\t\t\t\t: \"No worker lanes.\",\n\t\t\t},\n\t\t],\n\t\tdetails: {\n\t\t\tstarted: true,\n\t\t\taction,\n\t\t\tkind: \"overview\",\n\t\t\tcount: recent.length,\n\t\t\tqueued,\n\t\t\trunning,\n\t\t\tterminal,\n\t\t\tunreviewedCount: unreviewedRecords.length,\n\t\t\tunreviewedLaneIds: unreviewedRecords.slice(0, 64).map((record) => record.laneId),\n\t\t\tlanes: displayedRecords.map((record) => laneView(record, claims.get(record.laneId))),\n\t\t},\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"file":"delegate-status.js","sourceRoot":"","sources":["../../../src/core/tools/delegate-status.ts"],"names":[],"mappings":"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","sourcesContent":["import type { WorkerClaim } from \"../autonomy/contracts.ts\";\nimport type { LaneRecord } from \"../autonomy/lane-tracker.ts\";\nimport { WORKER_COMPLETION_ERROR_CAVEMAN_GUIDANCE } from \"../delegation/worker-terminal-handoff-coordinator.ts\";\nimport type { OrchestrationPanelModel, OrchestrationPanelRow } from \"./orchestration-panel.ts\";\n\nconst MAX_WORKER_CONTROL_ID_CHARS = 512;\n\nexport const WORKER_QUEUED_CAVEMAN_GUIDANCE =\n\t\"CAVEMAN MODE - MANDATORY: queued is admitted durable nonterminal state, not stall or harness failure. Host starts it event-driven when dependencies, capacity, or safety reservations clear. Never poll, interrupt, or cancel a healthy running worker to force the queue. For genuine parallel read-only work, start a fresh worker whose authority.toolNames omits write and edit; write-capable workers may serialize. If you start a fresh narrower replacement, cancel this queued agent after the replacement starts; otherwise both tasks will run.\";\n\nexport const DELEGATE_STATUS_ACTIONS = [\"status\", \"review\"] as const;\n\nexport type DelegateStatusAction = (typeof DELEGATE_STATUS_ACTIONS)[number];\n\nexport interface DelegateStatusInput {\n\tlaneId?: string;\n}\n\nexport interface DelegateStatusLaneView {\n\tlaneId: string;\n\tlabel?: string;\n\tprofileId?: string;\n\tmodelRef?: string;\n\tthinkingLevel?: NonNullable<LaneRecord[\"thinkingLevel\"]>;\n\ttype: LaneRecord[\"type\"];\n\tstatus: LaneRecord[\"status\"];\n\treasonCode?: string;\n\tunreviewed: boolean;\n}\n\nexport interface DelegateStatusToolDetails {\n\tstarted: boolean;\n\taction: DelegateStatusAction;\n\tkind: \"overview\" | \"lane\" | \"review\" | \"error\";\n\tcount?: number;\n\tqueued?: number;\n\trunning?: number;\n\tterminal?: number;\n\tunreviewedCount?: number;\n\tunreviewedLaneIds?: readonly string[];\n\tlanes?: readonly DelegateStatusLaneView[];\n\tlaneId?: string;\n\tstatus?: LaneRecord[\"status\"];\n\tunreviewed?: boolean;\n\treviewed?: boolean;\n\treviewedAt?: string;\n\treason?: string;\n\tclaimSummary?: string;\n\tchangedFiles?: readonly string[];\n\tblockers?: readonly string[];\n}\n\nexport type AcknowledgeWorkerReviewResult =\n\t| { ok: true; requestId: string; reviewedAt: string }\n\t| { ok: false; reason: \"unknown_worker_claim\" | \"not_flagged\" | \"already_reviewed\" };\n\nexport interface DelegateStatusDependencies {\n\tgetLaneRecords(): LaneRecord[];\n\tgetWorkerClaimSnapshots(): WorkerClaim[];\n\tacknowledgeWorkerReview?(requestId: string): AcknowledgeWorkerReviewResult;\n}\n\nfunction isUnreviewed(claim: WorkerClaim | undefined): boolean {\n\treturn claim?.parentReviewRequired === true && claim.parentReviewedAt === undefined;\n}\n\nfunction isDelegatedWorkerLane(record: LaneRecord): boolean {\n\treturn record.type === \"worker\" || record.type === \"tmux-worker\";\n}\n\nfunction formattedRecordStatus(record: LaneRecord): string {\n\tconst retryReason =\n\t\trecord.status === \"running\" && record.reasonCode?.startsWith(\"retry_scheduled:\")\n\t\t\t? record.reasonCode.slice(\"retry_scheduled:\".length)\n\t\t\t: undefined;\n\tif (retryReason) {\n\t\treturn `retrying after transient ${retryReason} (nonterminal; durable state preserved; terminal handoff pending)`;\n\t}\n\treturn `${record.status}${record.reasonCode ? ` (${record.reasonCode})` : \"\"}`;\n}\n\nfunction formatRecord(record: LaneRecord, claim: WorkerClaim | undefined): string {\n\tconst lines = [`${record.laneId}: ${formattedRecordStatus(record)}`];\n\tif (record.modelRef) {\n\t\tlines.push(`effective model: ${record.modelRef}; thinking: ${record.thinkingLevel ?? \"unknown\"}`);\n\t}\n\tif (record.status === \"queued\") lines.push(WORKER_QUEUED_CAVEMAN_GUIDANCE);\n\tif (record.reasonCode === \"worker_blocked\") {\n\t\tlines.push(\n\t\t\t\"CAVEMAN MODE - MANDATORY: worker_blocked is a delivered task claim with blockers, not harness failure or lost state. Verify the claim, then continue or replan the parent task.\",\n\t\t);\n\t}\n\tif (record.reasonCode === \"completion_error\") lines.push(WORKER_COMPLETION_ERROR_CAVEMAN_GUIDANCE);\n\tif (!claim) return lines.join(\"\\n\");\n\tlines.push(`usageReportId: ${claim.usageReportId ?? \"none\"}`);\n\tif (isUnreviewed(claim)) {\n\t\tlines.push(\n\t\t\t`UNREVIEWED MUTATION - this worker's claim requires explicit parent review. Acknowledge with delegate { action: \"review\", laneId: \"${record.laneId}\" }.`,\n\t\t);\n\t} else if (claim.parentReviewRequired && claim.parentReviewedAt) {\n\t\tlines.push(`reviewed at ${claim.parentReviewedAt}`);\n\t}\n\tlines.push(\"UNTRUSTED worker output — verify before acting on it:\");\n\tlines.push(claim.summary.slice(0, 8_000));\n\tif (claim.changedFiles.length > 0) lines.push(`changed files: ${claim.changedFiles.join(\", \")}`);\n\tif (claim.blockers?.length) lines.push(`blockers: ${claim.blockers.join(\"; \")}`);\n\treturn lines.join(\"\\n\").slice(0, 16 * 1024);\n}\n\nfunction laneView(record: LaneRecord, claim: WorkerClaim | undefined): DelegateStatusLaneView {\n\treturn {\n\t\tlaneId: record.laneId,\n\t\t...(record.label ? { label: record.label } : {}),\n\t\t...(record.profileId ? { profileId: record.profileId } : {}),\n\t\t...(record.modelRef ? { modelRef: record.modelRef } : {}),\n\t\t...(record.thinkingLevel ? { thinkingLevel: record.thinkingLevel } : {}),\n\t\ttype: record.type,\n\t\tstatus: record.status,\n\t\t...(record.reasonCode ? { reasonCode: record.reasonCode } : {}),\n\t\tunreviewed: isUnreviewed(claim),\n\t};\n}\n\nfunction lanePanelRow(view: DelegateStatusLaneView, details?: DelegateStatusToolDetails): OrchestrationPanelRow {\n\tconst meta = [\n\t\tview.label ? view.laneId : undefined,\n\t\tview.profileId ? `profile ${view.profileId}` : undefined,\n\t\tview.modelRef ? `model ${view.modelRef}` : undefined,\n\t\tview.thinkingLevel ? `thinking ${view.thinkingLevel}` : undefined,\n\t\tview.type === \"tmux-worker\" ? \"tmux\" : undefined,\n\t\tview.reasonCode,\n\t\tview.unreviewed ? \"review required\" : undefined,\n\t].filter((value): value is string => value !== undefined);\n\tconst expandedDetails = [\n\t\tdetails?.claimSummary ? `untrusted claim: ${details.claimSummary}` : undefined,\n\t\tdetails?.changedFiles?.length ? `changed: ${details.changedFiles.join(\", \")}` : undefined,\n\t\t...(details?.blockers ?? []).map((blocker) => `blocker: ${blocker}`),\n\t].filter((value): value is string => value !== undefined);\n\treturn {\n\t\tstatus: view.status,\n\t\tlabel: view.label ?? view.laneId,\n\t\tmeta,\n\t\tdetails: expandedDetails,\n\t};\n}\n\nexport function delegateStatusPanelModel(details: DelegateStatusToolDetails): OrchestrationPanelModel {\n\tif (details.kind === \"error\") {\n\t\treturn {\n\t\t\tlabel: \"workers\",\n\t\t\taction: \"status\",\n\t\t\tstatus: \"error\",\n\t\t\temptyText: details.reason ?? \"Worker status is unavailable.\",\n\t\t};\n\t}\n\tif (details.kind === \"review\") {\n\t\treturn {\n\t\t\tlabel: \"workers\",\n\t\t\taction: details.reviewed ? \"reviewed\" : \"review required\",\n\t\t\tstatus: details.reviewed ? \"success\" : \"warning\",\n\t\t\trows: details.laneId\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tstatus: details.reviewed ? \"reviewed\" : \"blocked\",\n\t\t\t\t\t\t\tlabel: details.laneId,\n\t\t\t\t\t\t\tmeta: details.reviewedAt ? [`reviewed ${details.reviewedAt}`] : undefined,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: undefined,\n\t\t\temptyText: details.reason,\n\t\t};\n\t}\n\tconst lanes = details.lanes ?? [];\n\tconst rows = lanes.map((view) => lanePanelRow(view, details.kind === \"lane\" ? details : undefined));\n\tconst running = details.running ?? lanes.filter((lane) => lane.status === \"running\").length;\n\tconst queued = details.queued ?? lanes.filter((lane) => lane.status === \"queued\").length;\n\tconst terminal = details.terminal ?? lanes.length - running - queued;\n\tconst unreviewed = details.unreviewedCount ?? lanes.filter((lane) => lane.unreviewed).length;\n\treturn {\n\t\tlabel: \"workers\",\n\t\taction: details.kind === \"lane\" ? \"lane\" : \"status\",\n\t\tstatus: unreviewed > 0 ? \"warning\" : running + queued > 0 ? \"running\" : lanes.length > 0 ? \"success\" : \"idle\",\n\t\tsummary: [\n\t\t\trunning ? `${running} running` : undefined,\n\t\t\tqueued ? `${queued} queued` : undefined,\n\t\t\tterminal ? `${terminal} terminal` : undefined,\n\t\t].filter((value): value is string => value !== undefined),\n\t\trows,\n\t\temptyText: \"No worker lanes.\",\n\t\tnotices:\n\t\t\tunreviewed > 0\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tstatus: \"warning\",\n\t\t\t\t\t\t\ttext: `${unreviewed} worker mutation${unreviewed === 1 ? \"\" : \"s\"} awaiting parent review.`,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: undefined,\n\t};\n}\n\nexport function executeDelegateStatusAction(\n\taction: DelegateStatusAction,\n\tinput: DelegateStatusInput,\n\tdeps: DelegateStatusDependencies,\n): { content: Array<{ type: \"text\"; text: string }>; details: DelegateStatusToolDetails } {\n\tif (action === \"review\") {\n\t\tif (!input.laneId?.trim()) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"delegate review requires laneId\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", reviewed: false, reason: \"missing_lane_id\" },\n\t\t\t};\n\t\t}\n\t\tif (input.laneId.length > MAX_WORKER_CONTROL_ID_CHARS) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"delegate review laneId is invalid\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", reviewed: false, reason: \"invalid_lane_id\" },\n\t\t\t};\n\t\t}\n\t\tconst laneId = input.laneId.trim();\n\t\tif (!deps.acknowledgeWorkerReview) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"review acknowledgement is not available in this session\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", reviewed: false, reason: \"review_unsupported\" },\n\t\t\t};\n\t\t}\n\t\tconst outcome = deps.acknowledgeWorkerReview(laneId);\n\t\tif (!outcome.ok) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: `review not acknowledged (${laneId}): ${outcome.reason}` }],\n\t\t\t\tdetails: { started: false, action, kind: \"review\", laneId, reviewed: false, reason: outcome.reason },\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tcontent: [{ type: \"text\", text: `reviewed ${laneId} at ${outcome.reviewedAt} — notice cleared` }],\n\t\t\tdetails: { started: true, action, kind: \"review\", laneId, reviewed: true, reviewedAt: outcome.reviewedAt },\n\t\t};\n\t}\n\n\tconst records = deps.getLaneRecords().filter(isDelegatedWorkerLane);\n\tconst claims = new Map(deps.getWorkerClaimSnapshots().map((claim) => [claim.requestId, claim]));\n\tconst unreviewedRecords = records.filter((record) => isUnreviewed(claims.get(record.laneId)));\n\n\tif (input.laneId !== undefined) {\n\t\tif (input.laneId.length > MAX_WORKER_CONTROL_ID_CHARS || !input.laneId.trim()) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"worker lane id is invalid\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"error\", reason: \"invalid_lane_id\" },\n\t\t\t};\n\t\t}\n\t\tconst laneId = input.laneId.trim();\n\t\tconst record = records.find((candidate) => candidate.laneId === laneId);\n\t\tif (!record) {\n\t\t\treturn {\n\t\t\t\tcontent: [{ type: \"text\", text: \"unknown_worker_lane\" }],\n\t\t\t\tdetails: { started: false, action, kind: \"error\", reason: \"unknown_worker_lane\" },\n\t\t\t};\n\t\t}\n\t\tconst claim = claims.get(record.laneId);\n\t\treturn {\n\t\t\tcontent: [{ type: \"text\", text: formatRecord(record, claim) }],\n\t\t\tdetails: {\n\t\t\t\tstarted: true,\n\t\t\t\taction,\n\t\t\t\tkind: \"lane\",\n\t\t\t\tlaneId: record.laneId,\n\t\t\t\tstatus: record.status,\n\t\t\t\tunreviewed: isUnreviewed(claim),\n\t\t\t\tlanes: [laneView(record, claim)],\n\t\t\t\tclaimSummary: claim?.summary.slice(0, 8_000),\n\t\t\t\tchangedFiles: claim?.changedFiles.slice(0, 64),\n\t\t\t\tblockers: claim?.blockers?.slice(0, 16),\n\t\t\t},\n\t\t};\n\t}\n\n\tconst recentRecords = records.slice(-10);\n\tconst recentLaneIds = new Set(recentRecords.map((record) => record.laneId));\n\tconst queued = records.filter((record) => record.status === \"queued\").length;\n\tconst running = records.filter((record) => record.status === \"running\").length;\n\tconst terminal = records.length - queued - running;\n\tconst recent = recentRecords.map((record) => formatRecord(record, claims.get(record.laneId)).slice(0, 2_048));\n\tconst olderUnreviewed = unreviewedRecords.filter((record) => !recentLaneIds.has(record.laneId));\n\tconst displayedRecords = [...recentRecords, ...olderUnreviewed.slice(0, 10)].filter(\n\t\t(record, index, all) => all.findIndex((candidate) => candidate.laneId === record.laneId) === index,\n\t);\n\tconst overviewLines = [`workers: ${running} running, ${queued} queued, ${terminal} terminal`];\n\tif (unreviewedRecords.length > 0) {\n\t\tconst visibleUnreviewedIds = unreviewedRecords.slice(0, 64).map((record) => record.laneId);\n\t\tconst omitted = unreviewedRecords.length - visibleUnreviewedIds.length;\n\t\toverviewLines.push(\n\t\t\t`${unreviewedRecords.length} unreviewed worker mutation${unreviewedRecords.length === 1 ? \"\" : \"s\"} pending review: ${visibleUnreviewedIds.join(\", \")}${omitted > 0 ? `, and ${omitted} more` : \"\"}. Acknowledge each with delegate { action: \"review\", laneId }.`,\n\t\t);\n\t}\n\tconst olderUnreviewedText =\n\t\tolderUnreviewed.length > 0\n\t\t\t? `\\n\\nOlder unreviewed workers (outside the recent list):\\n${olderUnreviewed\n\t\t\t\t\t.slice(0, 10)\n\t\t\t\t\t.map((record) => formatRecord(record, claims.get(record.laneId)).slice(0, 2_048))\n\t\t\t\t\t.join(\"\\n\\n\")}`\n\t\t\t: \"\";\n\tconst overview = overviewLines.join(\"\\n\");\n\treturn {\n\t\tcontent: [\n\t\t\t{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext:\n\t\t\t\t\trecent.length > 0\n\t\t\t\t\t\t? `${overview}\\n\\n${recent.join(\"\\n\\n\")}${olderUnreviewedText}`.slice(0, 16 * 1024)\n\t\t\t\t\t\t: \"No worker lanes.\",\n\t\t\t},\n\t\t],\n\t\tdetails: {\n\t\t\tstarted: true,\n\t\t\taction,\n\t\t\tkind: \"overview\",\n\t\t\tcount: recent.length,\n\t\t\tqueued,\n\t\t\trunning,\n\t\t\tterminal,\n\t\t\tunreviewedCount: unreviewedRecords.length,\n\t\t\tunreviewedLaneIds: unreviewedRecords.slice(0, 64).map((record) => record.laneId),\n\t\t\tlanes: displayedRecords.map((record) => laneView(record, claims.get(record.laneId))),\n\t\t},\n\t};\n}\n"]}
|
|
@@ -4,7 +4,9 @@ import { type WorkerAgentBroadcastTargetResult, type WorkerAgentControlPort } fr
|
|
|
4
4
|
import type { WorkerDelegationRequest } from "../delegation/worker-delegation-request.ts";
|
|
5
5
|
import type { WorkerRunOutcome } from "../delegation/worker-runner.ts";
|
|
6
6
|
import type { ToolDefinition } from "../extensions/types.ts";
|
|
7
|
+
import { type OrchestrationThinkingLevel } from "../orchestration/contracts.ts";
|
|
7
8
|
import type { TaskProfileWriterPort } from "../orchestration/task-profile-writer.ts";
|
|
9
|
+
import type { WorkerModelPinPolicy } from "../orchestration/worker-model-pins.ts";
|
|
8
10
|
import { type DelegateStatusDependencies, type DelegateStatusToolDetails } from "./delegate-status.ts";
|
|
9
11
|
import { type DelegateProfileToolDetails } from "./profile-writer.ts";
|
|
10
12
|
export declare const DELEGATE_ACTIONS: readonly ["start", "tasks", "list", "transcript", "wait", "wait_many", "interrupt", "resume", "retire", "cancel", "send", "broadcast", "follow_up", "inbox", "inbox_wait", "inbox_ack", "reply", "status", "review", "profile_inspect", "profile_create"];
|
|
@@ -30,13 +32,21 @@ declare const delegateSchema: Type.TObject<{
|
|
|
30
32
|
action: Type.TOptional<Type.TString>;
|
|
31
33
|
profileId: Type.TOptional<Type.TString>;
|
|
32
34
|
authority: Type.TOptional<Type.TObject<{
|
|
33
|
-
role: Type.TOptional<Type.TUnion<Type.TLiteral<"database" | "explorer" | "implementer" | "operator" | "orchestrator" | "planner"
|
|
35
|
+
role: Type.TOptional<Type.TUnion<Type.TLiteral<"database" | "explorer" | "implementer" | "operator" | "orchestrator" | "planner">[]>>;
|
|
34
36
|
model: Type.TOptional<Type.TObject<{
|
|
35
37
|
provider: Type.TString;
|
|
36
38
|
modelId: Type.TString;
|
|
37
39
|
}>>;
|
|
38
40
|
thinkingLevel: Type.TOptional<Type.TUnion<Type.TLiteral<"high" | "low" | "max" | "medium" | "minimal" | "off" | "ultra" | "xhigh">[]>>;
|
|
39
41
|
toolNames: Type.TOptional<Type.TArray<Type.TString>>;
|
|
42
|
+
budget: Type.TOptional<Type.TObject<{
|
|
43
|
+
maxTokens: Type.TOptional<Type.TNumber>;
|
|
44
|
+
maxWallClockMs: Type.TOptional<Type.TNumber>;
|
|
45
|
+
maxCostUsd: Type.TOptional<Type.TNumber>;
|
|
46
|
+
maxAttempts: Type.TOptional<Type.TNumber>;
|
|
47
|
+
maxToolCalls: Type.TOptional<Type.TNumber>;
|
|
48
|
+
requireApprovalAboveCostUsd: Type.TOptional<Type.TNumber>;
|
|
49
|
+
}>>;
|
|
40
50
|
}>>;
|
|
41
51
|
instructions: Type.TOptional<Type.TString>;
|
|
42
52
|
agentId: Type.TOptional<Type.TString>;
|
|
@@ -73,6 +83,8 @@ export interface DelegateDispatchToolDetails {
|
|
|
73
83
|
agentIdsOmitted?: number;
|
|
74
84
|
skipReason?: string;
|
|
75
85
|
profileId?: string;
|
|
86
|
+
modelRef?: string;
|
|
87
|
+
thinkingLevel?: OrchestrationThinkingLevel;
|
|
76
88
|
laneId?: string;
|
|
77
89
|
label?: string;
|
|
78
90
|
status?: LaneRecord["status"];
|
|
@@ -110,6 +122,8 @@ export interface DelegateToolDependencies {
|
|
|
110
122
|
role: string;
|
|
111
123
|
description: string;
|
|
112
124
|
}[];
|
|
125
|
+
/** Active owner settings only; omitted/absent preserves the existing lean prompt verbatim. */
|
|
126
|
+
workerModelPinPolicy?: WorkerModelPinPolicy;
|
|
113
127
|
workerAgentControl?: WorkerAgentControlPort;
|
|
114
128
|
/** Root-only bounded lane inspection and durable mutation-review acknowledgement. */
|
|
115
129
|
status?: DelegateStatusDependencies;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegate.d.ts","sourceRoot":"","sources":["../../../src/core/tools/delegate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,
|
|
1
|
+
{"version":3,"file":"delegate.d.ts","sourceRoot":"","sources":["../../../src/core/tools/delegate.ts"],"names":[],"mappings":"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"}
|