factory-factory 0.3.18 → 0.3.19

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 (188) hide show
  1. package/README.md +1 -0
  2. package/dist/client/assets/{arc-Bxdinun-.js → arc-DQhOC8k-.js} +1 -1
  3. package/dist/client/assets/{architectureDiagram-3BPJPVTR-D75ngTH0.js → architectureDiagram-3BPJPVTR-BnnC0MnW.js} +1 -1
  4. package/dist/client/assets/{blockDiagram-GPEHLZMM-b0hRXjTo.js → blockDiagram-GPEHLZMM-CNaYKejS.js} +1 -1
  5. package/dist/client/assets/{c4Diagram-AAUBKEIU-BP3yHaZ4.js → c4Diagram-AAUBKEIU-B6TiwlCJ.js} +1 -1
  6. package/dist/client/assets/channel-aiW5SBbk.js +1 -0
  7. package/dist/client/assets/{chunk-2J33WTMH-BSnzH03J.js → chunk-2J33WTMH-XXkb30dE.js} +1 -1
  8. package/dist/client/assets/{chunk-4BX2VUAB-D1getS3X.js → chunk-4BX2VUAB-78mYakPy.js} +1 -1
  9. package/dist/client/assets/{chunk-55IACEB6-Dr2CwskK.js → chunk-55IACEB6-D_0y5jOy.js} +1 -1
  10. package/dist/client/assets/{chunk-727SXJPM-C7_YUe-M.js → chunk-727SXJPM-BWqoGJOj.js} +1 -1
  11. package/dist/client/assets/{chunk-AQP2D5EJ-Cs7q0NsF.js → chunk-AQP2D5EJ-l9AUcgrx.js} +1 -1
  12. package/dist/client/assets/{chunk-FMBD7UC4-KFtquRvq.js → chunk-FMBD7UC4-B63Nwghi.js} +1 -1
  13. package/dist/client/assets/{chunk-ND2GUHAM-BuZ0_q1n.js → chunk-ND2GUHAM-DYoFXWFH.js} +1 -1
  14. package/dist/client/assets/{chunk-QZHKN3VN-CXq3kkUn.js → chunk-QZHKN3VN-faBOxK9Y.js} +1 -1
  15. package/dist/client/assets/classDiagram-4FO5ZUOK-DdRRgcVJ.js +1 -0
  16. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DdRRgcVJ.js +1 -0
  17. package/dist/client/assets/{cose-bilkent-S5V4N54A-B2PPRokq.js → cose-bilkent-S5V4N54A-s9MyXm2i.js} +1 -1
  18. package/dist/client/assets/{dagre-BM42HDAG-Bdgt43P0.js → dagre-BM42HDAG-DFzoOzIg.js} +1 -1
  19. package/dist/client/assets/{diagram-2AECGRRQ-l7renH-H.js → diagram-2AECGRRQ-BkiOxNc9.js} +1 -1
  20. package/dist/client/assets/{diagram-5GNKFQAL-I7lNTczj.js → diagram-5GNKFQAL-CqXCPCvK.js} +1 -1
  21. package/dist/client/assets/{diagram-KO2AKTUF-C8kPNrsA.js → diagram-KO2AKTUF-BIDL-rtL.js} +1 -1
  22. package/dist/client/assets/{diagram-LMA3HP47-pvteu9cM.js → diagram-LMA3HP47-C5Q4rNwM.js} +1 -1
  23. package/dist/client/assets/{diagram-OG6HWLK6-DpN6QlJ3.js → diagram-OG6HWLK6-NUBLwB2y.js} +1 -1
  24. package/dist/client/assets/{erDiagram-TEJ5UH35-Dcelk-6E.js → erDiagram-TEJ5UH35-DE7FkKUT.js} +1 -1
  25. package/dist/client/assets/{flowDiagram-I6XJVG4X-PluLGOsL.js → flowDiagram-I6XJVG4X-Kn-tG-yL.js} +1 -1
  26. package/dist/client/assets/{ganttDiagram-6RSMTGT7-B052JdQf.js → ganttDiagram-6RSMTGT7-By6WP-ZX.js} +1 -1
  27. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CCFDSwzA.js → gitGraphDiagram-PVQCEYII-nZ9iXa1J.js} +1 -1
  28. package/dist/client/assets/{index-DHNmCWEQ.js → index-Bcwk_kNL.js} +103 -103
  29. package/dist/client/assets/{infoDiagram-5YYISTIA-D8U6SFWo.js → infoDiagram-5YYISTIA-W-ABsfEh.js} +1 -1
  30. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-CgB-TF4r.js → ishikawaDiagram-YF4QCWOH-JxGcwHMc.js} +1 -1
  31. package/dist/client/assets/{journeyDiagram-JHISSGLW-CAGmqjlT.js → journeyDiagram-JHISSGLW-D_KdYlXr.js} +1 -1
  32. package/dist/client/assets/{kanban-definition-UN3LZRKU-BDuo7F2D.js → kanban-definition-UN3LZRKU-D-UVbQXc.js} +1 -1
  33. package/dist/client/assets/{linear-Dz4kMSHb.js → linear-Cj1wlnWl.js} +1 -1
  34. package/dist/client/assets/{mindmap-definition-RKZ34NQL-Db2Ukjm6.js → mindmap-definition-RKZ34NQL-DwGZS8do.js} +1 -1
  35. package/dist/client/assets/{mobile-baseline-BuwX04Ww.js → mobile-baseline-BGE4NQIr.js} +1 -1
  36. package/dist/client/assets/{pieDiagram-4H26LBE5-D2-5sOl5.js → pieDiagram-4H26LBE5-CY9En855.js} +1 -1
  37. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CJlGrwhK.js → quadrantDiagram-W4KKPZXB-DOyyttJG.js} +1 -1
  38. package/dist/client/assets/{requirementDiagram-4Y6WPE33-D4h5kgWL.js → requirementDiagram-4Y6WPE33-B4JqooNB.js} +1 -1
  39. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-dWom-dYP.js → sankeyDiagram-5OEKKPKP-BB77NiWq.js} +1 -1
  40. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-C5_GmsPA.js → sequenceDiagram-3UESZ5HK-BeL59Hty.js} +1 -1
  41. package/dist/client/assets/{stateDiagram-AJRCARHV-CUjApIoO.js → stateDiagram-AJRCARHV-r1MOX3Bu.js} +1 -1
  42. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-Dd555Ct_.js +1 -0
  43. package/dist/client/assets/{terminal-instance-BBnsG1mL.js → terminal-instance-BjuTwvmO.js} +1 -1
  44. package/dist/client/assets/{timeline-definition-PNZ67QCA-BF3tbgdG.js → timeline-definition-PNZ67QCA-D01xTiJg.js} +1 -1
  45. package/dist/client/assets/{vennDiagram-CIIHVFJN-Q4ZHYJTv.js → vennDiagram-CIIHVFJN-Kc3pSNeO.js} +1 -1
  46. package/dist/client/assets/{wardley-L42UT6IY-X4BiwCUd.js → wardley-L42UT6IY-Bf_y6FVI.js} +1 -1
  47. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-CjJKT6Dj.js → wardleyDiagram-YWT4CUSO-7PwdKD27.js} +1 -1
  48. package/dist/client/assets/{xychartDiagram-2RQKCTM6-Dl6wiodH.js → xychartDiagram-2RQKCTM6-CAKTkp2-.js} +1 -1
  49. package/dist/client/index.html +1 -1
  50. package/dist/prisma/generated/internal/class.js +4 -4
  51. package/dist/prisma/generated/internal/class.js.map +1 -1
  52. package/dist/prisma/generated/internal/prismaNamespace.d.ts +1 -0
  53. package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
  54. package/dist/prisma/generated/internal/prismaNamespace.js +1 -0
  55. package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
  56. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +1 -0
  57. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
  58. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +1 -0
  59. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  60. package/dist/prisma/generated/models/PeriodicTask.d.ts +72 -1
  61. package/dist/prisma/generated/models/PeriodicTask.d.ts.map +1 -1
  62. package/dist/src/backend/interceptors/pr-detection.interceptor.d.ts.map +1 -1
  63. package/dist/src/backend/interceptors/pr-detection.interceptor.js +10 -7
  64. package/dist/src/backend/interceptors/pr-detection.interceptor.js.map +1 -1
  65. package/dist/src/backend/interceptors/pr-detection.interceptor.test.js +88 -0
  66. package/dist/src/backend/interceptors/pr-detection.interceptor.test.js.map +1 -1
  67. package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts.map +1 -1
  68. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js +13 -1
  69. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
  70. package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js +133 -5
  71. package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js.map +1 -1
  72. package/dist/src/backend/orchestration/workspace-init-issue-prompts.d.ts +6 -0
  73. package/dist/src/backend/orchestration/workspace-init-issue-prompts.d.ts.map +1 -0
  74. package/dist/src/backend/orchestration/workspace-init-issue-prompts.js +262 -0
  75. package/dist/src/backend/orchestration/workspace-init-issue-prompts.js.map +1 -0
  76. package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
  77. package/dist/src/backend/orchestration/workspace-init.orchestrator.js +5 -408
  78. package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
  79. package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.d.ts +16 -0
  80. package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.d.ts.map +1 -0
  81. package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.js +45 -0
  82. package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.js.map +1 -0
  83. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts.map +1 -1
  84. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js +3 -40
  85. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js.map +1 -1
  86. package/dist/src/backend/services/check-single-writer.test.js +21 -0
  87. package/dist/src/backend/services/check-single-writer.test.js.map +1 -1
  88. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts +2 -2
  89. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts.map +1 -1
  90. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js +115 -50
  91. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js.map +1 -1
  92. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.d.ts +2 -0
  93. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.d.ts.map +1 -0
  94. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js +150 -0
  95. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js.map +1 -0
  96. package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts +5 -1
  97. package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts.map +1 -1
  98. package/dist/src/backend/services/periodic-task/service/periodic-task.service.js +20 -4
  99. package/dist/src/backend/services/periodic-task/service/periodic-task.service.js.map +1 -1
  100. package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.d.ts +2 -0
  101. package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.d.ts.map +1 -0
  102. package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.js +144 -0
  103. package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.js.map +1 -0
  104. package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.d.ts +64 -0
  105. package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.d.ts.map +1 -0
  106. package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.js +76 -0
  107. package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.js.map +1 -0
  108. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.d.ts +9 -0
  109. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.d.ts.map +1 -0
  110. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.js +36 -0
  111. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.js.map +1 -0
  112. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.d.ts +2 -0
  113. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.d.ts.map +1 -0
  114. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.js +25 -0
  115. package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.js.map +1 -0
  116. package/dist/src/backend/services/ratchet/service/ratchet.service.d.ts +42 -9
  117. package/dist/src/backend/services/ratchet/service/ratchet.service.d.ts.map +1 -1
  118. package/dist/src/backend/services/ratchet/service/ratchet.service.js +38 -105
  119. package/dist/src/backend/services/ratchet/service/ratchet.service.js.map +1 -1
  120. package/dist/src/backend/services/ratchet/service/ratchet.service.test.js +43 -0
  121. package/dist/src/backend/services/ratchet/service/ratchet.service.test.js.map +1 -1
  122. package/dist/src/backend/services/ratchet/service/reconciliation.service.d.ts +3 -2
  123. package/dist/src/backend/services/ratchet/service/reconciliation.service.d.ts.map +1 -1
  124. package/dist/src/backend/services/ratchet/service/reconciliation.service.js +43 -18
  125. package/dist/src/backend/services/ratchet/service/reconciliation.service.js.map +1 -1
  126. package/dist/src/backend/services/ratchet/service/reconciliation.service.test.js +50 -16
  127. package/dist/src/backend/services/ratchet/service/reconciliation.service.test.js.map +1 -1
  128. package/dist/src/backend/services/run-script/service/run-script-process-utils.d.ts +19 -0
  129. package/dist/src/backend/services/run-script/service/run-script-process-utils.d.ts.map +1 -0
  130. package/dist/src/backend/services/run-script/service/run-script-process-utils.js +105 -0
  131. package/dist/src/backend/services/run-script/service/run-script-process-utils.js.map +1 -0
  132. package/dist/src/backend/services/run-script/service/run-script.service.d.ts +1 -2
  133. package/dist/src/backend/services/run-script/service/run-script.service.d.ts.map +1 -1
  134. package/dist/src/backend/services/run-script/service/run-script.service.js +26 -131
  135. package/dist/src/backend/services/run-script/service/run-script.service.js.map +1 -1
  136. package/dist/src/backend/services/run-script/service/run-script.service.test.js +2 -4
  137. package/dist/src/backend/services/run-script/service/run-script.service.test.js.map +1 -1
  138. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts.map +1 -1
  139. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js +1 -147
  140. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js.map +1 -1
  141. package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.d.ts +16 -0
  142. package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.d.ts.map +1 -0
  143. package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.js +153 -0
  144. package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.js.map +1 -0
  145. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.d.ts +10 -0
  146. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.d.ts.map +1 -0
  147. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.js +162 -0
  148. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.js.map +1 -0
  149. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts +0 -7
  150. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts.map +1 -1
  151. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js +19 -338
  152. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js.map +1 -1
  153. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.d.ts +23 -0
  154. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.d.ts.map +1 -0
  155. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.js +191 -0
  156. package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.js.map +1 -0
  157. package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.d.ts +19 -0
  158. package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.d.ts.map +1 -0
  159. package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.js +199 -0
  160. package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.js.map +1 -0
  161. package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.d.ts +5 -0
  162. package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.d.ts.map +1 -0
  163. package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.js +37 -0
  164. package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.js.map +1 -0
  165. package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.d.ts +3 -0
  166. package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.d.ts.map +1 -0
  167. package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.js +12 -0
  168. package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.js.map +1 -0
  169. package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts +1 -13
  170. package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts.map +1 -1
  171. package/dist/src/backend/services/session/service/lifecycle/session.config.service.js +12 -210
  172. package/dist/src/backend/services/session/service/lifecycle/session.config.service.js.map +1 -1
  173. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts +0 -1
  174. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts.map +1 -1
  175. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js +4 -45
  176. package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js.map +1 -1
  177. package/dist/src/backend/trpc/index.d.ts +5 -0
  178. package/dist/src/backend/trpc/index.d.ts.map +1 -1
  179. package/dist/src/backend/trpc/periodic-task.trpc.d.ts +5 -0
  180. package/dist/src/backend/trpc/periodic-task.trpc.d.ts.map +1 -1
  181. package/dist/tsconfig.backend.tsbuildinfo +1 -1
  182. package/package.json +3 -1
  183. package/prisma/migrations/20260520120000_add_periodic_task_scheduled_day_of_month/migration.sql +10 -0
  184. package/prisma/schema.prisma +1 -0
  185. package/dist/client/assets/channel-B100hIJ8.js +0 -1
  186. package/dist/client/assets/classDiagram-4FO5ZUOK-DK3mo2gW.js +0 -1
  187. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DK3mo2gW.js +0 -1
  188. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DxhGA2OY.js +0 -1
