@fitlab-ai/agent-infra 0.12.1 → 0.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. package/README.md +0 -2
  2. package/README.zh-CN.md +0 -2
  3. package/dist/bin/internal-cli.js +2 -17
  4. package/dist/lib/agent-clients/adapter.js +0 -13
  5. package/dist/lib/agent-clients/adapters/antigravity-cli.js +0 -5
  6. package/dist/lib/agent-clients/adapters/claude-code-credentials.js +0 -17
  7. package/dist/lib/agent-clients/adapters/claude-code.js +0 -9
  8. package/dist/lib/agent-clients/adapters/codex.js +0 -52
  9. package/dist/lib/agent-clients/adapters/opencode.js +0 -5
  10. package/dist/lib/agent-clients/adapters/traecli.js +0 -5
  11. package/dist/lib/agent-clients/config.js +19 -54
  12. package/dist/lib/agent-clients/registry.js +1 -12
  13. package/dist/lib/agent-clients/schema.js +0 -18
  14. package/dist/lib/agent-clients/tokens.js +1 -2
  15. package/dist/lib/agent-clients/types.js +0 -1
  16. package/dist/lib/decide.js +2 -0
  17. package/dist/lib/git/worktree-identity.js +1 -9
  18. package/dist/lib/internal/agent-client.js +2 -62
  19. package/dist/lib/internal/cli-route-inventory.js +1 -5
  20. package/dist/lib/internal/manual-validation.js +18 -10
  21. package/dist/lib/internal/task-create.js +1 -1
  22. package/dist/lib/internal/task-event.js +1 -8
  23. package/dist/lib/internal/task-finalization.js +0 -1
  24. package/dist/lib/internal/task-lifecycle.js +2 -2
  25. package/dist/lib/internal/task-operation-registry.js +4 -20
  26. package/dist/lib/internal/task-review.js +4 -4
  27. package/dist/lib/platform/comment-safety.js +1 -7
  28. package/dist/lib/platform/in-label-sync.js +1 -14
  29. package/dist/lib/platform/issue-comments.js +1 -16
  30. package/dist/lib/platform/issues.js +1 -1
  31. package/dist/lib/platform/operation-coordinator.js +4 -2
  32. package/dist/lib/platform/pr-change-report.js +1 -4
  33. package/dist/lib/platform/pr-checks.js +2 -8
  34. package/dist/lib/platform/provider-validation.js +0 -20
  35. package/dist/lib/platform/pull-requests.js +73 -84
  36. package/dist/lib/platform/releases.js +1 -43
  37. package/dist/lib/platform/verification-required.js +0 -2
  38. package/dist/lib/platform/verification-sync.js +1 -79
  39. package/dist/lib/process-data/normalize.js +1 -185
  40. package/dist/lib/process-data/privacy.js +1 -16
  41. package/dist/lib/process-data/sources.js +2 -279
  42. package/dist/lib/render.js +0 -12
  43. package/dist/lib/run/index.js +15 -10
  44. package/dist/lib/run/skills.js +0 -3
  45. package/dist/lib/sandbox/commands/create.js +40 -53
  46. package/dist/lib/sandbox/commands/list-running.js +0 -18
  47. package/dist/lib/sandbox/commands/start.js +7 -8
  48. package/dist/lib/sandbox/constants.js +0 -6
  49. package/dist/lib/sandbox/control/client.js +0 -1
  50. package/dist/lib/sandbox/control/container-identity.js +1 -16
  51. package/dist/lib/sandbox/control/executor.js +0 -4
  52. package/dist/lib/sandbox/control/identity-sentinel.js +0 -7
  53. package/dist/lib/sandbox/control/lifecycle.js +21 -37
  54. package/dist/lib/sandbox/control/native-file-lock.js +0 -3
  55. package/dist/lib/sandbox/control/server.js +18 -38
  56. package/dist/lib/sandbox/control/state.js +1 -9
  57. package/dist/lib/sandbox/dockerfile.js +0 -6
  58. package/dist/lib/sandbox/engine.js +0 -14
  59. package/dist/lib/sandbox/engines/docker-exact-discovery.js +1 -4
  60. package/dist/lib/sandbox/engines/wsl2-paths.js +0 -3
  61. package/dist/lib/sandbox/recovery.js +24 -26
  62. package/dist/lib/sandbox/removal.js +11 -519
  63. package/dist/lib/sandbox/task-resolver.js +0 -41
  64. package/dist/lib/sandbox/tools.js +1 -4
  65. package/dist/lib/sandbox/workspace-view.js +1 -2
  66. package/dist/lib/server/display.js +0 -6
  67. package/dist/lib/task/activity-intent.js +45 -40
  68. package/dist/lib/task/activity-log.js +9 -16
  69. package/dist/lib/task/artifact-command.js +1 -1
  70. package/dist/lib/task/artifact-lifecycle.js +61 -63
  71. package/dist/lib/task/artifact-name.js +0 -6
  72. package/dist/lib/task/artifact-operations.js +3 -3
  73. package/dist/lib/task/capabilities.js +4 -5
  74. package/dist/lib/task/commands/log.js +0 -6
  75. package/dist/lib/task/commands/status.js +17 -60
  76. package/dist/lib/task/commit-operation.js +28 -39
  77. package/dist/lib/task/completion-facts.js +56 -43
  78. package/dist/lib/task/control-authority.js +23 -256
  79. package/dist/lib/task/control-recovery.js +3 -5
  80. package/dist/lib/task/create.js +2 -4
  81. package/dist/lib/task/decision-intents.js +8 -9
  82. package/dist/lib/task/delivery-target.js +1 -40
  83. package/dist/lib/task/events.js +84 -107
  84. package/dist/lib/task/finalization.js +44 -8
  85. package/dist/lib/task/ledger-intents.js +1 -1
  86. package/dist/lib/task/lifecycle-execution.js +38 -33
  87. package/dist/lib/task/lifecycle.js +49 -41
  88. package/dist/lib/task/local-artifact-finalization.js +1 -4
  89. package/dist/lib/task/manual-validation-evidence.js +1 -37
  90. package/dist/lib/task/platform-operation-recovery.js +67 -24
  91. package/dist/lib/task/pr-delivery-fact.js +2 -5
  92. package/dist/lib/task/qualification-confirmation.js +5 -7
  93. package/dist/lib/task/resolve-ref.js +1 -25
  94. package/dist/lib/task/review-command.js +2 -2
  95. package/dist/lib/task/review-finalization.js +1 -21
  96. package/dist/lib/task/review-fingerprint.js +0 -4
  97. package/dist/lib/task/secure-fs.js +0 -56
  98. package/dist/lib/task/short-id.js +1 -39
  99. package/dist/lib/task/skill-scope.js +0 -1
  100. package/dist/lib/task/verification-engine.js +58 -282
  101. package/dist/lib/task/verification.js +6 -3
  102. package/dist/lib/task/write.js +11 -1
  103. package/lib/agent-clients/adapter.ts +0 -76
  104. package/lib/agent-clients/adapters/antigravity-cli.ts +0 -5
  105. package/lib/agent-clients/adapters/claude-code-credentials.ts +0 -19
  106. package/lib/agent-clients/adapters/claude-code.ts +0 -9
  107. package/lib/agent-clients/adapters/codex.ts +0 -56
  108. package/lib/agent-clients/adapters/opencode.ts +0 -5
  109. package/lib/agent-clients/adapters/traecli.ts +0 -5
  110. package/lib/agent-clients/config.ts +20 -61
  111. package/lib/agent-clients/registry.ts +1 -34
  112. package/lib/agent-clients/schema.ts +0 -18
  113. package/lib/agent-clients/tokens.ts +1 -2
  114. package/lib/agent-clients/types.ts +0 -15
  115. package/lib/decide.ts +1 -0
  116. package/lib/git/worktree-identity.ts +0 -10
  117. package/lib/internal/agent-client.ts +2 -70
  118. package/lib/internal/cli-route-inventory.ts +1 -4
  119. package/lib/internal/manual-validation.ts +16 -9
  120. package/lib/internal/task-create.ts +0 -1
  121. package/lib/internal/task-event.ts +1 -5
  122. package/lib/internal/task-finalization.ts +0 -1
  123. package/lib/internal/task-lifecycle.ts +3 -5
  124. package/lib/internal/task-operation-registry.ts +3 -19
  125. package/lib/internal/task-review.ts +4 -4
  126. package/lib/platform/comment-safety.ts +0 -10
  127. package/lib/platform/github-provider.ts +0 -2
  128. package/lib/platform/in-label-sync.ts +0 -16
  129. package/lib/platform/issue-comments.ts +0 -21
  130. package/lib/platform/issues.ts +0 -2
  131. package/lib/platform/operation-coordinator.ts +4 -2
  132. package/lib/platform/pr-change-report.ts +0 -5
  133. package/lib/platform/pr-checks.ts +1 -10
  134. package/lib/platform/pr-review.ts +1 -1
  135. package/lib/platform/provider-bridge.ts +0 -1
  136. package/lib/platform/provider-loader.ts +1 -5
  137. package/lib/platform/provider-validation.ts +1 -49
  138. package/lib/platform/pull-requests.ts +64 -99
  139. package/lib/platform/releases.ts +1 -40
  140. package/lib/platform/verification-required.ts +0 -2
  141. package/lib/platform/verification-sync.ts +0 -94
  142. package/lib/process-data/normalize.ts +1 -186
  143. package/lib/process-data/privacy.ts +2 -19
  144. package/lib/process-data/sources.ts +3 -283
  145. package/lib/render.ts +0 -15
  146. package/lib/run/index.ts +13 -7
  147. package/lib/run/skills.ts +0 -4
  148. package/lib/sandbox/commands/create.ts +37 -74
  149. package/lib/sandbox/commands/list-running.ts +0 -19
  150. package/lib/sandbox/commands/start.ts +7 -10
  151. package/lib/sandbox/constants.ts +0 -8
  152. package/lib/sandbox/control/client.ts +0 -1
  153. package/lib/sandbox/control/container-identity.ts +1 -16
  154. package/lib/sandbox/control/executor.ts +1 -5
  155. package/lib/sandbox/control/identity-sentinel.ts +0 -8
  156. package/lib/sandbox/control/lifecycle.ts +18 -51
  157. package/lib/sandbox/control/native-file-lock.ts +0 -8
  158. package/lib/sandbox/control/protocol.ts +0 -2
  159. package/lib/sandbox/control/server.ts +13 -39
  160. package/lib/sandbox/control/state.ts +1 -10
  161. package/lib/sandbox/dockerfile.ts +0 -11
  162. package/lib/sandbox/engine.ts +0 -17
  163. package/lib/sandbox/engines/docker-exact-discovery.ts +1 -5
  164. package/lib/sandbox/engines/wsl2-paths.ts +0 -4
  165. package/lib/sandbox/recovery.ts +24 -26
  166. package/lib/sandbox/removal.ts +11 -696
  167. package/lib/sandbox/shell.ts +1 -1
  168. package/lib/sandbox/task-resolver.ts +0 -48
  169. package/lib/sandbox/tools.ts +1 -5
  170. package/lib/sandbox/workspace-view.ts +2 -4
  171. package/lib/server/display.ts +0 -14
  172. package/lib/server/process-control.ts +1 -1
  173. package/lib/task/activity-intent.ts +36 -44
  174. package/lib/task/activity-log.ts +9 -22
  175. package/lib/task/artifact-command.ts +1 -1
  176. package/lib/task/artifact-lifecycle.ts +58 -67
  177. package/lib/task/artifact-name.ts +0 -7
  178. package/lib/task/artifact-operations.ts +3 -3
  179. package/lib/task/capabilities.ts +5 -6
  180. package/lib/task/commands/log.ts +0 -7
  181. package/lib/task/commands/status.ts +14 -79
  182. package/lib/task/commit-operation.ts +29 -51
  183. package/lib/task/completion-facts.ts +45 -42
  184. package/lib/task/control-authority.ts +27 -317
  185. package/lib/task/control-recovery.ts +2 -5
  186. package/lib/task/create.ts +2 -5
  187. package/lib/task/decision-intents.ts +5 -5
  188. package/lib/task/delivery-target.ts +0 -40
  189. package/lib/task/events.ts +89 -123
  190. package/lib/task/finalization.ts +41 -9
  191. package/lib/task/ledger-intents.ts +1 -1
  192. package/lib/task/lifecycle-execution.ts +37 -89
  193. package/lib/task/lifecycle.ts +48 -44
  194. package/lib/task/local-artifact-finalization.ts +0 -7
  195. package/lib/task/manual-validation-evidence.ts +1 -47
  196. package/lib/task/platform-operation-recovery.ts +50 -26
  197. package/lib/task/pr-delivery-fact.ts +2 -11
  198. package/lib/task/qualification-confirmation.ts +6 -6
  199. package/lib/task/resolve-ref.ts +0 -23
  200. package/lib/task/review-command.ts +2 -2
  201. package/lib/task/review-finalization.ts +1 -27
  202. package/lib/task/review-fingerprint.ts +0 -8
  203. package/lib/task/secure-fs.ts +0 -42
  204. package/lib/task/short-id.ts +0 -43
  205. package/lib/task/skill-scope.ts +0 -1
  206. package/lib/task/verification-engine.ts +56 -287
  207. package/lib/task/verification.ts +5 -5
  208. package/lib/task/write.ts +12 -1
  209. package/package.json +2 -2
  210. package/templates/.agents/README.en.md +1 -3
  211. package/templates/.agents/README.zh-CN.md +0 -2
  212. package/templates/.agents/rules/README.en.md +0 -1
  213. package/templates/.agents/rules/README.zh-CN.md +0 -1
  214. package/templates/.agents/rules/commit-and-pr.en.md +1 -1
  215. package/templates/.agents/rules/commit-and-pr.zh-CN.md +1 -1
  216. package/templates/.agents/rules/no-mid-flow-questions.en.md +0 -10
  217. package/templates/.agents/rules/no-mid-flow-questions.zh-CN.md +0 -10
  218. package/templates/.agents/rules/pr-sync.en.md +1 -1
  219. package/templates/.agents/rules/pr-sync.zh-CN.md +1 -1
  220. package/templates/.agents/rules/task-management.en.md +3 -3
  221. package/templates/.agents/rules/task-management.zh-CN.md +3 -3
  222. package/templates/.agents/skills/analyze-task/SKILL.en.md +3 -3
  223. package/templates/.agents/skills/analyze-task/SKILL.zh-CN.md +3 -3
  224. package/templates/.agents/skills/cancel-task/SKILL.en.md +2 -2
  225. package/templates/.agents/skills/cancel-task/SKILL.zh-CN.md +2 -2
  226. package/templates/.agents/skills/code-task/SKILL.en.md +2 -2
  227. package/templates/.agents/skills/code-task/SKILL.zh-CN.md +4 -4
  228. package/templates/.agents/skills/commit/SKILL.en.md +2 -2
  229. package/templates/.agents/skills/commit/SKILL.zh-CN.md +2 -2
  230. package/templates/.agents/skills/commit/reference/commit-orchestration.en.md +6 -6
  231. package/templates/.agents/skills/commit/reference/commit-orchestration.zh-CN.md +6 -6
  232. package/templates/.agents/skills/plan-task/SKILL.en.md +2 -2
  233. package/templates/.agents/skills/plan-task/SKILL.zh-CN.md +2 -2
  234. package/templates/.agents/skills/review-analysis/SKILL.en.md +3 -3
  235. package/templates/.agents/skills/review-analysis/SKILL.zh-CN.md +3 -3
  236. package/templates/.agents/skills/review-code/SKILL.en.md +5 -5
  237. package/templates/.agents/skills/review-code/SKILL.zh-CN.md +5 -5
  238. package/templates/.agents/skills/review-plan/SKILL.en.md +3 -3
  239. package/templates/.agents/skills/review-plan/SKILL.zh-CN.md +3 -3
  240. package/templates/.agents/skills/review-pr/SKILL.en.md +4 -4
  241. package/templates/.agents/skills/review-pr/SKILL.zh-CN.md +4 -4
  242. package/templates/.agents/skills/run-manual-validation/SKILL.en.md +1 -1
  243. package/templates/.agents/skills/run-manual-validation/SKILL.zh-CN.md +1 -1
  244. package/templates/.agents/skills/update-agent-infra/scripts/sync-templates.js +3 -75
  245. package/templates/.agents/templates/task.en.md +1 -0
  246. package/templates/.agents/templates/task.zh-CN.md +1 -0
  247. package/templates/.claude/settings.json +0 -24
  248. package/templates/.codex/hooks.json +0 -50
  249. package/dist/lib/agent-clients/adapters/codex-lifecycle/app-server.js +0 -582
  250. package/dist/lib/agent-clients/adapters/codex-lifecycle/binding.js +0 -114
  251. package/dist/lib/agent-clients/adapters/codex-lifecycle/build-identity.js +0 -237
  252. package/dist/lib/agent-clients/adapters/codex-lifecycle/cli.js +0 -443
  253. package/dist/lib/agent-clients/adapters/codex-lifecycle/evidence.js +0 -236
  254. package/dist/lib/agent-clients/adapters/codex-lifecycle/recovery.js +0 -292
  255. package/dist/lib/agent-clients/adapters/codex-lifecycle/store.js +0 -267
  256. package/dist/lib/agent-clients/adapters/codex-orchestration.js +0 -466
  257. package/dist/lib/internal/task-orchestration.js +0 -71
  258. package/dist/lib/platform/verification.js +0 -6
  259. package/dist/lib/run/prompt.js +0 -2
  260. package/dist/lib/sandbox/engines/authority.js +0 -289
  261. package/dist/lib/task/delegation-receipts.js +0 -410
  262. package/dist/lib/task/orchestration.js +0 -1233
  263. package/dist/lib/task/verification-checks.js +0 -9
  264. package/dist/lib/task/workspace-snapshot.js +0 -121
  265. package/dist/lifecycle-build-manifest.json +0 -6
  266. package/lib/agent-clients/adapters/codex-lifecycle/app-server.ts +0 -688
  267. package/lib/agent-clients/adapters/codex-lifecycle/binding.ts +0 -147
  268. package/lib/agent-clients/adapters/codex-lifecycle/build-identity.ts +0 -349
  269. package/lib/agent-clients/adapters/codex-lifecycle/cli.ts +0 -506
  270. package/lib/agent-clients/adapters/codex-lifecycle/evidence.ts +0 -385
  271. package/lib/agent-clients/adapters/codex-lifecycle/manifest-files.json +0 -41
  272. package/lib/agent-clients/adapters/codex-lifecycle/recovery.ts +0 -418
  273. package/lib/agent-clients/adapters/codex-lifecycle/store.ts +0 -354
  274. package/lib/agent-clients/adapters/codex-orchestration.ts +0 -630
  275. package/lib/internal/task-orchestration.ts +0 -74
  276. package/lib/platform/verification.ts +0 -11
  277. package/lib/run/prompt.ts +0 -1
  278. package/lib/sandbox/engines/authority.ts +0 -365
  279. package/lib/task/delegation-receipts.ts +0 -547
  280. package/lib/task/orchestration.ts +0 -1651
  281. package/lib/task/verification-checks.ts +0 -10
  282. package/lib/task/workspace-snapshot.ts +0 -144
  283. package/templates/.agents/hooks/lifecycle-delegation.js +0 -140
  284. package/templates/.agents/rules/lifecycle-orchestration.en.md +0 -44
  285. package/templates/.agents/rules/lifecycle-orchestration.zh-CN.md +0 -44
  286. package/templates/.agents/skills/run-task/SKILL.en.md +0 -29
  287. package/templates/.agents/skills/run-task/SKILL.zh-CN.md +0 -29
  288. package/templates/.agents/skills/run-task/config/verify.en.json +0 -10
  289. package/templates/.agents/skills/run-task/config/verify.zh-CN.json +0 -10
  290. package/templates/.agents/skills/run-task/reference/host-validation.en.md +0 -24
  291. package/templates/.agents/skills/run-task/reference/host-validation.zh-CN.md +0 -24
  292. package/templates/.claude/agents/agent-infra-lifecycle-executor.en.md +0 -6
  293. package/templates/.claude/agents/agent-infra-lifecycle-executor.zh-CN.md +0 -6
  294. package/templates/.claude/agents/agent-infra-lifecycle-reviewer.en.md +0 -6
  295. package/templates/.claude/agents/agent-infra-lifecycle-reviewer.zh-CN.md +0 -6
  296. package/templates/.claude/commands/run-task.en.md +0 -8
  297. package/templates/.claude/commands/run-task.zh-CN.md +0 -8
  298. package/templates/.codex/agents/agent-infra-lifecycle-executor.en.toml +0 -3
  299. package/templates/.codex/agents/agent-infra-lifecycle-executor.zh-CN.toml +0 -3
  300. package/templates/.codex/agents/agent-infra-lifecycle-reviewer.en.toml +0 -3
  301. package/templates/.codex/agents/agent-infra-lifecycle-reviewer.zh-CN.toml +0 -3
  302. package/templates/.opencode/commands/run-task.en.md +0 -11
  303. package/templates/.opencode/commands/run-task.zh-CN.md +0 -11
