factory-factory 0.3.18 → 0.3.20
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/README.md +1 -0
- package/dist/client/assets/{arc-Bxdinun-.js → arc-BO0sk6BM.js} +1 -1
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-D75ngTH0.js → architectureDiagram-3BPJPVTR-BiwrJn01.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-b0hRXjTo.js → blockDiagram-GPEHLZMM-nfqVYcG7.js} +1 -1
- package/dist/client/assets/{c4Diagram-AAUBKEIU-BP3yHaZ4.js → c4Diagram-AAUBKEIU-gH-CgRkj.js} +1 -1
- package/dist/client/assets/channel-qE_eugFJ.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-BSnzH03J.js → chunk-2J33WTMH-BSA0QyBP.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-D1getS3X.js → chunk-4BX2VUAB-jiIlm-jU.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-Dr2CwskK.js → chunk-55IACEB6-Cv9U9Ak-.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-C7_YUe-M.js → chunk-727SXJPM-CpxJ_7Wx.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-Cs7q0NsF.js → chunk-AQP2D5EJ-BL_hJu_8.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-KFtquRvq.js → chunk-FMBD7UC4-U_iAA2we.js} +1 -1
- package/dist/client/assets/{chunk-ND2GUHAM-BuZ0_q1n.js → chunk-ND2GUHAM-CR9rGWpo.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-CXq3kkUn.js → chunk-QZHKN3VN-BoLv45f5.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-Br7aWOMi.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Br7aWOMi.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-B2PPRokq.js → cose-bilkent-S5V4N54A-2Q7GC4ZY.js} +1 -1
- package/dist/client/assets/{dagre-BM42HDAG-Bdgt43P0.js → dagre-BM42HDAG-DaxrK5DK.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-l7renH-H.js → diagram-2AECGRRQ-0MAYacdt.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-I7lNTczj.js → diagram-5GNKFQAL-DW5UxCeI.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-C8kPNrsA.js → diagram-KO2AKTUF-CU3iBH-g.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47-pvteu9cM.js → diagram-LMA3HP47-CjGOHwD0.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-DpN6QlJ3.js → diagram-OG6HWLK6-B-wHM_mJ.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-Dcelk-6E.js → erDiagram-TEJ5UH35-BkBcMgb_.js} +1 -1
- package/dist/client/assets/{flowDiagram-I6XJVG4X-PluLGOsL.js → flowDiagram-I6XJVG4X-BErHv0-i.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-B052JdQf.js → ganttDiagram-6RSMTGT7-DxSH6Hll.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CCFDSwzA.js → gitGraphDiagram-PVQCEYII-BKjk_NzB.js} +1 -1
- package/dist/client/assets/{index-DHNmCWEQ.js → index-DHRQmt0z.js} +165 -165
- package/dist/client/assets/{infoDiagram-5YYISTIA-D8U6SFWo.js → infoDiagram-5YYISTIA-CPrRPFU2.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-CgB-TF4r.js → ishikawaDiagram-YF4QCWOH-CI-80hW5.js} +1 -1
- package/dist/client/assets/{journeyDiagram-JHISSGLW-CAGmqjlT.js → journeyDiagram-JHISSGLW-ByKj8dRf.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-BDuo7F2D.js → kanban-definition-UN3LZRKU-DLcf7a9N.js} +1 -1
- package/dist/client/assets/{linear-Dz4kMSHb.js → linear-DIZ8op5J.js} +1 -1
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-Db2Ukjm6.js → mindmap-definition-RKZ34NQL-BsDpFWdh.js} +1 -1
- package/dist/client/assets/{mobile-baseline-BuwX04Ww.js → mobile-baseline-jv_SPi-c.js} +1 -1
- package/dist/client/assets/{pieDiagram-4H26LBE5-D2-5sOl5.js → pieDiagram-4H26LBE5-C3dEKgHx.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CJlGrwhK.js → quadrantDiagram-W4KKPZXB-H5PdDgog.js} +1 -1
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-D4h5kgWL.js → requirementDiagram-4Y6WPE33-D3PRRJVb.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-dWom-dYP.js → sankeyDiagram-5OEKKPKP-CIxvoToE.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-C5_GmsPA.js → sequenceDiagram-3UESZ5HK-JOZ0B71g.js} +1 -1
- package/dist/client/assets/{stateDiagram-AJRCARHV-CUjApIoO.js → stateDiagram-AJRCARHV-dwx_Dyu7.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-g56rq9Om.js +1 -0
- package/dist/client/assets/{terminal-instance-BBnsG1mL.js → terminal-instance-TRj_DMCe.js} +1 -1
- package/dist/client/assets/{timeline-definition-PNZ67QCA-BF3tbgdG.js → timeline-definition-PNZ67QCA-DnI7kBWN.js} +1 -1
- package/dist/client/assets/{vennDiagram-CIIHVFJN-Q4ZHYJTv.js → vennDiagram-CIIHVFJN-Tk8IfETS.js} +1 -1
- package/dist/client/assets/{wardley-L42UT6IY-X4BiwCUd.js → wardley-L42UT6IY-F_38sdTm.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-CjJKT6Dj.js → wardleyDiagram-YWT4CUSO-DCqXhcQP.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-Dl6wiodH.js → xychartDiagram-2RQKCTM6-BGnQjikn.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/prisma/generated/internal/class.js +4 -4
- package/dist/prisma/generated/internal/class.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.d.ts +4 -0
- package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.js +4 -0
- package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +4 -0
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +4 -0
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/prisma/generated/models/PeriodicTask.d.ts +72 -1
- package/dist/prisma/generated/models/PeriodicTask.d.ts.map +1 -1
- package/dist/prisma/generated/models/UserSettings.d.ts +57 -1
- package/dist/prisma/generated/models/UserSettings.d.ts.map +1 -1
- package/dist/prisma/generated/models/Workspace.d.ts +64 -1
- package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
- package/dist/src/backend/interceptors/pr-detection.interceptor.d.ts.map +1 -1
- package/dist/src/backend/interceptors/pr-detection.interceptor.js +10 -7
- package/dist/src/backend/interceptors/pr-detection.interceptor.js.map +1 -1
- package/dist/src/backend/interceptors/pr-detection.interceptor.test.js +88 -0
- package/dist/src/backend/interceptors/pr-detection.interceptor.test.js.map +1 -1
- package/dist/src/backend/lib/file-lock-mutex.d.ts +5 -1
- package/dist/src/backend/lib/file-lock-mutex.d.ts.map +1 -1
- package/dist/src/backend/lib/file-lock-mutex.js +125 -10
- package/dist/src/backend/lib/file-lock-mutex.js.map +1 -1
- package/dist/src/backend/lib/file-lock-mutex.test.js +43 -0
- package/dist/src/backend/lib/file-lock-mutex.test.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.js +4 -0
- package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.test.js +3 -0
- package/dist/src/backend/orchestration/data-backup.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.js +13 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js +133 -5
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts +1 -0
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init-issue-prompts.d.ts +6 -0
- package/dist/src/backend/orchestration/workspace-init-issue-prompts.d.ts.map +1 -0
- package/dist/src/backend/orchestration/workspace-init-issue-prompts.js +262 -0
- package/dist/src/backend/orchestration/workspace-init-issue-prompts.js.map +1 -0
- package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts +1 -0
- package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js +6 -409
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
- package/dist/src/backend/routers/websocket/chat.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/chat.handler.js +10 -1
- package/dist/src/backend/routers/websocket/chat.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/chat.handler.test.js +25 -7
- package/dist/src/backend/routers/websocket/chat.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/dev-logs.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/dev-logs.handler.js +11 -1
- package/dist/src/backend/routers/websocket/dev-logs.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/dev-logs.handler.test.js +34 -1
- package/dist/src/backend/routers/websocket/dev-logs.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/post-run-logs.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/post-run-logs.handler.js +11 -1
- package/dist/src/backend/routers/websocket/post-run-logs.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/post-run-logs.handler.test.js +37 -3
- package/dist/src/backend/routers/websocket/post-run-logs.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.js +8 -11
- package/dist/src/backend/routers/websocket/setup-terminal.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.js +11 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.test.js +22 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/terminal.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/terminal.handler.js +11 -1
- package/dist/src/backend/routers/websocket/terminal.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/terminal.handler.test.js +46 -6
- package/dist/src/backend/routers/websocket/terminal.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/upgrade-utils.d.ts +12 -0
- package/dist/src/backend/routers/websocket/upgrade-utils.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/upgrade-utils.js +15 -0
- package/dist/src/backend/routers/websocket/upgrade-utils.js.map +1 -1
- package/dist/src/backend/routers/websocket/upgrade-utils.test.d.ts +2 -0
- package/dist/src/backend/routers/websocket/upgrade-utils.test.d.ts.map +1 -0
- package/dist/src/backend/routers/websocket/upgrade-utils.test.js +59 -0
- package/dist/src/backend/routers/websocket/upgrade-utils.test.js.map +1 -0
- package/dist/src/backend/routers/websocket/websocket.integration.test.js +91 -7
- package/dist/src/backend/routers/websocket/websocket.integration.test.js.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.d.ts +16 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.d.ts.map +1 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.js +45 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration-loop-state.js.map +1 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js +25 -50
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.test.d.ts +2 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.test.js +114 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.test.js.map +1 -0
- package/dist/src/backend/services/check-single-writer.test.js +33 -8
- package/dist/src/backend/services/check-single-writer.test.js.map +1 -1
- package/dist/src/backend/services/env-schemas.d.ts +10 -10
- package/dist/src/backend/services/env-schemas.js +10 -10
- package/dist/src/backend/services/env-schemas.js.map +1 -1
- package/dist/src/backend/services/env-schemas.test.d.ts +2 -0
- package/dist/src/backend/services/env-schemas.test.d.ts.map +1 -0
- package/dist/src/backend/services/env-schemas.test.js +31 -0
- package/dist/src/backend/services/env-schemas.test.js.map +1 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts +2 -2
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js +115 -50
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js.map +1 -1
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.d.ts +2 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.d.ts.map +1 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js +150 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js.map +1 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts +5 -1
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts.map +1 -1
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.js +20 -4
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.js.map +1 -1
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.d.ts +2 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.js +144 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.test.js.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.d.ts +64 -0
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.d.ts.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.js +76 -0
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.js.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.d.ts +9 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.d.ts.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.js +36 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.js.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.d.ts +2 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.d.ts.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.js +25 -0
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.js.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet.service.d.ts +42 -9
- package/dist/src/backend/services/ratchet/service/ratchet.service.d.ts.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.js +38 -105
- package/dist/src/backend/services/ratchet/service/ratchet.service.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.js +45 -0
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/reconciliation.service.d.ts +3 -2
- package/dist/src/backend/services/ratchet/service/reconciliation.service.d.ts.map +1 -1
- package/dist/src/backend/services/ratchet/service/reconciliation.service.js +51 -18
- package/dist/src/backend/services/ratchet/service/reconciliation.service.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/reconciliation.service.test.js +94 -16
- package/dist/src/backend/services/ratchet/service/reconciliation.service.test.js.map +1 -1
- package/dist/src/backend/services/run-script/service/run-script-process-utils.d.ts +19 -0
- package/dist/src/backend/services/run-script/service/run-script-process-utils.d.ts.map +1 -0
- package/dist/src/backend/services/run-script/service/run-script-process-utils.js +105 -0
- package/dist/src/backend/services/run-script/service/run-script-process-utils.js.map +1 -0
- package/dist/src/backend/services/run-script/service/run-script.service.d.ts +1 -2
- package/dist/src/backend/services/run-script/service/run-script.service.d.ts.map +1 -1
- package/dist/src/backend/services/run-script/service/run-script.service.js +26 -131
- package/dist/src/backend/services/run-script/service/run-script.service.js.map +1 -1
- package/dist/src/backend/services/run-script/service/run-script.service.test.js +23 -4
- package/dist/src/backend/services/run-script/service/run-script.service.test.js.map +1 -1
- package/dist/src/backend/services/run-script/service/startup-script.service.d.ts.map +1 -1
- package/dist/src/backend/services/run-script/service/startup-script.service.js +32 -7
- package/dist/src/backend/services/run-script/service/startup-script.service.js.map +1 -1
- package/dist/src/backend/services/run-script/service/startup-script.service.test.js +9 -0
- package/dist/src/backend/services/run-script/service/startup-script.service.test.js.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts +11 -0
- package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.js +54 -22
- package/dist/src/backend/services/session/resources/agent-session.accessor.js.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.test.js +56 -0
- package/dist/src/backend/services/session/resources/agent-session.accessor.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts +1 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js +10 -148
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js +50 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.d.ts +16 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.js +153 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-spawn.js.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.d.ts +10 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.js +162 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-adapter-parsing.js.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts +4 -7
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js +78 -365
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js +35 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.d.ts +23 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.js +191 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/plan-approval-handler.js.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.d.ts +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.js +22 -5
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.test.js +48 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/stream-event-handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.d.ts +4 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.js +9 -3
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.test.js +9 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/attachment-processing.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.js +4 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.test.js +16 -5
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/queue-message.handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/types.d.ts +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/types.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js +2 -2
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js +57 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/data/codex-session-history-loader.service.js +3 -3
- package/dist/src/backend/services/session/service/data/codex-session-history-loader.service.js.map +1 -1
- package/dist/src/backend/services/session/service/data/codex-session-history-loader.service.test.js +35 -0
- package/dist/src/backend/services/session/service/data/codex-session-history-loader.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/data/session-data.service.d.ts +11 -0
- package/dist/src/backend/services/session/service/data/session-data.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/data/session-data.service.js +3 -0
- package/dist/src/backend/services/session/service/data/session-data.service.js.map +1 -1
- package/dist/src/backend/services/session/service/data/session-provider-resolver.service.test.js +2 -0
- package/dist/src/backend/services/session/service/data/session-provider-resolver.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/index.d.ts +1 -1
- package/dist/src/backend/services/session/service/index.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/index.js +1 -1
- package/dist/src/backend/services/session/service/index.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.d.ts +19 -0
- package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.js +199 -0
- package/dist/src/backend/services/session/service/lifecycle/session-config-option-helpers.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.d.ts +5 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.js +37 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-discovery.service.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.d.ts +3 -0
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.js +12 -0
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-state.helpers.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts +4 -13
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.js +94 -210
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.test.js +32 -6
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts +0 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js +9 -48
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.js +4 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.test.js +34 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts +6 -2
- package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.js +3 -0
- package/dist/src/backend/services/session/service/lifecycle/session.repository.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.test.js +6 -0
- package/dist/src/backend/services/session/service/lifecycle/session.repository.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.js +2 -2
- package/dist/src/backend/services/session/service/lifecycle/session.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.test.js +112 -5
- package/dist/src/backend/services/session/service/lifecycle/session.service.test.js.map +1 -1
- package/dist/src/backend/services/settings/resources/user-settings.accessor.d.ts +2 -0
- package/dist/src/backend/services/settings/resources/user-settings.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/settings/resources/user-settings.accessor.js +18 -0
- package/dist/src/backend/services/settings/resources/user-settings.accessor.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts +2 -0
- package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.js +15 -0
- package/dist/src/backend/services/workspace/resources/workspace.accessor.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js +5 -0
- package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts +9 -0
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/state-machine.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/state-machine.service.js +3 -0
- package/dist/src/backend/services/workspace/service/lifecycle/state-machine.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/user-settings-query.service.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/query/user-settings-query.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/user-settings-query.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts.map +1 -1
- package/dist/src/backend/testing/check-prisma-generated-drift-script.test.d.ts +2 -0
- package/dist/src/backend/testing/check-prisma-generated-drift-script.test.d.ts.map +1 -0
- package/dist/src/backend/testing/check-prisma-generated-drift-script.test.js +48 -0
- package/dist/src/backend/testing/check-prisma-generated-drift-script.test.js.map +1 -0
- package/dist/src/backend/testing/websocket-test-utils.d.ts +2 -2
- package/dist/src/backend/testing/websocket-test-utils.d.ts.map +1 -1
- package/dist/src/backend/testing/websocket-test-utils.js +2 -2
- package/dist/src/backend/testing/websocket-test-utils.js.map +1 -1
- package/dist/src/backend/trpc/admin.trpc.d.ts +4 -0
- package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/github.router.test.js +31 -0
- package/dist/src/backend/trpc/github.router.test.js.map +1 -1
- package/dist/src/backend/trpc/github.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/github.trpc.js +12 -4
- package/dist/src/backend/trpc/github.trpc.js.map +1 -1
- package/dist/src/backend/trpc/index.d.ts +95 -0
- package/dist/src/backend/trpc/index.d.ts.map +1 -1
- package/dist/src/backend/trpc/issue-filter.d.ts +7 -0
- package/dist/src/backend/trpc/issue-filter.d.ts.map +1 -0
- package/dist/src/backend/trpc/issue-filter.js +19 -0
- package/dist/src/backend/trpc/issue-filter.js.map +1 -0
- package/dist/src/backend/trpc/linear.router.test.js +35 -0
- package/dist/src/backend/trpc/linear.router.test.js.map +1 -1
- package/dist/src/backend/trpc/linear.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/linear.trpc.js +10 -3
- package/dist/src/backend/trpc/linear.trpc.js.map +1 -1
- package/dist/src/backend/trpc/periodic-task.trpc.d.ts +5 -0
- package/dist/src/backend/trpc/periodic-task.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/project.trpc.d.ts +2 -0
- package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/session.router.test.js +96 -8
- package/dist/src/backend/trpc/session.router.test.js.map +1 -1
- package/dist/src/backend/trpc/session.trpc.d.ts +34 -1
- package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/session.trpc.js +70 -37
- package/dist/src/backend/trpc/session.trpc.js.map +1 -1
- package/dist/src/backend/trpc/user-settings.router.test.js +89 -0
- package/dist/src/backend/trpc/user-settings.router.test.js.map +1 -1
- package/dist/src/backend/trpc/user-settings.trpc.d.ts +32 -0
- package/dist/src/backend/trpc/user-settings.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/user-settings.trpc.js +81 -0
- package/dist/src/backend/trpc/user-settings.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/init.router.test.js +10 -0
- package/dist/src/backend/trpc/workspace/init.router.test.js.map +1 -1
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts +1 -0
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/init.trpc.js +2 -1
- package/dist/src/backend/trpc/workspace/init.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace.trpc.d.ts +12 -0
- package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
- package/dist/src/cli/index.js +1 -9
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/serve-env.d.ts +6 -0
- package/dist/src/cli/serve-env.d.ts.map +1 -0
- package/dist/src/cli/serve-env.js +11 -0
- package/dist/src/cli/serve-env.js.map +1 -0
- package/dist/src/cli/serve-env.test.d.ts +2 -0
- package/dist/src/cli/serve-env.test.d.ts.map +1 -0
- package/dist/src/cli/serve-env.test.js +23 -0
- package/dist/src/cli/serve-env.test.js.map +1 -0
- package/dist/src/shared/schemas/export-data.schema.d.ts +4 -0
- package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
- package/dist/src/shared/schemas/export-data.schema.js +2 -0
- package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
- package/dist/tsconfig.backend.tsbuildinfo +1 -1
- package/package.json +7 -4
- package/prisma/migrations/20260520120000_add_periodic_task_scheduled_day_of_month/migration.sql +10 -0
- package/prisma/migrations/20260529123138_add_workspace_init_script_pid/migration.sql +2 -0
- package/prisma/migrations/20260529140000_add_default_provider_effort_settings/migration.sql +2 -0
- package/prisma/schema.prisma +4 -0
- package/dist/client/assets/channel-B100hIJ8.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-DK3mo2gW.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DK3mo2gW.js +0 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DxhGA2OY.js +0 -1
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { FACTORY_SIGNATURE } from '../../backend/lib/constants.js';
|
|
2
1
|
import { toError } from '../../backend/lib/error-utils.js';
|
|
3
2
|
import { autoIterationService } from '../../backend/services/auto-iteration/index.js';
|
|
4
3
|
import { FactoryConfigService } from '../../backend/services/factory-config.service.js';
|
|
5
4
|
import { gitOpsService } from '../../backend/services/git-ops.service.js';
|
|
6
5
|
import { githubCLIService } from '../../backend/services/github/index.js';
|
|
7
|
-
import {
|
|
6
|
+
import { linearStateSyncService } from '../../backend/services/linear/index.js';
|
|
8
7
|
import { createLogger } from '../../backend/services/logger.service.js';
|
|
9
8
|
import { runScriptConfigPersistenceService } from '../../backend/services/run-script-config-persistence.service.js';
|
|
10
9
|
import { agentSessionAccessor, chatMessageHandlerService, sessionDataService, sessionDomainService, sessionService, } from '../../backend/services/session/index.js';
|
|
@@ -14,8 +13,9 @@ import { MessageState, resolveSelectedModel } from '../../shared/acp-protocol/in
|
|
|
14
13
|
import { SessionStatus, WorkspaceMode } from '../../shared/core/index.js';
|
|
15
14
|
import { autoIterationConfigSchema } from '../../shared/schemas/auto-iteration.schema.js';
|
|
16
15
|
import { AttachmentSchema } from '../../shared/websocket/index.js';
|
|
17
|
-
import {
|
|
16
|
+
import { getWorkspaceLinearContext } from './linear-config.helper.js';
|
|
18
17
|
import { GitHubUsernameCache } from './workspace-init-github-username-cache.js';
|
|
18
|
+
import { buildInitialPromptFromGitHubIssue, buildInitialPromptFromLinearIssue, } from './workspace-init-issue-prompts.js';
|
|
19
19
|
import { executeStartupScriptPipeline } from './workspace-init-script-pipeline.js';
|
|
20
20
|
const logger = createLogger('workspace-init-orchestrator');
|
|
21
21
|
const initialAttachmentsSchema = AttachmentSchema.array();
|
|
@@ -136,409 +136,6 @@ async function cleanupUnregisteredWorktreeAfterInitFailure(workspaceId, candidat
|
|
|
136
136
|
});
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
-
async function buildInitialPromptFromGitHubIssue(workspaceId) {
|
|
140
|
-
try {
|
|
141
|
-
const workspace = await workspaceAccessor.findByIdWithProject(workspaceId);
|
|
142
|
-
if (!workspace?.githubIssueNumber) {
|
|
143
|
-
return '';
|
|
144
|
-
}
|
|
145
|
-
const project = workspace.project;
|
|
146
|
-
if (!(project?.githubOwner && project?.githubRepo)) {
|
|
147
|
-
return '';
|
|
148
|
-
}
|
|
149
|
-
const issue = await githubCLIService.getIssue(project.githubOwner, project.githubRepo, workspace.githubIssueNumber);
|
|
150
|
-
if (!issue) {
|
|
151
|
-
logger.warn('Failed to fetch GitHub issue for initial prompt', {
|
|
152
|
-
workspaceId,
|
|
153
|
-
issueNumber: workspace.githubIssueNumber,
|
|
154
|
-
});
|
|
155
|
-
return '';
|
|
156
|
-
}
|
|
157
|
-
logger.info('Built initial prompt from GitHub issue', {
|
|
158
|
-
workspaceId,
|
|
159
|
-
issueNumber: issue.number,
|
|
160
|
-
issueTitle: issue.title,
|
|
161
|
-
});
|
|
162
|
-
return `# GitHub Issue #${issue.number}: ${issue.title}
|
|
163
|
-
|
|
164
|
-
${issue.body || '(No description provided)'}
|
|
165
|
-
|
|
166
|
-
**Issue URL**: ${issue.url}
|
|
167
|
-
|
|
168
|
-
---
|
|
169
|
-
|
|
170
|
-
## Your Task
|
|
171
|
-
|
|
172
|
-
Implement this issue following the 5-phase workflow below. Work autonomously—only ask questions if requirements are contradictory or fundamentally unclear.
|
|
173
|
-
|
|
174
|
-
**Protect your context by delegating to specialized agents:**
|
|
175
|
-
- Exploring unfamiliar code or architecture? Use: "Please use the Explore agent to understand [specific area]"
|
|
176
|
-
- Significant changes to review/simplify? Use: "Please use the code-simplifier agent to review recent changes"
|
|
177
|
-
- Targeted searches only? Use Grep/Glob directly
|
|
178
|
-
|
|
179
|
-
---
|
|
180
|
-
|
|
181
|
-
## Phase 1: Planning
|
|
182
|
-
|
|
183
|
-
1. **Understand requirements and find relevant code**
|
|
184
|
-
- Read issue description and any linked resources
|
|
185
|
-
- Search for affected files (delegate to Explore agent for broad architecture questions)
|
|
186
|
-
- Identify which files need changes
|
|
187
|
-
|
|
188
|
-
2. **Create task list with TodoWrite**
|
|
189
|
-
Create specific tasks for:
|
|
190
|
-
- Code changes (which files and what changes?)
|
|
191
|
-
- Tests to add (which test files?)
|
|
192
|
-
- Verification commands (typecheck, test, build)
|
|
193
|
-
- PR creation
|
|
194
|
-
|
|
195
|
-
Update status as you work: pending → in_progress → completed
|
|
196
|
-
|
|
197
|
-
3. **Identify edge cases**
|
|
198
|
-
- What could go wrong?
|
|
199
|
-
- What scenarios need tests?
|
|
200
|
-
- What existing patterns should you follow?
|
|
201
|
-
|
|
202
|
-
## Phase 2: Implementation
|
|
203
|
-
|
|
204
|
-
1. **Work through your TodoWrite tasks systematically**
|
|
205
|
-
- Follow existing code patterns and conventions
|
|
206
|
-
- Add type definitions and error handling
|
|
207
|
-
- Keep commits atomic and focused
|
|
208
|
-
- Update TodoWrite as you discover additional work
|
|
209
|
-
|
|
210
|
-
2. **Write tests**
|
|
211
|
-
- Test new functionality and edge cases
|
|
212
|
-
- Follow existing test patterns in the codebase
|
|
213
|
-
- Ensure tests are focused and maintainable
|
|
214
|
-
|
|
215
|
-
3. **Commit frequently**
|
|
216
|
-
- Atomic commits as you complete logical units
|
|
217
|
-
- Follow project style: short, imperative, descriptive (<72 chars)
|
|
218
|
-
- Reference issue number when relevant
|
|
219
|
-
- Example: "Add session error handling (#${issue.number})"
|
|
220
|
-
|
|
221
|
-
## Phase 3: Verification
|
|
222
|
-
|
|
223
|
-
Run all verification checks:
|
|
224
|
-
|
|
225
|
-
\`\`\`bash
|
|
226
|
-
pnpm typecheck && pnpm check:fix && pnpm test && pnpm build
|
|
227
|
-
\`\`\`
|
|
228
|
-
|
|
229
|
-
Fix any failures:
|
|
230
|
-
- **Type errors**: Resolve without type casts when possible
|
|
231
|
-
- **Lint errors**: Review \`pnpm check:fix\` changes
|
|
232
|
-
- **Test failures**: Debug and fix before proceeding
|
|
233
|
-
- **Build failures**: Check for syntax errors or missing dependencies
|
|
234
|
-
|
|
235
|
-
Update TodoWrite with any additional fix tasks discovered.
|
|
236
|
-
|
|
237
|
-
## Phase 4: Final Review
|
|
238
|
-
|
|
239
|
-
1. **Review your changes**
|
|
240
|
-
\`\`\`bash
|
|
241
|
-
git diff origin/main
|
|
242
|
-
\`\`\`
|
|
243
|
-
|
|
244
|
-
Look for:
|
|
245
|
-
- Debug logs or commented code to remove
|
|
246
|
-
- Unclear variable names to improve
|
|
247
|
-
- Unnecessary complexity to simplify
|
|
248
|
-
|
|
249
|
-
2. **Optional: Delegate to code-simplifier for large changes**
|
|
250
|
-
If you've changed many files (8+) or added complex logic:
|
|
251
|
-
- Use: "Please use the code-simplifier agent to review recent changes"
|
|
252
|
-
- Re-run tests after any changes: \`pnpm test\`
|
|
253
|
-
|
|
254
|
-
3. **Ensure everything is committed**
|
|
255
|
-
\`\`\`bash
|
|
256
|
-
git status # should show clean working directory
|
|
257
|
-
\`\`\`
|
|
258
|
-
|
|
259
|
-
## Phase 4.5: Capture UI Screenshots (if applicable)
|
|
260
|
-
|
|
261
|
-
If your changes affect the UI:
|
|
262
|
-
|
|
263
|
-
1. Read \`factory-factory.json\` for the \`scripts.run\` command, pick a free port, replace \`{port}\`, and start it in the background.
|
|
264
|
-
2. Use \`browser_navigate\` to visit the dev server URL
|
|
265
|
-
3. Determine the most relevant screen showing your changes and capture a screenshot
|
|
266
|
-
4. Save screenshots:
|
|
267
|
-
\`\`\`bash
|
|
268
|
-
mkdir -p .factory-factory/screenshots
|
|
269
|
-
\`\`\`
|
|
270
|
-
Save with descriptive names (e.g., \`dashboard-new-widget.png\`)
|
|
271
|
-
5. Commit the screenshots with your changes
|
|
272
|
-
6. Reference them in the PR body using raw GitHub URLs:
|
|
273
|
-
\`\`
|
|
274
|
-
|
|
275
|
-
## Phase 5: Create Pull Request [REQUIRED - DO NOT SKIP]
|
|
276
|
-
|
|
277
|
-
**Pre-flight checklist before creating PR:**
|
|
278
|
-
- [ ] All TodoWrite tasks marked completed
|
|
279
|
-
- [ ] \`pnpm test\` passes
|
|
280
|
-
- [ ] \`pnpm typecheck\` passes
|
|
281
|
-
- [ ] \`pnpm build\` succeeds
|
|
282
|
-
- [ ] Working directory clean (\`git status\`)
|
|
283
|
-
- [ ] All commits have descriptive messages
|
|
284
|
-
|
|
285
|
-
**Now create the PR:**
|
|
286
|
-
|
|
287
|
-
1. **Push your branch:**
|
|
288
|
-
\`\`\`bash
|
|
289
|
-
git push -u origin HEAD
|
|
290
|
-
\`\`\`
|
|
291
|
-
|
|
292
|
-
2. **Write PR body to /tmp/pr-body.md:**
|
|
293
|
-
\`\`\`markdown
|
|
294
|
-
## Summary
|
|
295
|
-
[1-3 bullets describing what this PR accomplishes]
|
|
296
|
-
|
|
297
|
-
## Changes
|
|
298
|
-
- **[Component/Area]**: [What changed and why]
|
|
299
|
-
- [Add more lines as needed]
|
|
300
|
-
|
|
301
|
-
## Testing
|
|
302
|
-
- [x] Tests pass (\`pnpm test\`)
|
|
303
|
-
- [x] Types pass (\`pnpm typecheck\`)
|
|
304
|
-
- [x] Build succeeds (\`pnpm build\`)
|
|
305
|
-
- [ ] Manual testing: [How to verify this change works]
|
|
306
|
-
|
|
307
|
-
Closes #${issue.number}
|
|
308
|
-
\`\`\`
|
|
309
|
-
|
|
310
|
-
3. **IMPORTANT**: Always append the following signature as the very last lines of the PR body, after a horizontal rule:
|
|
311
|
-
\`\`\`
|
|
312
|
-
---
|
|
313
|
-
${FACTORY_SIGNATURE}
|
|
314
|
-
\`\`\`
|
|
315
|
-
|
|
316
|
-
4. **Create the PR:**
|
|
317
|
-
\`\`\`bash
|
|
318
|
-
gh pr create --title "Fix #${issue.number}: [concise description]" --body-file /tmp/pr-body.md
|
|
319
|
-
\`\`\`
|
|
320
|
-
|
|
321
|
-
4. **Verify PR created successfully:**
|
|
322
|
-
\`\`\`bash
|
|
323
|
-
gh pr view --web
|
|
324
|
-
\`\`\`
|
|
325
|
-
|
|
326
|
-
---
|
|
327
|
-
|
|
328
|
-
**You have completed this issue successfully when the PR is created and the URL is shown above.**
|
|
329
|
-
|
|
330
|
-
Start with Phase 1: Planning.`;
|
|
331
|
-
}
|
|
332
|
-
catch (error) {
|
|
333
|
-
logger.warn('Error building initial prompt from GitHub issue', {
|
|
334
|
-
workspaceId,
|
|
335
|
-
error: error instanceof Error ? error.message : String(error),
|
|
336
|
-
});
|
|
337
|
-
return '';
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
async function buildInitialPromptFromLinearIssue(workspaceId) {
|
|
341
|
-
try {
|
|
342
|
-
const workspace = await workspaceAccessor.findByIdWithProject(workspaceId);
|
|
343
|
-
if (!workspace?.linearIssueId) {
|
|
344
|
-
return '';
|
|
345
|
-
}
|
|
346
|
-
const project = workspace.project;
|
|
347
|
-
const linearConfig = getDecryptedLinearConfig(project.issueTrackerConfig);
|
|
348
|
-
if (!linearConfig) {
|
|
349
|
-
return '';
|
|
350
|
-
}
|
|
351
|
-
const issue = await linearClientService.getIssue(linearConfig.apiKey, workspace.linearIssueId);
|
|
352
|
-
if (!issue) {
|
|
353
|
-
logger.warn('Failed to fetch Linear issue for initial prompt', {
|
|
354
|
-
workspaceId,
|
|
355
|
-
linearIssueId: workspace.linearIssueId,
|
|
356
|
-
});
|
|
357
|
-
return '';
|
|
358
|
-
}
|
|
359
|
-
logger.info('Built initial prompt from Linear issue', {
|
|
360
|
-
workspaceId,
|
|
361
|
-
issueIdentifier: issue.identifier,
|
|
362
|
-
issueTitle: issue.title,
|
|
363
|
-
});
|
|
364
|
-
return `# Linear Issue ${issue.identifier}: ${issue.title}
|
|
365
|
-
|
|
366
|
-
${issue.description || '(No description provided)'}
|
|
367
|
-
|
|
368
|
-
**Issue URL**: ${issue.url}
|
|
369
|
-
|
|
370
|
-
---
|
|
371
|
-
|
|
372
|
-
## Your Task
|
|
373
|
-
|
|
374
|
-
Implement this issue following the 5-phase workflow below. Work autonomously—only ask questions if requirements are contradictory or fundamentally unclear.
|
|
375
|
-
|
|
376
|
-
**Protect your context by delegating to specialized agents:**
|
|
377
|
-
- Exploring unfamiliar code or architecture? Use: "Please use the Explore agent to understand [specific area]"
|
|
378
|
-
- Significant changes to review/simplify? Use: "Please use the code-simplifier agent to review recent changes"
|
|
379
|
-
- Targeted searches only? Use Grep/Glob directly
|
|
380
|
-
|
|
381
|
-
---
|
|
382
|
-
|
|
383
|
-
## Phase 1: Planning
|
|
384
|
-
|
|
385
|
-
1. **Understand requirements and find relevant code**
|
|
386
|
-
- Read issue description and any linked resources
|
|
387
|
-
- Search for affected files (delegate to Explore agent for broad architecture questions)
|
|
388
|
-
- Identify which files need changes
|
|
389
|
-
|
|
390
|
-
2. **Create task list with TodoWrite**
|
|
391
|
-
Create specific tasks for:
|
|
392
|
-
- Code changes (which files and what changes?)
|
|
393
|
-
- Tests to add (which test files?)
|
|
394
|
-
- Verification commands (typecheck, test, build)
|
|
395
|
-
- PR creation
|
|
396
|
-
|
|
397
|
-
Update status as you work: pending → in_progress → completed
|
|
398
|
-
|
|
399
|
-
3. **Identify edge cases**
|
|
400
|
-
- What could go wrong?
|
|
401
|
-
- What scenarios need tests?
|
|
402
|
-
- What existing patterns should you follow?
|
|
403
|
-
|
|
404
|
-
## Phase 2: Implementation
|
|
405
|
-
|
|
406
|
-
1. **Work through your TodoWrite tasks systematically**
|
|
407
|
-
- Follow existing code patterns and conventions
|
|
408
|
-
- Add type definitions and error handling
|
|
409
|
-
- Keep commits atomic and focused
|
|
410
|
-
- Update TodoWrite as you discover additional work
|
|
411
|
-
|
|
412
|
-
2. **Write tests**
|
|
413
|
-
- Test new functionality and edge cases
|
|
414
|
-
- Follow existing test patterns in the codebase
|
|
415
|
-
- Ensure tests are focused and maintainable
|
|
416
|
-
|
|
417
|
-
3. **Commit frequently**
|
|
418
|
-
- Atomic commits as you complete logical units
|
|
419
|
-
- Follow project style: short, imperative, descriptive (<72 chars)
|
|
420
|
-
- Reference issue number when relevant
|
|
421
|
-
- Example: "Add session error handling (${issue.identifier})"
|
|
422
|
-
|
|
423
|
-
## Phase 3: Verification
|
|
424
|
-
|
|
425
|
-
Run all verification checks:
|
|
426
|
-
|
|
427
|
-
\`\`\`bash
|
|
428
|
-
pnpm typecheck && pnpm check:fix && pnpm test && pnpm build
|
|
429
|
-
\`\`\`
|
|
430
|
-
|
|
431
|
-
Fix any failures:
|
|
432
|
-
- **Type errors**: Resolve without type casts when possible
|
|
433
|
-
- **Lint errors**: Review \`pnpm check:fix\` changes
|
|
434
|
-
- **Test failures**: Debug and fix before proceeding
|
|
435
|
-
- **Build failures**: Check for syntax errors or missing dependencies
|
|
436
|
-
|
|
437
|
-
Update TodoWrite with any additional fix tasks discovered.
|
|
438
|
-
|
|
439
|
-
## Phase 4: Final Review
|
|
440
|
-
|
|
441
|
-
1. **Review your changes**
|
|
442
|
-
\`\`\`bash
|
|
443
|
-
git diff origin/main
|
|
444
|
-
\`\`\`
|
|
445
|
-
|
|
446
|
-
Look for:
|
|
447
|
-
- Debug logs or commented code to remove
|
|
448
|
-
- Unclear variable names to improve
|
|
449
|
-
- Unnecessary complexity to simplify
|
|
450
|
-
|
|
451
|
-
2. **Optional: Delegate to code-simplifier for large changes**
|
|
452
|
-
If you've changed many files (8+) or added complex logic:
|
|
453
|
-
- Use: "Please use the code-simplifier agent to review recent changes"
|
|
454
|
-
- Re-run tests after any changes: \`pnpm test\`
|
|
455
|
-
|
|
456
|
-
3. **Ensure everything is committed**
|
|
457
|
-
\`\`\`bash
|
|
458
|
-
git status # should show clean working directory
|
|
459
|
-
\`\`\`
|
|
460
|
-
|
|
461
|
-
## Phase 4.5: Capture UI Screenshots (if applicable)
|
|
462
|
-
|
|
463
|
-
If your changes affect the UI:
|
|
464
|
-
|
|
465
|
-
1. Read \`factory-factory.json\` for the \`scripts.run\` command, pick a free port, replace \`{port}\`, and start it in the background.
|
|
466
|
-
2. Use \`browser_navigate\` to visit the dev server URL
|
|
467
|
-
3. Determine the most relevant screen showing your changes and capture a screenshot
|
|
468
|
-
4. Save screenshots:
|
|
469
|
-
\`\`\`bash
|
|
470
|
-
mkdir -p .factory-factory/screenshots
|
|
471
|
-
\`\`\`
|
|
472
|
-
Save with descriptive names (e.g., \`dashboard-new-widget.png\`)
|
|
473
|
-
5. Commit the screenshots with your changes
|
|
474
|
-
6. Reference them in the PR body using raw GitHub URLs:
|
|
475
|
-
\`\`
|
|
476
|
-
|
|
477
|
-
## Phase 5: Create Pull Request [REQUIRED - DO NOT SKIP]
|
|
478
|
-
|
|
479
|
-
**Pre-flight checklist before creating PR:**
|
|
480
|
-
- [ ] All TodoWrite tasks marked completed
|
|
481
|
-
- [ ] \`pnpm test\` passes
|
|
482
|
-
- [ ] \`pnpm typecheck\` passes
|
|
483
|
-
- [ ] \`pnpm build\` succeeds
|
|
484
|
-
- [ ] Working directory clean (\`git status\`)
|
|
485
|
-
- [ ] All commits have descriptive messages
|
|
486
|
-
|
|
487
|
-
**Now create the PR:**
|
|
488
|
-
|
|
489
|
-
1. **Push your branch:**
|
|
490
|
-
\`\`\`bash
|
|
491
|
-
git push -u origin HEAD
|
|
492
|
-
\`\`\`
|
|
493
|
-
|
|
494
|
-
2. **Write PR body to /tmp/pr-body.md:**
|
|
495
|
-
\`\`\`markdown
|
|
496
|
-
## Summary
|
|
497
|
-
[1-3 bullets describing what this PR accomplishes]
|
|
498
|
-
|
|
499
|
-
## Changes
|
|
500
|
-
- **[Component/Area]**: [What changed and why]
|
|
501
|
-
- [Add more lines as needed]
|
|
502
|
-
|
|
503
|
-
## Testing
|
|
504
|
-
- [x] Tests pass (\`pnpm test\`)
|
|
505
|
-
- [x] Types pass (\`pnpm typecheck\`)
|
|
506
|
-
- [x] Build succeeds (\`pnpm build\`)
|
|
507
|
-
- [ ] Manual testing: [How to verify this change works]
|
|
508
|
-
|
|
509
|
-
Closes ${issue.identifier}
|
|
510
|
-
\`\`\`
|
|
511
|
-
|
|
512
|
-
3. **IMPORTANT**: Always append the following signature as the very last lines of the PR body, after a horizontal rule:
|
|
513
|
-
\`\`\`
|
|
514
|
-
---
|
|
515
|
-
${FACTORY_SIGNATURE}
|
|
516
|
-
\`\`\`
|
|
517
|
-
|
|
518
|
-
4. **Create the PR:**
|
|
519
|
-
\`\`\`bash
|
|
520
|
-
gh pr create --title "Fix ${issue.identifier}: [concise description]" --body-file /tmp/pr-body.md
|
|
521
|
-
\`\`\`
|
|
522
|
-
|
|
523
|
-
4. **Verify PR created successfully:**
|
|
524
|
-
\`\`\`bash
|
|
525
|
-
gh pr view --web
|
|
526
|
-
\`\`\`
|
|
527
|
-
|
|
528
|
-
---
|
|
529
|
-
|
|
530
|
-
**You have completed this issue successfully when the PR is created and the URL is shown above.**
|
|
531
|
-
|
|
532
|
-
Start with Phase 1: Planning.`;
|
|
533
|
-
}
|
|
534
|
-
catch (error) {
|
|
535
|
-
logger.warn('Error building initial prompt from Linear issue', {
|
|
536
|
-
workspaceId,
|
|
537
|
-
error: error instanceof Error ? error.message : String(error),
|
|
538
|
-
});
|
|
539
|
-
return '';
|
|
540
|
-
}
|
|
541
|
-
}
|
|
542
139
|
async function markLinearIssueStartedIfApplicable(workspaceId) {
|
|
543
140
|
try {
|
|
544
141
|
const ctx = await getWorkspaceLinearContext(workspaceId);
|
|
@@ -626,8 +223,8 @@ function readStartupModePresetFromMetadata(metadata, workspaceId) {
|
|
|
626
223
|
return 'non_interactive';
|
|
627
224
|
}
|
|
628
225
|
async function resolveInitialAutoMessageContent(workspaceId, creationMetadata) {
|
|
629
|
-
const issuePromptText = (await buildInitialPromptFromGitHubIssue(workspaceId)) ||
|
|
630
|
-
(await buildInitialPromptFromLinearIssue(workspaceId));
|
|
226
|
+
const issuePromptText = (await buildInitialPromptFromGitHubIssue(workspaceId, logger)) ||
|
|
227
|
+
(await buildInitialPromptFromLinearIssue(workspaceId, logger));
|
|
631
228
|
if (issuePromptText) {
|
|
632
229
|
return { text: issuePromptText };
|
|
633
230
|
}
|
|
@@ -683,7 +280,7 @@ async function startDefaultAgentSession(workspaceId) {
|
|
|
683
280
|
return null;
|
|
684
281
|
}
|
|
685
282
|
}
|
|
686
|
-
async function retryQueuedDispatchAfterWorkspaceReady(workspaceId, startedSessionId) {
|
|
283
|
+
export async function retryQueuedDispatchAfterWorkspaceReady(workspaceId, startedSessionId) {
|
|
687
284
|
try {
|
|
688
285
|
if (startedSessionId) {
|
|
689
286
|
await chatMessageHandlerService.tryDispatchNextMessage(startedSessionId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-init.orchestrator.js","sourceRoot":"","sources":["../../../../src/backend/orchestration/workspace-init.orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-init.orchestrator.js","sourceRoot":"","sources":["../../../../src/backend/orchestration/workspace-init.orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,iCAAiC,EAAE,MAAM,0DAA0D,CAAC;AAC7G,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAA0B,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EACL,iCAAiC,EACjC,iCAAiC,GAClC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAEhF,MAAM,MAAM,GAAG,YAAY,CAAC,6BAA6B,CAAC,CAAC;AAC3D,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAY1D,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAEtE,SAAS,uBAAuB;IAC9B,OAAO,mBAAmB,CAAC,iBAAiB,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,2CAA2C;IACzD,mBAAmB,CAAC,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,WAAmB;IACvD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC3E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,yDAAyD,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACxF,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9E,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,8BAA8B,CAAC,WAAmB;IAC/D,MAAM,oBAAoB,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;IACtF,IAAI,CAAC,oBAAoB,EAAE,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,YAAoB,EACpB,WAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC1E,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,WAAW;gBACX,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK;gBACvC,MAAM,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG;gBACnC,UAAU,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO;aAC5C,CAAC,CAAC;QACL,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;YACnE,WAAW;SACZ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,WAAmB,EACnB,KAAY,EACZ,qBAA8B,EAC9B,oCAA2E;IAE3E,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAChF,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACnE,IAAI,oCAAoC,EAAE,CAAC;QACzC,MAAM,2CAA2C,CAC/C,WAAW,EACX,oCAAoC,CACrC,CAAC;IACJ,CAAC;IACD,IAAI,qBAAqB,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,eAAe,CAAC,eAAe,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,uDAAuD,EAAE;gBACnE,WAAW;gBACX,UAAU,EAAE,qBAAqB;gBACjC,KAAK,EAAE,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;aACnF,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC;YACH,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,aAAa,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,yDAAyD,EAAE;gBACrE,WAAW;gBACX,UAAU,EAAE,qBAAqB;gBACjC,KAAK,EAAE,aAAa,YAAY,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;aACtF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,MAAM,cAAc,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE;YAC/D,WAAW;YACX,KAAK,EAAE,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;SAC1E,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,2CAA2C,CACxD,WAAmB,EACnB,SAA+C;IAE/C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChE,IAAI,SAAS,EAAE,YAAY,KAAK,YAAY,CAAC,YAAY,EAAE,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,IAAI,SAAS,EAAE,YAAY,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,2EAA2E,EAAE;gBACvF,WAAW;gBACX,mBAAmB,EAAE,YAAY,CAAC,YAAY;gBAC9C,qBAAqB,EAAE,SAAS,CAAC,YAAY;aAC9C,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,sBAAsB,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC5E,MAAM,aAAa,CAAC,cAAc,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,kDAAkD,EAAE;YAC9D,WAAW;YACX,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,UAAU,EAAE,YAAY,CAAC,UAAU;SACpC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,2DAA2D,EAAE;YACvE,WAAW;YACX,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,KAAK,EAAE,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;SACnF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kCAAkC,CAAC,WAAmB;IACnE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,yBAAyB,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO;QACT,CAAC;QAED,MAAM,sBAAsB,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QAC7E,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YAC5C,WAAW;YACX,aAAa,EAAE,GAAG,CAAC,aAAa;SACjC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,8DAA8D,EAAE;YAC1E,WAAW;YACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAMD,SAAS,kBAAkB,CACzB,SAAiB,EACjB,WAAmB,EACnB,IAAY,EACZ,KAAa,EACb,WAAiC;IAEjC,MAAM,SAAS,GAAG,aAAa,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,SAAS;QACb,IAAI;QACJ,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,QAAQ,EAAE;YACR,aAAa,EAAE,KAAK;YACpB,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,KAAK;YACtB,eAAe,EAAE,KAAK;SACvB;KACF,CAAC;IACF,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACtE,IAAI,OAAO,IAAI,aAAa,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;YACxD,WAAW;YACX,SAAS;YACT,KAAK,EAAE,aAAa,CAAC,KAAK;SAC3B,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,oBAAoB,CAAC,SAAS,CAAC,SAAS,EAAE;YACxC,IAAI,EAAE,uBAAuB;YAC7B,EAAE,EAAE,SAAS;YACb,QAAQ,EAAE,YAAY,CAAC,QAAQ;YAC/B,aAAa,EAAE,aAAa,CAAC,QAAQ;YACrC,WAAW,EAAE;gBACX,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ,EAAE;oBACR,GAAG,MAAM,CAAC,QAAQ;oBAClB,aAAa,EAAE,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;oBAClE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,eAAe;iBACjD;aACF;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AASD,SAAS,kCAAkC,CACzC,QAAwC,EACxC,WAAmB;IAEnB,IAAI,CAAC,CAAC,QAAQ,IAAI,oBAAoB,IAAI,QAAQ,CAAC,EAAE,CAAC;QACpD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC1F,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC9B,OAAO,iBAAiB,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,4DAA4D,EAAE;QACxE,WAAW;KACZ,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iCAAiC,CACxC,QAAwC,EACxC,WAAmB;IAEnB,IAAI,CAAC,CAAC,QAAQ,IAAI,mBAAmB,IAAI,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IACrD,IAAI,iBAAiB,KAAK,iBAAiB,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;QAC5E,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,4DAA4D,EAAE;QACxE,WAAW;KACZ,CAAC,CAAC;IACH,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,KAAK,UAAU,gCAAgC,CAC7C,WAAmB,EACnB,gBAAgD;IAEhD,MAAM,eAAe,GACnB,CAAC,MAAM,iCAAiC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC,MAAM,iCAAiC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,kBAAkB,GACtB,gBAAgB,EAAE,aAAa,IAAI,OAAO,gBAAgB,CAAC,aAAa,KAAK,QAAQ;QACnF,CAAC,CAAC,gBAAgB,CAAC,aAAa;QAChC,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,mBAAmB,GAAG,kCAAkC,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IAE9F,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACtF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,kBAAkB;QACxB,GAAG,CAAC,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC;YACvD,CAAC,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE;YACtC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,WAAmB;IACzD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,iBAAiB,CAAC,WAAW,EAAE;YACzE,MAAM,EAAE,aAAa,CAAC,IAAI;YAC1B,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChE,MAAM,QAAQ,GAAG,SAAS,EAAE,gBAAkD,CAAC;QAC/E,MAAM,iBAAiB,GAAG,iCAAiC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAGnF,MAAM,cAAc,GAAG,MAAM,gCAAgC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAIrF,MAAM,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE;YAC5C,aAAa,EAAE,EAAE;YACjB,iBAAiB;SAClB,CAAC,CAAC;QAGH,IAAI,cAAc,EAAE,CAAC;YACnB,kBAAkB,CAChB,OAAO,CAAC,EAAE,EACV,WAAW,EACX,cAAc,CAAC,IAAI,EACnB,OAAO,CAAC,KAAK,EACb,cAAc,CAAC,WAAW,CAC3B,CAAC;QACJ,CAAC;QAID,MAAM,yBAAyB,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEnE,MAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE;YAChE,WAAW;YACX,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,gBAAgB,EAAE,CAAC,CAAC,cAAc,EAAE,IAAI;YACxC,qBAAqB,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;SACtE,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,2DAA2D,EAAE;YACvE,WAAW;YACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sCAAsC,CAC1D,WAAmB,EACnB,gBAA+B;IAE/B,IAAI,CAAC;QAEH,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,yBAAyB,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,iBAAiB,CAAC,WAAW,EAAE;YAChF,MAAM,EAAE,aAAa,CAAC,OAAO;YAC7B,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,yBAAyB,CAAC,sBAAsB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YAC1E,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,iBAAiB,CAAC,WAAW,EAAE;YAC7E,MAAM,EAAE,aAAa,CAAC,IAAI;YAC1B,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,MAAM,yBAAyB,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,8DAA8D,EAAE;YAC1E,WAAW;YACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,WAAmB,EACnB,YAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,iBAAiB,GAAG,eAAe,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAChF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO;gBACL,UAAU,EAAE,gBAAgB,CAAC,EAAE;gBAC/B,WAAW,EAAE,KAAK;aACnB,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,MAAM,eAAe,CAAC,cAAc,CAAC;YAC/D,WAAW;YACX,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QAEH,IAAI,eAAe,GAAwB,IAAI,CAAC;QAChD,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,IAAI,wBAAwB,GAAG,KAAK,CAAC;QACrC,MAAM,yBAAyB,GAAG,KAAK,IAAI,EAAE;YAC3C,IAAI,CAAC;gBACH,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,0DAA0D,EAAE;oBACtE,WAAW;oBACX,UAAU;oBACV,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE;YACxD,cAAc,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAC9B,OAAO;YACT,CAAC;YAED,eAAe,EAAE,EAAE,CAAC;YACpB,eAAe,GAAG,IAAI,CAAC;YACvB,KAAK,yBAAyB,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,kBAAkB,CAAC,qBAAqB,CAAC;gBAC7C,WAAW;gBACX,IAAI,EAAE,UAAU;gBAChB,GAAG;aACJ,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAe,EAAE,EAAE,CAAC;YACpB,eAAe,GAAG,IAAI,CAAC;YACvB,eAAe,CAAC,eAAe,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACzD,MAAM,KAAK,CAAC;QACd,CAAC;QAED,wBAAwB,GAAG,IAAI,CAAC;QAChC,IAAI,cAAc,EAAE,CAAC;YACnB,eAAe,EAAE,EAAE,CAAC;YACpB,eAAe,GAAG,IAAI,CAAC;YACvB,MAAM,yBAAyB,EAAE,CAAC;QACpC,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE;YAC1D,WAAW;YACX,UAAU;YACV,GAAG;SACJ,CAAC,CAAC;QAEH,OAAO;YACL,UAAU;YACV,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,sDAAsD,EAAE;YAClE,WAAW;YACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AASD,KAAK,UAAU,0BAA0B,CACvC,OAAwC,EACxC,YAAoB,EACpB,UAAkB,EAClB,iBAA0B,EAC1B,aAAqB;IAErB,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,aAAa,CAAC,gCAAgC,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAC3F,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,uBAAuB,EAAE,CAAC;IACvD,OAAO,aAAa,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE;QACrE,YAAY,EAAE,cAAc,IAAI,SAAS;QACzC,aAAa;KACd,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,KAKvC;IAKC,MAAM,SAAS,GAAG,KAAK,CAAC,oBAAoB,CAAC;IAC7C,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,wDAAwD,EAAE;YACpE,WAAW,EAAE,SAAS,CAAC,EAAE;YACzB,YAAY,EAAE,SAAS,CAAC,YAAY;SACrC,CAAC,CAAC;QACH,OAAO;YACL,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,IAAI;YACxC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,CAAC,sBAAsB,CACxC,SAAS,CAAC,OAAO,EACjB,KAAK,CAAC,UAAU,EAChB,SAAS,CAAC,OAAO,CAAC,aAAa,CAChC,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,0BAA0B,CACnD,SAAS,CAAC,OAAO,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,iBAAiB,EACvB,SAAS,CAAC,IAAI,CACf,CAAC;IAEF,OAAO;QACL,GAAG,YAAY;QACf,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,kCAAkC,CACzC,YAAkE,EAClE,UAAkB;IAElB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,UAAU,EAAE,YAAY,CAAC,UAAU,IAAI,UAAU;KAClD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,gCAAgC,CAC7C,WAAmB,EACnB,mBAA2C,EAC3C,OAAgB;IAEhB,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAAC;IACnD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,sCAAsC,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAMD,KAAK,UAAU,uBAAuB,CAAC,WAAmB;IACxD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,CAAC,cAAc,EAAE,CAAC;YAClE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,8DAA8D,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC7F,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,YAAY,GAAG,yBAAyB,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QACxF,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,kEAAkE,EAAE;gBAC/E,WAAW;gBACX,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO;aAClC,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;QACnF,MAAM,oBAAoB,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;YAClD,WAAW;YACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAMD,KAAK,UAAU,0BAA0B,CACvC,WAAmB,EACnB,eAAwB,EACxB,mBAA2C,EAC3C,OAAgB;IAEhB,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,gCAAgC,CAAC,WAAW,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;IACpF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,WAAmB,EACnB,OAIC;IAED,IAAI,CAAC,OAAO,EAAE,0BAA0B,EAAE,CAAC;QACzC,MAAM,mBAAmB,GAAG,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACtE,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;IACH,CAAC;IAED,IAAI,OAAoD,CAAC;IACzD,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,mBAAoD,CAAC;IACzD,IAAI,mBAAmB,GAA2B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,qBAAyC,CAAC;IAE9C,IAAI,CAAC;QACH,MAAM,oBAAoB,GAAG,MAAM,8BAA8B,CAAC,WAAW,CAAC,CAAC;QAC/E,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;QAEvC,MAAM,YAAY,GAAG,aAAa,WAAW,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC;QAChE,MAAM,iBAAiB,GACrB,OAAO,EAAE,iBAAiB;YAC1B,CAAC,MAAM,wBAAwB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YACzD,KAAK,CAAC;QAER,MAAM,YAAY,GAAG,MAAM,wBAAwB,CAAC;YAClD,oBAAoB;YACpB,YAAY;YACZ,UAAU;YACV,iBAAiB;SAClB,CAAC,CAAC;QACH,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC;QACvC,mBAAmB,GAAG,kCAAkC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAEnF,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAAC,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAE1F,MAAM,iCAAiC,CAAC,sCAAsC,CAAC;YAC7E,WAAW;YACX,aAAa;YACb,wBAAwB,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE;gBACzC,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,OAAO,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE;wBAClC,YAAY,EAAE,YAAY,CAAC,YAAY;wBACvC,UAAU,EAAE,YAAY,CAAC,UAAU;wBACnC,qBAAqB,EAAE,CAAC,iBAAiB;wBACzC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;wBAC3C,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;wBACzD,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;qBAC1D,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE;oBAClC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;oBACzD,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;iBAC1D,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;QACH,kBAAkB,GAAG,IAAI,CAAC;QAE1B,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;QAC3F,IAAI,eAAe,EAAE,WAAW,EAAE,CAAC;YACjC,qBAAqB,GAAG,eAAe,CAAC,UAAU,CAAC;QACrD,CAAC;QAGD,KAAK,kCAAkC,CAAC,WAAW,CAAC,CAAC;QAIrD,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,KAAK,aAAa,CAAC,cAAc,CAAC;QAEnF,IAAI,CAAC,eAAe,EAAE,CAAC;YAGrB,mBAAmB,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC1E,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;oBACrD,WAAW;oBACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,2BAA2B,GAAG,MAAM,4BAA4B,CAAC;YACrE,WAAW;YACX,oBAAoB;YACpB,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,aAAa;SACd,CAAC,CAAC;QACH,IAAI,2BAA2B,CAAC,OAAO,EAAE,CAAC;YACxC,MAAM,0BAA0B,CAC9B,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,2BAA2B,CAAC,OAAO,CACpC,CAAC;YACF,OAAO;QACT,CAAC;QAGD,MAAM,qBAAqB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,0BAA0B,CAAC,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAGf,MAAM,mBAAmB,CAAC;QAC1B,MAAM,0BAA0B,CAC9B,WAAW,EACX,OAAO,CAAC,KAAK,CAAC,EACd,qBAAqB,EACrB,OAAO,IAAI,mBAAmB,IAAI,CAAC,kBAAkB;YACnD,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE;YAChD,CAAC,CAAC,SAAS,CACd,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,wBAAwB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.handler.d.ts","sourceRoot":"","sources":["../../../../../src/backend/routers/websocket/chat.handler.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAYxD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,UAAU,IAkI3D,SAAS,eAAe,EACxB,QAAQ,MAAM,EACd,MAAM,MAAM,EACZ,KAAK,GAAG,EACR,KAAK,eAAe,EACpB,YAAY,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KACtC,IAAI,
|
|
1
|
+
{"version":3,"file":"chat.handler.d.ts","sourceRoot":"","sources":["../../../../../src/backend/routers/websocket/chat.handler.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAYxD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,UAAU,IAkI3D,SAAS,eAAe,EACxB,QAAQ,MAAM,EACd,MAAM,MAAM,EACZ,KAAK,GAAG,EACR,KAAK,eAAe,EACpB,YAAY,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KACtC,IAAI,CA+IR;AAED,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { WS_READY_STATE } from '../../../backend/constants/websocket.js';
|
|
|
5
5
|
import { toError } from '../../../backend/lib/error-utils.js';
|
|
6
6
|
import { ChatMessageSchema } from '../../../backend/schemas/websocket/index.js';
|
|
7
7
|
import { toMessageString } from './message-utils.js';
|
|
8
|
-
import { markWebSocketAlive, sendBadRequest } from './upgrade-utils.js';
|
|
8
|
+
import { markWebSocketAlive, sendBadRequest, validateWebSocketOrigin } from './upgrade-utils.js';
|
|
9
9
|
export function createChatUpgradeHandler(appContext) {
|
|
10
10
|
const { chatConnectionService, chatEventForwarderService, chatMessageHandlerService, configService, createLogger, sessionFileLogger, sessionDomainService, sessionService, } = appContext.services;
|
|
11
11
|
const logger = createLogger('chat-handler');
|
|
@@ -87,6 +87,15 @@ export function createChatUpgradeHandler(appContext) {
|
|
|
87
87
|
const connectionId = url.searchParams.get('connectionId') || `conn-${randomUUID()}`;
|
|
88
88
|
const dbSessionId = url.searchParams.get('sessionId') || null;
|
|
89
89
|
const rawWorkingDir = url.searchParams.get('workingDir');
|
|
90
|
+
if (!validateWebSocketOrigin({
|
|
91
|
+
request,
|
|
92
|
+
socket,
|
|
93
|
+
configService,
|
|
94
|
+
logger,
|
|
95
|
+
connectionName: 'chat WebSocket',
|
|
96
|
+
})) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
90
99
|
const workingDir = rawWorkingDir ? validateWorkingDir(rawWorkingDir) : null;
|
|
91
100
|
if (rawWorkingDir && !workingDir) {
|
|
92
101
|
logger.warn('Invalid workingDir rejected', { rawWorkingDir, dbSessionId, connectionId });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.handler.js","sourceRoot":"","sources":["../../../../../src/backend/routers/websocket/chat.handler.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAyB,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEvF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.handler.js","sourceRoot":"","sources":["../../../../../src/backend/routers/websocket/chat.handler.ts"],"names":[],"mappings":"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"}
|