@@ -1,178 +1,19 @@
1
1
  import { Readable, Writable } from 'node:stream';
2
2
  import { AgentSideConnection, ndJsonStream, PROTOCOL_VERSION, RequestError, } from '@agentclientprotocol/sdk';
3
- import { asString, dedupeStrings, extractLocations, isRecord, resolveToolCallId, } from './acp-adapter-utils.js';
3
+ import { asString, extractLocations, isRecord, resolveToolCallId } from './acp-adapter-utils.js';
4
+ import { extractReasoningText, parseTextFromPromptBlock, toCodexMcpConfigMap, } from './codex-adapter-parsing.js';
4
5
  import { CodexRequestError, CodexRpcClient } from './codex-rpc-client.js';
5
6
  import { turnStartResponseSchema } from './codex-zod.js';
6
7
  import { resolveCommandDisplay } from './command-metadata.js';
8
+ import { hasPendingPlanApprovals, holdTurnUntilPlanApprovalResolves, maybeRequestPlanApproval, shouldHoldTurnForPlanApproval, } from './plan-approval-handler.js';
7
9
  import { handleCodexServerPermissionRequest } from './protocol-permission-handler.js';
8
10
  import { attachCloseWatcherWithRetry } from './retry-logic.js';
9
- import { buildConfigOptions, createSandboxPolicyFromMode, getCollaborationModeValues, getExecutionPresets, isKnownModel, isReasoningEffortSupportedForModel, resolveCollaborationModeLabel, resolveDefaultCollaborationMode, resolveDefaultModel, resolveReasoningEffortForModel, resolveSandboxPolicy, resolveSessionModel, resolveTurnCollaborationMode, } from './session-config-resolver.js';
11
+ import { buildConfigOptions, createSandboxPolicyFromMode, getCollaborationModeValues, getExecutionPresets, isKnownModel, isReasoningEffortSupportedForModel, resolveDefaultCollaborationMode, resolveDefaultModel, resolveReasoningEffortForModel, resolveSandboxPolicy, resolveSessionModel, resolveTurnCollaborationMode, } from './session-config-resolver.js';
10
12
  import { loadCollaborationModes, loadConfigRequirements, loadModelCatalog, negotiateNewSession, negotiateSessionResume, } from './session-negotiation.js';