@@ -11,7 +11,6 @@ const antigravityCliAdapter = defineAgentClientAdapter({
11
11
  commands: { level: 'integrated' },
12
12
  hooks: { level: 'compatible' },
13
13
  subagents: { level: 'unsupported' },
14
- orchestration: { level: 'unsupported' },
15
14
  sandbox: { level: 'integrated' },
16
15
  verification: { level: 'compatible' }
17
16
  },
@@ -20,10 +19,6 @@ const antigravityCliAdapter = defineAgentClientAdapter({
20
19
  command: '/model',
21
20
  guidance: 'Use the host model picker for the complete model and reasoning-effort catalog.'
22
21
  },
23
- delegationEvidence: {
24
- actualModel: 'unavailable',
25
- actualReasoningEffort: 'unavailable'
26
- },
27
22
  project: {
28
23
  ownedPathPrefixes: [],
29
24
  managed: [],
@@ -581,25 +581,6 @@ export function reconcileClaudeCredentials(home: string, options: ReconcileOptio
581
581
  };
582
582
  }
583
583
 
584
- export function syncClaudeCredentialsFromKeychain(home: string, project: string, options: ReconcileOptions = {}) {
585
- const result = reconcileClaudeCredentials(home, {
586
- ...options,
587
- singleProject: project
588
- });
589
- if (result.status !== 'OK' && result.status !== 'KEYCHAIN_WRITE_FAILED') {
590
- return {
591
- status: result.status,
592
- written: false
593
- };
594
- }
595
-
596
- return {
597
- status: result.status === 'KEYCHAIN_WRITE_FAILED' ? 'OK' : result.status,
598
- written: result.filesWritten.includes(project),
599
- expiresAt: result.expiresAt
600
- };
601
- }
602
-
603
584
  export function formatRemaining(expiresAt: unknown): string {
604
585
  if (typeof expiresAt !== 'number') {
605
586
  return 'unknown';
@@ -16,7 +16,6 @@ const claudeCodeAdapter = defineAgentClientAdapter({
16
16
  commands: { level: 'integrated' },
17
17
  hooks: { level: 'integrated' },
18
18
  subagents: { level: 'experimental' },
19
- orchestration: { level: 'experimental' },
20
19
  sandbox: { level: 'integrated' },
21
20
  verification: { level: 'compatible' }
22
21
  },
@@ -25,14 +24,6 @@ const claudeCodeAdapter = defineAgentClientAdapter({
25
24
  command: '/model',
26
25
  guidance: 'Use the host model picker for the complete model and reasoning-effort catalog.'
27
26
  },
28
- delegationEvidence: {
29
- actualModel: 'host-event',
30
- actualReasoningEffort: 'spawn-ack',
31
- spawnModeRequired: false,
32
- actualModelRequired: false,
33
- actualReasoningEffortRequired: false,
34
- fallbackReasonRequired: false
35
- },
36
27
  project: {
37
28
  ownedPathPrefixes: ['.claude/'],
38
29
  managed: ['.claude/commands/', '.claude/agents/', '.claude/rules/'],
@@ -4,44 +4,6 @@ import {
4
4
  codexBeforeContainerCreateHook,
5
5
  codexRecoveryChecks
6
6
  } from './codex-sandbox.ts';
7
- import { parseCodexLifecycleBinding } from './codex-lifecycle/binding.ts';
8
- import { isCodexDelegationReceiptEvidence, isCodexLifecycleActivationEvidence } from './codex-lifecycle/evidence.ts';
9
-
10
- function codexCarrierError(code: string): Error {
11
- const error = new Error(code);
12
- error.name = code;
13
- return error;
14
- }
15
-
16
- function codexStageToken(stage: string): string {
17
- const tokens: Readonly<Record<string, string>> = {
18
- analysis: 'a',
19
- plan: 'p',
20
- code: 'c',
21
- 'review-analysis': 'ra',
22
- 'review-plan': 'rp',
23
- 'review-code': 'rc',
24
- commit: 'm'
25
- };
26
- const token = tokens[stage];
27
- if (!token) throw codexCarrierError('CODEX_LIFECYCLE_SPAWN_IDENTITY_INVALID');
28
- return token;
29
- }
30
-
31
- function codexLaunchCarrier(
32
- adapterContext: string,
33
- identity: Readonly<{ stage: string; round: number; role: string }>
34
- ): Readonly<Record<string, string>> {
35
- if (!Number.isSafeInteger(identity.round) || identity.round < 1
36
- || !['executor', 'reviewer'].includes(identity.role)) {
37
- throw codexCarrierError('CODEX_LIFECYCLE_SPAWN_IDENTITY_INVALID');
38
- }
39
- const label = `${codexStageToken(identity.stage)}_${identity.role === 'reviewer' ? 'r' : 'e'}_r${identity.round}`;
40
- const taskName = `${label}${adapterContext}`;
41
- const parsed = parseCodexLifecycleBinding(taskName);
42
- if (!parsed) throw codexCarrierError('CODEX_LIFECYCLE_LAUNCH_CONTEXT_INVALID');
43
- return Object.freeze({ task_name: parsed.taskName });
44
- }
45
7
 
46
8
  const codexAdapter = defineAgentClientAdapter({
47
9
  id: 'codex',
@@ -53,7 +15,6 @@ const codexAdapter = defineAgentClientAdapter({
53
15
  commands: { level: 'integrated' },
54
16
  hooks: { level: 'integrated' },
55
17
  subagents: { level: 'experimental' },
56
- orchestration: { level: 'experimental' },
57
18
  sandbox: { level: 'integrated' },
58
19
  verification: { level: 'compatible' }
59
20
  },
@@ -62,23 +23,6 @@ const codexAdapter = defineAgentClientAdapter({
62
23
  command: '/model',
63
24
  guidance: 'Use the host model picker for the complete model and reasoning-effort catalog.'
64
25
  },
65
- delegationEvidence: {
66
- actualModel: 'app-server',
67
- actualReasoningEffort: 'app-server'
68
- },
69
- orchestrationAdapter: {
70
- validateActivationEvidence: isCodexLifecycleActivationEvidence,
71
- validateReceiptEvidence: isCodexDelegationReceiptEvidence,
72
- createLaunchCarrier: codexLaunchCarrier,
73
- prepareDelegation: async (...args) => {
74
- const { prepareCodexOrchestrationDelegation } = await import('./codex-orchestration.ts');
75
- return prepareCodexOrchestrationDelegation(...args);
76
- },
77
- recoverStarted: async (...args) => {
78
- const { recoverStartedLifecycleFromAdapter } = await import('./codex-lifecycle/recovery.ts');
79
- return recoverStartedLifecycleFromAdapter(...args);
80
- }
81
- },
82
26
  project: {
83
27
  ownedPathPrefixes: ['.codex/'],
84
28
  managed: ['.codex/hooks.json', '.codex/agents/'],
@@ -17,7 +17,6 @@ const opencodeAdapter = defineAgentClientAdapter({
17
17
  commands: { level: 'integrated' },
18
18
  hooks: { level: 'compatible' },
19
19
  subagents: { level: 'unsupported' },
20
- orchestration: { level: 'unsupported' },
21
20
  sandbox: { level: 'integrated' },
22
21
  verification: { level: 'compatible' }
23
22
  },
@@ -26,10 +25,6 @@ const opencodeAdapter = defineAgentClientAdapter({
26
25
  command: '/models',
27
26
  guidance: 'Use the host model picker for the complete model and reasoning-effort catalog.'
28
27
  },
29
- delegationEvidence: {
30
- actualModel: 'unavailable',
31
- actualReasoningEffort: 'unavailable'
32
- },
33
28
  project: {
34
29
  ownedPathPrefixes: ['.opencode/'],
35
30
  managed: ['.opencode/commands/'],
@@ -11,7 +11,6 @@ const traecliAdapter = defineAgentClientAdapter({
11
11
  commands: { level: 'integrated' },
12
12
  hooks: { level: 'compatible' },
13
13
  subagents: { level: 'experimental' },
14
- orchestration: { level: 'experimental' },
15
14
  sandbox: { level: 'integrated' },
16
15
  verification: { level: 'compatible' }
17
16
  },
@@ -20,10 +19,6 @@ const traecliAdapter = defineAgentClientAdapter({
20
19
  command: '/model',
21
20
  guidance: 'Use the host model picker for the complete model and reasoning-effort catalog.'
22
21
  },
23
- delegationEvidence: {
24
- actualModel: 'unavailable',
25
- actualReasoningEffort: 'unavailable'
26
- },
27
22
  project: {
28
23
  ownedPathPrefixes: ['.traecli/'],
29
24
  managed: ['.traecli/commands/'],
@@ -6,8 +6,7 @@ import type {
6
6
  AgentClientConfig,
7
7
  AgentClientId,
8
8
  AgentClientsConfig,
9
- AgentClientState,
10
- OrchestrationModelPolicy
9
+ AgentClientState
11
10
  } from './types.ts';
12
11
 
13
12
  type AgentClientConfigInput = Readonly<Record<string, unknown>>;
@@ -54,49 +53,12 @@ function fail(code: AgentClientDiagnosticCode, path: string): never {
54
53
  throw new AgentClientConfigError({ code, path });
55
54
  }
56
55
 
57
- function parseExactText(value: unknown, path: string): string {
58
- if (typeof value !== 'string' || value.length === 0 || value.trim() !== value) {
59
- fail('INVALID_AGENT_CLIENTS', path);
60
- }
61
- return value;
62
- }
63
-
64
- function parseOrchestrationPolicy(value: unknown, path: string): OrchestrationModelPolicy {
65
- if (!isRecord(value)) fail('INVALID_AGENT_CLIENTS', path);
66
- const keys = Object.keys(value);
67
- if (
68
- keys.length !== 2
69
- || !hasOwn(value, 'executor')
70
- || !hasOwn(value, 'reviewer')
71
- ) {
72
- fail('INVALID_AGENT_CLIENTS', path);
73
- }
74
- const parseRole = (candidate: unknown, rolePath: string) => {
75
- if (
76
- !isRecord(candidate)
77
- || Object.keys(candidate).length !== 2
78
- || !hasOwn(candidate, 'model')
79
- || !hasOwn(candidate, 'reasoningEffort')
80
- ) {
81
- fail('INVALID_AGENT_CLIENTS', rolePath);
82
- }
83
- return Object.freeze({
84
- model: parseExactText(candidate.model, `${rolePath}.model`),
85
- reasoningEffort: parseExactText(candidate.reasoningEffort, `${rolePath}.reasoningEffort`)
86
- });
87
- };
88
- const executor = parseRole(value.executor, `${path}.executor`);
89
- const reviewer = parseRole(value.reviewer, `${path}.reviewer`);
90
- return Object.freeze({ executor, reviewer });
91
- }
92
-
93
56
  function parseCanonical(value: unknown): AgentClientState {
94
57
  if (!Array.isArray(value)) fail('INVALID_AGENT_CLIENTS', 'agentClients');
95
58
 
96
59
  const entries = new Map<AgentClientId, Readonly<{
97
60
  enabled: boolean;
98
61
  installInSandbox: boolean;
99
- orchestration?: OrchestrationModelPolicy;
100
62
  }>>();
101
63
 
102
64
  for (const [index, candidate] of value.entries()) {
@@ -105,11 +67,10 @@ function parseCanonical(value: unknown): AgentClientState {
105
67
 
106
68
  const keys = Object.keys(candidate);
107
69
  if (
108
- (keys.length !== 3 && keys.length !== 4)
70
+ keys.length !== 3
109
71
  || !hasOwn(candidate, 'id')
110
72
  || !hasOwn(candidate, 'enabled')
111
73
  || !hasOwn(candidate, 'installInSandbox')
112
- || (keys.length === 4 && !hasOwn(candidate, 'orchestration'))
113
74
  ) {
114
75
  fail('INVALID_AGENT_CLIENTS', path);
115
76
  }
@@ -127,10 +88,7 @@ function parseCanonical(value: unknown): AgentClientState {
127
88
  }
128
89
  entries.set(candidate.id, {
129
90
  enabled: candidate.enabled,
130
- installInSandbox: candidate.installInSandbox,
131
- ...(hasOwn(candidate, 'orchestration')
132
- ? { orchestration: parseOrchestrationPolicy(candidate.orchestration, `${path}.orchestration`) }
133
- : {})
91
+ installInSandbox: candidate.installInSandbox
134
92
  });
135
93
  }
136
94
 
@@ -147,25 +105,11 @@ function serializeAgentClients(state: AgentClientState): AgentClientsConfig {
147
105
  return AGENT_CLIENT_IDS.map((id): AgentClientConfig => ({
148
106
  id,
149
107
  enabled: state[id].enabled,
150
- installInSandbox: state[id].installInSandbox,
151
- ...(state[id].orchestration
152
- ? { orchestration: structuredClone(state[id].orchestration) }
153
- : {})
108
+ installInSandbox: state[id].installInSandbox
154
109
  }));
155
110
  }
156
111
 
157
- function normalizeAgentClients(
158
- input: AgentClientConfigInput
159
- ): NormalizeAgentClientsResult {
160
- if (!hasOwn(input, 'agentClients')) fail('MISSING_AGENT_CLIENT', 'agentClients');
161
- const state = parseCanonical(input.agentClients);
162
- for (const [index, id] of AGENT_CLIENT_IDS.entries()) {
163
- const entry = Array.isArray(input.agentClients) ? input.agentClients[index] : undefined;
164
- if (!isRecord(entry) || entry.id !== id) {
165
- fail('INVALID_AGENT_CLIENTS', `agentClients[${index}].id`);
166
- }
167
- }
168
- if (hasOwn(input, 'tuis')) fail('INVALID_AGENT_CLIENTS', 'tuis');
112
+ function validateSandboxTools(input: AgentClientConfigInput): void {
169
113
  const sandbox = isRecord(input.sandbox) ? input.sandbox : undefined;
170
114
  if (sandbox && hasOwn(sandbox, 'customTools')) {
171
115
  fail('INVALID_AGENT_CLIENTS', 'sandbox.customTools');
@@ -180,6 +124,21 @@ function normalizeAgentClients(
180
124
  }
181
125
  }
182
126
  }
127
+ }
128
+
129
+ function normalizeAgentClients(
130
+ input: AgentClientConfigInput
131
+ ): NormalizeAgentClientsResult {
132
+ if (!hasOwn(input, 'agentClients')) fail('MISSING_AGENT_CLIENT', 'agentClients');
133
+ const state = parseCanonical(input.agentClients);
134
+ for (const [index, id] of AGENT_CLIENT_IDS.entries()) {
135
+ const entry = Array.isArray(input.agentClients) ? input.agentClients[index] : undefined;
136
+ if (!isRecord(entry) || entry.id !== id) {
137
+ fail('INVALID_AGENT_CLIENTS', `agentClients[${index}].id`);
138
+ }
139
+ }
140
+ if (hasOwn(input, 'tuis')) fail('INVALID_AGENT_CLIENTS', 'tuis');
141
+ validateSandboxTools(input);
183
142
  return {
184
143
  state,
185
144
  canonical: serializeAgentClients(state)
@@ -5,12 +5,7 @@ import type {
5
5
  AgentClientManifestEntry,
6
6
  AgentClientRegistry
7
7
  } from './adapter.ts';
8
- import type {
9
- AgentClientCapabilityId,
10
- AgentClientCapabilitySupport,
11
- AgentClientState,
12
- AgentClientSupportLevel
13
- } from './types.ts';
8
+ import type { AgentClientState } from './types.ts';
14
9
 
15
10
  function buildRegistry(): Readonly<{
16
11
  registry: AgentClientRegistry;
@@ -97,35 +92,10 @@ function listInstalledAgentClientAdapters(
97
92
  );
98
93
  }
99
94
 
100
- function getAgentClientCapability(
101
- id: unknown,
102
- capability: AgentClientCapabilityId
103
- ): AgentClientCapabilitySupport {
104
- return getAgentClientAdapter(id).capabilities[capability];
105
- }
106
-
107
95
  function getAgentClientModelSelection(id: unknown) {
108
96
  return getAgentClientAdapter(id).modelSelection;
109
97
  }
110
98
 
111
- function getAgentClientDelegationEvidence(id: unknown) {
112
- return getAgentClientAdapter(id).delegationEvidence;
113
- }
114
-
115
- function listEnabledAgentClientAdaptersByCapability(
116
- state: AgentClientState,
117
- capability: AgentClientCapabilityId,
118
- acceptedLevels: readonly AgentClientSupportLevel[]
119
- ): readonly AgentClientAdapter[] {
120
- const accepted = new Set(acceptedLevels);
121
- return Object.freeze(
122
- AGENT_CLIENT_ADAPTERS.filter((adapter) =>
123
- state[adapter.id].enabled
124
- && accepted.has(adapter.capabilities[capability].level)
125
- )
126
- );
127
- }
128
-
129
99
  function createAgentClientManifest(): readonly AgentClientManifestEntry[] {
130
100
  return Object.freeze(
131
101
  AGENT_CLIENT_ADAPTERS.map((adapter) => Object.freeze({
@@ -152,11 +122,8 @@ export {
152
122
  AGENT_CLIENT_REGISTRY,
153
123
  createAgentClientManifest,
154
124
  getAgentClientAdapter,
155
- getAgentClientCapability,
156
- getAgentClientDelegationEvidence,
157
125
  getAgentClientModelSelection,
158
126
  listAgentClientAdapters,
159
127
  listEnabledAgentClientAdapters,
160
- listEnabledAgentClientAdaptersByCapability,
161
128
  listInstalledAgentClientAdapters
162
129
  };
@@ -31,15 +31,6 @@ const AGENT_CLIENTS_SCHEMA = {
31
31
  installInSandbox: {
32
32
  type: 'boolean'
33
33
  },
34
- orchestration: {
35
- type: 'object',
36
- additionalProperties: false,
37
- required: ['executor', 'reviewer'],
38
- properties: {
39
- executor: { $ref: '#/definitions/orchestrationRolePolicy' },
40
- reviewer: { $ref: '#/definitions/orchestrationRolePolicy' }
41
- }
42
- }
43
34
  }
44
35
  }))
45
36
  },
@@ -66,15 +57,6 @@ const AGENT_CLIENTS_SCHEMA = {
66
57
  }
67
58
  },
68
59
  definitions: {
69
- orchestrationRolePolicy: {
70
- type: 'object',
71
- additionalProperties: false,
72
- required: ['model', 'reasoningEffort'],
73
- properties: {
74
- model: { type: 'string', minLength: 1 },
75
- reasoningEffort: { type: 'string', minLength: 1 }
76
- }
77
- },
78
60
  agentClientCapabilityId: {
79
61
  type: 'string',
80
62
  enum: [...AGENT_CLIENT_CAPABILITY_IDS]
@@ -5,8 +5,7 @@ export const AGENT_TOKEN_VALUES = ['claude', 'codex', 'antigravity', 'opencode',
5
5
  export type AgentToken = (typeof AGENT_TOKEN_VALUES)[number];
6
6
  export const KNOWN_AI_AGENTS: ReadonlySet<string> = new Set(AGENT_TOKEN_VALUES);
7
7
 
8
- // Long name -> short name mapping: `claude-code` reuses the existing
9
- // orchestration precedent, and `antigravity-cli` is the active client.
8
+ // Long name -> short name mapping for the activity-log agent field.
10
9
  export const AGENT_LONG_NAMES: Readonly<Record<string, string>> = {
11
10
  'claude-code': 'claude',
12
11
  'antigravity-cli': 'antigravity'
@@ -8,21 +8,10 @@ const AGENT_CLIENT_IDS = [
8
8
 
9
9
  type AgentClientId = (typeof AGENT_CLIENT_IDS)[number];
10
10
 
11
- type OrchestrationRolePolicy = Readonly<{
12
- model: string;
13
- reasoningEffort: string;
14
- }>;
15
-
16
- type OrchestrationModelPolicy = Readonly<{
17
- executor: OrchestrationRolePolicy;
18
- reviewer: OrchestrationRolePolicy;
19
- }>;
20
-
21
11
  type AgentClientConfig = Readonly<{
22
12
  id: AgentClientId;
23
13
  enabled: boolean;
24
14
  installInSandbox: boolean;
25
- orchestration?: OrchestrationModelPolicy;
26
15
  }>;
27
16
 
28
17
  type AgentClientsConfig = readonly AgentClientConfig[];
@@ -33,7 +22,6 @@ type AgentClientState = Readonly<
33
22
  Readonly<{
34
23
  enabled: boolean;
35
24
  installInSandbox: boolean;
36
- orchestration?: OrchestrationModelPolicy;
37
25
  }>
38
26
  >
39
27
  >;
@@ -44,7 +32,6 @@ const AGENT_CLIENT_CAPABILITY_IDS = [
44
32
  'commands',
45
33
  'hooks',
46
34
  'subagents',
47
- 'orchestration',
48
35
  'sandbox',
49
36
  'verification'
50
37
  ] as const;
@@ -81,8 +68,6 @@ export {
81
68
  };
82
69
  export type {
83
70
  AgentClientId,
84
- OrchestrationRolePolicy,
85
- OrchestrationModelPolicy,
86
71
  AgentClientConfig,
87
72
  AgentClientsConfig,
88
73
  AgentClientState,
package/lib/decide.ts CHANGED
@@ -71,6 +71,7 @@ export async function decide(args: string[], options: DecideOptions = {}): Promi
71
71
  };
72
72
  const result = await applyHumanDecision(request, writeOptions);
73
73
  if (result.error) throw new Error(result.error.message);
74
+ for (const warning of result.warnings ?? []) process.stderr.write(`Warning: ${warning.code}: ${warning.message}\n`);
74
75
  return 0;
75
76
  } catch (error) {
76
77
  const message = error instanceof Error ? error.message : String(error);
@@ -67,18 +67,8 @@ function assertGitWorktreeBinding(
67
67
  return worktree;
68
68
  }
69
69
 
70
- function assertGitRepositoryBinding(stateRoot: string, worktreeRoot: string): GitWorktreeIdentity {
71
- const state = resolveGitWorktreeIdentity(stateRoot);
72
- const worktree = resolveGitWorktreeIdentity(worktreeRoot);
73
- if (!sameFilesystemEntry(state.commonDir, worktree.commonDir)) {
74
- throw new Error('SANDBOX_CONTROL_WORKTREE_INVALID: state and worktree roots have different Git common directories');
75
- }
76
- return worktree;
77
- }
78
-
79
70
  export {
80
71
  assertGitWorktreeBinding,
81
- assertGitRepositoryBinding,
82
72
  normalizeCanonicalPath,
83
73
  resolveGitWorktreeIdentity,
84
74
  sameFilesystemEntry
@@ -7,11 +7,11 @@ import {
7
7
  } from '../agent-clients/config.ts';
8
8
  import { normalizeCustomToolInvocations } from '../agent-clients/custom-tool-invocations.ts';
9
9
  import { renderNextStepCommands } from '../agent-clients/next-steps.ts';
10
- import { getAgentClientAdapter, getAgentClientModelSelection } from '../agent-clients/registry.ts';
10
+ import { getAgentClientModelSelection } from '../agent-clients/registry.ts';
11
11
  import { isAgentClientId } from '../agent-clients/types.ts';
12
12
  import { ensureInternalHandlerRoute, internalHandlerRoute } from './cli-route-inventory.ts';
13
13
 
14
- const USAGE = 'Usage: agent-infra-internal agent-client <next-steps|model-selection|launch-carrier> [options]\n';
14
+ const USAGE = 'Usage: agent-infra-internal agent-client <next-steps|model-selection> [options]\n';
15
15
 
16
16
  type ParsedArgs = Readonly<{
17
17
  skillName: string;
@@ -20,14 +20,6 @@ type ParsedArgs = Readonly<{
20
20
  format: 'text' | 'json';
21
21
  }>;
22
22
 
23
- type LaunchCarrierArgs = Readonly<{
24
- client: string;
25
- adapterContext: string;
26
- stage: string;
27
- round: number;
28
- role: string;
29
- }>;
30
-
31
23
  function failure(code: string, message: string): void {
32
24
  process.stdout.write(`${JSON.stringify({
33
25
  status: 'failed',
@@ -92,63 +84,6 @@ function parseArgs(args: string[]): ParsedArgs | null {
92
84
  };
93
85
  }
94
86
 
95
- function parseLaunchCarrierArgs(args: string[]): LaunchCarrierArgs | null {
96
- const allowed = new Set(['--client', '--adapter-context', '--stage', '--round', '--role', '--format']);
97
- const values: Record<string, string> = {};
98
- const seen = new Set<string>();
99
- for (let index = 1; index < args.length; index += 1) {
100
- const flag = args[index]!;
101
- if (!allowed.has(flag) || seen.has(flag)) {
102
- failure('AGENT_CLIENT_PAYLOAD_INVALID', `invalid or duplicate option '${flag}'`);
103
- return null;
104
- }
105
- const value = args[++index];
106
- if (!value || value.startsWith('--')) {
107
- failure('AGENT_CLIENT_PAYLOAD_INVALID', `option '${flag}' requires a value`);
108
- return null;
109
- }
110
- seen.add(flag);
111
- values[flag] = value;
112
- }
113
- const round = Number(values['--round']);
114
- if (!isAgentClientId(values['--client']) || !values['--adapter-context'] || !values['--stage'] || !values['--role']
115
- || !Number.isSafeInteger(round) || round < 1 || (values['--format'] ?? 'json') !== 'json') {
116
- failure('AGENT_CLIENT_PAYLOAD_INVALID', 'launch-carrier requires client, adapter context, stage, positive round, role, and json format');
117
- return null;
118
- }
119
- return {
120
- client: values['--client']!,
121
- adapterContext: values['--adapter-context']!,
122
- stage: values['--stage']!,
123
- round,
124
- role: values['--role']!
125
- };
126
- }
127
-
128
- function launchCarrier(args: string[]): void {
129
- const parsed = parseLaunchCarrierArgs(args);
130
- if (!parsed) return;
131
- const createCarrier = getAgentClientAdapter(parsed.client).orchestrationAdapter?.createLaunchCarrier;
132
- if (!createCarrier) {
133
- process.stdout.write(`${JSON.stringify({
134
- status: 'failed', changed: false, client: parsed.client, carrier: null,
135
- error: { code: 'AGENT_CLIENT_LAUNCH_CARRIER_UNSUPPORTED', message: `Agent Client '${parsed.client}' does not support lifecycle launch carriers` }
136
- })}\n`);
137
- process.exitCode = 1;
138
- return;
139
- }
140
- try {
141
- const carrier = createCarrier(parsed.adapterContext, { stage: parsed.stage, round: parsed.round, role: parsed.role });
142
- process.stdout.write(`${JSON.stringify({ status: 'ready', changed: false, client: parsed.client, carrier, error: null })}\n`);
143
- } catch (error) {
144
- process.stdout.write(`${JSON.stringify({
145
- status: 'failed', changed: false, client: parsed.client, carrier: null,
146
- error: { code: error instanceof Error && error.name ? error.name : 'AGENT_CLIENT_LAUNCH_CARRIER_INVALID', message: error instanceof Error ? error.message : String(error) }
147
- })}\n`);
148
- process.exitCode = 1;
149
- }
150
- }
151
-
152
87
  function modelSelection(args: string[]): void {
153
88
  const values: Record<string, string> = {};
154
89
  const seen = new Set<string>();
@@ -245,9 +180,6 @@ function writeNextStepOutput(
245
180
 
246
181
  function agentClient(args: string[] = []): void {
247
182
  if (!ensureInternalHandlerRoute('agent-client', args)) return;
248
- if (internalHandlerRoute('agent-client', 'launch-carrier', args[0] ?? '')) {
249
- return launchCarrier(args);
250
- }
251
183
  if (internalHandlerRoute('agent-client', 'model-selection', args[0] ?? '')) {
252
184
  return modelSelection(args);
253
185
  }
@@ -36,8 +36,7 @@ export const INTERNAL_HANDLER_ROUTE_SELECTORS = Object.freeze({
36
36
  'task-create': ['input'],
37
37
  'task-qualification': ['proposal', 'confirm', 'supersede', 'revoke'],
38
38
  'sandbox-control': ['serve', 'execute', 'recover', 'client'],
39
- 'agent-client': ['next-steps', 'model-selection', 'launch-carrier'],
40
- 'codex-lifecycle': ['preflight', 'hook-event', 'resolve-start', 'resolve-stop', 'consume'],
39
+ 'agent-client': ['next-steps', 'model-selection'],
41
40
  'git-workflow': ['inspect', 'preview-tree', 'snapshot', 'compare-trees', 'commit', 'push-rebased'],
42
41
  'task-delivery': ['deliver'],
43
42
  'release-workflow': ['inspect', 'prepare', 'publish', 'post-prepare', 'post-publish'],
@@ -57,7 +56,6 @@ export const INTERNAL_HANDLER_ROUTE_SELECTORS = Object.freeze({
57
56
  'task-warning': ['list', 'add', 'set-status'],
58
57
  'task-activity': ['pr-review-inspect', 'pr-review-start', 'pr-review-complete', 'pr-review-terminate'],
59
58
  'task-artifact': ['inspect', 'init', 'preflight', 'finalize-local'],
60
- 'task-orchestration': ['status', 'progress'],
61
59
  'task-review': ['preflight', 'finalize-summary'],
62
60
  'task-event': ['event'],
63
61
  'task-lifecycle': ['intent'],
@@ -95,7 +93,6 @@ export function internalRouteSelector(command: string, args: readonly string[]):
95
93
  if (command === 'task-snapshot') return 'snapshot';
96
94
  if (command === 'task-validate') return optionValue(args, '--scope') ?? 'snapshot';
97
95
  if (command === 'task-short-id') return first(args) === 'list' && args.includes('--verify') ? 'list-verify' : first(args);
98
- if (command === 'task-orchestration') return args[1] === 'status' ? 'status' : args[1] ? 'progress' : '';
99
96
  if (command === 'task-review') return args[1] ?? '';
100
97
  if (command === 'task-artifact') return args[1] ?? '';
101
98
  if (command === 'platform-pr-review' && first(args) === 'publish') {