factory-factory 0.4.9 → 0.4.10
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 +11 -1
- package/dist/client/assets/{abnfDiagram-VCTEODGH-DzuBdUSN.js → abnfDiagram-YUKMZFIV-D4HT7HRV.js} +1 -1
- package/dist/client/assets/admin-page-C9itdOxc.js +1 -0
- package/dist/client/assets/{alert-2CAe526X.js → alert-C71DJrrA.js} +1 -1
- package/dist/client/assets/appearance-CQMuJmnT.js +1 -0
- package/dist/client/assets/{arc-Pry-7G1_.js → arc-DgcGdgmL.js} +1 -1
- package/dist/client/assets/architecture-WOLXFQ4H-D8_bqkQ5.js +1 -0
- package/dist/client/assets/architectureDiagram-47P4ROYG-CxM4SSCd.js +36 -0
- package/dist/client/assets/{blockDiagram-I7D4REHJ-BY92gQgN.js → blockDiagram-E7TT5TSB-D3i_b0tF.js} +15 -4
- package/dist/client/assets/c4Diagram-CRA5TL53-DRw_Kspi.js +38 -0
- package/dist/client/assets/channel-Dn-6RGIY.js +1 -0
- package/dist/client/assets/chunk-2BW5OAIV-D7Fh7q16.js +10 -0
- package/dist/client/assets/chunk-3YJQHVM4-Cv4f7fui.js +2 -0
- package/dist/client/assets/chunk-4EA7E6EY-DEvab5Cj.js +1 -0
- package/dist/client/assets/{chunk-F27PBJKO-BOnYAGjZ.js → chunk-7TKQ45FW-DOfEinVY.js} +1 -1
- package/dist/client/assets/{chunk-SVP7TREG-BqyZjR36.js → chunk-AW2ZBBNX-DKuwSIkG.js} +3 -3
- package/dist/client/assets/{chunk-GVQU2GXP-rruJzn36.js → chunk-DBDB3WZW-B-ug1jBI.js} +1 -1
- package/dist/client/assets/chunk-DUW6YSOI-Dgx8z5s3.js +1 -0
- package/dist/client/assets/chunk-E2ZNV5FY-D8jkrx68.js +72 -0
- package/dist/client/assets/chunk-EU5HNXII-DKsp15bo.js +213 -0
- package/dist/client/assets/chunk-FVRAUYC3-LeVSaWax.js +2 -0
- package/dist/client/assets/{chunk-PWAF6VOD-DuKrEmQw.js → chunk-HJ2JQQFS-BFDyoyf7.js} +1 -1
- package/dist/client/assets/chunk-HTAEGDNF-DE8nIoPm.js +1 -0
- package/dist/client/assets/chunk-J5ZVWO5B-oDCd-gWO.js +1 -0
- package/dist/client/assets/{chunk-POPQ4Y6H-bdnFdIMc.js → chunk-KQW6MTUR-D2nCtSiJ.js} +1 -1
- package/dist/client/assets/chunk-NGNAAXSQ-DqoPQk1a.js +136 -0
- package/dist/client/assets/chunk-NTY3LDVX-755GZlxB.js +1 -0
- package/dist/client/assets/chunk-VPRB5NB3-mCQI2Mww.js +129 -0
- package/dist/client/assets/chunk-XC4XBNZT-BWS5hnB7.js +62 -0
- package/dist/client/assets/{chunk-XXDRQBXY-DqAYeljN.js → chunk-XXDRQBXY-BvKO0v-W.js} +1 -1
- package/dist/client/assets/classDiagram-v2-K4WV4PDN-sdqcm9aU.js +217 -0
- package/dist/client/assets/{components-CoS_rGt2.js → components-D07CrDpq.js} +1 -1
- package/dist/client/assets/{core-DW3tuXQ3.js → core-Sdbb7b8B.js} +1 -1
- package/dist/client/assets/{cose-bilkent-JH36ORCC-BbJNf1Rj.js → cose-bilkent-JH36ORCC-COXSdE6a.js} +1 -1
- package/dist/client/assets/cynefin-EF2NZ3EQ-rxH1tEn5.js +1 -0
- package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-CGea7wa2.js → cynefinDiagram-3GCD6N5R-DTkD8Svy.js} +1 -1
- package/dist/client/assets/cytoscape.esm-Yq6u8L66.js +321 -0
- package/dist/client/assets/dagre-W4DXFKR2-BkXRTcTP.js +4 -0
- package/dist/client/assets/data-import-button-BaZ1LdcD.js +6 -0
- package/dist/client/assets/detail-DyrsALYc.js +1 -0
- package/dist/client/assets/diagram-2UJZ2QOL-DEd9IdNf.js +200 -0
- package/dist/client/assets/{diagram-VX7I27RA-B2y3VQbR.js → diagram-OVF4WLC6-0v-Y_8KJ.js} +10 -10
- package/dist/client/assets/{diagram-S7CK7UJ4-Drsfjeco.js → diagram-PFPMY2P6-KEYpwiPG.js} +2 -2
- package/dist/client/assets/{diagram-Z3DM3KII-D63_zfy5.js → diagram-UMYRVEAY-zuWMZT7b.js} +1 -1
- package/dist/client/assets/{diagram-UQ7AKVKN-0SrBP_3E.js → diagram-YEKJPTXX-CAtxO1ke.js} +2 -2
- package/dist/client/assets/diagram-ZIFT7M5P-BkBuOWfh.js +3 -0
- package/dist/client/assets/diff-highlight.worker-DSD3kK_J.js +120 -0
- package/dist/client/assets/dist-3wBnkw0J.js +1 -0
- package/dist/client/assets/{dist-DGw3MClt.js → dist-B9ml9sGs.js} +11 -11
- package/dist/client/assets/{dist-v5Q1xZ2K.js → dist-B_J_HbC0.js} +1 -1
- package/dist/client/assets/{ebnfDiagram-PWID7BFC-8gEK-ifx.js → ebnfDiagram-VR2GEFS7-CA9aV4g6.js} +1 -1
- package/dist/client/assets/elk-IJKZMXRS-RvU9G3Pi.js +27 -0
- package/dist/client/assets/{erDiagram-RLTQ6QDP-B2CcHHg7.js → erDiagram-O2IAPWRE-Ci7scJQF.js} +15 -15
- package/dist/client/assets/eventmodeling-K75KTNOO-DHQo3qm_.js +1 -0
- package/dist/client/assets/factory-config-scripts-DUGeIMaa.js +1 -0
- package/dist/client/assets/flowDiagram-OXPTDLAJ-C3caSGlt.js +1 -0
- package/dist/client/assets/ganttDiagram-R7TSEDQI-vYlNmsdY.js +292 -0
- package/dist/client/assets/gitGraph-VSP46ZUC-rAFoVncH.js +1 -0
- package/dist/client/assets/gitGraphDiagram-XJZIOB7I-D5BfHOcN.js +106 -0
- package/dist/client/assets/{home-DRzNpm0E.js → home-DRATUKtF.js} +1 -1
- package/dist/client/assets/{hooks-3rxtNHRh.js → hooks-Cz8Xi41G.js} +1 -1
- package/dist/client/assets/index-BAs5S14v.css +2 -0
- package/dist/client/assets/index-BJJHbKvj.js +82 -0
- package/dist/client/assets/info-OHQRW6UA-gLd3etLY.js +1 -0
- package/dist/client/assets/infoDiagram-5W2HQ5XZ-MjwVeLLO.js +2 -0
- package/dist/client/assets/{ishikawaDiagram-5VMMS53U-KejlLQ1k.js → ishikawaDiagram-K3B6WC7H-DCSCcZr5.js} +2 -2
- package/dist/client/assets/{journeyDiagram-3NMN7TZE-DemWKqD6.js → journeyDiagram-COXZFDF6-dkIv1mnt.js} +3 -3
- package/dist/client/assets/{jsx-runtime-BNakU3Ej.js → jsx-runtime-DKj5X9O4.js} +1 -1
- package/dist/client/assets/{kanban-definition-UXKFOSKX-uRffHAE9.js → kanban-definition-P3RFRI5V-9Ule86Z0.js} +9 -9
- package/dist/client/assets/katex-CqLmZ2j0.js +257 -0
- package/dist/client/assets/{lib-CHy_7XQu.js → lib-CjP4aRTn.js} +1 -1
- package/dist/client/assets/{line-CfCBYCoS.js → line-CdoTFm_e.js} +1 -1
- package/dist/client/assets/{linear-SzVmGSw4.js → linear-BUnzfXgk.js} +1 -1
- package/dist/client/assets/list-7HKvNl3b.js +1 -0
- package/dist/client/assets/list-bu987A4L.js +30 -0
- package/dist/client/assets/logs-CqDAN9kV.js +1 -0
- package/dist/client/assets/mermaid-diagram-j6NMiPfI.js +44 -0
- package/dist/client/assets/{mermaid-parser.core-CpkwJ-8U.js → mermaid-parser.core-cMhM95A-.js} +6 -6
- package/dist/client/assets/{mindmap-definition-YA3MSWOX-DYYi_9Si.js → mindmap-definition-LZFPQGKD-B4STCb11.js} +24 -24
- package/dist/client/assets/mobile-baseline-DngFFGw5.js +10 -0
- package/dist/client/assets/new-CE0ldXKi.js +1 -0
- package/dist/client/assets/new-LuA6H_7l.js +1 -0
- package/dist/client/assets/packet-JDAUHWVQ-QS8JM89I.js +1 -0
- package/dist/client/assets/{page-header-CpSh-j1O.js → page-header-B2NMHJMO.js} +1 -1
- package/dist/client/assets/{pegDiagram-XKGWAZYB-CMAngYAK.js → pegDiagram-BGZESJAR-iihDx98z.js} +1 -1
- package/dist/client/assets/pie-XZMESJXO-CmwD9NEw.js +1 -0
- package/dist/client/assets/{pieDiagram-E7YTZNPT-XGRy7b5E.js → pieDiagram-CAPJLFHJ-pptCiSdZ.js} +2 -2
- package/dist/client/assets/pr-inbox-item-C_lmZmTK.js +2 -0
- package/dist/client/assets/preload-helper-BLdHbfdN.js +1 -0
- package/dist/client/assets/project-repo-form-BYv-VEWF.js +1 -0
- package/dist/client/assets/provider-cli-warning-Dm5A2Q9_.js +1 -0
- package/dist/client/assets/{quadrantDiagram-AXDQQJYC-BFek-axl.js → quadrantDiagram-GDMTTRAM-vwLtkaLj.js} +3 -3
- package/dist/client/assets/radar-ABXABTNO-DvCNdtQs.js +1 -0
- package/dist/client/assets/radio-group-CIOwQgJB.js +1 -0
- package/dist/client/assets/railroad-I3PHUGI6-bGESLDGJ.js +1 -0
- package/dist/client/assets/railroad-abnf-LNEFI6M7-CCmkN-sh.js +1 -0
- package/dist/client/assets/railroad-ebnf-DWYD2UWJ-CX1IEXFW.js +1 -0
- package/dist/client/assets/railroad-peg-JR7BVNR7-c0faYJjC.js +1 -0
- package/dist/client/assets/{railroadDiagram-O6MQD6OU-CBzDTFh9.js → railroadDiagram-SM67HX2B-cpxi5fh_.js} +1 -1
- package/dist/client/assets/redirect-BFuMLYjw.js +1 -0
- package/dist/client/assets/{requirementDiagram-BXWQKSXE-DSgpbBy3.js → requirementDiagram-X7JNWC4A-Bmnu46sQ.js} +11 -11
- package/dist/client/assets/reviews-CtG7yQVl.js +1 -0
- package/dist/client/assets/{rolldown-runtime-hePW80VL.js → rolldown-runtime-Dd_uD5pT.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-P5KCCOFB-BOWaOPXp.js → sankeyDiagram-UM26HJRW-C-iua12L.js} +3 -3
- package/dist/client/assets/schemas-Cq4rE1N1.js +55 -0
- package/dist/client/assets/sequenceDiagram-ZO4K6R2Y-DpiBxc6g.js +169 -0
- package/dist/client/assets/sizeCapture-INFHLROL-3uHXrFqA.js +1 -0
- package/dist/client/assets/{src-B6xuSHsQ.js → src-oBChb5qS.js} +1 -1
- package/dist/client/assets/startup-script-form-BHsS3fuN.js +1 -0
- package/dist/client/assets/stateDiagram-v2-TBUQTH76-DbF2Up2_.js +291 -0
- package/dist/client/assets/swimlanes-N4OXWK64-mSqxJ_S3.js +1 -0
- package/dist/client/assets/swimlanesDiagram-K3J5GTZL-DZP68C_c.js +8 -0
- package/dist/client/assets/{table-CUvMM0aA.js → table-Dq5ReIoh.js} +1 -1
- package/dist/client/assets/tabs-CmuIk7dI.js +1 -0
- package/dist/client/assets/terminal-instance-CKdAL-rO.js +16 -0
- package/dist/client/assets/timeline-definition-YOQAKGHF-DVfeMxWd.js +120 -0
- package/dist/client/assets/treeView-D4JQ5SDB-CJdcCvRA.js +1 -0
- package/dist/client/assets/treemap-SAJKECNS-DTBzxZDt.js +1 -0
- package/dist/client/assets/trpc-DE1PpYK2.js +1 -0
- package/dist/client/assets/use-auto-scroll-BoBYuP1c.js +1 -0
- package/dist/client/assets/{use-download-server-log-efKIcIwE.js → use-download-server-log-eR8QXr94.js} +1 -1
- package/dist/client/assets/use-project-header-navigation-CxCJPOIz.js +1 -0
- package/dist/client/assets/use-websocket-transport-GdeUVWh_.js +1 -0
- package/dist/client/assets/usecaseDiagram-VIAY4XPW-6qohtAb1.js +328 -0
- package/dist/client/assets/vennDiagram-BLWOH2XV-4qw4VNzK.js +34 -0
- package/dist/client/assets/wardley-7MLQ67FV-DV836ODM.js +1 -0
- package/dist/client/assets/{wardleyDiagram-VM6X3IG4-BtqGCwsu.js → wardleyDiagram-YMQ3BMBF-DuXXDidm.js} +3 -3
- package/dist/client/assets/workspace-sidebar-status-TXd1K6xw.js +4 -0
- package/dist/client/assets/xychartDiagram-TAQBALBS-CvkwGxpL.js +7 -0
- package/dist/client/index.html +44 -30
- package/dist/prisma/generated/browser.d.ts +4 -1
- package/dist/prisma/generated/browser.d.ts.map +1 -1
- package/dist/prisma/generated/client.d.ts +4 -1
- package/dist/prisma/generated/client.d.ts.map +1 -1
- package/dist/prisma/generated/commonInputTypes.d.ts +37 -28
- package/dist/prisma/generated/commonInputTypes.d.ts.map +1 -1
- package/dist/prisma/generated/internal/class.d.ts +10 -1
- package/dist/prisma/generated/internal/class.d.ts.map +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 +330 -50
- package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.js +65 -13
- package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +69 -13
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +65 -13
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/prisma/generated/models/AgentSession.d.ts +291 -1
- package/dist/prisma/generated/models/AgentSession.d.ts.map +1 -1
- package/dist/prisma/generated/models/UserSettings.d.ts +315 -29
- package/dist/prisma/generated/models/UserSettings.d.ts.map +1 -1
- package/dist/prisma/generated/models/Workspace.d.ts +715 -262
- package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
- package/dist/prisma/generated/models/WorkspacePR.d.ts +762 -155
- package/dist/prisma/generated/models/WorkspacePR.d.ts.map +1 -1
- package/dist/prisma/generated/models/WorkspacePRDedicatedSession.d.ts +469 -0
- package/dist/prisma/generated/models/WorkspacePRDedicatedSession.d.ts.map +1 -0
- package/dist/prisma/generated/models/WorkspacePRDedicatedSession.js +2 -0
- package/dist/prisma/generated/models/WorkspacePRDedicatedSession.js.map +1 -0
- package/dist/prisma/generated/models/WorkspacePRDiscovery.d.ts +493 -0
- package/dist/prisma/generated/models/WorkspacePRDiscovery.d.ts.map +1 -0
- package/dist/prisma/generated/models/WorkspacePRDiscovery.js +2 -0
- package/dist/prisma/generated/models/WorkspacePRDiscovery.js.map +1 -0
- package/dist/prisma/generated/models/WorkspacePREvent.d.ts +1180 -0
- package/dist/prisma/generated/models/WorkspacePREvent.d.ts.map +1 -0
- package/dist/prisma/generated/models/WorkspacePREvent.js +2 -0
- package/dist/prisma/generated/models/WorkspacePREvent.js.map +1 -0
- package/dist/prisma/generated/models/WorkspacePRMonitoring.d.ts +809 -0
- package/dist/prisma/generated/models/WorkspacePRMonitoring.d.ts.map +1 -0
- package/dist/prisma/generated/models/WorkspacePRMonitoring.js +2 -0
- package/dist/prisma/generated/models/WorkspacePRMonitoring.js.map +1 -0
- package/dist/prisma/generated/models.d.ts +4 -1
- package/dist/prisma/generated/models.d.ts.map +1 -1
- package/dist/prompts/adversarial-review/dispatch.md +93 -0
- package/dist/scripts/check-no-direct-process-env.mjs.map +1 -1
- package/dist/src/backend/app-context.d.ts +7 -3
- package/dist/src/backend/app-context.d.ts.map +1 -1
- package/dist/src/backend/app-context.js +14 -8
- package/dist/src/backend/app-context.js.map +1 -1
- package/dist/src/backend/db.d.ts.map +1 -1
- package/dist/src/backend/db.js +1 -1
- package/dist/src/backend/db.js.map +1 -1
- package/dist/src/backend/lib/request-trust.d.ts +1 -1
- package/dist/src/backend/lib/request-trust.d.ts.map +1 -1
- package/dist/src/backend/lib/request-trust.js +4 -1
- package/dist/src/backend/lib/request-trust.js.map +1 -1
- package/dist/src/backend/lib/request-trust.test.js +4 -0
- package/dist/src/backend/lib/request-trust.test.js.map +1 -1
- package/dist/src/backend/lib/workspace-derived-state.d.ts +5 -3
- package/dist/src/backend/lib/workspace-derived-state.d.ts.map +1 -1
- package/dist/src/backend/lib/workspace-derived-state.js +2 -7
- package/dist/src/backend/lib/workspace-derived-state.js.map +1 -1
- package/dist/src/backend/lib/workspace-derived-state.test.js +6 -21
- package/dist/src/backend/lib/workspace-derived-state.test.js.map +1 -1
- package/dist/src/backend/middleware/cors.middleware.d.ts.map +1 -1
- package/dist/src/backend/middleware/cors.middleware.js +3 -2
- package/dist/src/backend/middleware/cors.middleware.js.map +1 -1
- package/dist/src/backend/middleware/middleware.test.js +12 -0
- package/dist/src/backend/middleware/middleware.test.js.map +1 -1
- package/dist/src/backend/multiple-workspace-prs.migration.test.d.ts +2 -0
- package/dist/src/backend/multiple-workspace-prs.migration.test.d.ts.map +1 -0
- package/dist/src/backend/multiple-workspace-prs.migration.test.js +88 -0
- package/dist/src/backend/multiple-workspace-prs.migration.test.js.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.d.ts +9 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.d.ts.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.js +87 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.js.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.test.d.ts +2 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.test.js +91 -0
- package/dist/src/backend/orchestration/adversarial-review-diff-line-index.test.js.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review-fallback.test.d.ts +2 -0
- package/dist/src/backend/orchestration/adversarial-review-fallback.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review-fallback.test.js +179 -0
- package/dist/src/backend/orchestration/adversarial-review-fallback.test.js.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.d.ts +15 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.d.ts.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.js +264 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.js.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.test.d.ts +2 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.test.js +215 -0
- package/dist/src/backend/orchestration/adversarial-review.orchestrator.test.js.map +1 -0
- package/dist/src/backend/orchestration/data-backup-pr-events.d.ts +417 -0
- package/dist/src/backend/orchestration/data-backup-pr-events.d.ts.map +1 -0
- package/dist/src/backend/orchestration/data-backup-pr-events.js +77 -0
- package/dist/src/backend/orchestration/data-backup-pr-events.js.map +1 -0
- package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.js +125 -67
- package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.test.js +123 -39
- package/dist/src/backend/orchestration/data-backup.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts +4 -5
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.js +34 -53
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js +41 -107
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/event-coalescer.integration.test.js +23 -5
- package/dist/src/backend/orchestration/event-coalescer.integration.test.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.idle-refresh.test.js +1 -0
- package/dist/src/backend/orchestration/event-collector.idle-refresh.test.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.linear.test.js +251 -15
- package/dist/src/backend/orchestration/event-collector.linear.test.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts +1 -0
- package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.js +110 -42
- package/dist/src/backend/orchestration/event-collector.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.test.js +26 -35
- package/dist/src/backend/orchestration/event-collector.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/multiple-pr-attachment.integration.test.d.ts +2 -0
- package/dist/src/backend/orchestration/multiple-pr-attachment.integration.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/multiple-pr-attachment.integration.test.js +97 -0
- package/dist/src/backend/orchestration/multiple-pr-attachment.integration.test.js.map +1 -0
- package/dist/src/backend/orchestration/multiple-pr-backup.integration.test.d.ts +2 -0
- package/dist/src/backend/orchestration/multiple-pr-backup.integration.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/multiple-pr-backup.integration.test.js +532 -0
- package/dist/src/backend/orchestration/multiple-pr-backup.integration.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-attachment.integration.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-attachment.integration.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-attachment.integration.test.js +118 -0
- package/dist/src/backend/orchestration/pr-attachment.integration.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.d.ts +9 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.js +165 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.js.map +1 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.test.js +278 -0
- package/dist/src/backend/orchestration/pr-dedicated-session.orchestrator.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-dependencies.d.ts +5 -0
- package/dist/src/backend/orchestration/pr-delivery-dependencies.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-dependencies.js +45 -0
- package/dist/src/backend/orchestration/pr-delivery-dependencies.js.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.d.ts +3 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.js +21 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.js.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.test.js +34 -0
- package/dist/src/backend/orchestration/pr-delivery-readiness.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-recipient.d.ts +14 -0
- package/dist/src/backend/orchestration/pr-delivery-recipient.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-recipient.js +15 -0
- package/dist/src/backend/orchestration/pr-delivery-recipient.js.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-recovery.d.ts +3 -0
- package/dist/src/backend/orchestration/pr-delivery-recovery.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-delivery-recovery.js +51 -0
- package/dist/src/backend/orchestration/pr-delivery-recovery.js.map +1 -0
- package/dist/src/backend/orchestration/pr-event-delivery-port.d.ts +5 -0
- package/dist/src/backend/orchestration/pr-event-delivery-port.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-event-delivery-port.js +101 -0
- package/dist/src/backend/orchestration/pr-event-delivery-port.js.map +1 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.d.ts +10 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.js +235 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.js.map +1 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.test.js +433 -0
- package/dist/src/backend/orchestration/pr-event-delivery.orchestrator.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-event-flow.integration.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-event-flow.integration.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-event-flow.integration.test.js +299 -0
- package/dist/src/backend/orchestration/pr-event-flow.integration.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-event-projection.d.ts +17 -0
- package/dist/src/backend/orchestration/pr-event-projection.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-event-projection.js +107 -0
- package/dist/src/backend/orchestration/pr-event-projection.js.map +1 -0
- package/dist/src/backend/orchestration/pr-event-projection.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-event-projection.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-event-projection.test.js +61 -0
- package/dist/src/backend/orchestration/pr-event-projection.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-backup.integration.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-monitoring-backup.integration.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-backup.integration.test.js +115 -0
- package/dist/src/backend/orchestration/pr-monitoring-backup.integration.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.d.ts +6 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.js +102 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.test.js +91 -0
- package/dist/src/backend/orchestration/pr-monitoring-cutover.orchestrator.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-dependencies.d.ts +24 -0
- package/dist/src/backend/orchestration/pr-monitoring-dependencies.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-dependencies.js +51 -0
- package/dist/src/backend/orchestration/pr-monitoring-dependencies.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-ports.d.ts +46 -0
- package/dist/src/backend/orchestration/pr-monitoring-ports.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring-ports.js +2 -0
- package/dist/src/backend/orchestration/pr-monitoring-ports.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.d.ts +24 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.js +76 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.js.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.test.js +196 -0
- package/dist/src/backend/orchestration/pr-monitoring.orchestrator.test.js.map +1 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.d.ts +6 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.js +74 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.js.map +1 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.test.d.ts +2 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.test.js +57 -0
- package/dist/src/backend/orchestration/pr-observation.orchestrator.test.js.map +1 -0
- package/dist/src/backend/orchestration/ratchet-projection.worker.d.ts +3 -1
- package/dist/src/backend/orchestration/ratchet-projection.worker.d.ts.map +1 -1
- package/dist/src/backend/orchestration/ratchet-projection.worker.js +13 -5
- package/dist/src/backend/orchestration/ratchet-projection.worker.js.map +1 -1
- package/dist/src/backend/orchestration/ratchet-projection.worker.test.js +39 -13
- package/dist/src/backend/orchestration/ratchet-projection.worker.test.js.map +1 -1
- package/dist/src/backend/orchestration/reconciliation.service.test.js +7 -1
- package/dist/src/backend/orchestration/reconciliation.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/scheduler.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/scheduler.service.js +19 -19
- package/dist/src/backend/orchestration/scheduler.service.js.map +1 -1
- package/dist/src/backend/orchestration/scheduler.service.test.js +67 -44
- package/dist/src/backend/orchestration/scheduler.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.js +5 -10
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.test.js +16 -34
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.streaming.test.js +7 -3
- package/dist/src/backend/orchestration/snapshot-reconciliation.streaming.test.js.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.test-helpers.d.ts.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.test-helpers.js +16 -7
- package/dist/src/backend/orchestration/snapshot-reconciliation.test-helpers.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts +0 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.js +3 -2
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js +2 -0
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init-pr-binding.test.d.ts +2 -0
- package/dist/src/backend/orchestration/workspace-init-pr-binding.test.d.ts.map +1 -0
- package/dist/src/backend/orchestration/workspace-init-pr-binding.test.js +97 -0
- package/dist/src/backend/orchestration/workspace-init-pr-binding.test.js.map +1 -0
- package/dist/src/backend/orchestration/workspace-init-script-pipeline.d.ts +0 -2
- package/dist/src/backend/orchestration/workspace-init-script-pipeline.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init-script-pipeline.js +2 -4
- package/dist/src/backend/orchestration/workspace-init-script-pipeline.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js +20 -4
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.test.d.ts +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.test.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js +4 -163
- package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.test-harness.d.ts +187 -0
- package/dist/src/backend/orchestration/workspace-init.test-harness.d.ts.map +1 -0
- package/dist/src/backend/orchestration/workspace-init.test-harness.js +170 -0
- package/dist/src/backend/orchestration/workspace-init.test-harness.js.map +1 -0
- package/dist/src/backend/orchestration/workspace-runtime-cleanup-notification.test.js +1 -0
- package/dist/src/backend/orchestration/workspace-runtime-cleanup-notification.test.js.map +1 -1
- package/dist/src/backend/pr-delivery-modes.migration.test.d.ts +2 -0
- package/dist/src/backend/pr-delivery-modes.migration.test.d.ts.map +1 -0
- package/dist/src/backend/pr-delivery-modes.migration.test.js +58 -0
- package/dist/src/backend/pr-delivery-modes.migration.test.js.map +1 -0
- package/dist/src/backend/pr-event-ledger.migration.test.d.ts +2 -0
- package/dist/src/backend/pr-event-ledger.migration.test.d.ts.map +1 -0
- package/dist/src/backend/pr-event-ledger.migration.test.js +119 -0
- package/dist/src/backend/pr-event-ledger.migration.test.js.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.d.ts +10 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.d.ts.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.js +60 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.js.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.test.d.ts +2 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.test.d.ts.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.test.js +119 -0
- package/dist/src/backend/prompts/adversarial-review-dispatch.test.js.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.d.ts +36 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.d.ts.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.js +34 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.js.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.test.d.ts +2 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.test.d.ts.map +1 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.test.js +99 -0
- package/dist/src/backend/prompts/adversarial-review-findings.schema.test.js.map +1 -0
- package/dist/src/backend/prompts/pr-event.d.ts +17 -0
- package/dist/src/backend/prompts/pr-event.d.ts.map +1 -0
- package/dist/src/backend/prompts/pr-event.js +85 -0
- package/dist/src/backend/prompts/pr-event.js.map +1 -0
- package/dist/src/backend/prompts/pr-event.test.d.ts +2 -0
- package/dist/src/backend/prompts/pr-event.test.d.ts.map +1 -0
- package/dist/src/backend/prompts/pr-event.test.js +150 -0
- package/dist/src/backend/prompts/pr-event.test.js.map +1 -0
- package/dist/src/backend/routers/websocket/chat.handler.test.js +1 -1
- package/dist/src/backend/routers/websocket/chat.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/index.d.ts +2 -2
- package/dist/src/backend/routers/websocket/index.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/index.js +2 -2
- package/dist/src/backend/routers/websocket/index.js.map +1 -1
- package/dist/src/backend/routers/websocket/upgrade-utils.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/upgrade-utils.js +5 -2
- package/dist/src/backend/routers/websocket/upgrade-utils.js.map +1 -1
- package/dist/src/backend/routers/websocket/upgrade-utils.test.js +33 -2
- package/dist/src/backend/routers/websocket/upgrade-utils.test.js.map +1 -1
- package/dist/src/backend/schemas/websocket/index.d.ts +1 -1
- package/dist/src/backend/schemas/websocket/index.d.ts.map +1 -1
- package/dist/src/backend/schemas/websocket/index.js +1 -1
- package/dist/src/backend/schemas/websocket/index.js.map +1 -1
- package/dist/src/backend/server.js +1 -1
- package/dist/src/backend/server.js.map +1 -1
- 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.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.test.js +69 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.test.js.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/git-ops.d.ts.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/git-ops.integration.test.js +88 -1
- package/dist/src/backend/services/auto-iteration/service/git-ops.integration.test.js.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/git-ops.js +11 -25
- package/dist/src/backend/services/auto-iteration/service/git-ops.js.map +1 -1
- package/dist/src/backend/services/check-single-writer.test.js +51 -50
- package/dist/src/backend/services/check-single-writer.test.js.map +1 -1
- package/dist/src/backend/services/config.service.d.ts +1 -14
- package/dist/src/backend/services/config.service.d.ts.map +1 -1
- package/dist/src/backend/services/config.service.js +7 -38
- package/dist/src/backend/services/config.service.js.map +1 -1
- package/dist/src/backend/services/config.service.test.js +7 -13
- package/dist/src/backend/services/config.service.test.js.map +1 -1
- package/dist/src/backend/services/decision-log/resources/decision-log.accessor.d.ts +0 -9
- package/dist/src/backend/services/decision-log/resources/decision-log.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/decision-log/resources/decision-log.accessor.js +0 -46
- package/dist/src/backend/services/decision-log/resources/decision-log.accessor.js.map +1 -1
- package/dist/src/backend/services/decision-log/service/decision-log.service.d.ts +0 -2
- package/dist/src/backend/services/decision-log/service/decision-log.service.d.ts.map +1 -1
- package/dist/src/backend/services/decision-log/service/decision-log.service.js +0 -6
- package/dist/src/backend/services/decision-log/service/decision-log.service.js.map +1 -1
- package/dist/src/backend/services/decision-log/service/decision-log.service.test.js +0 -12
- package/dist/src/backend/services/decision-log/service/decision-log.service.test.js.map +1 -1
- package/dist/src/backend/services/env-schemas.d.ts +1 -6
- package/dist/src/backend/services/env-schemas.d.ts.map +1 -1
- package/dist/src/backend/services/env-schemas.js +1 -3
- package/dist/src/backend/services/env-schemas.js.map +1 -1
- package/dist/src/backend/services/env-schemas.test.js +0 -2
- package/dist/src/backend/services/env-schemas.test.js.map +1 -1
- package/dist/src/backend/services/github/service/bridges.d.ts +24 -0
- package/dist/src/backend/services/github/service/bridges.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/auth-check.d.ts +7 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.js +24 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.test.js +125 -0
- package/dist/src/backend/services/github/service/github-cli/auth-check.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.d.ts +27 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.js +144 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.test.js +80 -0
- package/dist/src/backend/services/github/service/github-cli/code-review.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/constants.d.ts +3 -0
- package/dist/src/backend/services/github/service/github-cli/constants.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/constants.js +4 -0
- package/dist/src/backend/services/github/service/github-cli/constants.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/mappers.d.ts +4 -2
- package/dist/src/backend/services/github/service/github-cli/mappers.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/mappers.js +14 -8
- package/dist/src/backend/services/github/service/github-cli/mappers.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/mappers.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli/mappers.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/mappers.test.js +76 -0
- package/dist/src/backend/services/github/service/github-cli/mappers.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/resolved-review-comments.d.ts +7 -0
- package/dist/src/backend/services/github/service/github-cli/resolved-review-comments.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/resolved-review-comments.js +21 -0
- package/dist/src/backend/services/github/service/github-cli/resolved-review-comments.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.d.ts +7 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.js +24 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.test.js +98 -0
- package/dist/src/backend/services/github/service/github-cli/reviews.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli/schemas.d.ts +18 -11
- package/dist/src/backend/services/github/service/github-cli/schemas.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/schemas.js +17 -11
- package/dist/src/backend/services/github/service/github-cli/schemas.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/types.d.ts +5 -0
- package/dist/src/backend/services/github/service/github-cli/types.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli-full-details-buffer.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli-full-details-buffer.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli-full-details-buffer.test.js +130 -0
- package/dist/src/backend/services/github/service/github-cli-full-details-buffer.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli-pr-details.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli-pr-details.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli-pr-details.test.js +150 -0
- package/dist/src/backend/services/github/service/github-cli-pr-details.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli-review-authors.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/github-cli-review-authors.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/github-cli-review-authors.test.js +57 -0
- package/dist/src/backend/services/github/service/github-cli-review-authors.test.js.map +1 -0
- package/dist/src/backend/services/github/service/github-cli.service.d.ts +5 -2
- package/dist/src/backend/services/github/service/github-cli.service.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli.service.js +29 -37
- package/dist/src/backend/services/github/service/github-cli.service.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli.service.test.js +24 -116
- package/dist/src/backend/services/github/service/github-cli.service.test.js.map +1 -1
- package/dist/src/backend/services/github/service/index.d.ts +5 -1
- package/dist/src/backend/services/github/service/index.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/index.js +5 -1
- package/dist/src/backend/services/github/service/index.js.map +1 -1
- package/dist/src/backend/services/github/service/pr-actionable-review.d.ts +48 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.js +144 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.js.map +1 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.test.js +377 -0
- package/dist/src/backend/services/github/service/pr-actionable-review.test.js.map +1 -0
- package/dist/src/backend/services/github/service/pr-fetch-coordinator.d.ts +5 -1
- package/dist/src/backend/services/github/service/pr-fetch-coordinator.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/pr-fetch-coordinator.js +21 -3
- package/dist/src/backend/services/github/service/pr-fetch-coordinator.js.map +1 -1
- package/dist/src/backend/services/github/service/pr-observation.service.d.ts +19 -0
- package/dist/src/backend/services/github/service/pr-observation.service.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/pr-observation.service.js +145 -0
- package/dist/src/backend/services/github/service/pr-observation.service.js.map +1 -0
- package/dist/src/backend/services/github/service/pr-observation.service.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/pr-observation.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/pr-observation.service.test.js +166 -0
- package/dist/src/backend/services/github/service/pr-observation.service.test.js.map +1 -0
- package/dist/src/backend/services/github/service/pr-snapshot-collection.service.test.d.ts +2 -0
- package/dist/src/backend/services/github/service/pr-snapshot-collection.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/github/service/pr-snapshot-collection.service.test.js +291 -0
- package/dist/src/backend/services/github/service/pr-snapshot-collection.service.test.js.map +1 -0
- package/dist/src/backend/services/github/service/pr-snapshot.service.d.ts +34 -15
- package/dist/src/backend/services/github/service/pr-snapshot.service.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/pr-snapshot.service.js +173 -195
- package/dist/src/backend/services/github/service/pr-snapshot.service.js.map +1 -1
- package/dist/src/backend/services/github/service/pr-snapshot.service.test.js +100 -634
- package/dist/src/backend/services/github/service/pr-snapshot.service.test.js.map +1 -1
- package/dist/src/backend/services/logger.service.d.ts +0 -4
- package/dist/src/backend/services/logger.service.d.ts.map +1 -1
- package/dist/src/backend/services/logger.service.js +0 -31
- package/dist/src/backend/services/logger.service.js.map +1 -1
- package/dist/src/backend/services/logger.service.test.js +0 -30
- package/dist/src/backend/services/logger.service.test.js.map +1 -1
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts +0 -6
- 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 +0 -21
- 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.js +45 -38
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.test.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/index.d.ts +0 -3
- package/dist/src/backend/services/ratchet/service/index.d.ts.map +1 -1
- package/dist/src/backend/services/ratchet/service/index.js +0 -1
- package/dist/src/backend/services/ratchet/service/index.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet-observation-watcher.test.d.ts +2 -0
- package/dist/src/backend/services/ratchet/service/ratchet-observation-watcher.test.d.ts.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-observation-watcher.test.js +179 -0
- package/dist/src/backend/services/ratchet/service/ratchet-observation-watcher.test.js.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet.service.d.ts +80 -54
- package/dist/src/backend/services/ratchet/service/ratchet.service.d.ts.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.js +156 -547
- package/dist/src/backend/services/ratchet/service/ratchet.service.js.map +1 -1
- package/dist/src/backend/services/rate-limit-backoff.test.js.map +1 -1
- package/dist/src/backend/services/registry.d.ts +3 -3
- package/dist/src/backend/services/registry.d.ts.map +1 -1
- package/dist/src/backend/services/registry.js +13 -3
- package/dist/src/backend/services/registry.js.map +1 -1
- package/dist/src/backend/services/resources.integration.test.js +27 -262
- package/dist/src/backend/services/resources.integration.test.js.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts +12 -20
- 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 +30 -58
- 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 +15 -2
- package/dist/src/backend/services/session/resources/agent-session.accessor.test.js.map +1 -1
- package/dist/src/backend/services/session/resources/closed-session.accessor.d.ts +1 -0
- package/dist/src/backend/services/session/resources/closed-session.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/session/resources/closed-session.accessor.js +7 -0
- package/dist/src/backend/services/session/resources/closed-session.accessor.js.map +1 -1
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.d.ts +28 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.d.ts.map +1 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.js +131 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.js.map +1 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.test.d.ts +2 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.test.js +217 -0
- package/dist/src/backend/services/session/resources/pr-dedicated-session.accessor.test.js.map +1 -0
- package/dist/src/backend/services/session/resources/provider-identity-rollover.integration.test.d.ts +2 -0
- package/dist/src/backend/services/session/resources/provider-identity-rollover.integration.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/resources/provider-identity-rollover.integration.test.js +153 -0
- package/dist/src/backend/services/session/resources/provider-identity-rollover.integration.test.js.map +1 -0
- package/dist/src/backend/services/session/service/acp/acp-client-factory.d.ts +1 -0
- package/dist/src/backend/services/session/service/acp/acp-client-factory.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-factory.js +17 -3
- package/dist/src/backend/services/session/service/acp/acp-client-factory.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-factory.test.js +44 -1
- package/dist/src/backend/services/session/service/acp/acp-client-factory.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-handler.js +12 -9
- package/dist/src/backend/services/session/service/acp/acp-client-handler.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js +5 -0
- package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-permission-bridge.d.ts +3 -1
- package/dist/src/backend/services/session/service/acp/acp-permission-bridge.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-permission-bridge.js +10 -1
- package/dist/src/backend/services/session/service/acp/acp-permission-bridge.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-process-handle.d.ts +3 -0
- package/dist/src/backend/services/session/service/acp/acp-process-handle.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-process-handle.js +3 -1
- package/dist/src/backend/services/session/service/acp/acp-process-handle.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-process-handle.test.js +13 -1
- package/dist/src/backend/services/session/service/acp/acp-process-handle.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-events.d.ts +15 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-events.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test-helpers.d.ts +1 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test-helpers.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test-helpers.js +1 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test-helpers.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-supervisor.creation.test.js +220 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-supervisor.creation.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-supervisor.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-supervisor.js +85 -19
- package/dist/src/backend/services/session/service/acp/acp-runtime-supervisor.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-session-creation-outcome.d.ts +10 -0
- package/dist/src/backend/services/session/service/acp/acp-session-creation-outcome.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/acp/acp-session-creation-outcome.js +2 -0
- package/dist/src/backend/services/session/service/acp/acp-session-creation-outcome.js.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/adversarial-review-permissions.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/adversarial-review-permissions.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/adversarial-review-permissions.test.js +104 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/adversarial-review-permissions.test.js.map +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/protocol-permission-handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/protocol-permission-handler.js +21 -3
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/protocol-permission-handler.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/protocol-permission-handler.test.js +74 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/protocol-permission-handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/index.d.ts +3 -3
- package/dist/src/backend/services/session/service/acp/index.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/index.js +2 -2
- package/dist/src/backend/services/session/service/acp/index.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/types.d.ts +1 -0
- package/dist/src/backend/services/session/service/acp/types.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.recovery.test.js +1 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.recovery.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.test.js +1 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/load-session.handler.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 +11 -1
- 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 +25 -0
- 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/handlers/remove-queued-message.handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/remove-queued-message.handler.js +7 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/remove-queued-message.handler.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.js +6 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.test.js +52 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/resume-queued-messages.handler.test.js.map +1 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/start.handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/start.handler.js +5 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/start.handler.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/start.handler.test.js +62 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/start.handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/user-input.handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/user-input.handler.js +5 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/user-input.handler.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/user-input.handler.test.js +46 -2
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/user-input.handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/types.d.ts +8 -0
- 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.pr-events.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.pr-events.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.pr-events.test.js +389 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.pr-events.test.js.map +1 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts +3 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js +105 -15
- 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 +1 -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/session-data.dedicated.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/data/session-data.dedicated.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/data/session-data.dedicated.test.js +66 -0
- package/dist/src/backend/services/session/service/data/session-data.dedicated.test.js.map +1 -0
- package/dist/src/backend/services/session/service/data/session-data.service.d.ts +9 -9
- 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 +33 -5
- package/dist/src/backend/services/session/service/data/session-data.service.js.map +1 -1
- package/dist/src/backend/services/session/service/data/session-data.service.test.js +19 -31
- package/dist/src/backend/services/session/service/data/session-data.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/data/session-provider-resolver.service.test.js +11 -2
- 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 +7 -3
- package/dist/src/backend/services/session/service/index.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/index.js +6 -2
- package/dist/src/backend/services/session/service/index.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.js +6 -1
- package/dist/src/backend/services/session/service/lifecycle/acp-event-processor.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/adversarial-review-startup.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/adversarial-review-startup.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/adversarial-review-startup.test.js +310 -0
- package/dist/src/backend/services/session/service/lifecycle/adversarial-review-startup.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.d.ts +7 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.js +4 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.test.js +56 -0
- package/dist/src/backend/services/session/service/lifecycle/claude-model-catalog.service.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/closed-session-persistence.service.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/closed-session-persistence.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/closed-session-persistence.service.js +2 -1
- package/dist/src/backend/services/session/service/lifecycle/closed-session-persistence.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/closed-session-persistence.service.test.js +5 -0
- package/dist/src/backend/services/session/service/lifecycle/closed-session-persistence.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/codex-model-catalog.service.d.ts +2 -8
- package/dist/src/backend/services/session/service/lifecycle/codex-model-catalog.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/codex-model-catalog.service.js +2 -23
- package/dist/src/backend/services/session/service/lifecycle/codex-model-catalog.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/model-catalog-cache.d.ts +10 -0
- package/dist/src/backend/services/session/service/lifecycle/model-catalog-cache.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/model-catalog-cache.js +25 -0
- package/dist/src/backend/services/session/service/lifecycle/model-catalog-cache.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.d.ts +57 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.js +133 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.test.js +224 -0
- package/dist/src/backend/services/session/service/lifecycle/session-background-delivery.service.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-context.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-context.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-context.service.test.js +4 -2
- package/dist/src/backend/services/session/service/lifecycle/session-context.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-core-services.d.ts +5 -3
- package/dist/src/backend/services/session/service/lifecycle/session-core-services.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-core-services.js +20 -8
- package/dist/src/backend/services/session/service/lifecycle/session-core-services.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-legacy-runtime-exit.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-legacy-runtime-exit.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-legacy-runtime-exit.test.js +231 -0
- package/dist/src/backend/services/session/service/lifecycle/session-legacy-runtime-exit.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-external-ports.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-external-ports.js +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-external-ports.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-external-ports.test.js +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-external-ports.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle-gate.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle.test-helpers.d.ts +6 -5
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle.test-helpers.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle.test-helpers.js +16 -5
- package/dist/src/backend/services/session/service/lifecycle/session-lifecycle.test-helpers.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-notification-delivery.service.d.ts +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-notification-delivery.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-notification-delivery.service.js +3 -3
- package/dist/src/backend/services/session/service/lifecycle/session-notification-delivery.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-notification-delivery.service.test.js +10 -0
- package/dist/src/backend/services/session/service/lifecycle/session-notification-delivery.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-permission-policy.d.ts +7 -0
- package/dist/src/backend/services/session/service/lifecycle/session-permission-policy.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-permission-policy.js +98 -0
- package/dist/src/backend/services/session/service/lifecycle/session-permission-policy.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.js +115 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.test.js +137 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-receipt.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-resume-config.d.ts +4 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-resume-config.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-resume-config.js +38 -0
- package/dist/src/backend/services/session/service/lifecycle/session-pr-resume-config.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.js +10 -1
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.test.js +191 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-history-hydrator.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.d.ts +16 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.js +86 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.test.js +166 -0
- package/dist/src/backend/services/session/service/lifecycle/session-provider-identity.service.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-exit.coordinator.d.ts +5 -3
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-exit.coordinator.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-exit.coordinator.js +18 -2
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-exit.coordinator.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-exit.coordinator.test.js +48 -1
- package/dist/src/backend/services/session/service/lifecycle/session-runtime-exit.coordinator.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-services.composition.test.js +3 -1
- package/dist/src/backend/services/session/service/lifecycle/session-services.composition.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-services.d.ts +2 -2
- package/dist/src/backend/services/session/service/lifecycle/session-services.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-services.js +3 -2
- package/dist/src/backend/services/session/service/lifecycle/session-services.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-startup.coordinator.d.ts +18 -6
- package/dist/src/backend/services/session/service/lifecycle/session-startup.coordinator.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-startup.coordinator.js +231 -79
- package/dist/src/backend/services/session/service/lifecycle/session-startup.coordinator.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-startup.coordinator.test.js +20 -12
- package/dist/src/backend/services/session/service/lifecycle/session-startup.coordinator.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-startup.guards.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.guards.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.guards.test.js +193 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.guards.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.pr-events.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.pr-events.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.pr-events.test.js +258 -0
- package/dist/src/backend/services/session/service/lifecycle/session-startup.pr-events.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session-termination.coordinator.d.ts +5 -4
- package/dist/src/backend/services/session/service/lifecycle/session-termination.coordinator.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-termination.coordinator.js +50 -11
- package/dist/src/backend/services/session/service/lifecycle/session-termination.coordinator.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-termination.coordinator.test.js +177 -8
- package/dist/src/backend/services/session/service/lifecycle/session-termination.coordinator.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-finalizer.d.ts +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-finalizer.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-finalizer.js +5 -3
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-finalizer.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-finalizer.test.js +21 -3
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-finalizer.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-permissions.d.ts +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-permissions.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-permissions.js +3 -3
- package/dist/src/backend/services/session/service/lifecycle/session-workflow-permissions.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.config.service.d.ts +2 -2
- 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 +33 -50
- 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 +3 -3
- 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.facade.test.js +2 -15
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.facade.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts +1 -3
- 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 +0 -4
- 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.question-classification.test.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.question-classification.test.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.question-classification.test.js +96 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.question-classification.test.js.map +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.d.ts +1 -2
- 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 +25 -46
- 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 +62 -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.prompt.service.test.js +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.prompt.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts +5 -1
- 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 +56 -1
- 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 +76 -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.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.test.js +8 -131
- package/dist/src/backend/services/session/service/lifecycle/session.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/session-domain.service.d.ts +7 -2
- package/dist/src/backend/services/session/service/session-domain.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/session-domain.service.js +55 -15
- package/dist/src/backend/services/session/service/session-domain.service.js.map +1 -1
- package/dist/src/backend/services/session/service/session-domain.service.test.js +0 -7
- package/dist/src/backend/services/session/service/session-domain.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/session-resume-fence.d.ts +8 -0
- package/dist/src/backend/services/session/service/session-resume-fence.d.ts.map +1 -0
- package/dist/src/backend/services/session/service/session-resume-fence.js +19 -0
- package/dist/src/backend/services/session/service/session-resume-fence.js.map +1 -0
- package/dist/src/backend/services/session/service/store/session-queue.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/store/session-queue.js +7 -1
- package/dist/src/backend/services/session/service/store/session-queue.js.map +1 -1
- package/dist/src/backend/services/session/service/store/session-replay-builder.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/store/session-replay-builder.js +2 -3
- package/dist/src/backend/services/session/service/store/session-replay-builder.js.map +1 -1
- package/dist/src/backend/services/session/service/store/session-replay-builder.test.js +21 -0
- package/dist/src/backend/services/session/service/store/session-replay-builder.test.js.map +1 -1
- package/dist/src/backend/services/session/service/store/session-store-registry.d.ts +1 -0
- package/dist/src/backend/services/session/service/store/session-store-registry.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/store/session-store-registry.js +3 -0
- package/dist/src/backend/services/session/service/store/session-store-registry.js.map +1 -1
- package/dist/src/backend/services/session/service/store/session-store.types.d.ts +3 -0
- package/dist/src/backend/services/session/service/store/session-store.types.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/store/session-transcript.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/store/session-transcript.js +16 -0
- package/dist/src/backend/services/session/service/store/session-transcript.js.map +1 -1
- package/dist/src/backend/services/session/service/store/session-transcript.test.js +27 -0
- package/dist/src/backend/services/session/service/store/session-transcript.test.js.map +1 -1
- package/dist/src/backend/services/session/types.d.ts +15 -0
- package/dist/src/backend/services/session/types.d.ts.map +1 -1
- package/dist/src/backend/services/settings/resources/data-backup.accessor.d.ts +8 -2
- package/dist/src/backend/services/settings/resources/data-backup.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/settings/resources/data-backup.accessor.js +8 -1
- package/dist/src/backend/services/settings/resources/data-backup.accessor.js.map +1 -1
- package/dist/src/backend/services/settings/resources/user-settings.accessor.d.ts +11 -1
- 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 +47 -4
- package/dist/src/backend/services/settings/resources/user-settings.accessor.js.map +1 -1
- package/dist/src/backend/services/settings/resources/user-settings.accessor.test.js +31 -0
- package/dist/src/backend/services/settings/resources/user-settings.accessor.test.js.map +1 -1
- package/dist/src/backend/services/settings/service/index.d.ts +1 -0
- package/dist/src/backend/services/settings/service/index.d.ts.map +1 -1
- package/dist/src/backend/services/settings/service/index.js.map +1 -1
- package/dist/src/backend/services/settings/service/user-settings.service.d.ts +11 -1
- package/dist/src/backend/services/settings/service/user-settings.service.d.ts.map +1 -1
- package/dist/src/backend/services/settings/service/user-settings.service.js.map +1 -1
- package/dist/src/backend/services/terminal/service/terminal-session.service.d.ts +0 -1
- package/dist/src/backend/services/terminal/service/terminal-session.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace-pr-aggregate.accessor.d.ts +61 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-aggregate.accessor.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-aggregate.accessor.js +35 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-aggregate.accessor.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-collection.accessor.integration.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-collection.accessor.integration.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-collection.accessor.integration.test.js +246 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-collection.accessor.integration.test.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-delivery-modes.accessor.integration.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-delivery-modes.accessor.integration.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-delivery-modes.accessor.integration.test.js +581 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-delivery-modes.accessor.integration.test.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-discovery.accessor.d.ts +73 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-discovery.accessor.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-discovery.accessor.js +74 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-discovery.accessor.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-event.accessor.d.ts +66 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-event.accessor.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-event.accessor.js +269 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-event.accessor.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-lifecycle.accessor.integration.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-lifecycle.accessor.integration.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-lifecycle.accessor.integration.test.js +410 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-lifecycle.accessor.integration.test.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.d.ts +151 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.integration.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.integration.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.integration.test.js +250 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.integration.test.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.js +275 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr-monitoring.accessor.js.map +1 -0
- package/dist/src/backend/services/workspace/resources/workspace-pr.accessor.d.ts +203 -24
- package/dist/src/backend/services/workspace/resources/workspace-pr.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace-pr.accessor.js +273 -164
- package/dist/src/backend/services/workspace/resources/workspace-pr.accessor.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace-pr.accessor.test.js +14 -339
- package/dist/src/backend/services/workspace/resources/workspace-pr.accessor.test.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace-ratchet.accessor.d.ts +52 -42
- package/dist/src/backend/services/workspace/resources/workspace-ratchet.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace-ratchet.accessor.js +34 -176
- package/dist/src/backend/services/workspace/resources/workspace-ratchet.accessor.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace-ratchet.accessor.test.js +82 -334
- package/dist/src/backend/services/workspace/resources/workspace-ratchet.accessor.test.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts +61 -35
- package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.js +80 -80
- package/dist/src/backend/services/workspace/resources/workspace.accessor.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.test.js +76 -288
- package/dist/src/backend/services/workspace/resources/workspace.accessor.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/bridges.d.ts +1 -1
- package/dist/src/backend/services/workspace/service/bridges.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/index.d.ts +2 -2
- package/dist/src/backend/services/workspace/service/index.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/index.js +2 -2
- package/dist/src/backend/services/workspace/service/index.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js +33 -8
- 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 +143 -61
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.js +4 -2
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-monitoring.service.d.ts +167 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-monitoring.service.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-monitoring.service.js +23 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-monitoring.service.js.map +1 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.d.ts +106 -2
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.integration.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.integration.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.integration.test.js +83 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.integration.test.js.map +1 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.js +24 -6
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.test.js +2 -0
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-pr-snapshot.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-relationships.service.d.ts +78 -43
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-relationships.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-run-script.service.d.ts +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-run-script.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-run-script.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-state-capabilities.test.js +0 -15
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-state-capabilities.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts +0 -2
- package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-maintenance.service.d.ts +219 -54
- package/dist/src/backend/services/workspace/service/query/workspace-maintenance.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-maintenance.service.js +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-maintenance.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query-git.service.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-git.service.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-git.service.test.js +51 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-git.service.test.js.map +1 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-pr-sync.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-pr-sync.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-pr-sync.test.js +25 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query-pr-sync.test.js.map +1 -0
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts +25 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.js +17 -7
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.test.js +91 -56
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-pr-equality.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-pr-equality.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-pr-equality.test.js +41 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-pr-equality.test.js.map +1 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.pr-monitoring.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.pr-monitoring.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.pr-monitoring.test.js +80 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.pr-monitoring.test.js.map +1 -0
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.service.d.ts +7 -4
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.service.js +21 -11
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.service.test.js +24 -42
- package/dist/src/backend/services/workspace/service/snapshot/workspace-snapshot-store.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/flow-state.d.ts +1 -21
- package/dist/src/backend/services/workspace/service/state/flow-state.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/state/flow-state.js +1 -107
- package/dist/src/backend/services/workspace/service/state/flow-state.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/pending-request-type.d.ts +1 -0
- package/dist/src/backend/services/workspace/service/state/pending-request-type.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/state/pending-request-type.js +1 -1
- package/dist/src/backend/services/workspace/service/state/pending-request-type.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/pending-request-type.test.js +30 -2
- package/dist/src/backend/services/workspace/service/state/pending-request-type.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/workspace-domain-exports.test.js +2 -2
- package/dist/src/backend/services/workspace/service/workspace-domain-exports.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/worktree/git-clone.case-sensitivity.test.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/worktree/git-clone.case-sensitivity.test.d.ts.map +1 -0
- package/dist/src/backend/services/workspace/service/worktree/git-clone.case-sensitivity.test.js +98 -0
- package/dist/src/backend/services/workspace/service/worktree/git-clone.case-sensitivity.test.js.map +1 -0
- package/dist/src/backend/services/workspace/service/worktree/git-clone.service.d.ts +16 -17
- package/dist/src/backend/services/workspace/service/worktree/git-clone.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/worktree/git-clone.service.js +94 -45
- package/dist/src/backend/services/workspace/service/worktree/git-clone.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/worktree/git-clone.service.test.js +269 -0
- package/dist/src/backend/services/workspace/service/worktree/git-clone.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.test.js +1 -1
- package/dist/src/backend/services/workspace/service/worktree/worktree-lifecycle.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/types.d.ts +6 -1
- package/dist/src/backend/services/workspace/types.d.ts.map +1 -1
- package/dist/src/backend/services/workspace-git-state.service.js.map +1 -1
- package/dist/src/backend/testing/check-lint-suppressions-script.test.d.ts +2 -0
- package/dist/src/backend/testing/check-lint-suppressions-script.test.d.ts.map +1 -0
- package/dist/src/backend/testing/check-lint-suppressions-script.test.js +120 -0
- package/dist/src/backend/testing/check-lint-suppressions-script.test.js.map +1 -0
- package/dist/src/backend/testing/dependency-security-patches.test.d.ts +2 -0
- package/dist/src/backend/testing/dependency-security-patches.test.d.ts.map +1 -0
- package/dist/src/backend/testing/dependency-security-patches.test.js +60 -0
- package/dist/src/backend/testing/dependency-security-patches.test.js.map +1 -0
- package/dist/src/backend/testing/integration-db.d.ts.map +1 -1
- package/dist/src/backend/testing/integration-db.js +1 -1
- package/dist/src/backend/testing/integration-db.js.map +1 -1
- package/dist/src/backend/testing/lint-migration-parity.test.d.ts +2 -0
- package/dist/src/backend/testing/lint-migration-parity.test.d.ts.map +1 -0
- package/dist/src/backend/testing/lint-migration-parity.test.js +71 -0
- package/dist/src/backend/testing/lint-migration-parity.test.js.map +1 -0
- package/dist/src/backend/testing/npm-publish-workflow.test.js +2 -1
- package/dist/src/backend/testing/npm-publish-workflow.test.js.map +1 -1
- package/dist/src/backend/testing/oxlint-factory-rules.test.d.ts +2 -0
- package/dist/src/backend/testing/oxlint-factory-rules.test.d.ts.map +1 -0
- package/dist/src/backend/testing/oxlint-factory-rules.test.js +71 -0
- package/dist/src/backend/testing/oxlint-factory-rules.test.js.map +1 -0
- package/dist/src/backend/testing/pr-projection-fixture.d.ts +18 -0
- package/dist/src/backend/testing/pr-projection-fixture.d.ts.map +1 -0
- package/dist/src/backend/testing/pr-projection-fixture.js +11 -0
- package/dist/src/backend/testing/pr-projection-fixture.js.map +1 -0
- package/dist/src/backend/trpc/admin.router.test.js +4 -1
- package/dist/src/backend/trpc/admin.router.test.js.map +1 -1
- package/dist/src/backend/trpc/admin.trpc.d.ts +1952 -5
- package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/adversarial-review.trpc.d.ts +26 -0
- package/dist/src/backend/trpc/adversarial-review.trpc.d.ts.map +1 -0
- package/dist/src/backend/trpc/adversarial-review.trpc.js +10 -0
- package/dist/src/backend/trpc/adversarial-review.trpc.js.map +1 -0
- package/dist/src/backend/trpc/github.router.test.js +0 -37
- package/dist/src/backend/trpc/github.router.test.js.map +1 -1
- package/dist/src/backend/trpc/github.trpc.d.ts +0 -29
- package/dist/src/backend/trpc/github.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/github.trpc.js +0 -56
- package/dist/src/backend/trpc/github.trpc.js.map +1 -1
- package/dist/src/backend/trpc/index.d.ts +2181 -235
- package/dist/src/backend/trpc/index.d.ts.map +1 -1
- package/dist/src/backend/trpc/index.js +2 -0
- package/dist/src/backend/trpc/index.js.map +1 -1
- package/dist/src/backend/trpc/model-catalog.integration.test.js +1 -1
- package/dist/src/backend/trpc/model-catalog.integration.test.js.map +1 -1
- package/dist/src/backend/trpc/project.router.test.js +85 -10
- package/dist/src/backend/trpc/project.router.test.js.map +1 -1
- package/dist/src/backend/trpc/project.slash-command-precedence.test.d.ts +2 -0
- package/dist/src/backend/trpc/project.slash-command-precedence.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/project.slash-command-precedence.test.js +69 -0
- package/dist/src/backend/trpc/project.slash-command-precedence.test.js.map +1 -0
- package/dist/src/backend/trpc/project.trpc.d.ts +9 -8
- package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/project.trpc.js +10 -7
- package/dist/src/backend/trpc/project.trpc.js.map +1 -1
- package/dist/src/backend/trpc/session.router.test.js.map +1 -1
- package/dist/src/backend/trpc/session.trpc.d.ts +1 -1
- package/dist/src/backend/trpc/trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/trpc.js +1 -1
- package/dist/src/backend/trpc/trpc.js.map +1 -1
- package/dist/src/backend/trpc/user-settings.router.test.js +66 -10
- package/dist/src/backend/trpc/user-settings.router.test.js.map +1 -1
- package/dist/src/backend/trpc/user-settings.trpc.d.ts +33 -3
- package/dist/src/backend/trpc/user-settings.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/user-settings.trpc.js +18 -7
- package/dist/src/backend/trpc/user-settings.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/children.trpc.d.ts +22 -1
- package/dist/src/backend/trpc/workspace/children.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/children.trpc.js +5 -1
- package/dist/src/backend/trpc/workspace/children.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/init.router.test.js +0 -2
- package/dist/src/backend/trpc/workspace/init.router.test.js.map +1 -1
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts +36 -18
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +70 -35
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace-pr-actions.test.d.ts +2 -0
- package/dist/src/backend/trpc/workspace-pr-actions.test.d.ts.map +1 -0
- package/dist/src/backend/trpc/workspace-pr-actions.test.js +44 -0
- package/dist/src/backend/trpc/workspace-pr-actions.test.js.map +1 -0
- package/dist/src/backend/trpc/workspace.router.test.js +47 -5
- package/dist/src/backend/trpc/workspace.router.test.js.map +1 -1
- package/dist/src/backend/trpc/workspace.trpc.d.ts +268 -363
- package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace.trpc.js +50 -33
- package/dist/src/backend/trpc/workspace.trpc.js.map +1 -1
- package/dist/src/shared/acp-protocol/protocol/messages.d.ts +1 -1
- package/dist/src/shared/acp-protocol/protocol/messages.d.ts.map +1 -1
- package/dist/src/shared/acp-protocol/protocol/messages.js +1 -0
- package/dist/src/shared/acp-protocol/protocol/messages.js.map +1 -1
- package/dist/src/shared/acp-protocol/protocol/queued.d.ts +5 -0
- package/dist/src/shared/acp-protocol/protocol/queued.d.ts.map +1 -1
- package/dist/src/shared/acp-protocol/question-input.d.ts +9 -0
- package/dist/src/shared/acp-protocol/question-input.d.ts.map +1 -0
- package/dist/src/shared/acp-protocol/question-input.js +34 -0
- package/dist/src/shared/acp-protocol/question-input.js.map +1 -0
- package/dist/src/shared/adversarial-review.d.ts +4 -0
- package/dist/src/shared/adversarial-review.d.ts.map +1 -0
- package/dist/src/shared/adversarial-review.js +6 -0
- package/dist/src/shared/adversarial-review.js.map +1 -0
- package/dist/src/shared/appearance.d.ts +69 -0
- package/dist/src/shared/appearance.d.ts.map +1 -0
- package/dist/src/shared/appearance.js +151 -0
- package/dist/src/shared/appearance.js.map +1 -0
- package/dist/src/shared/chat-capabilities.d.ts +0 -16
- package/dist/src/shared/chat-capabilities.d.ts.map +1 -1
- package/dist/src/shared/chat-capabilities.js +0 -113
- package/dist/src/shared/chat-capabilities.js.map +1 -1
- package/dist/src/shared/core/index.d.ts +1 -1
- package/dist/src/shared/core/index.d.ts.map +1 -1
- package/dist/src/shared/core/index.js +1 -1
- package/dist/src/shared/core/index.js.map +1 -1
- package/dist/src/shared/core/workspace-sidebar-status.d.ts +4 -1
- package/dist/src/shared/core/workspace-sidebar-status.d.ts.map +1 -1
- package/dist/src/shared/core/workspace-sidebar-status.js +1 -25
- package/dist/src/shared/core/workspace-sidebar-status.js.map +1 -1
- package/dist/src/shared/github-types.d.ts +4 -1
- package/dist/src/shared/github-types.d.ts.map +1 -1
- package/dist/src/shared/github-url.d.ts +6 -0
- package/dist/src/shared/github-url.d.ts.map +1 -0
- package/dist/src/shared/github-url.js +20 -0
- package/dist/src/shared/github-url.js.map +1 -0
- package/dist/src/shared/kanban-column-projection.d.ts.map +1 -1
- package/dist/src/shared/kanban-column-projection.js +6 -1
- package/dist/src/shared/kanban-column-projection.js.map +1 -1
- package/dist/src/shared/pending-request-types.d.ts +2 -7
- package/dist/src/shared/pending-request-types.d.ts.map +1 -1
- package/dist/src/shared/pending-request-types.js +1 -14
- package/dist/src/shared/pending-request-types.js.map +1 -1
- package/dist/src/shared/pr-monitoring.d.ts +67 -0
- package/dist/src/shared/pr-monitoring.d.ts.map +1 -0
- package/dist/src/shared/pr-monitoring.js +159 -0
- package/dist/src/shared/pr-monitoring.js.map +1 -0
- package/dist/src/shared/pr-monitoring.test-helpers.d.ts +3 -0
- package/dist/src/shared/pr-monitoring.test-helpers.d.ts.map +1 -0
- package/dist/src/shared/pr-monitoring.test-helpers.js +29 -0
- package/dist/src/shared/pr-monitoring.test-helpers.js.map +1 -0
- package/dist/src/shared/schemas/export-data-pr-validation.d.ts +39 -0
- package/dist/src/shared/schemas/export-data-pr-validation.d.ts.map +1 -0
- package/dist/src/shared/schemas/export-data-pr-validation.js +67 -0
- package/dist/src/shared/schemas/export-data-pr-validation.js.map +1 -0
- package/dist/src/shared/schemas/export-data.schema.d.ts +4052 -9
- package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
- package/dist/src/shared/schemas/export-data.schema.js +195 -4
- package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
- package/dist/src/shared/schemas/pr-event.schema.d.ts +898 -0
- package/dist/src/shared/schemas/pr-event.schema.d.ts.map +1 -0
- package/dist/src/shared/schemas/pr-event.schema.js +76 -0
- package/dist/src/shared/schemas/pr-event.schema.js.map +1 -0
- package/dist/src/shared/schemas/pr-monitoring-backup.schema.d.ts +531 -0
- package/dist/src/shared/schemas/pr-monitoring-backup.schema.d.ts.map +1 -0
- package/dist/src/shared/schemas/pr-monitoring-backup.schema.js +76 -0
- package/dist/src/shared/schemas/pr-monitoring-backup.schema.js.map +1 -0
- package/dist/src/shared/websocket/chat-message.schema.d.ts +1 -0
- package/dist/src/shared/websocket/chat-message.schema.d.ts.map +1 -1
- package/dist/src/shared/websocket/chat-message.schema.js +5 -1
- package/dist/src/shared/websocket/chat-message.schema.js.map +1 -1
- package/dist/src/shared/workspace-flow-state.d.ts +21 -0
- package/dist/src/shared/workspace-flow-state.d.ts.map +1 -1
- package/dist/src/shared/workspace-flow-state.js +116 -0
- package/dist/src/shared/workspace-flow-state.js.map +1 -1
- package/dist/src/shared/workspace-pr-summary.d.ts +35 -0
- package/dist/src/shared/workspace-pr-summary.d.ts.map +1 -0
- package/dist/src/shared/workspace-pr-summary.js +62 -0
- package/dist/src/shared/workspace-pr-summary.js.map +1 -0
- package/dist/src/shared/workspace-pr.d.ts +29 -0
- package/dist/src/shared/workspace-pr.d.ts.map +1 -0
- package/dist/src/shared/workspace-pr.js +16 -0
- package/dist/src/shared/workspace-pr.js.map +1 -0
- package/dist/src/shared/workspace-sidebar-status.d.ts +1 -1
- package/dist/src/shared/workspace-sidebar-status.d.ts.map +1 -1
- package/dist/src/shared/workspace-sidebar-status.js +1 -1
- package/dist/src/shared/workspace-sidebar-status.js.map +1 -1
- package/dist/src/shared/workspace-snapshot.d.ts +360 -35
- package/dist/src/shared/workspace-snapshot.d.ts.map +1 -1
- package/dist/src/shared/workspace-snapshot.js +22 -4
- package/dist/src/shared/workspace-snapshot.js.map +1 -1
- package/dist/src/shared/workspace-status-reason.d.ts +3 -1
- package/dist/src/shared/workspace-status-reason.d.ts.map +1 -1
- package/dist/src/shared/workspace-status-reason.js +29 -7
- package/dist/src/shared/workspace-status-reason.js.map +1 -1
- package/dist/src/test-utils/application-graph.d.ts +0 -6
- package/dist/src/test-utils/application-graph.d.ts.map +1 -1
- package/dist/src/test-utils/application-graph.js +21 -17
- package/dist/src/test-utils/application-graph.js.map +1 -1
- package/dist/tsconfig.backend.tsbuildinfo +1 -1
- package/package.json +86 -70
- package/prisma/migrations/20260916235822_add_adversarial_review_settings/migration.sql +42 -0
- package/prisma/migrations/20261008120000_multiple_workspace_prs/migration.sql +49 -0
- package/prisma/migrations/20261008130000_pr_event_ledger/migration.sql +43 -0
- package/prisma/migrations/20261008140000_pr_monitoring_cutover/migration.sql +18 -0
- package/prisma/migrations/20261008150000_pr_delivery_identity/migration.sql +3 -0
- package/prisma/migrations/20261009120000_pr_delivery_modes/migration.sql +10 -0
- package/prisma/migrations/20261011120000_add_appearance_settings/migration.sql +7 -0
- package/prisma/schema.prisma +104 -96
- package/prompts/adversarial-review/dispatch.md +93 -0
- package/scripts/postinstall.mjs +62 -67
- package/dist/client/assets/Archive.es-moH8rDRO.js +0 -1
- package/dist/client/assets/ArrowLeft.es-CVl_zVBC.js +0 -1
- package/dist/client/assets/admin-page-CAsPxzW9.js +0 -1
- package/dist/client/assets/alert-dialog-8vhMuR-k.js +0 -1
- package/dist/client/assets/architecture-7GRP2DOG-Bcwjoi8B.js +0 -1
- package/dist/client/assets/architectureDiagram-5GKGNRK7-CeuoQvaW.js +0 -36
- package/dist/client/assets/badge-CoDH1rER.js +0 -1
- package/dist/client/assets/c4Diagram-7LVT6UL2-D5TNBYXh.js +0 -38
- package/dist/client/assets/channel-NEbtzeVB.js +0 -1
- package/dist/client/assets/chunk-4HAMMTFA-DBbX-wzu.js +0 -62
- package/dist/client/assets/chunk-75Z2AOVW-962-yyBD.js +0 -2
- package/dist/client/assets/chunk-DU6HZSFF-CHHMX1CR.js +0 -127
- package/dist/client/assets/chunk-FOHPRMQF-CoA4358r.js +0 -161
- package/dist/client/assets/chunk-GMAD6QVW-DQF31PdR.js +0 -72
- package/dist/client/assets/chunk-IMKFNOWR-GIKO0MCA.js +0 -231
- package/dist/client/assets/chunk-L3NEJ4N5-USlKRxmU.js +0 -1
- package/dist/client/assets/chunk-OSK3NFVY-DYQeYWNP.js +0 -10
- package/dist/client/assets/chunk-P2QGCYS3-SDkZ9hQX.js +0 -1
- package/dist/client/assets/chunk-SHT3W25Y-BnWDS29f.js +0 -168
- package/dist/client/assets/chunk-TICWLB2K-ZCb3dlre.js +0 -206
- package/dist/client/assets/ci-status-cs76P3se.js +0 -1
- package/dist/client/assets/classDiagram-ZZMXUADV-zE_E4kYq.js +0 -1
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-zE_E4kYq.js +0 -1
- package/dist/client/assets/confirm-dialog-CfvO9f42.js +0 -1
- package/dist/client/assets/cynefin-OW5HDTMX-Ci2WypGa.js +0 -1
- package/dist/client/assets/cytoscape.esm-B-1iW2ft.js +0 -321
- package/dist/client/assets/dagre-C-rnJpZF.js +0 -1
- package/dist/client/assets/dagre-GXQ25YYZ-CJcHs09G.js +0 -4
- package/dist/client/assets/data-import-button-cvKmYZJe.js +0 -6
- package/dist/client/assets/detail-C3U9ED1b.js +0 -1
- package/dist/client/assets/diagram-VSXAHHWV-DB2rqHgv.js +0 -3
- package/dist/client/assets/diff-highlight.worker-FEJq0yPv.js +0 -60
- package/dist/client/assets/dist-BO6Gz-vk.js +0 -1
- package/dist/client/assets/en-US-C-x19js7.js +0 -1
- package/dist/client/assets/eventmodeling-NTZA5JFV-DqUwwD9w.js +0 -1
- package/dist/client/assets/factory-config-scripts-C2BfO5od.js +0 -1
- package/dist/client/assets/flowDiagram-HODETNUW-DCZkaOsj.js +0 -1
- package/dist/client/assets/ganttDiagram-EL5Y4UJY-B_Y3HJTL.js +0 -292
- package/dist/client/assets/gitGraph-4MIJSDKK-DBd1UxTm.js +0 -1
- package/dist/client/assets/gitGraphDiagram-WWUBYQGX-CrdKibnu.js +0 -106
- package/dist/client/assets/index-BJo4hZ8z.js +0 -10
- package/dist/client/assets/index-CpFffknJ.css +0 -2
- package/dist/client/assets/info-A6RAGUB7-CCMRmQ2H.js +0 -1
- package/dist/client/assets/infoDiagram-27XIBGKW-DO-IhKUM.js +0 -2
- package/dist/client/assets/katex-ZlcWpGUi.js +0 -257
- package/dist/client/assets/label-ANA2Lfpk.js +0 -1
- package/dist/client/assets/list-C3P6JbyU.js +0 -30
- package/dist/client/assets/list-oJCufmEX.js +0 -1
- package/dist/client/assets/logs-zb2la033.js +0 -1
- package/dist/client/assets/mermaid-diagram-kbWN558y.js +0 -44
- package/dist/client/assets/mobile-baseline-BVS3GXLz.js +0 -10
- package/dist/client/assets/new-BiEmR60A.js +0 -1
- package/dist/client/assets/new-CcQm3ES8.js +0 -1
- package/dist/client/assets/packet-AYTQ26CC-kvNXQn-j.js +0 -1
- package/dist/client/assets/pie-WAS4IAKB-DFNGAljQ.js +0 -1
- package/dist/client/assets/popover-CIfFCO0U.js +0 -1
- package/dist/client/assets/pr-inbox-item-D9UcI0SS.js +0 -2
- package/dist/client/assets/preload-helper-BZ1Pz5am.js +0 -1
- package/dist/client/assets/project-repo-form-Dc8ha6XP.js +0 -1
- package/dist/client/assets/provider-cli-warning-CIAJ88Cy.js +0 -1
- package/dist/client/assets/radar-RG4KPBEZ-k-UBw86I.js +0 -1
- package/dist/client/assets/radio-group-BhmTXkIv.js +0 -1
- package/dist/client/assets/railroad-74A4TZTK-B6DuT-HY.js +0 -1
- package/dist/client/assets/railroad-abnf-HS5TGJTU-DF-z1cVb.js +0 -1
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-C6VgaalR.js +0 -1
- package/dist/client/assets/railroad-peg-WCYAUIDC-DRMqhGU3.js +0 -1
- package/dist/client/assets/redirect-DexaYCz_.js +0 -1
- package/dist/client/assets/reviews-DDO7Pvrz.js +0 -1
- package/dist/client/assets/select-Cq3ddA2b.js +0 -1
- package/dist/client/assets/sequenceDiagram-WJ2MYXX4-9wHsZFGh.js +0 -162
- package/dist/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -1
- package/dist/client/assets/spinner-BszfzCYe.js +0 -1
- package/dist/client/assets/startup-script-form-CHvwd1Nb.js +0 -1
- package/dist/client/assets/stateDiagram-D77RDMKH-Blo9H6q_.js +0 -1
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-BzJ9AKXW.js +0 -1
- package/dist/client/assets/swimlanes-42K2YHIH-DI0BHdWG.js +0 -1
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DSnxWZUW.js +0 -8
- package/dist/client/assets/tabs-BBAQyvSA.js +0 -1
- package/dist/client/assets/terminal-instance-BEqkmyvv.js +0 -16
- package/dist/client/assets/textarea-DxWYClhS.js +0 -1
- package/dist/client/assets/timeline-definition-24CTP7MA-C8fyxpVm.js +0 -120
- package/dist/client/assets/tooltip-DXcY1U7y.js +0 -1
- package/dist/client/assets/treeView-Q6P3EWNA-CzQAwJw-.js +0 -1
- package/dist/client/assets/treemap-WGGIJYW6-zWRSK6WR.js +0 -1
- package/dist/client/assets/trpc-CQO3zfei.js +0 -1
- package/dist/client/assets/use-auto-scroll-DNohsNoz.js +0 -1
- package/dist/client/assets/use-project-header-navigation-D5yIIgnb.js +0 -1
- package/dist/client/assets/use-websocket-channel-dNXOJZfW.js +0 -4
- package/dist/client/assets/use-websocket-transport-BuYcrZTd.js +0 -55
- package/dist/client/assets/vbnet-CwR9YcOY.js +0 -57
- package/dist/client/assets/vennDiagram-4TSXK5OY-ffnMpD5u.js +0 -34
- package/dist/client/assets/wardley-WFR3VGLG-acbsrLnl.js +0 -1
- package/dist/client/assets/workspace-a6lf168c.js +0 -18
- package/dist/client/assets/xychartDiagram-S5SC5T6Z-Bfy9xcWF.js +0 -7
- package/dist/prisma/generated/models/WorkspaceRatchet.d.ts +0 -625
- package/dist/prisma/generated/models/WorkspaceRatchet.d.ts.map +0 -1
- package/dist/prisma/generated/models/WorkspaceRatchet.js +0 -2
- package/dist/prisma/generated/models/WorkspaceRatchet.js.map +0 -1
- package/dist/prompts/ratchet/dispatch.md +0 -19
- package/dist/src/backend/prompts/ratchet-dispatch.d.ts +0 -14
- package/dist/src/backend/prompts/ratchet-dispatch.d.ts.map +0 -1
- package/dist/src/backend/prompts/ratchet-dispatch.js +0 -80
- package/dist/src/backend/prompts/ratchet-dispatch.js.map +0 -1
- package/dist/src/backend/prompts/ratchet-dispatch.test.d.ts +0 -2
- package/dist/src/backend/prompts/ratchet-dispatch.test.d.ts.map +0 -1
- package/dist/src/backend/prompts/ratchet-dispatch.test.js +0 -156
- package/dist/src/backend/prompts/ratchet-dispatch.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/bridges.d.ts +0 -157
- package/dist/src/backend/services/ratchet/service/bridges.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/bridges.js +0 -2
- package/dist/src/backend/services/ratchet/service/bridges.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/fixer-session.service.d.ts +0 -61
- package/dist/src/backend/services/ratchet/service/fixer-session.service.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/fixer-session.service.js +0 -234
- package/dist/src/backend/services/ratchet/service/fixer-session.service.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/fixer-session.service.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/fixer-session.service.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/fixer-session.service.test.js +0 -336
- package/dist/src/backend/services/ratchet/service/fixer-session.service.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/provider-selection.d.ts +0 -6
- package/dist/src/backend/services/ratchet/service/provider-selection.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/provider-selection.js +0 -6
- package/dist/src/backend/services/ratchet/service/provider-selection.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/provider-selection.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/provider-selection.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/provider-selection.test.js +0 -23
- package/dist/src/backend/services/ratchet/service/provider-selection.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-active-session.helpers.d.ts +0 -13
- package/dist/src/backend/services/ratchet/service/ratchet-active-session.helpers.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-active-session.helpers.js +0 -134
- package/dist/src/backend/services/ratchet/service/ratchet-active-session.helpers.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.d.ts +0 -61
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.js +0 -79
- package/dist/src/backend/services/ratchet/service/ratchet-decision-logging.helpers.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-domain-exports.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/ratchet-domain-exports.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-domain-exports.test.js +0 -11
- package/dist/src/backend/services/ratchet/service/ratchet-domain-exports.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-fixer-dispatch.helpers.d.ts +0 -14
- package/dist/src/backend/services/ratchet/service/ratchet-fixer-dispatch.helpers.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-fixer-dispatch.helpers.js +0 -226
- package/dist/src/backend/services/ratchet/service/ratchet-fixer-dispatch.helpers.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.d.ts +0 -103
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.js +0 -370
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.js +0 -944
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.d.ts +0 -15
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.js +0 -18
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.test.js +0 -76
- package/dist/src/backend/services/ratchet/service/ratchet-provider-resolver.service.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.d.ts +0 -10
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.js +0 -62
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.js +0 -116
- package/dist/src/backend/services/ratchet/service/ratchet-workspace-check-coordinator.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.d.ts +0 -2
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.js +0 -3485
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.js.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet.types.d.ts +0 -99
- package/dist/src/backend/services/ratchet/service/ratchet.types.d.ts.map +0 -1
- package/dist/src/backend/services/ratchet/service/ratchet.types.js +0 -2
- package/dist/src/backend/services/ratchet/service/ratchet.types.js.map +0 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-ratchet.service.d.ts +0 -20
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-ratchet.service.d.ts.map +0 -1
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-ratchet.service.js +0 -35
- package/dist/src/backend/services/workspace/service/lifecycle/workspace-ratchet.service.js.map +0 -1
- package/prompts/ratchet/dispatch.md +0 -19
package/README.md
CHANGED
|
@@ -54,7 +54,9 @@ and project configuration.
|
|
|
54
54
|
|
|
55
55
|
Then:
|
|
56
56
|
|
|
57
|
-
1. Add a project by selecting a local git repository.
|
|
57
|
+
1. Add a project by selecting a local git repository. If the New Project page
|
|
58
|
+
cannot load your projects, it shows the error and a Retry button. Retry loads
|
|
59
|
+
the list again before showing onboarding or the Add Project form.
|
|
58
60
|
2. Create a workspace, or start one from a GitHub or Linear issue.
|
|
59
61
|
3. Choose Claude or Codex and start a session.
|
|
60
62
|
4. Review the agent's changes, use the integrated terminal when needed, and open
|
|
@@ -127,6 +129,14 @@ reachable solely through your trusted proxy** (i.e. bound to loopback) —
|
|
|
127
129
|
otherwise clients could spoof address headers. The remote-address trust check
|
|
128
130
|
(loopback / `TRUSTED_LOCAL_CIDRS`) still applies.
|
|
129
131
|
|
|
132
|
+
For local testing from an origin that isn't in `CORS_ALLOWED_ORIGINS` (an
|
|
133
|
+
alternate dev frontend, curl/Postman, or a LAN device that also satisfies
|
|
134
|
+
`TRUSTED_LOCAL_CIDRS`), set `DISABLE_CORS_CHECKS=true` to skip Origin validation
|
|
135
|
+
entirely. **Local dev only** — never set this in a deployed or reverse-proxied
|
|
136
|
+
environment; it removes the app's only defense against a malicious webpage you
|
|
137
|
+
have open calling the local API on your behalf (workspace/project creation,
|
|
138
|
+
local command execution).
|
|
139
|
+
|
|
130
140
|
## Security
|
|
131
141
|
|
|
132
142
|
> [!WARNING] Factory Factory runs coding agents that can execute commands and
|
package/dist/client/assets/{abnfDiagram-VCTEODGH-DzuBdUSN.js → abnfDiagram-YUKMZFIV-D4HT7HRV.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as e,t}from"./mermaid-parser.core-
|
|
1
|
+
import{m as e,t}from"./mermaid-parser.core-cMhM95A-.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-oBChb5qS.js";import"./chunk-VPRB5NB3-mCQI2Mww.js";import{n as i,r as a,t as o}from"./chunk-AW2ZBBNX-DKuwSIkG.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid-diagram-j6NMiPfI.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=n(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{n as t,t as n}from"./jsx-runtime-DKj5X9O4.js";import{a as r,g as i,m as a,r as o,s,t as c}from"./dist-3wBnkw0J.js";import{t as l}from"./lib-CjP4aRTn.js";import{n as u}from"./trpc-DE1PpYK2.js";import{b as d}from"./workspace-sidebar-status-TXd1K6xw.js";import{a as f,i as p,l as m,n as h,o as g,p as _,s as v,t as y,u as b}from"./appearance-CQMuJmnT.js";import{i as x,y as S}from"./core-Sdbb7b8B.js";import{p as C}from"./radio-group-CIOwQgJB.js";import{a as ee,c as w,i as te,l as ne,n as re,r as ie,s as ae,t as oe}from"./data-import-button-BaZ1LdcD.js";import{n as T,r as se,t as ce}from"./use-download-server-log-eR8QXr94.js";import{n as le,t as ue}from"./provider-cli-warning-Dm5A2Q9_.js";import{b as de}from"./use-websocket-transport-GdeUVWh_.js";import{C as fe,D as E,E as pe,k as D,n as me,t as he,u as ge}from"./dist-B9ml9sGs.js";import{$n as _e,Cr as ve,Dr as ye,Hn as be,Kn as O,Kt as xe,Or as Se,Qt as k,R as Ce,Rn as A,Sn as we,Sr as Te,Xt as j,Yt as M,a as Ee,d as N,en as P,er as De,f as F,gr as Oe,hr as ke,i as Ae,in as I,ir as je,kr as Me,m as L,nn as Ne,p as R,rn as Pe,rr as Fe,sr as Ie,tn as z,u as B,y as Le,zn as Re}from"./index-BJJHbKvj.js";import{i as V,n as H,r as ze,t as Be}from"./tabs-CmuIk7dI.js";import{i as Ve,n as He,r as Ue,t as We}from"./voice-vad-ChMQMgBS.js";import{a as Ge,i as U,n as Ke,o as qe,r as W,t as Je}from"./table-Dq5ReIoh.js";import{i as Ye,n as Xe,t as Ze}from"./formatters-D_bnXRun.js";import{t as Qe}from"./factory-config-scripts-DUGeIMaa.js";var G=e(t(),1),$e=new Map([[`bold`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z`}))],[`duotone`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M218.34,119.6,183.6,154.34a46.58,46.58,0,0,1-44.31,12.26c-.31.34-.62.67-.95,1L103.6,202.34A46.63,46.63,0,1,1,37.66,136.4L72.4,101.66A46.6,46.6,0,0,1,116.71,89.4c.31-.34.62-.67,1-1L152.4,53.66a46.63,46.63,0,0,1,65.94,65.94Z`,opacity:`0.2`}),G.createElement(`path`,{d:`M240,88.23a54.43,54.43,0,0,1-16,37L189.25,160a54.27,54.27,0,0,1-38.63,16h-.05A54.63,54.63,0,0,1,96,119.84a8,8,0,0,1,16,.45A38.62,38.62,0,0,0,150.58,160h0a38.39,38.39,0,0,0,27.31-11.31l34.75-34.75a38.63,38.63,0,0,0-54.63-54.63l-11,11A8,8,0,0,1,135.7,59l11-11A54.65,54.65,0,0,1,224,48,54.86,54.86,0,0,1,240,88.23ZM109,185.66l-11,11A38.41,38.41,0,0,1,70.6,208h0a38.63,38.63,0,0,1-27.29-65.94L78,107.31A38.63,38.63,0,0,1,144,135.71a8,8,0,0,0,7.78,8.22H152a8,8,0,0,0,8-7.78A54.86,54.86,0,0,0,144,96a54.65,54.65,0,0,0-77.27,0L32,130.75A54.62,54.62,0,0,0,70.56,224h0a54.28,54.28,0,0,0,38.64-16l11-11A8,8,0,0,0,109,185.66Z`}))],[`fill`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM115.7,192.49a43.31,43.31,0,0,1-55-66.43l25.37-25.37a43.35,43.35,0,0,1,61.25,0,42.9,42.9,0,0,1,9.95,15.43,8,8,0,1,1-15,5.6A27.33,27.33,0,0,0,97.37,112L72,137.37a27.32,27.32,0,0,0,34.68,41.91,8,8,0,1,1,9,13.21Zm79.61-62.55-25.37,25.37A43,43,0,0,1,139.32,168h0a43.35,43.35,0,0,1-40.53-28.12,8,8,0,1,1,15-5.6A27.35,27.35,0,0,0,139.28,152h0a27.14,27.14,0,0,0,19.32-8L184,118.63a27.32,27.32,0,0,0-34.68-41.91,8,8,0,1,1-9-13.21,43.32,43.32,0,0,1,55,66.43Z`}))],[`light`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M238,88.18a52.42,52.42,0,0,1-15.4,35.66l-34.75,34.75A52.28,52.28,0,0,1,150.62,174h-.05A52.63,52.63,0,0,1,98,119.9a6,6,0,0,1,6-5.84h.17a6,6,0,0,1,5.83,6.16A40.62,40.62,0,0,0,150.58,162h0a40.4,40.4,0,0,0,28.73-11.9l34.75-34.74A40.63,40.63,0,0,0,156.63,57.9l-11,11a6,6,0,0,1-8.49-8.49l11-11a52.62,52.62,0,0,1,74.43,0A52.83,52.83,0,0,1,238,88.18Zm-127.62,98.9-11,11A40.36,40.36,0,0,1,70.6,210h0a40.63,40.63,0,0,1-28.7-69.36L76.62,105.9A40.63,40.63,0,0,1,146,135.77a6,6,0,0,0,5.83,6.16H152a6,6,0,0,0,6-5.84A52.63,52.63,0,0,0,68.14,97.42L33.38,132.16A52.63,52.63,0,0,0,70.56,222h0a52.26,52.26,0,0,0,37.22-15.42l11-11a6,6,0,1,0-8.49-8.48Z`}))],[`regular`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M240,88.23a54.43,54.43,0,0,1-16,37L189.25,160a54.27,54.27,0,0,1-38.63,16h-.05A54.63,54.63,0,0,1,96,119.84a8,8,0,0,1,16,.45A38.62,38.62,0,0,0,150.58,160h0a38.39,38.39,0,0,0,27.31-11.31l34.75-34.75a38.63,38.63,0,0,0-54.63-54.63l-11,11A8,8,0,0,1,135.7,59l11-11A54.65,54.65,0,0,1,224,48,54.86,54.86,0,0,1,240,88.23ZM109,185.66l-11,11A38.41,38.41,0,0,1,70.6,208h0a38.63,38.63,0,0,1-27.29-65.94L78,107.31A38.63,38.63,0,0,1,144,135.71a8,8,0,0,0,16,.45A54.86,54.86,0,0,0,144,96a54.65,54.65,0,0,0-77.27,0L32,130.75A54.62,54.62,0,0,0,70.56,224h0a54.28,54.28,0,0,0,38.64-16l11-11A8,8,0,0,0,109,185.66Z`}))],[`thin`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M236,88.12a50.44,50.44,0,0,1-14.81,34.31l-34.75,34.74A50.33,50.33,0,0,1,150.62,172h-.05A50.63,50.63,0,0,1,100,120a4,4,0,0,1,4-3.89h.11a4,4,0,0,1,3.89,4.11A42.64,42.64,0,0,0,150.58,164h0a42.32,42.32,0,0,0,30.14-12.49l34.75-34.74a42.63,42.63,0,1,0-60.29-60.28l-11,11a4,4,0,0,1-5.66-5.65l11-11A50.64,50.64,0,0,1,236,88.12ZM111.78,188.49l-11,11A42.33,42.33,0,0,1,70.6,212h0a42.63,42.63,0,0,1-30.11-72.77l34.75-34.74A42.63,42.63,0,0,1,148,135.82a4,4,0,0,0,8,.23A50.64,50.64,0,0,0,69.55,98.83L34.8,133.57A50.63,50.63,0,0,0,70.56,220h0a50.33,50.33,0,0,0,35.81-14.83l11-11a4,4,0,1,0-5.65-5.66Z`}))]]),et=new Map([[`bold`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M203.57,51A107.9,107.9,0,0,0,20,128c0,44.72,27.6,82.25,72,97.94A36,36,0,0,0,140,192a12,12,0,0,1,12-12h46.21a35.79,35.79,0,0,0,35.1-28A108.6,108.6,0,0,0,236,127.09,107.23,107.23,0,0,0,203.57,51Zm6.34,95.67a11.91,11.91,0,0,1-11.7,9.3H152a36,36,0,0,0-36,36,12,12,0,0,1-16,11.3c-16.65-5.88-30.65-15.76-40.48-28.56A76,76,0,0,1,44,128a84,84,0,0,1,83.13-84H128a84.35,84.35,0,0,1,84,83.29A84.72,84.72,0,0,1,209.91,146.71ZM144,76a16,16,0,1,1-16-16A16,16,0,0,1,144,76Zm-44,24A16,16,0,1,1,84,84,16,16,0,0,1,100,100Zm0,56a16,16,0,1,1-16-16A16,16,0,0,1,100,156Zm88-56a16,16,0,1,1-16-16A16,16,0,0,1,188,100Z`}))],[`duotone`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M224,127.17a96.48,96.48,0,0,1-2.39,22.18A24,24,0,0,1,198.21,168H152a24,24,0,0,0-24,24,24,24,0,0,1-32,22.61C58.73,201.44,32,169.81,32,128a96,96,0,0,1,95-96C179.84,31.47,223.55,74.35,224,127.17Z`,opacity:`0.2`}),G.createElement(`path`,{d:`M200.77,53.89A103.27,103.27,0,0,0,128,24h-1.07A104,104,0,0,0,24,128c0,43,26.58,79.06,69.36,94.17A32,32,0,0,0,136,192a16,16,0,0,1,16-16h46.21a31.81,31.81,0,0,0,31.2-24.88,104.43,104.43,0,0,0,2.59-24A103.28,103.28,0,0,0,200.77,53.89Zm13,93.71A15.89,15.89,0,0,1,198.21,160H152a32,32,0,0,0-32,32,16,16,0,0,1-21.31,15.07C62.49,194.3,40,164,40,128a88,88,0,0,1,87.09-88h.9a88.35,88.35,0,0,1,88,87.25A88.86,88.86,0,0,1,213.81,147.6ZM140,76a12,12,0,1,1-12-12A12,12,0,0,1,140,76ZM96,100A12,12,0,1,1,84,88,12,12,0,0,1,96,100Zm0,56a12,12,0,1,1-12-12A12,12,0,0,1,96,156Zm88-56a12,12,0,1,1-12-12A12,12,0,0,1,184,100Z`}))],[`fill`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M200.77,53.89A103.27,103.27,0,0,0,128,24h-1.07A104,104,0,0,0,24,128c0,43,26.58,79.06,69.36,94.17A32,32,0,0,0,136,192a16,16,0,0,1,16-16h46.21a31.81,31.81,0,0,0,31.2-24.88,104.43,104.43,0,0,0,2.59-24A103.28,103.28,0,0,0,200.77,53.89ZM84,168a12,12,0,1,1,12-12A12,12,0,0,1,84,168Zm0-56a12,12,0,1,1,12-12A12,12,0,0,1,84,112Zm44-24a12,12,0,1,1,12-12A12,12,0,0,1,128,88Zm44,24a12,12,0,1,1,12-12A12,12,0,0,1,172,112Z`}))],[`light`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M199.37,55.31A101.32,101.32,0,0,0,128,26h-1A102,102,0,0,0,26,128c0,42.09,26.07,77.44,68,92.26A30.21,30.21,0,0,0,104.11,222,30.06,30.06,0,0,0,134,192a18,18,0,0,1,18-18h46.21a29.82,29.82,0,0,0,29.25-23.31A102.71,102.71,0,0,0,230,127.11,101.25,101.25,0,0,0,199.37,55.31ZM215.76,148a17.89,17.89,0,0,1-17.55,14H152a30,30,0,0,0-30,30,18,18,0,0,1-24,17C61,195.86,38,164.85,38,128a90,90,0,0,1,89.07-90H128a90.34,90.34,0,0,1,90,89.22A90.46,90.46,0,0,1,215.76,148ZM138,76a10,10,0,1,1-10-10A10,10,0,0,1,138,76ZM94,100A10,10,0,1,1,84,90,10,10,0,0,1,94,100Zm0,56a10,10,0,1,1-10-10A10,10,0,0,1,94,156Zm88-56a10,10,0,1,1-10-10A10,10,0,0,1,182,100Z`}))],[`regular`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M200.77,53.89A103.27,103.27,0,0,0,128,24h-1.07A104,104,0,0,0,24,128c0,43,26.58,79.06,69.36,94.17A32,32,0,0,0,136,192a16,16,0,0,1,16-16h46.21a31.81,31.81,0,0,0,31.2-24.88,104.43,104.43,0,0,0,2.59-24A103.28,103.28,0,0,0,200.77,53.89Zm13,93.71A15.89,15.89,0,0,1,198.21,160H152a32,32,0,0,0-32,32,16,16,0,0,1-21.31,15.07C62.49,194.3,40,164,40,128a88,88,0,0,1,87.09-88h.9a88.35,88.35,0,0,1,88,87.25A88.86,88.86,0,0,1,213.81,147.6ZM140,76a12,12,0,1,1-12-12A12,12,0,0,1,140,76ZM96,100A12,12,0,1,1,84,88,12,12,0,0,1,96,100Zm0,56a12,12,0,1,1-12-12A12,12,0,0,1,96,156Zm88-56a12,12,0,1,1-12-12A12,12,0,0,1,184,100Z`}))],[`thin`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M198,56.74A99.31,99.31,0,0,0,128,28h-1A100,100,0,0,0,28,128c0,41.22,25.55,75.85,66.69,90.38a28.34,28.34,0,0,0,9.42,1.63A28,28,0,0,0,132,192a20,20,0,0,1,20-20h46.21a27.84,27.84,0,0,0,27.3-21.76,100.37,100.37,0,0,0,2.49-23.1A99.26,99.26,0,0,0,198,56.74Zm19.74,91.72A19.89,19.89,0,0,1,198.21,164H152a28,28,0,0,0-28,28,20,20,0,0,1-26.64,18.83C59.51,197.46,36,165.72,36,128a92,92,0,0,1,91.05-92H128a92,92,0,0,1,89.72,112.46ZM136,76a8,8,0,1,1-8-8A8,8,0,0,1,136,76ZM92,100a8,8,0,1,1-8-8A8,8,0,0,1,92,100Zm0,56a8,8,0,1,1-8-8A8,8,0,0,1,92,156Zm88-56a8,8,0,1,1-8-8A8,8,0,0,1,180,100Z`}))]]),tt=new Map([[`bold`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M216,48H180V36A28,28,0,0,0,152,8H104A28,28,0,0,0,76,36V48H40a12,12,0,0,0,0,24h4V208a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V72h4a12,12,0,0,0,0-24ZM100,36a4,4,0,0,1,4-4h48a4,4,0,0,1,4,4V48H100Zm88,168H68V72H188ZM116,104v64a12,12,0,0,1-24,0V104a12,12,0,0,1,24,0Zm48,0v64a12,12,0,0,1-24,0V104a12,12,0,0,1,24,0Z`}))],[`duotone`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M200,56V208a8,8,0,0,1-8,8H64a8,8,0,0,1-8-8V56Z`,opacity:`0.2`}),G.createElement(`path`,{d:`M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM96,40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8v8H96Zm96,168H64V64H192ZM112,104v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Z`}))],[`fill`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM112,168a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm0-120H96V40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8Z`}))],[`light`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M216,50H174V40a22,22,0,0,0-22-22H104A22,22,0,0,0,82,40V50H40a6,6,0,0,0,0,12H50V208a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V62h10a6,6,0,0,0,0-12ZM94,40a10,10,0,0,1,10-10h48a10,10,0,0,1,10,10V50H94ZM194,208a2,2,0,0,1-2,2H64a2,2,0,0,1-2-2V62H194ZM110,104v64a6,6,0,0,1-12,0V104a6,6,0,0,1,12,0Zm48,0v64a6,6,0,0,1-12,0V104a6,6,0,0,1,12,0Z`}))],[`regular`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM96,40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8v8H96Zm96,168H64V64H192ZM112,104v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Z`}))],[`thin`,G.createElement(G.Fragment,null,G.createElement(`path`,{d:`M216,52H172V40a20,20,0,0,0-20-20H104A20,20,0,0,0,84,40V52H40a4,4,0,0,0,0,8H52V208a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V60h12a4,4,0,0,0,0-8ZM92,40a12,12,0,0,1,12-12h48a12,12,0,0,1,12,12V52H92ZM196,208a4,4,0,0,1-4,4H64a4,4,0,0,1-4-4V60H196ZM108,104v64a4,4,0,0,1-8,0V104a4,4,0,0,1,8,0Zm48,0v64a4,4,0,0,1-8,0V104a4,4,0,0,1,8,0Z`}))]]),nt=G.forwardRef((e,t)=>G.createElement(i,{ref:t,...e,weights:$e}));nt.displayName=`LinkIcon`;var rt=G.forwardRef((e,t)=>G.createElement(i,{ref:t,...e,weights:et}));rt.displayName=`PaletteIcon`;var it=G.forwardRef((e,t)=>G.createElement(i,{ref:t,...e,weights:tt}));it.displayName=`TrashIcon`;var K=n(),at=Object.defineProperty,q=(e,t)=>at(e,`name`,{value:t,configurable:!0}),ot=`Switch`,[st,ct]=pe(ot),[lt,ut]=st(ot);function dt(e){let{__scopeSwitch:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=fe({prop:n,defaultProp:i??!1,onChange:c,caller:ot}),[m,h]=G.useState(null),[g,_]=G.useState(null),v=G.useRef(!1),[y,b]=G.useReducer(e=>e+1,0),x={checked:f,setChecked:p,disabled:a,control:m,setControl:h,name:s,form:o,value:u,hasConsumerStoppedPropagationRef:v,userInteractionCount:y,onUserInteraction:b,required:l,defaultChecked:i,isFormControl:!m||!!o||!!m.closest(`form`),bubbleInput:g,setBubbleInput:_};return(0,K.jsx)(lt,{scope:t,...x,children:yt(d)?d(x):r})}q(dt,`SwitchProvider`);var ft=`SwitchTrigger`,pt=G.forwardRef(q(function({__scopeSwitch:e,onClick:t,...n},r){let{control:i,form:o,value:s,disabled:l,checked:u,required:d,setControl:f,setChecked:p,hasConsumerStoppedPropagationRef:m,onUserInteraction:h,isFormControl:g,bubbleInput:_}=ut(ft,e),v=a(r,f),y=G.useRef(u);return G.useEffect(()=>{let e=o?i?.ownerDocument.getElementById(o):i?.form;if(e instanceof HTMLFormElement){let t=q(()=>p(y.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[i,o,p]),(0,K.jsx)(c.button,{type:`button`,role:`switch`,"aria-checked":u,"aria-required":d,"data-state":bt(u),"data-disabled":l?``:void 0,disabled:l,value:s,...n,ref:v,onClick:E(t,e=>{h(),p(e=>!e),_&&g&&(m.current=e.isPropagationStopped(),m.current||e.stopPropagation())})})},`SwitchTrigger`)),mt=G.forwardRef(q(function(e,t){let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,K.jsx)(dt,{__scopeSwitch:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(pt,{...d,ref:t,__scopeSwitch:n}),e&&(0,K.jsx)(vt,{__scopeSwitch:n})]})})},`Switch`)),ht=`SwitchThumb`,gt=G.forwardRef(q(function(e,t){let{__scopeSwitch:n,...r}=e,i=ut(ht,n);return(0,K.jsx)(c.span,{"data-state":bt(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})},`SwitchThumb`)),_t=`SwitchBubbleInput`,vt=G.forwardRef(q(function({__scopeSwitch:e,onClick:t,...n},r){let{control:i,hasConsumerStoppedPropagationRef:o,userInteractionCount:s,checked:l,defaultChecked:u,required:d,disabled:f,name:p,value:m,form:h,bubbleInput:g,setBubbleInput:_}=ut(_t,e),v=a(r,_),y=ge(i),b=G.useRef(!1),x=G.useRef(l),S=G.useRef(s);G.useEffect(()=>{let e=g;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=s!==S.current;S.current=s;let i=x.current!==l;x.current=l;let a=!(r&&o.current);if(i&&n){b.current=!r;let t=new Event(`click`,{bubbles:a});n.call(e,l),e.dispatchEvent(t),b.current=!1}},[g,l,o,s]);let C=G.useRef(l);return(0,K.jsx)(c.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:u??C.current,required:d,disabled:f,name:p,value:m,form:h,...n,tabIndex:-1,ref:v,onClick:E(t,e=>{b.current&&e.stopPropagation()}),style:{...n.style,...y,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`SwitchBubbleInput`));function yt(e){return typeof e==`function`}q(yt,`isFunction`);function bt(e){return e?`checked`:`unchecked`}q(bt,`getState`);function J({className:e,size:t=`default`,...n}){return(0,K.jsx)(mt,{"data-slot":`switch`,"data-size":t,className:s(`peer group/switch inline-flex shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80`,e),...n,children:(0,K.jsx)(gt,{"data-slot":`switch-thumb`,className:s(`pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0 dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground`)})})}function xt(){let{data:e,isLoading:t}=u.userSettings.get.useQuery(),{data:n}=u.userSettings.getProviderOptions.useQuery(void 0,{staleTime:3e4}),r=u.useUtils(),[i,a]=(0,G.useState)(`sonnet`),[o,s]=(0,G.useState)(`default`),c=u.userSettings.update.useMutation({onSuccess:()=>{D.success(`Adversarial review settings updated`),r.userSettings.get.invalidate()},onError:(t,n)=>{let i=r.userSettings.get.getData()??e;n.reviewerClaudeModel!==void 0&&a(e=>e===n.reviewerClaudeModel?i?.reviewerClaudeModel??`sonnet`:e),n.reviewerCodexModel!==void 0&&s(e=>e===n.reviewerCodexModel?i?.reviewerCodexModel??`default`:e),D.error(`Failed to update adversarial review settings: ${t.message}`)}});if((0,G.useEffect)(()=>{a(e?.reviewerClaudeModel??`sonnet`),s(e?.reviewerCodexModel??`default`)},[e?.reviewerClaudeModel,e?.reviewerCodexModel]),t)return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`Adversarial Review`}),(0,K.jsx)(F,{children:`Reviewer provider for the open PR`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]});let l=e?.reviewerSessionProvider??`CODEX`,d=e?.reviewerClaudeModel??`sonnet`,f=e?.reviewerCodexModel??`default`,p=e?.postReviewToGitHub??!0,m=(e,t)=>{let r=n?.[e]?.models??[];return r.some(e=>e.value===t)?r:[{value:t,label:t},...r]},h=(e,t)=>{e===`CLAUDE`?(a(t),c.mutate({reviewerClaudeModel:t})):(s(t),c.mutate({reviewerCodexModel:t}))};return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Fe,{className:`w-5 h-5`}),`Adversarial Review`]}),(0,K.jsx)(F,{children:`Review an open PR with a different provider/model than the one that built it — e.g. build with Claude, review with Codex.`})]}),(0,K.jsxs)(N,{className:`space-y-3`,children:[(0,K.jsx)(I,{htmlFor:`reviewer-provider`,children:`Reviewer provider`}),(0,K.jsxs)(M,{value:l,onValueChange:e=>{(e===`CLAUDE`||e===`CODEX`)&&c.mutate({reviewerSessionProvider:e})},disabled:c.isPending,children:[(0,K.jsx)(P,{id:`reviewer-provider`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`CLAUDE`,children:`Claude`}),(0,K.jsx)(k,{value:`CODEX`,children:`Codex`})]})]}),(0,K.jsx)(ue,{provider:l}),(0,K.jsxs)(`div`,{className:`grid gap-3 pt-1 sm:grid-cols-2`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`reviewer-claude-model`,children:`Claude reviewer model`}),(0,K.jsxs)(M,{value:i,onValueChange:e=>h(`CLAUDE`,e),disabled:c.isPending,children:[(0,K.jsx)(P,{id:`reviewer-claude-model`,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:m(`CLAUDE`,d).map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))})]})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`reviewer-codex-model`,children:`Codex reviewer model`}),(0,K.jsxs)(M,{value:o,onValueChange:e=>h(`CODEX`,e),disabled:c.isPending,children:[(0,K.jsx)(P,{id:`reviewer-codex-model`,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:m(`CODEX`,f).map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))})]})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 pt-1 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(I,{htmlFor:`post-review-to-github`,children:`Post reviews to GitHub`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Post the review as a summary plus inline comments on the PR. Off runs the review in-app only.`})]}),(0,K.jsx)(J,{id:`post-review-to-github`,checked:p,onCheckedChange:e=>{c.mutate({postReviewToGitHub:e})},disabled:c.isPending})]})]})]})}var St={ok:`border-l-success`,warning:`border-l-warning`,error:`border-l-destructive`};function Ct({title:e,value:t,subtitle:n,status:r}){return(0,K.jsxs)(B,{className:`border-l-4 ${r?St[r]:`border-l-muted`}`,children:[(0,K.jsxs)(R,{className:`pb-2`,children:[(0,K.jsx)(F,{children:e}),(0,K.jsx)(L,{className:`text-2xl`,children:t})]}),n&&(0,K.jsx)(N,{className:`pt-0`,children:(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n})})]})}function wt({apiUsage:e,onReset:t,isResetting:n}){return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{className:`flex flex-row items-center justify-between space-y-0 pb-4`,children:[(0,K.jsx)(L,{children:`API Usage`}),(0,K.jsx)(r,{variant:`link`,onClick:t,disabled:n,className:`h-auto p-0`,children:`Reset Stats`})]}),(0,K.jsx)(N,{children:(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-4 gap-4`,children:[(0,K.jsx)(Ct,{title:`Requests/min`,value:e?.requestsLastMinute||0,status:e?.isRateLimited?`warning`:`ok`}),(0,K.jsx)(Ct,{title:`Requests/hour`,value:e?.requestsLastHour||0}),(0,K.jsx)(Ct,{title:`Total Requests`,value:e?.totalRequests||0}),(0,K.jsx)(Ct,{title:`Queue Depth`,value:e?.queueDepth||0,status:e?.queueDepth&&e.queueDepth>10?`warning`:`ok`})]})})]})}var Tt=Object.defineProperty,Y=(e,t)=>Tt(e,`name`,{value:t,configurable:!0}),Et={Vertical:`vertical`,Horizontal:`horizontal`},Dt={LTR:`ltr`,RTL:`rtl`},Ot=[`PageUp`,`PageDown`],kt=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],At={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageDown`,`ArrowUp`,`ArrowLeft`]},X=`Slider`,[jt,Mt,Nt]=me(X),[Pt,Ft]=pe(X,[Nt]),[It,Z]=Pt(X),Lt=G.forwardRef(Y(function(e,t){let{name:n,min:r=0,max:i=100,step:o=1,orientation:s=Et.Horizontal,disabled:c=!1,minStepsBetweenThumbs:l=0,preserveThumbOrder:u=!1,defaultValue:d=[r],value:f,onValueChange:p=Y(()=>{},`onValueChange`),onValueCommit:m=Y(()=>{},`onValueCommit`),inverted:h=!1,form:g,..._}=e,v=G.useRef(new Set),y=G.useRef(0),b=G.useRef(!1),x=s===Et.Horizontal?Bt:Vt,[S,C]=G.useState(null),ee=a(t,C),[w=[],te]=fe({prop:f,defaultProp:d,onChange:Y(e=>{[...v.current][y.current]?.focus({preventScroll:!0,focusVisible:b.current}),b.current=!1,p(e)},`onChange`)}),ne=G.useRef(w),re=G.useRef(w);G.useEffect(()=>{let e=g?S?.ownerDocument.getElementById(g):S?.closest(`form`);if(e instanceof HTMLFormElement){let t=Y(()=>te(re.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[S,g,te]);function ie(e){T(e,on(w,e))}Y(ie,`handleSlideStart`);function ae(e){T(e,y.current)}Y(ae,`handleSlideMove`);function oe(){String(w)!==String(ne.current)&&m(w)}Y(oe,`handleSlideEnd`);function T(e,t,{commit:n}={commit:!1}){let a=dn(o),s=Q(Math.round((e-r)/o)*o+r,a),c=Pe(s,[r,i]);te((e=[])=>{let a=l*o,s=u?Pe(c,[e[t-1]===void 0?r:e[t-1]+a,e[t+1]===void 0?i:e[t+1]-a]):c,d=nn(e,s,t);if(ln(d,a)){y.current=u?t:d.indexOf(s);let r=String(d)!==String(e);return r&&n&&m(d),r?d:e}return e})}return Y(T,`updateValues`),(0,K.jsx)(It,{scope:e.__scopeSlider,name:n,disabled:c,min:r,max:i,valueIndexToChangeRef:y,thumbs:v.current,values:w,orientation:s,form:g,children:(0,K.jsx)(jt.Provider,{scope:e.__scopeSlider,children:(0,K.jsx)(jt.Slot,{scope:e.__scopeSlider,children:(0,K.jsx)(x,{"aria-disabled":c,"data-disabled":c?``:void 0,..._,ref:ee,onPointerDown:E(_.onPointerDown,()=>{c||(ne.current=w,b.current=!1)}),min:r,max:i,inverted:h,onSlideStart:c?void 0:ie,onSlideMove:c?void 0:ae,onSlideEnd:c?void 0:oe,onHomeKeyDown:()=>{c||(b.current=!0,T(r,0,{commit:!0}))},onEndKeyDown:()=>{c||(b.current=!0,T(i,w.length-1,{commit:!0}))},onStepKeyDown:({event:e,direction:t})=>{if(!c){b.current=!0;let n=Ot.includes(e.key)||e.shiftKey&&kt.includes(e.key)?10:1,i=y.current,a=w[i];T(fn(a,{min:r,step:o,direction:t,multiplier:n}),i,{commit:!0})}}})})})})},`Slider`)),[Rt,zt]=Pt(X,{startEdge:`left`,endEdge:`right`,size:`width`,direction:1}),Bt=G.forwardRef(Y(function(e,t){let{min:n,max:r,dir:i,inverted:o,onSlideStart:s,onSlideMove:c,onSlideEnd:l,onStepKeyDown:u,...d}=e,[f,p]=G.useState(null),m=a(t,p),h=G.useRef(void 0),g=he(i),_=g===Dt.LTR,v=_&&!o||!_&&o;function y(e){let t=h.current||f.getBoundingClientRect(),i=un([0,t.width],v?[n,r]:[r,n]);return h.current=t,i(e-t.left)}return Y(y,`getValueFromPointer`),(0,K.jsx)(Rt,{scope:e.__scopeSlider,startEdge:v?`left`:`right`,endEdge:v?`right`:`left`,direction:v?1:-1,size:`width`,children:(0,K.jsx)(Ht,{dir:g,"data-orientation":`horizontal`,...d,ref:m,style:{...d.style,"--radix-slider-thumb-transform":`translateX(-50%)`},onSlideStart:e=>{let t=y(e.clientX);s?.(t)},onSlideMove:e=>{let t=y(e.clientX);c?.(t)},onSlideEnd:()=>{h.current=void 0,l?.()},onStepKeyDown:e=>{let t=At[v?`from-left`:`from-right`].includes(e.key);u?.({event:e,direction:t?-1:1})}})})},`SliderHorizontal`)),Vt=G.forwardRef(Y(function(e,t){let{min:n,max:r,inverted:i,onSlideStart:o,onSlideMove:s,onSlideEnd:c,onStepKeyDown:l,...u}=e,d=G.useRef(null),f=a(t,d),p=G.useRef(void 0),m=!i;function h(e){let t=p.current||d.current.getBoundingClientRect(),i=un([0,t.height],m?[r,n]:[n,r]);return p.current=t,i(e-t.top)}return Y(h,`getValueFromPointer`),(0,K.jsx)(Rt,{scope:e.__scopeSlider,startEdge:m?`bottom`:`top`,endEdge:m?`top`:`bottom`,size:`height`,direction:m?1:-1,children:(0,K.jsx)(Ht,{"data-orientation":`vertical`,...u,ref:f,style:{...u.style,"--radix-slider-thumb-transform":`translateY(50%)`},onSlideStart:e=>{let t=h(e.clientY);o?.(t)},onSlideMove:e=>{let t=h(e.clientY);s?.(t)},onSlideEnd:()=>{p.current=void 0,c?.()},onStepKeyDown:e=>{let t=At[m?`from-bottom`:`from-top`].includes(e.key);l?.({event:e,direction:t?-1:1})}})})},`SliderVertical`)),Ht=G.forwardRef(Y(function(e,t){let{__scopeSlider:n,onSlideStart:r,onSlideMove:i,onSlideEnd:a,onHomeKeyDown:o,onEndKeyDown:s,onStepKeyDown:l,...u}=e,d=Z(X,n);return(0,K.jsx)(c.span,{...u,ref:t,onKeyDown:E(e.onKeyDown,e=>{e.key===`Home`?(o(e),e.preventDefault()):e.key===`End`?(s(e),e.preventDefault()):Ot.concat(kt).includes(e.key)&&(l(e),e.preventDefault())}),onPointerDown:E(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),d.thumbs.has(t)?t.focus({preventScroll:!0,focusVisible:!1}):r(e)}),onPointerMove:E(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&i(e)}),onPointerUp:E(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),a(e))})})},`SliderImpl`)),Ut=`SliderTrack`,Wt=G.forwardRef(Y(function(e,t){let{__scopeSlider:n,...r}=e,i=Z(Ut,n);return(0,K.jsx)(c.span,{"data-disabled":i.disabled?``:void 0,"data-orientation":i.orientation,...r,ref:t})},`SliderTrack`)),Gt=`SliderRange`,Kt=G.forwardRef(Y(function(e,t){let{__scopeSlider:n,...r}=e,i=Z(Gt,n),o=zt(Gt,n),s=G.useRef(null),l=a(t,s),u=i.values.length,d=i.values.map(e=>rn(e,i.min,i.max)),f=u>1?Math.min(...d):0,p=100-Math.max(...d);return(0,K.jsx)(c.span,{"data-orientation":i.orientation,"data-disabled":i.disabled?``:void 0,...r,ref:l,style:{...e.style,[o.startEdge]:f+`%`,[o.endEdge]:p+`%`}})},`SliderRange`)),[qt,Jt]=Pt(`SliderThumb`),Yt=`SliderThumbProvider`;function Xt(e){let{__scopeSlider:t,name:n,children:r,internal_do_not_use_render:i}=e,a=Z(Yt,t),o=Mt(t),[s,c]=G.useState(null),l=G.useMemo(()=>s?o().findIndex(e=>e.ref.current===s):-1,[o,s]),u=ge(s),d=!s||!!a.form||!!s.closest(`form`),f=a.values[l],p=n??(a.name?a.name+(a.values.length>1?`[]`:``):void 0),m=f===void 0?0:rn(f,a.min,a.max);G.useEffect(()=>{if(s)return a.thumbs.add(s),()=>{a.thumbs.delete(s)}},[s,a.thumbs]);let h={value:f,name:p,form:a.form,isFormControl:d,index:l,thumb:s,onThumbChange:c,percent:m,size:u};return(0,K.jsx)(qt,{scope:t,...h,children:pn(i)?i(h):r})}Y(Xt,`SliderThumbProvider`);var Zt=`SliderThumbTrigger`,Qt=G.forwardRef(Y(function(e,t){let{__scopeSlider:n,...r}=e,i=Z(Zt,n),o=zt(Zt,n),{index:s,value:l,percent:u,size:d,onThumbChange:f}=Jt(Zt,n),p=a(t,f),m=an(s,i.values.length),h=d?.[o.size],g=h?sn(h,u,o.direction):0;return(0,K.jsx)(`span`,{style:{transform:`var(--radix-slider-thumb-transform)`,position:`absolute`,[o.startEdge]:`calc(${u}% + ${g}px)`},children:(0,K.jsx)(jt.ItemSlot,{scope:n,children:(0,K.jsx)(c.span,{role:`slider`,"aria-label":e[`aria-label`]||m,"aria-valuemin":i.min,"aria-valuenow":l,"aria-valuemax":i.max,"aria-orientation":i.orientation,"data-orientation":i.orientation,"data-disabled":i.disabled?``:void 0,tabIndex:i.disabled?void 0:0,...r,ref:p,style:l===void 0?{display:`none`}:e.style,onFocus:E(e.onFocus,()=>{i.valueIndexToChangeRef.current=s})})})})},`SliderThumbTrigger`)),$t=G.forwardRef(Y(function(e,t){let{__scopeSlider:n,name:r,...i}=e;return(0,K.jsx)(Xt,{__scopeSlider:n,name:r,internal_do_not_use_render:({index:e,isFormControl:r})=>(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Qt,{...i,ref:t,__scopeSlider:n}),r?(0,K.jsx)(tn,{__scopeSlider:n},e):null]})})},`SliderThumb`)),en=`SliderBubbleInput`,tn=G.forwardRef(Y(function({__scopeSlider:e,...t},n){let{value:r,name:i,form:o}=Jt(en,e),s=G.useRef(null),l=a(s,n),u=Ne(r);return G.useEffect(()=>{let e=s.current;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`value`).set;if(u!==r&&n){let t=new Event(`input`,{bubbles:!0});n.call(e,r),e.dispatchEvent(t)}},[u,r]),(0,K.jsx)(c.input,{style:{display:`none`},name:i,form:o,...t,ref:l,defaultValue:r})},`SliderBubbleInput`));function nn(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}Y(nn,`getNextSortedValues`);function rn(e,t,n){let r=100/(n-t)*(e-t);return Pe(r,[0,100])}Y(rn,`convertValueToPercentage`);function an(e,t){if(t>2)return`Value ${e+1} of ${t}`;if(t===2)return[`Minimum`,`Maximum`][e]}Y(an,`getLabel`);function on(e,t){if(e.length===1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}Y(on,`getClosestValueIndex`);function sn(e,t,n){let r=e/2;return(r-un([0,50],[0,r])(t)*n)*n}Y(sn,`getThumbInBoundsOffset`);function cn(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}Y(cn,`getStepsBetweenValues`);function ln(e,t){if(t>0){let n=cn(e);return Math.min(...n)>=t}return!0}Y(ln,`hasMinStepsBetweenValues`);function un(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}Y(un,`linearScale`);function dn(e){if(!Number.isFinite(e))return 0;let t=e.toString();if(t.includes(`e`)){let[e,n]=t.split(`e`),r=e.split(`.`)[1]||``,i=Number(n);return Math.max(0,r.length-i)}let n=t.split(`.`)[1];return n?n.length:0}Y(dn,`getDecimalCount`);function Q(e,t){let n=10**t;return Math.round(e*n)/n}Y(Q,`roundValue`);function fn(e,{min:t,step:n,direction:r,multiplier:i}){let a=dn(n),o=(e-t)/n,s=Math.round(o),c=Q(s*n+t,a)===Q(e,a),l;return l=c?s+i*r:r>0?Math.ceil(o):Math.floor(o),Q(l*n+t,a)}Y(fn,`getNextStepValue`);function pn(e){return typeof e==`function`}Y(pn,`isFunction`);function mn({className:e,defaultValue:t,value:n,min:r=0,max:i=100,"aria-label":a,"aria-labelledby":o,"aria-valuetext":c,...l}){let u=n?.length??t?.length??1,d=G.useMemo(()=>Array.from({length:u},(e,t)=>`thumb-${t}`),[u]);return(0,K.jsxs)(Lt,{"data-slot":`slider`,defaultValue:t,value:n,min:r,max:i,className:s(`relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col`,e),...l,children:[(0,K.jsx)(Wt,{"data-slot":`slider-track`,className:s(`relative grow overflow-hidden rounded-full bg-muted data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5`),children:(0,K.jsx)(Kt,{"data-slot":`slider-range`,className:s(`absolute bg-primary data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full`)})}),d.map(e=>(0,K.jsx)($t,{"data-slot":`slider-thumb`,"aria-label":a,"aria-labelledby":o,"aria-valuetext":u===1?c:void 0,className:`block size-4 shrink-0 rounded-full border border-primary bg-background shadow-sm ring-ring/50 transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50`},e))]})}var $=`w-full sm:w-[280px]`,hn={dark:{background:`#0a0a0a`,foreground:`#fafafa`},light:{background:`#fafafa`,foreground:`#0a0a0a`}};function gn(e){let t=hn[e?`dark`:`light`],[n,r]=(0,G.useState)(t);return(0,G.useEffect)(()=>{let e,n=()=>{let e=Se()??t;r(t=>t.background===e.background&&t.foreground===e.foreground?t:e)},i=()=>{clearTimeout(e),e=setTimeout(n,0)};i();let a=new MutationObserver(i);return a.observe(document.documentElement,{attributes:!0,attributeFilter:[`style`,`class`,ye]}),()=>{clearTimeout(e),a.disconnect()}},[t]),n}var _n=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}];function vn(){let{theme:e,setTheme:t}=Me();return(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{htmlFor:`appearance-mode`,children:`Mode`}),(0,K.jsxs)(M,{value:e??`system`,onValueChange:t,children:[(0,K.jsx)(P,{id:`appearance-mode`,className:$,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:_n.map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Every color scheme has a light and a dark variant.`})]})}function yn({value:e,disabled:t,onChange:n}){let r=y.find(t=>t.id===e);return(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{htmlFor:`appearance-color-scheme`,children:`Color scheme`}),(0,K.jsxs)(M,{value:e,onValueChange:e=>n(e),disabled:t,children:[(0,K.jsx)(P,{id:`appearance-color-scheme`,className:$,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:y.map(e=>(0,K.jsx)(k,{value:e.id,children:e.label},e.id))})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:r?.description})]})}function bn({id:e,label:t,helpText:n,value:i,placeholderColor:a,disabled:o,onCommit:s}){let c=i??a,[l,u]=(0,G.useState)(c),d=(0,G.useRef)(!1);return(0,G.useEffect)(()=>{d.current||u(c)},[c]),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{htmlFor:e,children:t}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{id:e,type:`color`,value:l,onChange:e=>{u(e.target.value),d.current=!0},onBlur:()=>{if(!d.current)return;d.current=!1;let e=l.toLowerCase();e!==i?.toLowerCase()&&s(e)},disabled:o,className:`h-9 w-12 cursor-pointer rounded-md border border-input bg-background p-1 disabled:cursor-not-allowed disabled:opacity-50`}),(0,K.jsx)(`span`,{className:`font-mono text-xs text-muted-foreground`,children:i??`From color scheme`}),i&&(0,K.jsx)(r,{variant:`ghost`,size:`sm`,onClick:()=>s(null),disabled:o,children:`Reset`})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n})]})}function xn({value:e,disabled:t,onCommit:n}){let[i,a]=(0,G.useState)(e);return(0,G.useEffect)(()=>{a(e)},[e]),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between ${$}`,children:[(0,K.jsx)(I,{id:`appearance-font-scale-label`,children:`Font size`}),(0,K.jsxs)(`span`,{className:`font-mono text-xs text-muted-foreground`,children:[i,`%`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(mn,{id:`appearance-font-scale`,"aria-labelledby":`appearance-font-scale-label`,"aria-valuetext":`${i}%`,className:$,value:[i],onValueChange:([t])=>a(t??e),onValueCommit:([t])=>{t!==void 0&&t!==e&&n(t)},min:75,max:175,step:5,disabled:t}),(0,K.jsx)(r,{variant:`ghost`,size:`sm`,onClick:()=>n(100),disabled:t||e===100,children:`Reset`})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Scales all interface text and spacing, independent of browser zoom.`})]})}function Sn({id:e,label:t,helpText:n,options:r,value:i,disabled:a,onCommit:s}){let c=b(r,i),[l,u]=(0,G.useState)(c),[d,f]=(0,G.useState)(c===`custom`?i??``:``),[p,g]=(0,G.useState)(null);(0,G.useEffect)(()=>{u(c),c===`custom`&&f(i??``)},[c,i]);let _=e=>{if(u(e),g(null),e===`custom`)return;let t=r.find(t=>t.id===e);t&&t.value!==i&&s(t.value)},v=()=>{if(d.trim()===``)return;let e=m.safeParse(d);if(!e.success){g(e.error.issues[0]?.message??`Invalid font family`);return}g(null),e.data!==i&&s(e.data)},y=`${e}-custom`;return(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{htmlFor:e,children:t}),(0,K.jsxs)(M,{value:l,onValueChange:_,disabled:a,children:[(0,K.jsx)(P,{id:e,className:$,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[r.map(e=>(0,K.jsx)(k,{value:e.id,children:e.label},e.id)),(0,K.jsx)(k,{value:h,children:`Custom…`})]})]}),l===`custom`&&(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(o,{id:y,"aria-label":`${t} family`,value:d,onChange:e=>{f(e.target.value),g(null)},onBlur:v,onKeyDown:e=>{e.key===`Enter`&&v()},placeholder:`"Fira Code", monospace`,className:`${$} font-mono text-sm`,disabled:a,"aria-invalid":p?!0:void 0}),p&&(0,K.jsx)(`p`,{className:`text-xs text-destructive`,role:`alert`,children:p}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Any font installed on this device, written as a CSS font-family list.`})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n})]})}var Cn={appearanceColorScheme:p,appearanceBackgroundColor:null,appearanceForegroundColor:null,appearanceFontScale:100,appearanceFontSans:null,appearanceFontMono:null};function wn(){let{data:e,isLoading:t}=u.userSettings.get.useQuery(),n=u.useUtils(),{resolvedTheme:i}=Me(),a=i===`dark`,o=v(e),s=gn(a),[c,l]=(0,G.useState)(0),d=u.userSettings.update.useMutation({onSuccess:e=>{n.userSettings.get.setData(void 0,e),n.userSettings.get.invalidate()},onError:e=>{D.error(`Failed to update appearance: ${e.message}`),l(e=>e+1)}});if(t)return(0,K.jsxs)(B,{children:[(0,K.jsx)(R,{children:(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(rt,{className:`h-5 w-5`}),`Appearance`]})}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]});let p=d.isPending,m=e=>d.mutate(e);return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(rt,{className:`h-5 w-5`}),`Appearance`]}),(0,K.jsx)(F,{children:`Choose a color scheme, adjust text size, and pick the fonts used across the app.`})]}),(0,K.jsxs)(N,{className:`space-y-6`,children:[(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,K.jsx)(yn,{value:o.colorScheme,disabled:p,onChange:e=>m({appearanceColorScheme:e})}),(0,K.jsx)(vn,{})]}),(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,K.jsx)(bn,{id:`appearance-background-color`,label:`Background color`,helpText:`Replaces the color scheme’s page background in both light and dark mode.`,value:o.backgroundColor,placeholderColor:s.background,disabled:p,onCommit:e=>m({appearanceBackgroundColor:e})},`background-${c}`),(0,K.jsx)(bn,{id:`appearance-foreground-color`,label:`Text color`,helpText:`Replaces the primary text color; secondary text is blended from it.`,value:o.foregroundColor,placeholderColor:s.foreground,disabled:p,onCommit:e=>m({appearanceForegroundColor:e})},`foreground-${c}`)]}),(0,K.jsxs)(`div`,{className:`space-y-4 border-t pt-4`,children:[(0,K.jsx)(xn,{value:o.fontScale,disabled:p,onCommit:e=>m({appearanceFontScale:e})},`scale-${c}`),(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,K.jsx)(Sn,{id:`appearance-font-sans`,label:`Interface font`,helpText:`Used for navigation, chat, and settings.`,options:g,value:o.fontSans,disabled:p,onCommit:e=>m({appearanceFontSans:e})},`sans-${c}`),(0,K.jsx)(Sn,{id:`appearance-font-mono`,label:`Monospace font`,helpText:`Used for code, diffs, and terminals.`,options:f,value:o.fontMono,disabled:p,onCommit:e=>m({appearanceFontMono:e})},`mono-${c}`)]})]}),(0,K.jsx)(`div`,{className:`flex justify-end border-t pt-4`,children:(0,K.jsx)(r,{variant:`outline`,size:`sm`,onClick:()=>m(Cn),disabled:p||_(o),children:`Reset appearance`})})]})]})}function Tn(e,t=`(restart to detect)`){return e==null?t:String(e)}function En(e){if(e.port){let t=Number.parseInt(e.port,10);if(!Number.isNaN(t))return String(t)}return e.protocol===`http:`?`80`:e.protocol===`https:`?`443`:`(not available)`}function Dn(){let{data:e,isLoading:t}=u.admin.getServerInfo.useQuery(void 0,{retry:1,retryDelay:1e3,meta:{suppressErrors:!0}}),n=En(window.location),r=e?.backendPort??null;return t?(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`App Info`}),(0,K.jsx)(F,{children:`Repository and runtime details`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]}):(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`App Info`}),(0,K.jsx)(F,{children:`Repository and runtime details`})]}),(0,K.jsxs)(N,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{children:`Repository`}),(0,K.jsxs)(`a`,{href:`https://github.com/purplefish-ai/factory-factory`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 text-sm text-muted-foreground hover:text-foreground transition-colors`,children:[`GitHub`,(0,K.jsx)(ve,{className:`h-3.5 w-3.5`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{children:`Ports`}),(0,K.jsxs)(`div`,{className:`space-y-1 text-sm text-muted-foreground`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{children:`Frontend`}),(0,K.jsx)(`code`,{className:`rounded bg-muted px-1.5 py-0.5`,children:n})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{children:`Backend`}),(0,K.jsx)(`code`,{className:`rounded bg-muted px-1.5 py-0.5`,children:Tn(r)})]})]})]})]})]})}function On(){let{data:e,isLoading:t}=u.userSettings.get.useQuery(),{data:n}=u.userSettings.getProviderOptions.useQuery(void 0,{staleTime:3e4}),r=u.useUtils(),[i,a]=(0,G.useState)(`sonnet`),[o,s]=(0,G.useState)(`default`),c=(0,G.useRef)({}),l=u.userSettings.update.useMutation({scope:{id:`chat-provider-defaults`},onMutate:()=>r.userSettings.get.cancel(),onSuccess:async e=>{r.userSettings.get.setData(void 0,e),D.success(`Chat defaults updated`),await r.userSettings.get.invalidate()},onError:(t,n)=>{let i=r.userSettings.get.getData()??e;n.defaultClaudeModel!==void 0&&c.current.CLAUDE===n&&a(e=>e===n.defaultClaudeModel?i?.defaultClaudeModel??`sonnet`:e),n.defaultCodexModel!==void 0&&c.current.CODEX===n&&s(e=>e===n.defaultCodexModel?i?.defaultCodexModel??`default`:e),D.error(`Failed to update chat defaults: ${t.message}`)}});if((0,G.useEffect)(()=>{l.isPending||(a(e?.defaultClaudeModel??`sonnet`),s(e?.defaultCodexModel??`default`))},[e?.defaultClaudeModel,e?.defaultCodexModel,l.isPending]),t)return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`Chat Defaults`}),(0,K.jsx)(F,{children:`Default provider for new chats`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]});let d=e?.defaultSessionProvider??`CLAUDE`,f=e?.defaultClaudeModel??`sonnet`,p=e?.defaultCodexModel??`default`,m=e?.defaultClaudeReasoningEffort??null,h=e?.defaultCodexReasoningEffort??null,g=e?.defaultWorkspacePermissions??`STRICT`,_=`__provider_default__`,v=(e,t)=>{let r=n?.[e]?.models??[];return r.some(e=>e.value===t)?r:[{value:t,label:e===`CLAUDE`?`Saved model — ${t} (not in current catalog)`:t},...r]},y=(e,t)=>{let r=n?.[e]?.efforts??[];return!t||r.some(e=>e.value===t)?r:[{value:t,label:t},...r]},b={CLAUDE:{fallbackValue:`sonnet`,buildPayload:e=>({defaultClaudeModel:e}),buildEffortPayload:e=>({defaultClaudeReasoningEffort:e})},CODEX:{fallbackValue:`default`,buildPayload:e=>({defaultCodexModel:e}),buildEffortPayload:e=>({defaultCodexReasoningEffort:e})}},x=(e,t)=>{let n=b[e],r=t.trim()||n.fallbackValue,i=n.buildPayload(r);c.current[e]=i,l.mutate(i)},S=(e,t)=>{let n=t===_?null:t;l.mutate(b[e].buildEffortPayload(n))};return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`Chat Defaults`}),(0,K.jsx)(F,{children:`Default provider used when a workspace defers provider selection`})]}),(0,K.jsxs)(N,{className:`space-y-3`,children:[(0,K.jsx)(I,{htmlFor:`chat-default-provider`,children:`Default chat provider`}),(0,K.jsxs)(M,{value:d,onValueChange:e=>{(e===`CLAUDE`||e===`CODEX`)&&l.mutate({defaultSessionProvider:e})},disabled:l.isPending,children:[(0,K.jsx)(P,{id:`chat-default-provider`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`CLAUDE`,children:`Claude`}),(0,K.jsx)(k,{value:`CODEX`,children:`Codex`})]})]}),(0,K.jsx)(ue,{provider:d}),(0,K.jsxs)(`div`,{className:`grid gap-3 pt-1 sm:grid-cols-2`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`default-claude-model`,children:`Default Claude model`}),(0,K.jsxs)(M,{value:i,onValueChange:e=>{a(e),x(`CLAUDE`,e)},disabled:l.isPending,children:[(0,K.jsx)(P,{id:`default-claude-model`,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:v(`CLAUDE`,f).map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))})]}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Claude aliases like `,(0,K.jsx)(`code`,{className:`rounded bg-muted px-1`,children:`sonnet`}),` and`,` `,(0,K.jsx)(`code`,{className:`rounded bg-muted px-1`,children:`opus`}),` are supported.`]})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`default-codex-model`,children:`Default Codex model`}),(0,K.jsxs)(M,{value:o,onValueChange:e=>{s(e),x(`CODEX`,e)},disabled:l.isPending,children:[(0,K.jsx)(P,{id:`default-codex-model`,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:v(`CODEX`,p).map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Codex options are loaded from the CLI when available.`})]})]}),(0,K.jsxs)(`div`,{className:`grid gap-3 pt-1 sm:grid-cols-2`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`default-claude-effort`,children:`Default Claude effort`}),(0,K.jsxs)(M,{value:m??_,onValueChange:e=>S(`CLAUDE`,e),disabled:l.isPending,children:[(0,K.jsx)(P,{id:`default-claude-effort`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:_,children:`Provider default`}),y(`CLAUDE`,m).map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))]})]})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`default-codex-effort`,children:`Default Codex effort`}),(0,K.jsxs)(M,{value:h??_,onValueChange:e=>S(`CODEX`,e),disabled:l.isPending,children:[(0,K.jsx)(P,{id:`default-codex-effort`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:_,children:`Provider default`}),y(`CODEX`,h).map(e=>(0,K.jsx)(k,{value:e.value,children:e.label},e.value))]})]})]})]}),(0,K.jsxs)(`div`,{className:`space-y-2 pt-1`,children:[(0,K.jsx)(I,{htmlFor:`workspace-permissions`,children:`Default permissions for new workspaces`}),(0,K.jsxs)(M,{value:g,onValueChange:e=>{(e===`STRICT`||e===`RELAXED`||e===`YOLO`)&&l.mutate({defaultWorkspacePermissions:e})},disabled:l.isPending,children:[(0,K.jsx)(P,{id:`workspace-permissions`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`STRICT`,children:`Strict`}),(0,K.jsx)(k,{value:`RELAXED`,children:`Relaxed`}),(0,K.jsx)(k,{value:`YOLO`,children:`YOLO`})]})]})]})]})]})}function kn(){let[e,t]=(0,G.useState)(!1),{refresh:n}=ne();return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(de,{className:`w-5 h-5`}),`CLI Authentication`]}),(0,K.jsx)(F,{children:`Check and manage authentication for Claude, Codex, and GitHub CLI`})]}),(0,K.jsxs)(N,{children:[(0,K.jsx)(w,{onOpenTerminal:()=>t(!0)}),(0,K.jsx)(ae,{open:e,onClose:()=>{t(!1),n()}})]})]})}function An(){let[e,t]=(0,G.useState)(!1),n=u.useUtils();return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Oe,{className:`w-5 h-5`}),`Data Backup`]}),(0,K.jsx)(F,{children:`Export and import database data for backup or migration purposes`})]}),(0,K.jsxs)(N,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:gap-4`,children:[(0,K.jsxs)(r,{onClick:async()=>{t(!0);try{let e=await n.admin.exportData.fetch(),t=JSON.stringify(e,null,2);T({data:t,mimeType:`application/json`,fileName:`factory-factory-backup-${new Date().toISOString().split(`T`)[0]}.json`}),D.success(`Export completed`)}catch(e){D.error(`Export failed: ${e instanceof Error?e.message:`Unknown error`}`)}finally{t(!1)}},disabled:e,variant:`outline`,className:`w-full sm:w-auto`,children:[(0,K.jsx)(se,{className:`w-4 h-4 mr-2`}),e?`Exporting...`:`Export Data`]}),(0,K.jsx)(oe,{variant:`outline`,className:`w-full sm:w-auto`})]}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Export includes projects, workspaces, session metadata, and user preferences. Caches will be rebuilt automatically after import.`})]})]})}function jn(){let{data:e,isLoading:t}=u.userSettings.get.useQuery(),n=u.useUtils(),[i,a]=(0,G.useState)(!1),s=u.userSettings.update.useMutation({onSuccess:async()=>{D.success(`IDE settings updated`),await Promise.all([n.userSettings.get.invalidate(),n.workspace.getAvailableIdes.invalidate()]),a(!1)},onError:e=>{D.error(`Failed to update settings: ${e.message}`)}}),c=u.userSettings.testCustomCommand.useMutation({onSuccess:()=>{D.success(`Command executed successfully!`)},onError:e=>{D.error(`Command test failed: ${e.message}`)}}),[l,d]=(0,G.useState)(e?.customIdeCommand||``);(0,G.useEffect)(()=>{d(e?.customIdeCommand||``)},[e?.customIdeCommand]);let f=e=>{let t=e.trim();t&&s.mutate({preferredIde:`custom`,customIdeCommand:t})},p=e=>{e===`custom`?(a(!0),f(l)):(e===`cursor`||e===`vscode`)&&(a(!1),s.mutate({preferredIde:e}))},m=i?`custom`:e?.preferredIde??`cursor`;return t?(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`IDE Settings`}),(0,K.jsx)(F,{children:`Configure your preferred IDE for opening workspaces`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]}):(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`IDE Settings`}),(0,K.jsx)(F,{children:`Configure your preferred IDE for opening workspaces`})]}),(0,K.jsxs)(N,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`ide-select`,children:`Preferred IDE`}),(0,K.jsxs)(M,{value:m,onValueChange:p,disabled:s.isPending,children:[(0,K.jsx)(P,{id:`ide-select`,children:(0,K.jsx)(z,{placeholder:`Select an IDE`})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`cursor`,children:`Cursor`}),(0,K.jsx)(k,{value:`vscode`,children:`VS Code`}),(0,K.jsx)(k,{value:`custom`,children:`Custom`})]})]})]}),m===`custom`&&(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`custom-command`,children:`Custom Command`}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,K.jsx)(o,{id:`custom-command`,value:l,onChange:e=>d(e.target.value),onBlur:()=>f(l),placeholder:`code-insiders {workspace}`,className:`font-mono text-sm flex-1`,disabled:s.isPending}),(0,K.jsx)(r,{variant:`outline`,onClick:()=>{if(!l.trim()){D.error(`Please enter a custom command first`);return}c.mutate({customCommand:l})},disabled:c.isPending||!l.trim(),children:c.isPending?`Testing...`:`Test`})]}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Use `,(0,K.jsx)(`code`,{className:`bg-muted px-1 py-0.5 rounded`,children:`{workspace}`}),` as a placeholder for the workspace path. Example:`,` `,(0,K.jsxs)(`code`,{className:`bg-muted px-1 py-0.5 rounded`,children:[`code-insiders `,`{workspace}`]})]})]})]})]})}function Mn({projectId:e,linearConfig:t,onSave:n,isSaving:i}){let[a,s]=(0,G.useState)(``),[c,l]=(0,G.useState)(t?.viewerName??null),[d,f]=(0,G.useState)([]),[p,m]=(0,G.useState)(null),h=(0,G.useRef)(0),g=u.linear.validateKeyAndListTeams.useMutation(),_=()=>{h.current+=1,l(null),f([]),m(null)},v=e=>{s(e),_()},y=async()=>{_();let e=h.current;try{let t=await g.mutateAsync({apiKey:a});if(e!==h.current)return;t.valid?(l(t.viewerName??null),f(t.teams??[])):D.error(`Validation failed: ${t.error??`Unknown error`}`)}catch(t){e===h.current&&D.error(`Validation failed: ${t instanceof Error?t.message:`Unknown error`}`)}},b=async()=>{let e=d.find(e=>e.id===p);if(!(e&&c))return;let t=++h.current;try{await n({linear:{apiKey:a,teamId:e.id,teamName:`${e.name} (${e.key})`,viewerName:c}}),t===h.current&&v(``)}catch{}},x=c!==null,C=d.length>0,ee=t?.hasApiKey??!1,w=t?.teamName??null;return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(I,{htmlFor:`api-key-${e}`,children:`API Key`}),x&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1 text-xs text-green-600`,children:[(0,K.jsx)(S,{className:`w-3 h-3`}),`Connected as `,c]})]}),(0,K.jsx)(o,{id:`api-key-${e}`,type:`password`,value:a,onChange:e=>v(e.target.value),placeholder:ee?`••••••••••••••••••••`:`lin_api_...`,className:`font-mono text-sm w-[280px]`})]}),(0,K.jsx)(r,{variant:`outline`,onClick:y,disabled:g.isPending||!a,children:g.isPending?`Validating...`:`Validate`})]}),x&&C&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{children:`Team`}),(0,K.jsxs)(M,{value:p??``,onValueChange:e=>{h.current+=1,m(e)},children:[(0,K.jsx)(P,{className:`w-[220px]`,children:(0,K.jsx)(z,{placeholder:`Select a team`})}),(0,K.jsx)(j,{children:d.map(e=>(0,K.jsxs)(k,{value:e.id,children:[e.name,` (`,e.key,`)`]},e.id))})]})]}),(0,K.jsx)(r,{onClick:b,disabled:!p||i,className:`self-end`,children:i?`Saving...`:`Save`})]}),w&&!C&&(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground self-end pb-2`,children:[`Team: `,w]}),!x&&(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-2 basis-full`,children:[`Create a personal API key at`,` `,(0,K.jsx)(`a`,{href:`https://linear.app/settings/api`,target:`_blank`,rel:`noopener noreferrer`,className:`underline`,children:`linear.app/settings/api`})]})]})}function Nn({projectId:e,projectName:t,currentProvider:n,issueTrackerConfig:r}){let i=u.useUtils(),[a,o]=(0,G.useState)(null),s=(0,G.useRef)(0),c=(0,G.useRef)(0),l=a??n,d=u.project.update.useMutation(),f=u.project.update.useMutation({onSuccess:()=>{D.success(`Issue tracking settings saved`),i.project.list.invalidate()},onError:e=>D.error(`Failed to save: ${e.message}`)}),p=async()=>{if(c.current!==0)return;let e=s.current;await i.project.list.invalidate(),e===s.current&&c.current===0&&o(null)},m=async t=>{let n=++s.current;c.current+=1,o(t);try{let r=await d.mutateAsync({id:e,issueProvider:t});i.project.list.setQueriesData(void 0,{},e=>e?.map(e=>e.id===r.id?{...e,issueProvider:r.issueProvider}:e)),n===s.current&&D.success(`Issue tracking settings saved`)}catch(e){n===s.current&&(o(null),D.error(`Failed to save: ${e instanceof Error?e.message:`Unknown error`}`))}finally{--c.current,await p()}},h=async t=>{await f.mutateAsync({id:e,issueProvider:x.LINEAR,issueTrackerConfig:t})},g=l===x.LINEAR,_=!g||r?.linear!=null;return(0,K.jsxs)(`div`,{className:`rounded-lg border bg-card`,children:[(0,K.jsx)(`div`,{className:`border-b bg-muted/50 px-4 py-3`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`h3`,{className:`font-semibold text-sm`,children:t}),_&&(0,K.jsxs)(A,{variant:`default`,className:`bg-green-600 hover:bg-green-700`,children:[(0,K.jsx)(S,{className:`w-3 h-3 mr-1`}),g?`Linear`:`GitHub`]})]})}),(0,K.jsx)(`div`,{className:`p-4`,children:(0,K.jsxs)(`div`,{className:`flex flex-wrap items-end gap-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{children:`Issue Provider`}),(0,K.jsxs)(M,{value:l,onValueChange:m,disabled:d.isPending||f.isPending,children:[(0,K.jsx)(P,{className:`w-[180px]`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:x.GITHUB,children:`GitHub Issues`}),(0,K.jsx)(k,{value:x.LINEAR,children:`Linear Issues`})]})]})]}),g&&(0,K.jsx)(Mn,{projectId:e,linearConfig:r?.linear??null,onSave:h,isSaving:f.isPending})]})})]})}function Pn(){let{data:e,isLoading:t}=u.userSettings.get.useQuery(),n=u.useUtils(),r=u.userSettings.update.useMutation({onSuccess:()=>{n.userSettings.get.invalidate()},onError:e=>{D.error(`Failed to update settings: ${e.message}`)}});return t?(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`Notification Settings`}),(0,K.jsx)(F,{children:`Configure notification behavior`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]}):(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`Notification Settings`}),(0,K.jsx)(F,{children:`Configure notification behavior`})]}),(0,K.jsx)(N,{className:`space-y-4`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(I,{htmlFor:`sound-toggle`,children:`Play completion sound`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Play a sound when a workspace finishes`})]}),(0,K.jsx)(J,{id:`sound-toggle`,checked:e?.playSoundOnComplete??!0,onCheckedChange:e=>{r.mutate({playSoundOnComplete:e})},disabled:r.isPending})]})})]})}var Fn=5;function In(e,t=Date.now()){let n=e.getTime()-t,r=Math.round(n/1e3);if(Math.abs(r)<=Fn)return`now`;let i=Ln(Math.abs(r));return r<0?`${i} overdue`:`in ${i}`}function Ln(e){if(e<60)return`${e}s`;let t=Math.round(e/60);if(t<60)return`${t}m`;let n=Math.round(t/60);return n<24?`${n}h`:`${Math.round(n/24)}d`}function Rn(e,t=localStorage){return Ae(t)||e[0]?.slug||``}function zn({projects:e}){let[t,n]=(0,G.useState)(()=>Rn(e)),r=e.find(e=>e.slug===t)??e[0];return(0,G.useEffect)(()=>{r&&r.slug!==t&&(n(r.slug),Ee(r.slug))},[r,t]),r?(0,K.jsxs)(`div`,{className:`space-y-6`,children:[(0,K.jsx)(`div`,{className:`flex items-center gap-3`,children:(0,K.jsxs)(M,{value:r.slug,onValueChange:e=>{n(e),Ee(e)},children:[(0,K.jsx)(P,{className:`w-auto max-w-xs`,children:(0,K.jsx)(z,{placeholder:`Select a project`})}),(0,K.jsx)(j,{children:e.map(e=>(0,K.jsx)(k,{value:e.slug,children:e.name},e.id))})]})}),(0,K.jsx)(Bn,{projectId:r.id})]}):(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No projects found.`})}function Bn({projectId:e}){let t=u.useUtils(),{data:n,isLoading:r}=u.periodicTask.list.useQuery({projectId:e},{refetchInterval:1e4}),i=u.periodicTask.delete.useMutation({onSuccess:()=>{D.success(`Periodic task deleted`),t.periodicTask.list.invalidate({projectId:e})},onError:e=>D.error(`Delete failed: ${e.message}`)}),a=u.periodicTask.toggleEnabled.useMutation({onSuccess:()=>{t.periodicTask.list.invalidate({projectId:e})},onError:e=>D.error(`Toggle failed: ${e.message}`)}),o=u.periodicTask.update.useMutation({onSuccess:()=>{D.success(`Periodic task updated`),t.periodicTask.list.invalidate({projectId:e})},onError:e=>D.error(`Update failed: ${e.message}`)});return r?(0,K.jsxs)(B,{children:[(0,K.jsx)(R,{children:(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Te,{className:`w-5 h-5`}),`Periodic Tasks`]})}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-20 w-full`})})]}):(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Te,{className:`w-5 h-5`}),`Periodic Tasks`]}),(0,K.jsx)(F,{children:`Recurring tasks that create workspaces on a schedule`})]}),(0,K.jsx)(N,{children:!n||n.length===0?(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground py-4 text-center`,children:`No periodic tasks yet. Create one from the workspace launch dropdown.`}):(0,K.jsx)(`div`,{className:`space-y-3`,children:n.map(e=>(0,K.jsx)(Gn,{task:e,onToggle:t=>a.mutate({id:e.id,enabled:t}),onDelete:()=>i.mutate({id:e.id}),onUpdate:t=>o.mutate({id:e.id,...t}),isUpdating:o.isPending||a.isPending},e.id))})})]})}function Vn({status:e}){return(0,K.jsx)(A,{variant:{PR_CREATED:`default`,RUNNING:`secondary`}[e]??`destructive`,className:`text-[10px]`,children:{PR_CREATED:`PR Created`,RUNNING:`Running`,FAILED:`Failed`,SKIPPED:`Skipped`}[e]??e})}var Hn=new Set([`DAILY`,`WEEKLY`,`MONTHLY`]);function Un(e,t,n){return e!==t||!n?Intl.DateTimeFormat().resolvedOptions().timeZone:n}function Wn(e,t){let n=e.split(`:`).map(Number),r=n[0]??0,i=n[1]??0,a=new Date(Date.UTC(2e3,0,1,r,i,0,0)),o=a.toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`,timeZone:`UTC`}),s=new Intl.DateTimeFormat(`en-US`,{timeZone:t,timeZoneName:`short`}).formatToParts(a).find(e=>e.type===`timeZoneName`)?.value;return s?`${o} (${s})`:o}function Gn({task:e,onToggle:t,onDelete:n,onUpdate:i,isUpdating:a}){let[s,c]=(0,G.useState)(!1),[l,u]=(0,G.useState)(e.name),[d,f]=(0,G.useState)(e.prompt),[p,m]=(0,G.useState)(e.cadence),[h,g]=(0,G.useState)(e.scheduledTime??``),[_,v]=(0,G.useState)(!1),y=()=>{let t=Hn.has(p)&&!!h,n=t?h:null,r=t?Un(h,e.scheduledTime,e.timezone):null;i({name:l===e.name?void 0:l,prompt:d===e.prompt?void 0:d,cadence:p===e.cadence?void 0:p,scheduledTime:n===e.scheduledTime?void 0:n,timezone:r===e.timezone?void 0:r}),c(!1)},b={EVERY_MINUTE:`Every minute`,EVERY_FIVE_MINUTES:`Every 5 minutes`,DAILY:`Daily`,WEEKLY:`Weekly`,MONTHLY:`Monthly`}[e.cadence]??e.cadence,x=e.executions[0];return(0,K.jsxs)(`div`,{className:`rounded-md border p-3 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(J,{checked:e.isEnabled,onCheckedChange:t,disabled:a,className:`shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium text-sm truncate`,children:e.name}),(0,K.jsx)(A,{variant:`secondary`,className:`shrink-0 text-[10px]`,children:b})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1 shrink-0`,children:[(0,K.jsx)(r,{variant:`ghost`,size:`icon`,className:`h-7 w-7`,onClick:()=>{u(e.name),f(e.prompt),m(e.cadence),g(e.scheduledTime??``),c(!s)},children:(0,K.jsx)(Ie,{className:`h-3.5 w-3.5`})}),(0,K.jsx)(r,{variant:`ghost`,size:`icon`,className:`h-7 w-7 text-destructive hover:text-destructive`,onClick:n,children:(0,K.jsx)(it,{className:`h-3.5 w-3.5`})})]})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.prompt}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-[10px] text-muted-foreground`,children:[e.lastRunAt&&(0,K.jsxs)(`span`,{children:[`Last run: `,new Date(e.lastRunAt).toLocaleString()]}),(0,K.jsxs)(`span`,{title:new Date(e.nextRunAt).toLocaleString(),children:[`Next run: `,In(new Date(e.nextRunAt))]}),Hn.has(e.cadence)&&e.scheduledTime&&e.timezone&&(0,K.jsxs)(`span`,{children:[`at `,Wn(e.scheduledTime,e.timezone)]}),x&&(0,K.jsx)(Vn,{status:x.status})]}),s&&(0,K.jsxs)(`div`,{className:`space-y-2 pt-2 border-t`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(I,{className:`text-xs`,children:`Name`}),(0,K.jsx)(o,{className:`h-7 text-xs`,value:l,onChange:e=>u(e.target.value)})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(I,{className:`text-xs`,children:`Prompt`}),(0,K.jsx)(we,{className:`text-xs min-h-[60px]`,value:d,onChange:e=>f(e.target.value)})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(I,{className:`text-xs`,children:`Cadence`}),(0,K.jsxs)(M,{value:p,onValueChange:m,children:[(0,K.jsx)(P,{className:`h-7 text-xs`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`EVERY_MINUTE`,children:`Every minute (testing)`}),(0,K.jsx)(k,{value:`EVERY_FIVE_MINUTES`,children:`Every 5 minutes (testing)`}),(0,K.jsx)(k,{value:`DAILY`,children:`Daily`}),(0,K.jsx)(k,{value:`WEEKLY`,children:`Weekly`}),(0,K.jsx)(k,{value:`MONTHLY`,children:`Monthly`})]})]})]}),Hn.has(p)&&(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(I,{className:`text-xs`,children:`Run time (optional)`}),(0,K.jsx)(o,{type:`time`,className:`h-7 text-xs`,value:h,onChange:e=>g(e.target.value)})]}),(0,K.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,K.jsx)(r,{variant:`ghost`,size:`sm`,className:`h-7 text-xs`,onClick:()=>c(!1),children:`Cancel`}),(0,K.jsx)(r,{size:`sm`,className:`h-7 text-xs`,onClick:y,disabled:a,children:`Save`})]})]}),e.executions.length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`button`,{type:`button`,className:`text-[10px] text-muted-foreground hover:text-foreground underline`,onClick:()=>v(!_),children:[_?`Hide`:`Show`,` execution history (`,e.executions.length,`)`]}),_&&(0,K.jsx)(`div`,{className:`mt-2 space-y-1`,children:e.executions.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] text-muted-foreground`,children:[(0,K.jsx)(Vn,{status:e.status}),(0,K.jsx)(`span`,{children:new Date(e.startedAt).toLocaleString()}),e.prUrl&&(0,K.jsx)(`a`,{href:e.prUrl,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline`,children:`PR`})]},e.id))})]})]})}function Kn(e){switch(e.toUpperCase()){case`RUNNING`:return`default`;case`IDLE`:case`COMPLETED`:return`secondary`;case`FAILED`:return`destructive`;default:return`outline`}}function qn(e){let{process:t}=e;return(0,K.jsx)(W,{children:(0,K.jsxs)(`div`,{className:`flex flex-col`,children:[t.projectSlug?(0,K.jsx)(l,{to:`/projects/${t.projectSlug}/workspaces/${t.workspaceId}`,className:`font-medium hover:underline`,children:t.workspaceName}):(0,K.jsx)(`span`,{className:`font-medium`,children:t.workspaceName}),t.workspaceBranch&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:t.workspaceBranch})]})})}function Jn({process:e,isStopping:t,onStop:n}){return(0,K.jsxs)(`div`,{className:`rounded-md border bg-background p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`div`,{className:`font-medium truncate`,children:e.workspaceName}),e.workspaceBranch&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground font-mono truncate`,children:e.workspaceBranch}),(0,K.jsx)(`div`,{className:`mt-1 text-xs text-muted-foreground font-mono`,children:e.name||e.sessionId.slice(0,8)})]}),(0,K.jsx)(r,{variant:`ghost`,size:`sm`,onClick:()=>n(e.sessionId),disabled:t||e.status===`COMPLETED`||e.status===`FAILED`,title:`Stop session`,children:(0,K.jsx)(De,{className:`w-4 h-4`})})]}),(0,K.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs`,children:[(0,K.jsx)(A,{variant:`outline`,children:e.workflow}),(0,K.jsx)(A,{variant:Kn(e.status),children:e.status})]}),(0,K.jsxs)(`div`,{className:`mt-2 grid grid-cols-2 gap-2 text-xs font-mono text-muted-foreground`,children:[(0,K.jsxs)(`span`,{children:[`CPU: `,Xe(e.cpuPercent)]}),(0,K.jsxs)(`span`,{children:[`Mem: `,Ze(e.memoryBytes)]}),(0,K.jsxs)(`span`,{children:[`Idle: `,Ye(e.idleTimeMs)]}),(0,K.jsxs)(`span`,{children:[`PID: `,e.pid??`-`]})]})]})}function Yn({process:e}){return(0,K.jsxs)(`div`,{className:`rounded-md border bg-background p-3`,children:[(0,K.jsx)(`div`,{className:`font-medium truncate`,children:e.workspaceName}),e.workspaceBranch&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground font-mono truncate`,children:e.workspaceBranch}),(0,K.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs text-muted-foreground font-mono`,children:[(0,K.jsxs)(`span`,{children:[`Terminal: `,e.terminalId.slice(0,12)]}),(0,K.jsxs)(`span`,{children:[`PID: `,e.pid]}),(0,K.jsxs)(`span`,{children:[`Size: `,e.cols,`x`,e.rows]})]}),(0,K.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs font-mono text-muted-foreground`,children:[(0,K.jsxs)(`span`,{children:[`CPU: `,Xe(e.cpuPercent)]}),(0,K.jsxs)(`span`,{children:[`Mem: `,Ze(e.memoryBytes)]}),(0,K.jsxs)(`span`,{children:[`Created: `,new Date(e.createdAt).toLocaleTimeString()]})]})]})}function Xn(){return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[`Active Processes`,(0,K.jsx)(O,{className:`h-5 w-16 ml-2`})]}),(0,K.jsx)(F,{children:`Agent and Terminal processes currently running`})]}),(0,K.jsx)(N,{className:`space-y-6`,children:(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(O,{className:`h-5 w-48`}),(0,K.jsxs)(`div`,{className:`border rounded-md p-4 space-y-3`,children:[(0,K.jsx)(O,{className:`h-8 w-full`}),(0,K.jsx)(O,{className:`h-12 w-full`}),(0,K.jsx)(O,{className:`h-12 w-full`})]})]})})]})}function Zn({processes:e}){let t=C(),n=e?.agent&&e.agent.length>0,i=e?.terminal&&e.terminal.length>0,a=!(n||i),[o,s]=(0,G.useState)(new Set),{data:c}=u.session.getMaxSessionsPerWorkspace.useQuery(),l=u.useUtils(),d=u.admin.stopSession.useMutation(),f=(0,G.useCallback)(async e=>{s(t=>new Set(t).add(e));try{(await d.mutateAsync({sessionId:e})).wasRunning?D.success(`Session stopped`):D.info(`Session was already stopped`),l.admin.getActiveProcesses.invalidate()}catch(e){D.error(`Failed to stop session: ${e instanceof Error?e.message:String(e)}`)}finally{s(t=>{let n=new Set(t);return n.delete(e),n})}},[d,l]),p=e?.agent&&e.agent.length>0?Math.max(...Object.values(e.agent.reduce((e,t)=>(e[t.workspaceId]=(e[t.workspaceId]||0)+1,e),{}))):0;return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex flex-wrap items-center gap-2`,children:[`Active Processes`,e?.summary&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(A,{variant:`secondary`,className:`ml-2`,children:[e.summary.totalAgent,` Agent sessions`]}),c!==void 0&&p>0&&(0,K.jsxs)(A,{variant:p>=c*.8?`destructive`:`outline`,title:`Highest session count across all workspaces. Limit is ${c} per workspace.`,children:[`Max per workspace: `,p,`/`,c]})]})]}),(0,K.jsx)(F,{children:`Agent and Terminal processes currently running`})]}),(0,K.jsxs)(N,{className:`space-y-6`,children:[a&&(0,K.jsx)(`p`,{className:`text-muted-foreground text-sm`,children:`No active processes`}),n&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`h4`,{className:`text-sm font-medium mb-2 flex items-center gap-2`,children:[(0,K.jsx)(je,{className:`w-4 h-4`}),`Agent Sessions (`,e.agent.length,`)`]}),t?(0,K.jsx)(`div`,{className:`space-y-2`,children:e.agent.map(e=>(0,K.jsx)(Jn,{process:e,isStopping:o.has(e.sessionId),onStop:f},e.sessionId))}):(0,K.jsx)(`div`,{className:`border rounded-md`,children:(0,K.jsxs)(Je,{children:[(0,K.jsx)(Ge,{children:(0,K.jsxs)(qe,{children:[(0,K.jsx)(U,{children:`Workspace`}),(0,K.jsx)(U,{children:`Session`}),(0,K.jsx)(U,{children:`Workflow`}),(0,K.jsx)(U,{children:`PID`}),(0,K.jsx)(U,{children:`Resources`}),(0,K.jsx)(U,{children:`Status`}),(0,K.jsx)(U,{children:`Actions`})]})}),(0,K.jsx)(Ke,{children:e.agent.map(e=>(0,K.jsxs)(qe,{children:[(0,K.jsx)(qn,{process:e}),(0,K.jsx)(W,{children:(0,K.jsxs)(`div`,{className:`flex flex-col`,children:[(0,K.jsx)(`span`,{className:`text-xs font-mono text-muted-foreground`,children:e.name||e.sessionId.slice(0,8)}),(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.model})]})}),(0,K.jsx)(W,{children:(0,K.jsx)(A,{variant:`outline`,children:e.workflow})}),(0,K.jsx)(W,{className:`font-mono text-xs`,children:e.pid??`-`}),(0,K.jsx)(W,{children:(0,K.jsxs)(`div`,{className:`flex flex-col text-xs font-mono`,children:[(0,K.jsxs)(`span`,{children:[`CPU: `,Xe(e.cpuPercent)]}),(0,K.jsxs)(`span`,{children:[`Mem: `,Ze(e.memoryBytes)]}),(0,K.jsxs)(`span`,{className:`text-muted-foreground`,children:[`Idle: `,Ye(e.idleTimeMs)]})]})}),(0,K.jsx)(W,{children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,K.jsx)(A,{variant:Kn(e.status),children:e.status}),e.memoryStatus&&e.memoryStatus!==e.status.toLowerCase()&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`(`,e.memoryStatus,`)`]})]})}),(0,K.jsx)(W,{children:(0,K.jsx)(r,{variant:`ghost`,size:`sm`,onClick:()=>f(e.sessionId),disabled:o.has(e.sessionId)||e.status===`COMPLETED`||e.status===`FAILED`,title:`Stop session`,children:(0,K.jsx)(De,{className:`w-4 h-4`})})})]},e.sessionId))})]})})]}),i&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`h4`,{className:`text-sm font-medium mb-2 flex items-center gap-2`,children:[(0,K.jsx)(de,{className:`w-4 h-4`}),`Terminal Processes (`,e.terminal.length,`)`]}),t?(0,K.jsx)(`div`,{className:`space-y-2`,children:e.terminal.map(e=>(0,K.jsx)(Yn,{process:e},e.terminalId))}):(0,K.jsx)(`div`,{className:`border rounded-md`,children:(0,K.jsxs)(Je,{children:[(0,K.jsx)(Ge,{children:(0,K.jsxs)(qe,{children:[(0,K.jsx)(U,{children:`Workspace`}),(0,K.jsx)(U,{children:`Terminal ID`}),(0,K.jsx)(U,{children:`PID`}),(0,K.jsx)(U,{children:`Resources`}),(0,K.jsx)(U,{children:`Size`}),(0,K.jsx)(U,{children:`Created`})]})}),(0,K.jsx)(Ke,{children:e.terminal.map(e=>(0,K.jsxs)(qe,{children:[(0,K.jsx)(qn,{process:e}),(0,K.jsx)(W,{children:(0,K.jsx)(`span`,{className:`text-xs font-mono text-muted-foreground`,children:e.terminalId.slice(0,12)})}),(0,K.jsx)(W,{className:`font-mono text-xs`,children:e.pid}),(0,K.jsx)(W,{children:(0,K.jsxs)(`div`,{className:`flex flex-col text-xs font-mono`,children:[(0,K.jsxs)(`span`,{children:[`CPU: `,Xe(e.cpuPercent)]}),(0,K.jsxs)(`span`,{children:[`Mem: `,Ze(e.memoryBytes)]})]})}),(0,K.jsxs)(W,{className:`font-mono text-xs`,children:[e.cols,`x`,e.rows]}),(0,K.jsx)(W,{className:`text-xs text-muted-foreground`,children:new Date(e.createdAt).toLocaleTimeString()})]},e.terminalId))})]})})]})]})]})}function Qn({projectId:e,projectName:t}){let[n,i]=(0,G.useState)(!1),a=u.useUtils(),{data:o,isPending:s,isSuccess:c,isError:l,error:f,refetch:p}=u.workspace.getFactoryConfig.useQuery({projectId:e});(0,G.useEffect)(()=>{c||i(!1)},[c]);let m=u.project.saveFactoryConfig.useMutation({onSuccess:()=>{a.workspace.getFactoryConfig.invalidate({projectId:e}),i(!1)},onError:e=>{D.error(`Failed to save configuration: ${e.message}`)}}),h=u.workspace.refreshFactoryConfigs.useMutation({onSuccess:e=>{e.errors.length>0?D.warning(`Refreshed ${e.updatedCount} workspace(s), but ${e.errors.length} failed`):D.success(`Refreshed factory-factory.json for ${e.updatedCount} workspace(s)`)},onError:e=>{D.error(`Failed to refresh configurations: ${e.message}`)}});return(0,K.jsxs)(`div`,{className:`rounded-lg border bg-card`,children:[c&&(0,K.jsx)(xe,{open:n,onOpenChange:i,currentConfig:o?o.scripts:void 0,onSave:t=>{c&&m.mutate({projectId:e,config:t})},isPending:m.isPending,error:m.error}),(0,K.jsx)(`div`,{className:`border-b bg-muted/50 px-4 py-3`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,K.jsx)(`h3`,{className:`min-w-0 truncate font-semibold text-sm`,children:t}),c&&(o?(0,K.jsxs)(A,{variant:`default`,className:`bg-green-600 hover:bg-green-700`,children:[(0,K.jsx)(S,{className:`w-3 h-3 mr-1`}),`Configured`]}):(0,K.jsxs)(A,{variant:`secondary`,className:`bg-muted`,children:[(0,K.jsx)(Oe,{className:`w-3 h-3 mr-1`}),`Not configured`]})),(0,K.jsx)(r,{variant:`ghost`,size:`icon`,className:`h-7 w-7`,"aria-label":`Edit factory configuration`,disabled:!c,onClick:()=>i(!0),children:(0,K.jsx)(Ie,{className:`w-3.5 h-3.5`})})]}),(0,K.jsxs)(r,{variant:`outline`,size:`sm`,onClick:()=>{h.mutate({projectId:e})},disabled:h.isPending,className:`w-full gap-2 sm:w-auto`,children:[(0,K.jsx)(d,{className:`w-4 h-4 ${h.isPending?`animate-spin`:``}`}),`Refresh Workspaces`]})]})}),(0,K.jsxs)(`div`,{className:`p-4`,children:[s&&(0,K.jsx)(`p`,{role:`status`,className:`text-sm text-muted-foreground`,children:`Loading configuration...`}),l&&(0,K.jsxs)(`div`,{role:`alert`,className:`space-y-3`,children:[(0,K.jsxs)(`p`,{className:`text-sm text-destructive`,children:[`Failed to load configuration: `,f.message]}),(0,K.jsx)(r,{variant:`outline`,size:`sm`,onClick:()=>void p(),children:`Retry`})]}),c&&(o?(0,K.jsx)(`div`,{className:`space-y-4`,children:(0,K.jsx)(Qe,{factoryConfig:o,variant:`card`})}):(0,K.jsx)(`div`,{className:`space-y-3`,children:(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No factory-factory.json found in this repository. Click the edit button above to configure workspace setup and run scripts.`})}))]})]})}function $n({projects:e}){let[t,n]=(0,G.useState)(()=>Ae()||e[0]?.slug||``),r=e.find(e=>e.slug===t)??e[0];return r?(0,K.jsxs)(`div`,{className:`space-y-6`,children:[(0,K.jsx)(`div`,{className:`flex items-center gap-3`,children:(0,K.jsxs)(M,{value:r.slug,onValueChange:e=>{n(e),Ee(e)},children:[(0,K.jsx)(P,{className:`w-auto max-w-xs`,children:(0,K.jsx)(z,{placeholder:`Select a project`})}),(0,K.jsx)(j,{children:e.map(e=>(0,K.jsx)(k,{value:e.slug,children:e.name},e.id))})]})}),(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Oe,{className:`w-5 h-5`}),`Factory Configuration`]}),(0,K.jsx)(F,{children:`Configuration for workspace setup and run scripts (factory-factory.json)`})]}),(0,K.jsxs)(N,{className:`space-y-4`,children:[(0,K.jsx)(Qn,{projectId:r.id,projectName:r.name},r.id),(0,K.jsxs)(`div`,{className:`text-xs text-muted-foreground space-y-1 border-t pt-4`,children:[(0,K.jsxs)(`p`,{children:[(0,K.jsx)(`strong`,{children:`Port Allocation:`}),` Use`,` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`{port}`}),` in run script for automatic port allocation`]}),(0,K.jsxs)(`p`,{children:[(0,K.jsx)(`strong`,{children:`Location:`}),` factory-factory.json in repository root`]})]})]})]}),(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(nt,{className:`w-5 h-5`}),`Issue Tracking`]}),(0,K.jsx)(F,{children:`Configure the issue provider (GitHub Issues or Linear)`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(Nn,{projectId:r.id,projectName:r.name,currentProvider:r.issueProvider,issueTrackerConfig:r.issueTrackerConfig},r.id)})]})]}):(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No projects found.`})}function er(){let{data:e,isLoading:t}=u.userSettings.get.useQuery(),n=u.useUtils(),i=u.userSettings.update.useMutation({onSuccess:()=>{D.success(`Settings updated`),n.userSettings.get.invalidate()},onError:e=>{D.error(`Failed to update settings: ${e.message}`)}}),a=u.admin.triggerRatchetCheck.useMutation({onSuccess:e=>{D.success(`PR check completed: ${e.checked} checked, ${e.stateChanges} state changes, ${e.actionsTriggered} updates queued`)},onError:e=>{D.error(`Failed to check PR updates: ${e.message}`)}});if(t)return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ce,{enabled:!0,className:`w-5 h-5`,iconClassName:`w-3.5 h-3.5`}),`PR updates`]}),(0,K.jsx)(F,{children:`Queue CI, review and merge-conflict updates in the main conversation for its next turn`})]}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]});let o=e?.autoIterationPermissions??`YOLO`,s=e?.ratchetReviewTriggerMode??`CHANGES_REQUESTED`;return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ce,{enabled:!0,className:`w-5 h-5`,iconClassName:`w-3.5 h-3.5`}),`PR updates`]}),(0,K.jsx)(F,{children:`Queue CI, review and merge-conflict updates in the main conversation for its next turn`})]}),(0,K.jsxs)(N,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`rounded-md border bg-muted/40 p-3 space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`When a workspace has an open pull request, Factory Factory can automatically:`}),(0,K.jsxs)(`ul`,{className:`text-sm text-muted-foreground list-disc list-inside space-y-0.5 ml-2`,children:[(0,K.jsx)(`li`,{children:`Queue failing CI checks for the next turn`}),(0,K.jsx)(`li`,{children:`Queue actionable code review feedback`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(I,{htmlFor:`ratchet-enabled`,children:`Default for new workspaces`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Enable PR updates for workspaces created from GitHub issues`})]}),(0,K.jsx)(J,{id:`ratchet-enabled`,checked:e?.ratchetEnabled??!1,onCheckedChange:e=>{i.mutate({ratchetEnabled:e})},disabled:i.isPending})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`ratchet-review-trigger`,children:`Review feedback trigger`}),(0,K.jsxs)(M,{value:s,onValueChange:e=>{(e===`CHANGES_REQUESTED`||e===`ALL_REVIEW_FEEDBACK`)&&i.mutate({ratchetReviewTriggerMode:e})},disabled:i.isPending,children:[(0,K.jsx)(P,{id:`ratchet-review-trigger`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`CHANGES_REQUESTED`,children:`Changes requested and unresolved threads`}),(0,K.jsx)(k,{value:`ALL_REVIEW_FEEDBACK`,children:`All review feedback`})]})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`All review feedback also lets top-level commented review summaries queue updates. Ordinary PR conversation comments do not queue updates.`})]}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(I,{htmlFor:`ratchet-reply-to-pr-comments`,children:`Reply to PR comments`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Allow the main session to reply on review threads when it addresses feedback`})]}),(0,K.jsx)(J,{id:`ratchet-reply-to-pr-comments`,checked:e?.ratchetReplyToPrComments??!0,onCheckedChange:e=>{i.mutate({ratchetReplyToPrComments:e})},disabled:i.isPending})]}),(0,K.jsx)(`div`,{className:`border-t pt-4`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(I,{children:`Manual Check`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Check monitored PRs and queue actionable updates`})]}),(0,K.jsx)(r,{variant:`outline`,size:`sm`,onClick:()=>a.mutate(),disabled:a.isPending,children:a.isPending?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(d,{className:`w-4 h-4 mr-2 animate-spin`}),`Checking...`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(d,{className:`w-4 h-4 mr-2`}),`Check All PRs Now`]})})]})})]})]}),(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsx)(L,{children:`Auto-iteration`}),(0,K.jsx)(F,{children:`Permission defaults for auto-iteration sessions`})]}),(0,K.jsx)(N,{children:(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(I,{htmlFor:`auto-iteration-permissions`,children:`Auto-iteration permission defaults`}),(0,K.jsxs)(M,{value:o,onValueChange:e=>{(e===`STRICT`||e===`RELAXED`||e===`YOLO`)&&i.mutate({autoIterationPermissions:e})},disabled:i.isPending,children:[(0,K.jsx)(P,{id:`auto-iteration-permissions`,children:(0,K.jsx)(z,{})}),(0,K.jsxs)(j,{children:[(0,K.jsx)(k,{value:`STRICT`,children:`Strict`}),(0,K.jsx)(k,{value:`RELAXED`,children:`Relaxed`}),(0,K.jsx)(k,{value:`YOLO`,children:`YOLO`})]})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Controls permissions for separate auto-iteration sessions. PR updates inherit the main conversation’s settings.`})]})})]})]})}function tr(){let{download:e,isDownloading:t}=ce();return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(ke,{className:`w-5 h-5`}),`Server Logs`]}),(0,K.jsx)(F,{children:`View and search structured server log entries`})]}),(0,K.jsxs)(N,{className:`flex flex-col gap-2 sm:flex-row sm:gap-3`,children:[(0,K.jsx)(r,{variant:`outline`,className:`w-full sm:w-auto`,asChild:!0,children:(0,K.jsx)(l,{to:`/logs`,children:`View Logs`})}),(0,K.jsxs)(r,{variant:`outline`,onClick:e,disabled:t,className:`w-full sm:w-auto`,children:[(0,K.jsx)(se,{className:`w-4 h-4 mr-2`}),t?`Downloading...`:`Download Log File`]})]})]})}function nr({id:e,label:t,helpText:n,value:r,min:i,max:a,step:o,formatValue:s,disabled:c,onChange:l,onCommit:u}){return(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between w-[280px]`,children:[(0,K.jsx)(I,{htmlFor:e,children:t}),(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:[s(r),` · `,Ve(r,i,a)]})]}),(0,K.jsx)(mn,{id:e,className:`w-[280px]`,value:[r],onValueChange:([e])=>l(e??r),onValueCommit:([e])=>u(e??r),min:i,max:a,step:o,disabled:c}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n})]})}function rr(e,t){return u.voice.validateApiKey.useMutation({onSuccess:(n,r)=>{n.valid?(t(r.apiKey),D.success(`Deepgram API key is valid`)):(r.apiKey===e&&t(null),D.error(`Validation failed: ${n.error??`Unknown error`}`))},onError:(n,r)=>{r.apiKey===e&&t(null),D.error(`Validation failed: ${n.message}`)}})}function ir({apiKey:e,onApiKeyChange:t,validated:n,hasStoredKey:i,validating:a,saving:s,onValidate:c,onSave:l}){return(0,K.jsxs)(`div`,{className:`flex flex-wrap items-end gap-2`,children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(I,{htmlFor:`deepgram-api-key`,children:`Deepgram API Key`}),n&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1 text-xs text-green-600`,children:[(0,K.jsx)(S,{className:`w-3 h-3`}),`Valid`]})]}),(0,K.jsx)(o,{id:`deepgram-api-key`,type:`password`,value:e,onChange:e=>t(e.target.value),placeholder:i?`••••••••••••••••••••`:`Enter your Deepgram API key`,className:`font-mono text-sm w-[280px]`})]}),(0,K.jsx)(r,{variant:`outline`,onClick:c,disabled:a||!e,children:a?`Validating...`:`Validate`}),n&&(0,K.jsx)(r,{onClick:l,disabled:s,children:s?`Saving...`:`Save`})]})}function ar({utteranceEndMs:e,bargeInSustainedMs:t,enabled:n,disabled:r,updateConfig:i}){let[a,o]=(0,G.useState)(We),[s,c]=(0,G.useState)(16);return(0,G.useEffect)(()=>{e!==void 0&&o(e)},[e]),(0,G.useEffect)(()=>{t!==void 0&&c(t)},[t]),(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(nr,{id:`voice-utterance-end`,label:`Stop-speaking sensitivity`,helpText:`How long a pause before voice mode decides you've finished talking.`,value:a,min:Ue,max:He,step:250,formatValue:e=>`${(e/1e3).toFixed(2)}s`,disabled:r,onChange:o,onCommit:t=>i.mutate({enabled:n,utteranceEndMs:t},{onError:()=>o(e??1e3)})}),(0,K.jsx)(nr,{id:`voice-barge-in`,label:`Barge-in sensitivity`,helpText:`How quickly voice mode notices you've started talking over its spoken reply and stops to listen.`,value:s,min:8,max:80,step:8,formatValue:e=>`${e}ms`,disabled:r,onChange:c,onCommit:e=>i.mutate({enabled:n,bargeInSustainedMs:e},{onError:()=>c(t??16)})})]})}function or(){let{data:e,isLoading:t}=u.voice.getConfig.useQuery(),n=u.useUtils(),[r,i]=(0,G.useState)(``),[a,o]=(0,G.useState)(null),s=a!==null&&a===r,[c,l]=(0,G.useState)(1);(0,G.useEffect)(()=>{e?.ttsSpeed!==void 0&&l(e.ttsSpeed)},[e?.ttsSpeed]);let d=rr(r,o),f=u.voice.updateConfig.useMutation({onSuccess:e=>{n.voice.getConfig.setData(void 0,e),n.voice.getConfig.invalidate()},onError:e=>D.error(`Failed to save: ${e.message}`)});if(t)return(0,K.jsxs)(B,{children:[(0,K.jsx)(R,{children:(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(le,{className:`w-5 h-5`}),`Voice Mode`]})}),(0,K.jsx)(N,{children:(0,K.jsx)(O,{className:`h-10 w-full`})})]});let p=e?.hasApiKey??!1,m=e?.enabled??!1,h=e?.ttsModel??`flux-haley-en`;return(0,K.jsxs)(B,{children:[(0,K.jsxs)(R,{children:[(0,K.jsxs)(L,{className:`flex items-center gap-2`,children:[(0,K.jsx)(le,{className:`w-5 h-5`}),`Voice Mode`]}),(0,K.jsx)(F,{children:`Talk to Claude/Codex sessions by voice using your own Deepgram API key for speech-to-text and text-to-speech.`})]}),(0,K.jsxs)(N,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(I,{htmlFor:`voice-mode-enabled`,children:`Enable voice mode`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:p?`Available in workspace chat`:`Requires a Deepgram API key below`})]}),(0,K.jsx)(J,{id:`voice-mode-enabled`,checked:m,onCheckedChange:e=>f.mutate({enabled:e}),disabled:f.isPending||!p})]}),(0,K.jsx)(ir,{apiKey:r,onApiKeyChange:e=>{i(e),o(null)},validated:s,hasStoredKey:p,validating:d.isPending,saving:f.isPending,onValidate:()=>{r&&d.mutate({apiKey:r})},onSave:()=>{r&&s&&f.mutate({enabled:m,apiKey:r},{onSuccess:()=>{i(``),o(null)}})}}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Create an API key at`,` `,(0,K.jsx)(`a`,{href:`https://console.deepgram.com/`,target:`_blank`,rel:`noopener noreferrer`,className:`underline`,children:`console.deepgram.com`})]}),(0,K.jsxs)(`div`,{className:`border-t pt-4 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(I,{htmlFor:`voice-model`,children:`Voice`}),(0,K.jsxs)(M,{value:h,onValueChange:e=>f.mutate({enabled:m,ttsModel:e}),disabled:f.isPending||!p,children:[(0,K.jsx)(P,{id:`voice-model`,className:`w-[280px]`,children:(0,K.jsx)(z,{})}),(0,K.jsx)(j,{children:re.map(e=>(0,K.jsxs)(k,{value:e.model,children:[e.name,e.description?` — ${e.description}`:``]},e.model))})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Deepgram Flux TTS English voices`})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between w-[280px]`,children:[(0,K.jsx)(I,{htmlFor:`voice-speed`,children:`Speed`}),(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:[c.toFixed(2),`x`]})]}),(0,K.jsx)(mn,{id:`voice-speed`,className:`w-[280px]`,value:[c],onValueChange:([e])=>l(e??1),onValueCommit:([t])=>f.mutate({enabled:m,ttsSpeed:t??1},{onError:()=>l(e?.ttsSpeed??1)}),min:te,max:ie,step:ee,disabled:f.isPending||!p})]}),(0,K.jsx)(ar,{utteranceEndMs:e?.utteranceEndMs,bargeInSustainedMs:e?.bargeInSustainedMs,enabled:m,disabled:f.isPending||!p,updateConfig:f})]})]})]})}function sr(e){if(!e||e.length===0)return;let t=Ae();return t&&e.some(e=>e.slug===t)?t:e[0]?.slug}function cr(){be({title:`Settings`});let[e,t]=(0,G.useState)(`general`),{data:n,isLoading:r,refetch:i}=u.admin.getSystemStats.useQuery(void 0,{refetchInterval:5e3}),{data:a,isLoading:o}=u.admin.getActiveProcesses.useQuery(void 0,{refetchInterval:5e3}),{data:s}=u.project.list.useQuery(),c=u.admin.resetApiUsageStats.useMutation({onSuccess:()=>{i()}}),l=sr(s);return r?(0,K.jsx)(_e,{message:`Loading settings...`}):(0,K.jsxs)(`div`,{className:`h-full overflow-y-auto`,children:[l&&(0,K.jsx)(Re,{children:(0,K.jsx)(Le,{projectSlug:l})}),(0,K.jsx)(`div`,{className:`space-y-6 p-3 md:p-6`,children:(0,K.jsxs)(Be,{value:e,onValueChange:e=>t(e),children:[(0,K.jsxs)(ze,{className:`w-full sm:w-auto`,children:[(0,K.jsx)(V,{value:`general`,className:`flex-1 sm:flex-initial`,children:`General Settings`}),(0,K.jsx)(V,{value:`appearance`,className:`flex-1 sm:flex-initial`,children:`Appearance`}),(0,K.jsx)(V,{value:`project`,className:`flex-1 sm:flex-initial`,children:`Project Settings`}),(0,K.jsx)(V,{value:`periodic-tasks`,className:`flex-1 sm:flex-initial`,children:`Periodic Tasks`}),(0,K.jsx)(V,{value:`voice`,className:`flex-1 sm:flex-initial`,children:`Voice Mode`})]}),(0,K.jsxs)(H,{value:`general`,className:`space-y-6 mt-4`,children:[(0,K.jsx)(wt,{apiUsage:n?.apiUsage,onReset:()=>c.mutate(),isResetting:c.isPending}),o?(0,K.jsx)(Xn,{}):(0,K.jsx)(Zn,{processes:a}),(0,K.jsx)(B,{className:`bg-muted/50`,children:(0,K.jsx)(N,{className:`py-4`,children:(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1 text-sm`,children:[(0,K.jsx)(`span`,{className:`font-medium`,children:`Environment:`}),(0,K.jsx)(A,{variant:`outline`,children:n?.environment||`unknown`})]})})}),(0,K.jsx)(Pn,{}),(0,K.jsx)(jn,{}),(0,K.jsx)(On,{}),(0,K.jsx)(kn,{}),(0,K.jsx)(er,{}),(0,K.jsx)(xt,{}),(0,K.jsx)(Dn,{}),(0,K.jsx)(An,{}),(0,K.jsx)(tr,{})]}),(0,K.jsx)(H,{value:`appearance`,className:`mt-4`,children:(0,K.jsx)(wn,{})}),(0,K.jsx)(H,{value:`project`,className:`mt-4`,children:s?(0,K.jsx)($n,{projects:s}):(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading projects...`})}),(0,K.jsx)(H,{value:`periodic-tasks`,className:`mt-4`,children:s?(0,K.jsx)(zn,{projects:s}):(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading projects...`})}),(0,K.jsx)(H,{value:`voice`,className:`mt-4`,children:(0,K.jsx)(or,{})})]})})]})}export{cr as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-
|
|
1
|
+
import{t as e}from"./jsx-runtime-DKj5X9O4.js";import{l as t,s as n}from"./dist-3wBnkw0J.js";var r=e(),i=t(`relative grid w-full grid-cols-[0_1fr] items-start gap-y-0.5 rounded-lg border px-4 py-3 text-sm has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] has-[>svg]:gap-x-3 [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current`,{variants:{variant:{default:`bg-card text-card-foreground`,destructive:`bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 [&>svg]:text-current`}},defaultVariants:{variant:`default`}});function a({className:e,variant:t,...a}){return(0,r.jsx)(`div`,{"data-slot":`alert`,role:`alert`,className:n(i({variant:t}),e),...a})}function o({className:e,...t}){return(0,r.jsx)(`div`,{"data-slot":`alert-description`,className:n(`col-start-2 grid justify-items-start gap-1 text-sm text-muted-foreground [&_p]:leading-relaxed`,e),...t})}export{o as n,a as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as e,f as t,h as n,n as r}from"./schemas-Cq4rE1N1.js";var i=[`factory`,`github`,`one`,`solarized`,`high-contrast`],a=`factory`,o=[{id:`factory`,label:`Factory`,description:`Neutral grays with the Factory yellow accent`},{id:`github`,label:`GitHub`,description:`Inspired by GitHub’s Primer light and dark themes`},{id:`one`,label:`One`,description:`Inspired by Atom One Light and One Dark`},{id:`solarized`,label:`Solarized`,description:`Ethan Schoonover’s Solarized light and dark`},{id:`high-contrast`,label:`High contrast`,description:`Pure black and white with strong borders for low vision`}],s=r(i);function c(e){let t=s.safeParse(e);return t.success?t.data:a}var l=/^#(?:[0-9a-f]{3}|[0-9a-f]{6})$/i;function u(e){let t=e.trim().toLowerCase();if(t.length===4){let[,e,n,r]=t;return`#${e}${e}${n}${n}${r}${r}`}return t}var d=n().trim().regex(l,`Color must be a hex value such as #1e1e1e`).transform(u);function f(e){let t=d.safeParse(e);return t.success?t.data:null}var p=e().int().min(75).max(175).multipleOf(5);function m(e){if(!Number.isFinite(e))return 100;let t=Math.round(e/5)*5;return Math.min(175,Math.max(75,t))}function h(e){return Math.max(8,Math.round(13*m(e)/100))}var g=`default`,_=`custom`,v=[{id:g,label:`Geist (default)`,value:null},{id:`inter`,label:`Inter`,value:`"Inter", ui-sans-serif, system-ui, sans-serif`},{id:`atkinson`,label:`Atkinson Hyperlegible`,value:`"Atkinson Hyperlegible Next", "Atkinson Hyperlegible", ui-sans-serif, system-ui, sans-serif`},{id:`monaco`,label:`Monaco`,value:`Monaco, ui-monospace, monospace`},{id:`system`,label:`System UI`,value:`ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif`}],y=[{id:g,label:`Geist Mono (default)`,value:null},{id:`plex-mono`,label:`IBM Plex Mono`,value:`"IBM Plex Mono", ui-monospace, monospace`},{id:`atkinson-mono`,label:`Atkinson Hyperlegible Mono`,value:`"Atkinson Hyperlegible Mono", ui-monospace, monospace`},{id:`monaco`,label:`Monaco`,value:`Monaco, ui-monospace, monospace`},{id:`system-mono`,label:`System monospace`,value:`ui-monospace, Menlo, Monaco, "Cascadia Code", Consolas, monospace`}],b=n().trim().min(1,`Font family cannot be empty`).max(200,`Font family must be at most 200 characters`).regex(/^[\p{L}\p{M}\p{N} ,"'._-]+$/u,`Font family may only contain letters, numbers, spaces, quotes, commas, periods and hyphens`);function x(e){return b.safeParse(e).success}function S(e,t){let n=e.find(e=>e.value===t);return n?n.id:_}var C=t({colorScheme:s,backgroundColor:d.nullable(),foregroundColor:d.nullable(),fontScale:p,fontSans:b.nullable(),fontMono:b.nullable()}),w={colorScheme:a,backgroundColor:null,foregroundColor:null,fontScale:100,fontSans:null,fontMono:null};function T(e){return e?{colorScheme:c(e.appearanceColorScheme),backgroundColor:f(e.appearanceBackgroundColor),foregroundColor:f(e.appearanceForegroundColor),fontScale:m(e.appearanceFontScale??100),fontSans:x(e.appearanceFontSans)?e.appearanceFontSans:null,fontMono:x(e.appearanceFontMono)?e.appearanceFontMono:null}:w}function E(e){return e.colorScheme===w.colorScheme&&e.backgroundColor===null&&e.foregroundColor===null&&e.fontScale===100&&e.fontSans===null&&e.fontMono===null}export{y as a,C as c,p as d,d as f,h,a as i,b as l,c as m,_ as n,v as o,E as p,w as r,T as s,o as t,S as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./path-fybaL0A-.js";import{a as n,c as r,d as i,f as a,i as o,l as s,m as c,n as l,o as u,p as d,r as f,u as p}from"./dist-
|
|
1
|
+
import{n as e,t}from"./path-fybaL0A-.js";import{a as n,c as r,d as i,f as a,i as o,l as s,m as c,n as l,o as u,p as d,r as f,u as p}from"./dist-B_J_HbC0.js";function m(e){return e.innerRadius}function h(e){return e.outerRadius}function g(e){return e.startAngle}function _(e){return e.endAngle}function v(e){return e&&e.padAngle}function y(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function b(e,t,n,r,i,a,o){var c=e-n,l=t-r,u=(o?a:-a)/d(c*c+l*l),f=u*l,p=-u*c,m=e+f,h=t+p,g=n+f,_=r+p,v=(m+g)/2,y=(h+_)/2,b=g-m,x=_-h,S=b*b+x*x,C=i-a,w=m*_-g*h,T=(x<0?-1:1)*d(s(0,C*C*S-w*w)),E=(w*x-b*T)/S,D=(-w*b-x*T)/S,O=(w*x+b*T)/S,k=(-w*b+x*T)/S,A=E-v,j=D-y,M=O-v,N=k-y;return A*A+j*j>M*M+N*N&&(E=O,D=k),{cx:E,cy:D,x01:-f,y01:-p,x11:E*(i/C-1),y11:D*(i/C-1)}}function x(){var s=m,x=h,S=e(0),C=null,w=g,T=_,E=v,D=null,O=t(k);function k(){var e,t,m=+s.apply(this,arguments),h=+x.apply(this,arguments),g=w.apply(this,arguments)-r,_=T.apply(this,arguments)-r,v=l(_-g),k=_>g;if(D||=e=O(),h<m&&(t=h,h=m,m=t),!(h>1e-12))D.moveTo(0,0);else if(v>c-1e-12)D.moveTo(h*u(g),h*a(g)),D.arc(0,0,h,g,_,!k),m>1e-12&&(D.moveTo(m*u(_),m*a(_)),D.arc(0,0,m,_,g,k));else{var A=g,j=_,M=g,N=_,P=v,F=v,I=E.apply(this,arguments)/2,L=I>1e-12&&(C?+C.apply(this,arguments):d(m*m+h*h)),R=p(l(h-m)/2,+S.apply(this,arguments)),z=R,B=R,V,H;if(L>1e-12){var U=o(L/m*a(I)),W=o(L/h*a(I));(P-=U*2)>1e-12?(U*=k?1:-1,M+=U,N-=U):(P=0,M=N=(g+_)/2),(F-=W*2)>1e-12?(W*=k?1:-1,A+=W,j-=W):(F=0,A=j=(g+_)/2)}var G=h*u(A),K=h*a(A),q=m*u(N),J=m*a(N);if(R>1e-12){var Y=h*u(j),X=h*a(j),Z=m*u(M),Q=m*a(M),$;if(v<i){if($=y(G,K,Z,Q,Y,X,q,J)){var ee=G-$[0],te=K-$[1],ne=Y-$[0],re=X-$[1],ie=1/a(f((ee*ne+te*re)/(d(ee*ee+te*te)*d(ne*ne+re*re)))/2),ae=d($[0]*$[0]+$[1]*$[1]);z=p(R,(m-ae)/(ie-1)),B=p(R,(h-ae)/(ie+1))}else z=B=0}}F>1e-12?B>1e-12?(V=b(Z,Q,G,K,h,B,k),H=b(Y,X,q,J,h,B,k),D.moveTo(V.cx+V.x01,V.cy+V.y01),B<R?D.arc(V.cx,V.cy,B,n(V.y01,V.x01),n(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,B,n(V.y01,V.x01),n(V.y11,V.x11),!k),D.arc(0,0,h,n(V.cy+V.y11,V.cx+V.x11),n(H.cy+H.y11,H.cx+H.x11),!k),D.arc(H.cx,H.cy,B,n(H.y11,H.x11),n(H.y01,H.x01),!k))):(D.moveTo(G,K),D.arc(0,0,h,A,j,!k)):D.moveTo(G,K),!(m>1e-12)||!(P>1e-12)?D.lineTo(q,J):z>1e-12?(V=b(q,J,Y,X,m,-z,k),H=b(G,K,Z,Q,m,-z,k),D.lineTo(V.cx+V.x01,V.cy+V.y01),z<R?D.arc(V.cx,V.cy,z,n(V.y01,V.x01),n(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,z,n(V.y01,V.x01),n(V.y11,V.x11),!k),D.arc(0,0,m,n(V.cy+V.y11,V.cx+V.x11),n(H.cy+H.y11,H.cx+H.x11),k),D.arc(H.cx,H.cy,z,n(H.y11,H.x11),n(H.y01,H.x01),!k))):D.arc(0,0,m,N,M,k)}if(D.closePath(),e)return D=null,e+``||null}return k.centroid=function(){var e=(+s.apply(this,arguments)+ +x.apply(this,arguments))/2,t=(+w.apply(this,arguments)+ +T.apply(this,arguments))/2-i/2;return[u(t)*e,a(t)*e]},k.innerRadius=function(t){return arguments.length?(s=typeof t==`function`?t:e(+t),k):s},k.outerRadius=function(t){return arguments.length?(x=typeof t==`function`?t:e(+t),k):x},k.cornerRadius=function(t){return arguments.length?(S=typeof t==`function`?t:e(+t),k):S},k.padRadius=function(t){return arguments.length?(C=t==null?null:typeof t==`function`?t:e(+t),k):C},k.startAngle=function(t){return arguments.length?(w=typeof t==`function`?t:e(+t),k):w},k.endAngle=function(t){return arguments.length?(T=typeof t==`function`?t:e(+t),k):T},k.padAngle=function(t){return arguments.length?(E=typeof t==`function`?t:e(+t),k):E},k.context=function(e){return arguments.length?(D=e??null,k):D},k}export{x as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-NGNAAXSQ-DqoPQk1a.js";import{M as e}from"./mermaid-parser.core-cMhM95A-.js";export{e as createArchitectureServices};
|