11
13
  import { CodexAdapterSessionStateContainer } from './session-state-container.js';
12
14
  import { ShapeDriftReporter } from './shape-drift-reporter.js';
13
15
  import { CodexStreamEventHandler } from './stream-event-handler.js';
14
16
  const PENDING_TURN_ID = '__pending_turn__';
15
- function isPlanLikeMode(mode) {
16
- return /plan/i.test(mode);
17
- }
18
- const PLAN_EXIT_MODE_PREFERENCE = ['default', 'code', 'acceptEdits', 'ask'];
19
- const PLAN_TEXT_MAX_DEPTH = 8;
20
- const PLAN_TEXT_PREFERRED_KEYS = [
21
- 'plan',
22
- 'text',
23
- 'content',
24
- 'markdown',
25
- 'value',
26
- 'message',
27
- ];
28
- const REASONING_TEXT_MAX_DEPTH = 8;
29
- const REASONING_TEXT_PREFERRED_KEYS = [
30
- 'summary',
31
- 'summaryText',
32
- 'text',
33
- 'delta',
34
- 'message',
35
- 'content',
36
- 'reasoning',
37
- ];
38
- function extractFirstPlanText(values, depth) {
39
- for (const entry of values) {
40
- const extracted = extractPlanTextLocal(entry, depth + 1);
41
- if (extracted) {
42
- return extracted;
43
- }
44
- }
45
- return null;
46
- }
47
- function extractPlanTextFromRecord(value, depth) {
48
- const preferred = extractFirstPlanText(PLAN_TEXT_PREFERRED_KEYS.map((key) => value[key]), depth);
49
- if (preferred) {
50
- return preferred;
51
- }
52
- return extractFirstPlanText(Object.values(value), depth);
53
- }
54
- function extractPlanTextLocal(value, depth = 0) {
55
- if (depth > PLAN_TEXT_MAX_DEPTH) {
56
- return null;
57
- }
58
- if (typeof value === 'string') {
59
- const trimmed = value.trim();
60
- return trimmed.length > 0 ? value : null;
61
- }
62
- if (Array.isArray(value)) {
63
- return extractFirstPlanText(value, depth);
64
- }
65
- if (!isRecord(value)) {
66
- return null;
67
- }
68
- return extractPlanTextFromRecord(value, depth);
69
- }
70
- function collectReasoningText(values, value, depth = 0) {
71
- if (depth > REASONING_TEXT_MAX_DEPTH) {
72
- return;
73
- }
74
- if (typeof value === 'string') {
75
- if (value.trim().length > 0) {
76
- values.push(value);
77
- }
78
- return;
79
- }
80
- if (Array.isArray(value)) {
81
- for (const entry of value) {
82
- collectReasoningText(values, entry, depth + 1);
83
- }
84
- return;
85
- }
86
- if (!isRecord(value)) {
87
- return;
88
- }
89
- for (const key of REASONING_TEXT_PREFERRED_KEYS) {
90
- collectReasoningText(values, value[key], depth + 1);
91
- }
92
- }
93
- function extractReasoningTextLocal(value) {
94
- const collected = [];
95
- collectReasoningText(collected, value);
96
- if (collected.length === 0) {
97
- return null;
98
- }
99
- return dedupeStrings(collected).join('\n\n');
100
- }
101
- function toMcpEnvRecord(envVars) {
102
- const env = {};
103
- for (const entry of envVars) {
104
- env[entry.name] = entry.value;
105
- }
106
- return env;
107
- }
108
- function toMcpHeadersRecord(headers) {
109
- const result = {};
110
- for (const header of headers) {
111
- result[header.name] = header.value;
112
- }
113
- return result;
114
- }
115
- function sanitizeMcpServerName(name, index) {
116
- const trimmed = name.trim();
117
- return trimmed.length > 0 ? trimmed : `mcp_server_${index + 1}`;
118
- }
119
- function toCodexMcpServerConfig(server) {
120
- if ('command' in server) {
121
- const env = toMcpEnvRecord(server.env);
122
- return {
123
- enabled: true,
124
- command: server.command,
125
- args: [...server.args],
126
- ...(Object.keys(env).length > 0 ? { env } : {}),
127
- };
128
- }
129
- const httpHeaders = toMcpHeadersRecord(server.headers);
130
- return {
131
- enabled: true,
132
- url: server.url,
133
- ...(Object.keys(httpHeaders).length > 0 ? { http_headers: httpHeaders } : {}),
134
- ...(server.type === 'sse' ? { transport: 'sse' } : {}),
135
- };
136
- }
137
- function toCodexMcpConfigMap(mcpServers) {
138
- const mcpServersByName = {};
139
- const usedNames = new Set();
140
- for (const [index, server] of mcpServers.entries()) {
141
- const baseName = sanitizeMcpServerName(server.name, index);
142
- let nextName = baseName;
143
- let suffix = 2;
144
- while (usedNames.has(nextName)) {
145
- nextName = `${baseName}_${suffix}`;
146
- suffix += 1;
147
- }
148
- usedNames.add(nextName);
149
- mcpServersByName[nextName] = toCodexMcpServerConfig(server);
150
- }
151
- return mcpServersByName;
152
- }
153
- function parseTextFromPromptBlock(block) {
154
- if (block.type === 'text') {
155
- return block.text;
156
- }
157
- if (block.type === 'resource_link') {
158
- return `[ACP_RESOURCE_LINK uri="${block.uri}" name="${block.name}"]\n[/ACP_RESOURCE_LINK]`;
159
- }
160
- if (block.type === 'resource') {
161
- const resource = block.resource;
162
- const mime = resource.mimeType ?? 'unknown';
163
- const payload = 'text' in resource && typeof resource.text === 'string'
164
- ? resource.text
165
- : 'blob' in resource && typeof resource.blob === 'string'
166
- ? resource.blob
167
- : JSON.stringify(resource);
168
- return `[ACP_RESOURCE uri="${resource.uri}" mime="${mime}"]\n${payload}\n[/ACP_RESOURCE]`;
169
- }
170
- if (block.type === 'image') {
171
- const mime = block.mimeType ?? 'application/octet-stream';
172
- return `[ACP_IMAGE mime="${mime}" bytes=${block.data.length}]`;
173
- }
174
- return JSON.stringify(block);
175
- }
176
17
  export class CodexAppServerAcpAdapter {
177
18
  connection;
178
19
  codex;
@@ -661,7 +502,7 @@ export class CodexAppServerAcpAdapter {
661
502
  await this.streamEventHandler.handleCodexNotification({ method, params });
662
503
  }
663
504
  async emitReasoningThoughtChunkFromItem(sessionId, item) {
664
- const text = extractReasoningTextLocal(item);
505
+ const text = extractReasoningText(item);
665
506
  if (!text) {
666
507
  return;
667
508
  }
@@ -671,187 +512,27 @@ export class CodexAppServerAcpAdapter {
671
512
  });
672
513
  }
673
514
  shouldHoldTurnForPlanApproval(session, item, turnId) {
674
- return (item.type === 'plan' &&
675
- isPlanLikeMode(session.defaults.collaborationMode) &&
676
- !session.planApprovalRequestedByTurnId.has(turnId) &&
677
- this.extractPlanApprovalText(session, item) !== null);
678
- }
679
- buildPlanApprovalInput(planText, sourceItemId) {
680
- return {
681
- type: 'ExitPlanMode',
682
- plan: { type: 'text', text: planText },
683
- reason: 'Plan proposed. Approve to exit plan mode and continue implementation.',
684
- source: 'codex_plan_completion',
685
- sourceItemId,
686
- };
687
- }
688
- extractPlanApprovalText(session, item) {
689
- const bufferedText = session.planTextByItemId.get(item.id);
690
- if (bufferedText && bufferedText.trim().length > 0) {
691
- return bufferedText;
692
- }
693
- const fromPlanField = extractPlanTextLocal(item.plan);
694
- if (fromPlanField && fromPlanField.trim().length > 0) {
695
- return fromPlanField;
696
- }
697
- const fromTextField = extractPlanTextLocal(item.text);
698
- if (fromTextField && fromTextField.trim().length > 0) {
699
- return fromTextField;
700
- }
701
- return null;
702
- }
703
- getPlanExitModePriority(modeId) {
704
- const normalized = modeId.toLowerCase();
705
- const index = PLAN_EXIT_MODE_PREFERENCE.findIndex((preferred) => preferred.toLowerCase() === normalized);
706
- return index >= 0 ? index : PLAN_EXIT_MODE_PREFERENCE.length;
707
- }
708
- comparePlanExitModePreference(left, right) {
709
- const priorityDiff = this.getPlanExitModePriority(left) - this.getPlanExitModePriority(right);
710
- if (priorityDiff !== 0) {
711
- return priorityDiff;
712
- }
713
- return left.localeCompare(right);
714
- }
715
- resolveCollaborationModeLabel(modeId) {
716
- return resolveCollaborationModeLabel(this.collaborationModes, modeId);
717
- }
718
- buildPlanApprovalOptions(session) {
719
- const currentMode = session.defaults.collaborationMode;
720
- const availableModes = this.getCollaborationModeValues(currentMode);
721
- const nonPlanModes = availableModes
722
- .filter((modeId) => !isPlanLikeMode(modeId))
723
- .sort((left, right) => this.comparePlanExitModePreference(left, right));
724
- const approvableModeIds = new Set(nonPlanModes);
725
- const options = nonPlanModes.map((modeId) => ({
726
- optionId: modeId,
727
- name: `Approve and switch to ${this.resolveCollaborationModeLabel(modeId)}`,
728
- kind: 'allow_once',
729
- }));
730
- options.push({
731
- optionId: currentMode,
732
- name: 'Keep planning',
733
- kind: 'reject_once',
734
- });
735
- return { options, approvableModeIds };
515
+ return shouldHoldTurnForPlanApproval(session, item, turnId);
736
516
  }
737
517
  holdTurnUntilPlanApprovalResolves(session, turnId) {
738
- if (this.hasPendingPlanApprovals(session, turnId)) {
739
- return;
740
- }
741
- session.pendingPlanApprovalsByTurnId.set(turnId, 1);
518
+ holdTurnUntilPlanApprovalResolves(session, turnId);
742
519
  }
743
520
  hasPendingPlanApprovals(session, turnId) {
744
- return (session.pendingPlanApprovalsByTurnId.get(turnId) ?? 0) > 0;
745
- }
746
- async releaseTurnHoldForPlanApproval(session, turnId) {
747
- const pendingCount = session.pendingPlanApprovalsByTurnId.get(turnId) ?? 0;
748
- if (pendingCount <= 1) {
749
- session.pendingPlanApprovalsByTurnId.delete(turnId);
750
- }
751
- else {
752
- session.pendingPlanApprovalsByTurnId.set(turnId, pendingCount - 1);
753
- }
754
- if (this.hasPendingPlanApprovals(session, turnId)) {
755
- return;
756
- }
757
- if (!session.activeTurn || session.activeTurn.settled || session.activeTurn.turnId !== turnId) {
758
- return;
759
- }
760
- const deferredCompletion = session.pendingTurnCompletionsByTurnId.get(turnId);
761
- if (!deferredCompletion) {
762
- return;
763
- }
764
- session.pendingTurnCompletionsByTurnId.delete(turnId);
765
- if (deferredCompletion.errorMessage) {
766
- await this.emitTurnFailureMessage(session.sessionId, deferredCompletion.errorMessage);
767
- }
768
- this.settleTurn(session, deferredCompletion.stopReason);
521
+ return hasPendingPlanApprovals(session, turnId);
769
522
  }
770
523
  async maybeRequestPlanApproval(session, item, turnId, completedPlanToolCall) {
771
- if (item.type !== 'plan') {
772
- return;
773
- }
774
- if (!isPlanLikeMode(session.defaults.collaborationMode)) {
775
- return;
776
- }
777
- if (session.planApprovalRequestedByTurnId.has(turnId)) {
778
- return;
779
- }
780
- const planText = this.extractPlanApprovalText(session, item);
781
- if (!planText) {
782
- return;
783
- }
784
- session.planApprovalRequestedByTurnId.add(turnId);
785
- this.holdTurnUntilPlanApprovalResolves(session, turnId);
786
- const approvalToolCallId = `${completedPlanToolCall.toolCallId}:exit-plan`;
787
- const approvalInput = this.buildPlanApprovalInput(planText, item.id);
788
- await this.emitSessionUpdate(session.sessionId, {
789
- sessionUpdate: 'tool_call',
790
- toolCallId: approvalToolCallId,
791
- title: 'ExitPlanMode',
792
- kind: 'switch_mode',
793
- status: 'pending',
794
- rawInput: approvalInput,
524
+ await maybeRequestPlanApproval({
525
+ session,
526
+ item,
527
+ turnId,
528
+ completedPlanToolCall,
529
+ connection: this.connection,
530
+ collaborationModes: this.collaborationModes,
531
+ buildConfigOptions: (targetSession) => this.buildConfigOptions(targetSession),
532
+ emitSessionUpdate: (sessionId, update) => this.emitSessionUpdate(sessionId, update),
533
+ emitTurnFailureMessage: (sessionId, errorMessage) => this.emitTurnFailureMessage(sessionId, errorMessage),
534
+ settleTurn: (targetSession, stopReason) => this.settleTurn(targetSession, stopReason),
795
535
  });
796
- try {
797
- const { options: planApprovalOptions, approvableModeIds } = this.buildPlanApprovalOptions(session);
798
- if (approvableModeIds.size === 0) {
799
- await this.emitSessionUpdate(session.sessionId, {
800
- sessionUpdate: 'tool_call_update',
801
- toolCallId: approvalToolCallId,
802
- kind: 'switch_mode',
803
- title: 'ExitPlanMode',
804
- status: 'failed',
805
- rawOutput: 'Plan proposed, but no non-plan collaboration mode is available.',
806
- });
807
- return;
808
- }
809
- const permissionResult = await this.connection.requestPermission({
810
- sessionId: session.sessionId,
811
- toolCall: {
812
- toolCallId: approvalToolCallId,
813
- title: 'ExitPlanMode',
814
- kind: 'switch_mode',
815
- status: 'pending',
816
- rawInput: approvalInput,
817
- },
818
- options: planApprovalOptions,
819
- });
820
- const selectedMode = permissionResult.outcome.outcome === 'selected' &&
821
- approvableModeIds.has(permissionResult.outcome.optionId)
822
- ? permissionResult.outcome.optionId
823
- : null;
824
- const approved = selectedMode !== null;
825
- if (selectedMode && session.defaults.collaborationMode !== selectedMode) {
826
- session.defaults.collaborationMode = selectedMode;
827
- await this.emitSessionUpdate(session.sessionId, {
828
- sessionUpdate: 'config_option_update',
829
- configOptions: this.buildConfigOptions(session),
830
- });
831
- }
832
- await this.emitSessionUpdate(session.sessionId, {
833
- sessionUpdate: 'tool_call_update',
834
- toolCallId: approvalToolCallId,
835
- kind: 'switch_mode',
836
- title: 'ExitPlanMode',
837
- status: approved ? 'completed' : 'failed',
838
- rawOutput: approved ? 'Plan approved' : 'Plan approval rejected',
839
- });
840
- }
841
- catch (error) {
842
- const message = error instanceof Error ? error.message : String(error);
843
- await this.emitSessionUpdate(session.sessionId, {
844
- sessionUpdate: 'tool_call_update',
845
- toolCallId: approvalToolCallId,
846
- kind: 'switch_mode',
847
- title: 'ExitPlanMode',
848
- status: 'failed',
849
- rawOutput: `Plan approval failed: ${message}`,
850
- });
851
- }
852
- finally {
853
- await this.releaseTurnHoldForPlanApproval(session, turnId);
854
- }
855
536
  }
856
537
  buildToolCallState(session, item, _turnId) {
857
538
  const kindByType = {
@@ -1 +1 @@
1
- {"version":3,"file":"codex-app-server-acp-adapter.js","sourceRoot":"","sources":["../../../../../../../../src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-app-server-acp-adapter.js","sourceRoot":"","sources":["../../../../../../../../src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { AgentSideConnection, SessionConfigOption, SessionUpdate, StopReason } from '@agentclientprotocol/sdk';
2
+ import type { AdapterSession, CollaborationModeEntry, ToolCallState } from './adapter-state.js';
3
+ type PlanItem = {
4
+ type: string;
5
+ id: string;
6
+ } & Record<string, unknown>;
7
+ export declare function shouldHoldTurnForPlanApproval(session: AdapterSession, item: PlanItem, turnId: string): boolean;
8
+ export declare function holdTurnUntilPlanApprovalResolves(session: AdapterSession, turnId: string): void;
9
+ export declare function hasPendingPlanApprovals(session: AdapterSession, turnId: string): boolean;
10
+ export declare function maybeRequestPlanApproval(params: {
11
+ session: AdapterSession;
12
+ item: PlanItem;
13
+ turnId: string;
14
+ completedPlanToolCall: ToolCallState;
15
+ connection: AgentSideConnection;
16
+ collaborationModes: CollaborationModeEntry[];
17
+ buildConfigOptions: (session: AdapterSession) => SessionConfigOption[];
18
+ emitSessionUpdate: (sessionId: string, update: SessionUpdate) => Promise<void>;
19
+ emitTurnFailureMessage: (sessionId: string, errorMessage: string) => Promise<void>;
20
+ settleTurn: (session: AdapterSession, stopReason: StopReason) => void;
21
+ }): Promise<void>;
22
+ export {};
23
+ //# sourceMappingURL=plan-approval-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-approval-handler.d.ts","sourceRoot":"","sources":["../../../../../../../../src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAS7F,KAAK,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAiFvE,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAOT;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAK/F;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAExF;AAoCD,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,aAAa,CAAC;IACrC,UAAU,EAAE,mBAAmB,CAAC;IAChC,kBAAkB,EAAE,sBAAsB,EAAE,CAAC;IAC7C,kBAAkB,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,mBAAmB,EAAE,CAAC;IACvE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,sBAAsB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnF,UAAU,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;CACvE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgHhB"}