@runfusion/fusion 0.77.0-beta.4 → 0.77.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/dist/bin.js +4051 -4144
  2. package/dist/child-process-worker.js +2681 -1719
  3. package/dist/client/.vite/manifest.json +261 -261
  4. package/dist/client/assets/{AgentDetailView-CH6GtXl9.js → AgentDetailView-CSK_Rnlk.js} +1 -1
  5. package/dist/client/assets/{AgentPermissionPolicyEditor-YTEpMhUx.js → AgentPermissionPolicyEditor-kG44Adcm.js} +1 -1
  6. package/dist/client/assets/{AgentsView-XOHHDo4a.js → AgentsView-ClKwKWnU.js} +3 -3
  7. package/dist/client/assets/ChatView-DoOqgkPX.js +13 -0
  8. package/dist/client/assets/{CommandCenter-BsH-R15f.js → CommandCenter-CJxvPbgn.js} +1 -1
  9. package/dist/client/assets/{DevServerView-CKOa-lkc.js → DevServerView-C4nyLONX.js} +1 -1
  10. package/dist/client/assets/{DirectoryPicker-DHUYTE-j.js → DirectoryPicker-BIvXWIB5.js} +1 -1
  11. package/dist/client/assets/{DocumentsView-BPzrxeP-.js → DocumentsView-DH_aZysM.js} +1 -1
  12. package/dist/client/assets/{EvalsView-DojCiv47.js → EvalsView-klRK-GJQ.js} +1 -1
  13. package/dist/client/assets/{ExperimentalAgentOnboardingModal-DuurZ8qe.js → ExperimentalAgentOnboardingModal-CgBmukIm.js} +1 -1
  14. package/dist/client/assets/{GoalsView-DDWPXcG1.js → GoalsView-ysh3X2x6.js} +1 -1
  15. package/dist/client/assets/{InsightsView-CgkMOD1A.js → InsightsView-BbMjCu7J.js} +1 -1
  16. package/dist/client/assets/{MemoryView-Cj49_z7O.js → MemoryView-B3IgA8Bx.js} +1 -1
  17. package/dist/client/assets/{PiExtensionsManager-B_rRJiOd.js → PiExtensionsManager-CZlIw7C3.js} +1 -1
  18. package/dist/client/assets/{PluginManager-Dxwi88oY.js → PluginManager-vy0YZ2Nx.js} +1 -1
  19. package/dist/client/assets/{PullRequestView-z-5v2hQT.js → PullRequestView-DhhsJV8I.js} +1 -1
  20. package/dist/client/assets/{ReportModal-DmOPEYWp.js → ReportModal-CQMn4i1y.js} +1 -1
  21. package/dist/client/assets/{ResearchView-D90Jbzbx.js → ResearchView-CVwfs4l3.js} +1 -1
  22. package/dist/client/assets/{SecretsView-CSyjZl5L.js → SecretsView-CrJfHle9.js} +1 -1
  23. package/dist/client/assets/{SessionTerminal-Bwb8nGmU.js → SessionTerminal-BRI8W1-G.js} +1 -1
  24. package/dist/client/assets/{SettingsModal-CJof1Ett.js → SettingsModal-B6U5Umru.js} +1 -1
  25. package/dist/client/assets/SettingsModal-h1A_aFqD.js +21 -0
  26. package/dist/client/assets/{SettingsTextareaRow-BYchnHfW.js → SettingsTextareaRow-O7-u9uMC.js} +1 -1
  27. package/dist/client/assets/{SetupWizardModal-NqV-erVf.js → SetupWizardModal-nXfJp8cA.js} +2 -2
  28. package/dist/client/assets/{SkillsView-BUrkIJ-p.js → SkillsView-CoWAjvWU.js} +1 -1
  29. package/dist/client/assets/{WorkflowNodeEditor-DcPk2A1Z.js → WorkflowNodeEditor-BFMM3RF_.js} +2 -2
  30. package/dist/client/assets/{agent-import-generation-X16OLfrL.js → agent-import-generation-BqDmtTur.js} +1 -1
  31. package/dist/client/assets/{agentsOrgChartLayout-BhPIXckU.js → agentsOrgChartLayout-C4cLqlV6.js} +1 -1
  32. package/dist/client/assets/app-BBSLJDbV.js +13 -0
  33. package/dist/client/assets/app-BKwOvuxE.js +5 -0
  34. package/dist/client/assets/app-Bvr57EZQ.js +5 -0
  35. package/dist/client/assets/app-C_PTWuI1.js +13 -0
  36. package/dist/client/assets/app-DKx18PHE.js +13 -0
  37. package/dist/client/assets/app-DRW5hIgr.js +13 -0
  38. package/dist/client/assets/app-DwvelD-n.js +13 -0
  39. package/dist/client/assets/{architectureDiagram-3BPJPVTR-WArMtdqy.js → architectureDiagram-3BPJPVTR-CdxcwdRe.js} +1 -1
  40. package/dist/client/assets/{blockDiagram-GPEHLZMM-emScogdV.js → blockDiagram-GPEHLZMM-CfQrRfHR.js} +1 -1
  41. package/dist/client/assets/{c4Diagram-AAUBKEIU-CBY7-E0T.js → c4Diagram-AAUBKEIU-Cx7-2SOm.js} +1 -1
  42. package/dist/client/assets/channel-B4WN1jC_.js +1 -0
  43. package/dist/client/assets/{chunk-2J33WTMH-Bcai1sOm.js → chunk-2J33WTMH-D8jvgP3M.js} +1 -1
  44. package/dist/client/assets/{chunk-4BX2VUAB-hjiKRusj.js → chunk-4BX2VUAB-B5tBx_s_.js} +1 -1
  45. package/dist/client/assets/{chunk-55IACEB6-DpO9nIb0.js → chunk-55IACEB6-C-F-HQ5Z.js} +1 -1
  46. package/dist/client/assets/{chunk-727SXJPM-B9JanA0o.js → chunk-727SXJPM-BP8Ln-8C.js} +1 -1
  47. package/dist/client/assets/{chunk-AQP2D5EJ-D6zdnEUE.js → chunk-AQP2D5EJ-DMnTmRmn.js} +1 -1
  48. package/dist/client/assets/{chunk-FMBD7UC4-CRkrJ51d.js → chunk-FMBD7UC4-D_YdfnNc.js} +1 -1
  49. package/dist/client/assets/{chunk-ND2GUHAM-BLQsKt7a.js → chunk-ND2GUHAM-CULXyuXq.js} +1 -1
  50. package/dist/client/assets/{chunk-QZHKN3VN-MCOlJ723.js → chunk-QZHKN3VN-CT1BWEJL.js} +1 -1
  51. package/dist/client/assets/classDiagram-4FO5ZUOK-CKE8RSOv.js +1 -0
  52. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CKE8RSOv.js +1 -0
  53. package/dist/client/assets/{cose-bilkent-S5V4N54A-Cv1XmKKG.js → cose-bilkent-S5V4N54A-M-3DXa6e.js} +1 -1
  54. package/dist/client/assets/{dagre-BM42HDAG-flnNS_RW.js → dagre-BM42HDAG-Bsiqvroz.js} +1 -1
  55. package/dist/client/assets/{dashboard-view-CrV-rL9Q.js → dashboard-view-BEBh_Ei5.js} +1 -1
  56. package/dist/client/assets/{dashboard-view-Dz7kqcJc.js → dashboard-view-Bo_gFjdO.js} +1 -1
  57. package/dist/client/assets/{dashboard-view-CC1aH-lp.js → dashboard-view-CnFFG3cW.js} +1 -1
  58. package/dist/client/assets/{dashboard-view-DEAYb_TZ.js → dashboard-view-DAHn20ph.js} +1 -1
  59. package/dist/client/assets/{diagram-2AECGRRQ-Z3S7b_6_.js → diagram-2AECGRRQ-CZiHoXo5.js} +1 -1
  60. package/dist/client/assets/{diagram-5GNKFQAL-BAZHdMFq.js → diagram-5GNKFQAL-BoJVz4Or.js} +1 -1
  61. package/dist/client/assets/{diagram-KO2AKTUF-C2y3S8F0.js → diagram-KO2AKTUF-DivGQuAL.js} +1 -1
  62. package/dist/client/assets/{diagram-LMA3HP47-Bfz0_IvT.js → diagram-LMA3HP47-DkMK7OJp.js} +1 -1
  63. package/dist/client/assets/{diagram-OG6HWLK6-BBmSQsTI.js → diagram-OG6HWLK6-DFFvRcpW.js} +1 -1
  64. package/dist/client/assets/{erDiagram-TEJ5UH35-DnpdQi66.js → erDiagram-TEJ5UH35--217vrom.js} +1 -1
  65. package/dist/client/assets/{flowDiagram-I6XJVG4X-IybTR_zf.js → flowDiagram-I6XJVG4X-CQgWO3xf.js} +1 -1
  66. package/dist/client/assets/{folder-open-Dntm63x4.js → folder-open-DR6cRcNR.js} +1 -1
  67. package/dist/client/assets/{ganttDiagram-6RSMTGT7-DEQOe2E9.js → ganttDiagram-6RSMTGT7-BjDMUrS3.js} +1 -1
  68. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-BOKc-h63.js → gitGraphDiagram-PVQCEYII-gKUcDnln.js} +1 -1
  69. package/dist/client/assets/index-Dki2LBAp.css +1 -0
  70. package/dist/client/assets/index-oxnX59eO.js +2774 -0
  71. package/dist/client/assets/{infoDiagram-5YYISTIA-LqaYIdbj.js → infoDiagram-5YYISTIA-BA91T8S5.js} +1 -1
  72. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-a8qd512s.js → ishikawaDiagram-YF4QCWOH-0BY5xe-c.js} +1 -1
  73. package/dist/client/assets/{journeyDiagram-JHISSGLW-BgoNyeiy.js → journeyDiagram-JHISSGLW-B_OwenbQ.js} +1 -1
  74. package/dist/client/assets/{kanban-definition-UN3LZRKU-Bqwow7D3.js → kanban-definition-UN3LZRKU-GLabUTKp.js} +1 -1
  75. package/dist/client/assets/{mermaid.core-B2zD934i.js → mermaid.core-BXo4rxYI.js} +4 -4
  76. package/dist/client/assets/{mindmap-definition-RKZ34NQL-CCTOigWu.js → mindmap-definition-RKZ34NQL-DZl6LPoE.js} +1 -1
  77. package/dist/client/assets/{pieDiagram-4H26LBE5-Bq5DtXKR.js → pieDiagram-4H26LBE5-DtHq-4py.js} +1 -1
  78. package/dist/client/assets/{puzzle-VhTPiCit.js → puzzle-OVm-I1L4.js} +1 -1
  79. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CGMP3nUx.js → quadrantDiagram-W4KKPZXB-BdjXhd5d.js} +1 -1
  80. package/dist/client/assets/{requirementDiagram-4Y6WPE33-Ckeu_szu.js → requirementDiagram-4Y6WPE33-BoFVjELN.js} +1 -1
  81. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-SWbBDD4d.js → sankeyDiagram-5OEKKPKP-B0qyJh-P.js} +1 -1
  82. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-CiJrmL_G.js → sequenceDiagram-3UESZ5HK-ByY62Eqp.js} +1 -1
  83. package/dist/client/assets/{shield-alert-BBDlP6A5.js → shield-alert-CDy69fl7.js} +1 -1
  84. package/dist/client/assets/{standing-instructions-template-viu_kgDX.js → standing-instructions-template-BsnnRlwm.js} +1 -1
  85. package/dist/client/assets/{stateDiagram-AJRCARHV-DTCzK5Gt.js → stateDiagram-AJRCARHV-CwJ-_Phi.js} +1 -1
  86. package/dist/client/assets/{stateDiagram-v2-BHNVJYJU-BIGAwFTT.js → stateDiagram-v2-BHNVJYJU-Cfvhq8mV.js} +1 -1
  87. package/dist/client/assets/{timeline-definition-PNZ67QCA-BQZEFEug.js → timeline-definition-PNZ67QCA-Co8VfGN9.js} +1 -1
  88. package/dist/client/assets/{upload-D5w3Ehwp.js → upload-CkqDbEeE.js} +1 -1
  89. package/dist/client/assets/{useDiscoveredSkillsCache-D6zMSIaS.js → useDiscoveredSkillsCache-BHUasRiZ.js} +1 -1
  90. package/dist/client/assets/{users-Bohihi_o.js → users-B8DkpbXD.js} +1 -1
  91. package/dist/client/assets/{vennDiagram-CIIHVFJN-DnHguEv8.js → vennDiagram-CIIHVFJN-XSJteQrL.js} +1 -1
  92. package/dist/client/assets/{wardley-L42UT6IY-BOqYltGN.js → wardley-L42UT6IY-Btc0FRfF.js} +1 -1
  93. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-Re0Ery2M.js → wardleyDiagram-YWT4CUSO--IcDNmrf.js} +1 -1
  94. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CnVq21b2.js → xychartDiagram-2RQKCTM6-CZW93G6X.js} +1 -1
  95. package/dist/client/index.html +2 -2
  96. package/dist/client/version.json +1 -1
  97. package/dist/droid-cli/package.json +1 -1
  98. package/dist/extension.js +3085 -2130
  99. package/dist/migrations/0000_initial.sql +3 -0
  100. package/dist/migrations/0061_fn_066_activity_log_task_id_index.sql +7 -0
  101. package/dist/migrations/0062_remove_task_subtask_splitting.sql +2 -0
  102. package/dist/migrations/0063_fn_090_ai_merge_review_reconciliation.sql +2 -0
  103. package/dist/migrations/0064_fn_094_task_repository_scope.sql +2 -0
  104. package/dist/pi-claude-cli/package.json +1 -1
  105. package/dist/plugin-sdk/index.d.ts +276 -186
  106. package/dist/plugin-sdk/index.js +35 -104
  107. package/dist/plugins/fusion-plugin-acp-runtime/bundled.js +35 -104
  108. package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
  109. package/dist/plugins/fusion-plugin-claude-runtime/bundled.js +35 -104
  110. package/dist/plugins/fusion-plugin-claude-runtime/package.json +1 -1
  111. package/dist/plugins/fusion-plugin-cli-printing-press/bundled.js +35 -104
  112. package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
  113. package/dist/plugins/fusion-plugin-compound-engineering/bundled.js +35 -104
  114. package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
  115. package/dist/plugins/fusion-plugin-cursor-runtime/bundled.js +35 -104
  116. package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
  117. package/dist/plugins/fusion-plugin-dependency-graph/bundled.js +35 -104
  118. package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
  119. package/dist/plugins/fusion-plugin-droid-runtime/bundled.js +35 -104
  120. package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
  121. package/dist/plugins/fusion-plugin-grok-runtime/bundled.js +35 -104
  122. package/dist/plugins/fusion-plugin-grok-runtime/package.json +1 -1
  123. package/dist/plugins/fusion-plugin-hermes-runtime/bundled.js +35 -104
  124. package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
  125. package/dist/plugins/fusion-plugin-linear-import/bundled.js +35 -104
  126. package/dist/plugins/fusion-plugin-linear-import/package.json +1 -1
  127. package/dist/plugins/fusion-plugin-omp-runtime/bundled.js +35 -104
  128. package/dist/plugins/fusion-plugin-omp-runtime/package.json +1 -1
  129. package/dist/plugins/fusion-plugin-openclaw-runtime/bundled.js +35 -104
  130. package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
  131. package/dist/plugins/fusion-plugin-paperclip-runtime/bundled.js +35 -104
  132. package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
  133. package/dist/plugins/fusion-plugin-quality/bundled.js +35 -104
  134. package/dist/plugins/fusion-plugin-quality/package.json +1 -1
  135. package/dist/plugins/fusion-plugin-reports/bundled.js +35 -104
  136. package/dist/plugins/fusion-plugin-reports/package.json +1 -1
  137. package/dist/plugins/fusion-plugin-roadmap/bundled.js +35 -104
  138. package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
  139. package/dist/plugins/fusion-plugin-todos/bundled.js +35 -104
  140. package/dist/plugins/fusion-plugin-todos/package.json +1 -1
  141. package/dist/plugins/fusion-plugin-whatsapp-chat/bundled.js +35 -104
  142. package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
  143. package/package.json +1 -1
  144. package/skill/fusion/references/extension-tools.md +2 -1
  145. package/skill/fusion/references/fusion-capabilities.md +1 -1
  146. package/skill/fusion/references/task-structure.md +1 -1
  147. package/skill/fusion/workflows/specifications.md +2 -2
  148. package/dist/client/assets/ChatView-gH7QX3TI.js +0 -13
  149. package/dist/client/assets/SettingsModal-BAzmMjr9.js +0 -21
  150. package/dist/client/assets/app-B-TfWH9b.js +0 -5
  151. package/dist/client/assets/app-B2RDV_-t.js +0 -13
  152. package/dist/client/assets/app-CDo0mF2S.js +0 -5
  153. package/dist/client/assets/app-Cc18kAQS.js +0 -13
  154. package/dist/client/assets/app-DFF79EUn.js +0 -13
  155. package/dist/client/assets/app-DSeFHxgj.js +0 -13
  156. package/dist/client/assets/app-Ducr0y6r.js +0 -13
  157. package/dist/client/assets/channel-CP2ySYs0.js +0 -1
  158. package/dist/client/assets/classDiagram-4FO5ZUOK-DKkOBtzM.js +0 -1
  159. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DKkOBtzM.js +0 -1
  160. package/dist/client/assets/index-DXpztECA.css +0 -1
  161. package/dist/client/assets/index-I32FijPT.js +0 -2821
@@ -243,6 +243,17 @@ interface WorkflowReviewFinding {
243
243
  severity?: WorkflowReviewFindingSeverity;
244
244
  resolution?: WorkflowReviewFindingResolution;
245
245
  }
246
+ interface WorkflowRepositoryReviewOutcome {
247
+ repository: string;
248
+ status: "REVIEWED" | "NOT_REVIEWED";
249
+ verdict?: "APPROVE" | "APPROVE_WITH_NOTES" | "REVISE" | "RETHINK" | "UNAVAILABLE";
250
+ findings?: WorkflowReviewFinding[];
251
+ output?: string;
252
+ fingerprint?: string;
253
+ episodeId: string;
254
+ scopeRevision?: number;
255
+ reviewedAt: string;
256
+ }
246
257
  type WorkflowStepPhase = "pre-merge" | "post-merge";
247
258
  type WorkflowReviewKind = "plan" | "code";
248
259
  interface WorkflowStep {
@@ -314,6 +325,8 @@ interface WorkflowStepResult {
314
325
  reviewKind?: WorkflowReviewKind;
315
326
  output?: string;
316
327
  findings?: WorkflowReviewFinding[];
328
+ repositoryReviewOutcomes?: WorkflowRepositoryReviewOutcome[];
329
+ repositoryScopeRevision?: number;
317
330
  supersededFindingSourceWorkflowStepId?: string;
318
331
  supersededFindingIds?: string[];
319
332
  verdict?: "APPROVE" | "APPROVE_WITH_NOTES" | "REVISE" | "CLOSE_NO_OP";
@@ -527,6 +540,185 @@ interface StepStartResult {
527
540
  blockingStepIndex?: number;
528
541
  }
529
542
 
543
+ interface TaskRow {
544
+ id: string;
545
+ lineageId: string | null;
546
+ title: string | null;
547
+ description: string;
548
+ priority: string | null;
549
+ column: string;
550
+ status: string | null;
551
+ size: string | null;
552
+ reviewLevel: number | null;
553
+ currentStep: number;
554
+ worktree: string | null;
555
+ blockedBy: string | null;
556
+ overlapBlockedBy: string | null;
557
+ queuedLogEpisodeSignature: string | null;
558
+ paused: number | null;
559
+ pausedReason: string | null;
560
+ wedgeNotification: string | null;
561
+ userPaused: number | null;
562
+ baseBranch: string | null;
563
+ executionStartBranch: string | null;
564
+ branch: string | null;
565
+ autoMerge: number | null;
566
+ autoMergeProvenance: string | null;
567
+ baseCommitSha: string | null;
568
+ modelPresetId: string | null;
569
+ modelProvider: string | null;
570
+ credentialInstanceId: string | null;
571
+ modelId: string | null;
572
+ validatorModelProvider: string | null;
573
+ validatorCredentialInstanceId: string | null;
574
+ validatorModelId: string | null;
575
+ planningModelProvider: string | null;
576
+ planningCredentialInstanceId: string | null;
577
+ planningModelId: string | null;
578
+ mergerModelProvider: string | null;
579
+ mergerCredentialInstanceId: string | null;
580
+ mergerModelId: string | null;
581
+ mergeRetries: number | null;
582
+ aiMergeReviewReconciliation: string | null;
583
+ workflowStepRetries: number | null;
584
+ stuckKillCount: number | null;
585
+ resumeLimboCount: number | null;
586
+ graphResumeRetryCount: number | null;
587
+ consecutiveToolFailureRetryCount: number | null;
588
+ executorEscalationAttempted: number | null;
589
+ toolFailureDetectorLogCursor: number | null;
590
+ toolFailureRetryExhaustedAuditEmitted: number | null;
591
+ resumeLimboTipSha: string | null;
592
+ resumeLimboStepSignature: string | null;
593
+ executeRequeueLoopCount: number | null;
594
+ executeRequeueLoopSignature: string | null;
595
+ postReviewFixCount: number | null;
596
+ planReviewReplanCount: number | null;
597
+ recoveryRetryCount: number | null;
598
+ taskDoneRetryCount: number | null;
599
+ bulkCompletionRefusalAt: string | null;
600
+ workflowIrPin: string | null;
601
+ workflowIrPinNodeId: string | null;
602
+ workflowIrPinColumnId: string | null;
603
+ legacyAdoptedAt: string | null;
604
+ worktreeSessionRetryCount: number | null;
605
+ completionHandoffLimboRecoveryCount: number | null;
606
+ verificationFailureCount: number | null;
607
+ mergeConflictBounceCount: number | null;
608
+ mergeAuditBounceCount: number | null;
609
+ mergeTransientRetryCount: number | null;
610
+ branchConflictRecoveryCount: number | null;
611
+ reviewerContextRetryCount: number | null;
612
+ reviewerFallbackRetryCount: number | null;
613
+ nextRecoveryAt: string | null;
614
+ error: string | null;
615
+ summary: string | null;
616
+ recommendations: string | null;
617
+ thinkingLevel: string | null;
618
+ validatorThinkingLevel: string | null;
619
+ planningThinkingLevel: string | null;
620
+ mergerThinkingLevel: string | null;
621
+ executionMode: string | null;
622
+ sessionAdvisorEnabled: number | null;
623
+ tokenUsageInputTokens: number | null;
624
+ tokenUsageOutputTokens: number | null;
625
+ tokenUsageCachedTokens: number | null;
626
+ tokenUsageCacheWriteTokens: number | null;
627
+ tokenUsageTotalTokens: number | null;
628
+ tokenUsageFirstUsedAt: string | null;
629
+ tokenUsageLastUsedAt: string | null;
630
+ tokenUsageModelProvider: string | null;
631
+ tokenUsageModelId: string | null;
632
+ tokenUsagePerModel: string | null;
633
+ tokenBudgetSoftAlertedAt: string | null;
634
+ tokenBudgetHardAlertedAt: string | null;
635
+ tokenBudgetOverride: string | null;
636
+ createdAt: string;
637
+ updatedAt: string;
638
+ columnMovedAt: string | null;
639
+ firstExecutionAt: string | null;
640
+ cumulativeActiveMs: number | null;
641
+ cumulativePlanningMs: number | null;
642
+ planningStartedAt: string | null;
643
+ columnDwellMs: string | null;
644
+ workflowTransitionNotification: string | null;
645
+ plannerOversightLevel: string | null;
646
+ awaitingApprovalReason: string | null;
647
+ approvedPlanFingerprint: string | null;
648
+ executionStartedAt: string | null;
649
+ executionCompletedAt: string | null;
650
+ dependencies: string | null;
651
+ steps: string | null;
652
+ customFields: string | null;
653
+ log: string | null;
654
+ attachments: string | null;
655
+ steeringComments: string | null;
656
+ comments: string | null;
657
+ review: string | null;
658
+ reviewState: string | null;
659
+ workflowStepResults: string | null;
660
+ prInfo: string | null;
661
+ prInfos: string | null;
662
+ issueInfo: string | null;
663
+ githubTracking: string | null;
664
+ gitlabTracking: string | null;
665
+ sourceIssueProvider: string | null;
666
+ sourceIssueRepository: string | null;
667
+ sourceIssueExternalIssueId: string | null;
668
+ sourceIssueNumber: number | null;
669
+ sourceIssueUrl: string | null;
670
+ sourceIssueClosedAt: string | null;
671
+ mergeDetails: string | null;
672
+ workspaceWorktrees: string | null;
673
+ repositoryScope: string | null;
674
+ noCommitsExpected: number | null;
675
+ enabledWorkflowSteps: string | null;
676
+ modifiedFiles: string | null;
677
+ declaredSymbols: string | null;
678
+ missionId: string | null;
679
+ sliceId: string | null;
680
+ scopeOverride: number | null;
681
+ scopeOverrideReason: string | null;
682
+ scopeAutoWiden: string | null;
683
+ assignedAgentId: string | null;
684
+ pausedByAgentId: string | null;
685
+ assigneeUserId: string | null;
686
+ nodeId: string | null;
687
+ effectiveNodeId: string | null;
688
+ effectiveNodeSource: string | null;
689
+ sourceType: string | null;
690
+ sourceAgentId: string | null;
691
+ sourceRunId: string | null;
692
+ sourceSessionId: string | null;
693
+ sourceMessageId: string | null;
694
+ sourceParentTaskId: string | null;
695
+ sourceMetadata: string | null;
696
+ proposalClaimId: string | null;
697
+ checkedOutBy: string | null;
698
+ checkedOutAt: string | null;
699
+ checkoutNodeId: string | null;
700
+ checkoutRunId: string | null;
701
+ checkoutLeaseRenewedAt: string | null;
702
+ checkoutLeaseEpoch: number | null;
703
+ deletedAt: string | null;
704
+ allowResurrection: number | null;
705
+ }
706
+ type TaskPersistSerializationContext = {
707
+ lineageId: string;
708
+ };
709
+ type TaskColumnDescriptor = {
710
+ column: keyof TaskRow;
711
+ sqlIdentifier: string;
712
+ serialize: (task: Task, context: TaskPersistSerializationContext) => unknown;
713
+ };
714
+
715
+ type TaskRepositoryScopeMutation = {
716
+ action: "add" | "remove" | "refuse";
717
+ repositories: string[];
718
+ reason: string;
719
+ actor: string;
720
+ };
721
+
530
722
  declare const WORKFLOW_EXTENSION_SCHEMA_VERSION: 1;
531
723
  type WorkflowExtensionFallback = "degradeToDefault" | "parkNeedsAttention" | "failClosed";
532
724
  type WorkflowExtensionKind = "column-metadata" | "move-policy" | "work-engine" | "node-handler" | "verdict-provider" | "merge-fact-provider";
@@ -3546,8 +3738,10 @@ declare class CentralCore extends EventEmitter<CentralCoreEvents> {
3546
3738
  logActivity(entry: Omit<CentralActivityLogEntry, "id">): Promise<CentralActivityLogEntry>;
3547
3739
  getRecentActivity(options?: {
3548
3740
  limit?: number;
3741
+ since?: string;
3549
3742
  projectId?: string;
3550
3743
  types?: ActivityEventType[];
3744
+ taskId?: string;
3551
3745
  }): Promise<CentralActivityLogEntry[]>;
3552
3746
  getActivityCount(projectId?: string): Promise<number>;
3553
3747
  cleanupOldActivity(olderThanDays: number): Promise<number>;
@@ -3962,177 +4156,6 @@ type IntakeOwnershipExemption = {
3962
4156
  readonly [intakeOwnershipExemptionBrand]: true;
3963
4157
  };
3964
4158
 
3965
- interface TaskRow {
3966
- id: string;
3967
- lineageId: string | null;
3968
- title: string | null;
3969
- description: string;
3970
- priority: string | null;
3971
- column: string;
3972
- status: string | null;
3973
- size: string | null;
3974
- reviewLevel: number | null;
3975
- currentStep: number;
3976
- worktree: string | null;
3977
- blockedBy: string | null;
3978
- overlapBlockedBy: string | null;
3979
- queuedLogEpisodeSignature: string | null;
3980
- paused: number | null;
3981
- pausedReason: string | null;
3982
- wedgeNotification: string | null;
3983
- userPaused: number | null;
3984
- baseBranch: string | null;
3985
- executionStartBranch: string | null;
3986
- branch: string | null;
3987
- autoMerge: number | null;
3988
- autoMergeProvenance: string | null;
3989
- baseCommitSha: string | null;
3990
- modelPresetId: string | null;
3991
- modelProvider: string | null;
3992
- credentialInstanceId: string | null;
3993
- modelId: string | null;
3994
- validatorModelProvider: string | null;
3995
- validatorCredentialInstanceId: string | null;
3996
- validatorModelId: string | null;
3997
- planningModelProvider: string | null;
3998
- planningCredentialInstanceId: string | null;
3999
- planningModelId: string | null;
4000
- mergerModelProvider: string | null;
4001
- mergerCredentialInstanceId: string | null;
4002
- mergerModelId: string | null;
4003
- mergeRetries: number | null;
4004
- workflowStepRetries: number | null;
4005
- stuckKillCount: number | null;
4006
- resumeLimboCount: number | null;
4007
- graphResumeRetryCount: number | null;
4008
- consecutiveToolFailureRetryCount: number | null;
4009
- executorEscalationAttempted: number | null;
4010
- toolFailureDetectorLogCursor: number | null;
4011
- toolFailureRetryExhaustedAuditEmitted: number | null;
4012
- resumeLimboTipSha: string | null;
4013
- resumeLimboStepSignature: string | null;
4014
- executeRequeueLoopCount: number | null;
4015
- executeRequeueLoopSignature: string | null;
4016
- postReviewFixCount: number | null;
4017
- planReviewReplanCount: number | null;
4018
- recoveryRetryCount: number | null;
4019
- taskDoneRetryCount: number | null;
4020
- bulkCompletionRefusalAt: string | null;
4021
- workflowIrPin: string | null;
4022
- workflowIrPinNodeId: string | null;
4023
- workflowIrPinColumnId: string | null;
4024
- legacyAdoptedAt: string | null;
4025
- worktreeSessionRetryCount: number | null;
4026
- completionHandoffLimboRecoveryCount: number | null;
4027
- verificationFailureCount: number | null;
4028
- mergeConflictBounceCount: number | null;
4029
- mergeAuditBounceCount: number | null;
4030
- mergeTransientRetryCount: number | null;
4031
- branchConflictRecoveryCount: number | null;
4032
- reviewerContextRetryCount: number | null;
4033
- reviewerFallbackRetryCount: number | null;
4034
- nextRecoveryAt: string | null;
4035
- error: string | null;
4036
- summary: string | null;
4037
- recommendations: string | null;
4038
- thinkingLevel: string | null;
4039
- validatorThinkingLevel: string | null;
4040
- planningThinkingLevel: string | null;
4041
- mergerThinkingLevel: string | null;
4042
- executionMode: string | null;
4043
- sessionAdvisorEnabled: number | null;
4044
- tokenUsageInputTokens: number | null;
4045
- tokenUsageOutputTokens: number | null;
4046
- tokenUsageCachedTokens: number | null;
4047
- tokenUsageCacheWriteTokens: number | null;
4048
- tokenUsageTotalTokens: number | null;
4049
- tokenUsageFirstUsedAt: string | null;
4050
- tokenUsageLastUsedAt: string | null;
4051
- tokenUsageModelProvider: string | null;
4052
- tokenUsageModelId: string | null;
4053
- tokenUsagePerModel: string | null;
4054
- tokenBudgetSoftAlertedAt: string | null;
4055
- tokenBudgetHardAlertedAt: string | null;
4056
- tokenBudgetOverride: string | null;
4057
- createdAt: string;
4058
- updatedAt: string;
4059
- columnMovedAt: string | null;
4060
- firstExecutionAt: string | null;
4061
- cumulativeActiveMs: number | null;
4062
- cumulativePlanningMs: number | null;
4063
- planningStartedAt: string | null;
4064
- columnDwellMs: string | null;
4065
- workflowTransitionNotification: string | null;
4066
- plannerOversightLevel: string | null;
4067
- awaitingApprovalReason: string | null;
4068
- approvedPlanFingerprint: string | null;
4069
- executionStartedAt: string | null;
4070
- executionCompletedAt: string | null;
4071
- dependencies: string | null;
4072
- steps: string | null;
4073
- customFields: string | null;
4074
- log: string | null;
4075
- attachments: string | null;
4076
- steeringComments: string | null;
4077
- comments: string | null;
4078
- review: string | null;
4079
- reviewState: string | null;
4080
- workflowStepResults: string | null;
4081
- prInfo: string | null;
4082
- prInfos: string | null;
4083
- issueInfo: string | null;
4084
- githubTracking: string | null;
4085
- gitlabTracking: string | null;
4086
- sourceIssueProvider: string | null;
4087
- sourceIssueRepository: string | null;
4088
- sourceIssueExternalIssueId: string | null;
4089
- sourceIssueNumber: number | null;
4090
- sourceIssueUrl: string | null;
4091
- sourceIssueClosedAt: string | null;
4092
- mergeDetails: string | null;
4093
- workspaceWorktrees: string | null;
4094
- breakIntoSubtasks: number | null;
4095
- noCommitsExpected: number | null;
4096
- enabledWorkflowSteps: string | null;
4097
- modifiedFiles: string | null;
4098
- declaredSymbols: string | null;
4099
- missionId: string | null;
4100
- sliceId: string | null;
4101
- scopeOverride: number | null;
4102
- scopeOverrideReason: string | null;
4103
- scopeAutoWiden: string | null;
4104
- assignedAgentId: string | null;
4105
- pausedByAgentId: string | null;
4106
- assigneeUserId: string | null;
4107
- nodeId: string | null;
4108
- effectiveNodeId: string | null;
4109
- effectiveNodeSource: string | null;
4110
- sourceType: string | null;
4111
- sourceAgentId: string | null;
4112
- sourceRunId: string | null;
4113
- sourceSessionId: string | null;
4114
- sourceMessageId: string | null;
4115
- sourceParentTaskId: string | null;
4116
- sourceMetadata: string | null;
4117
- proposalClaimId: string | null;
4118
- checkedOutBy: string | null;
4119
- checkedOutAt: string | null;
4120
- checkoutNodeId: string | null;
4121
- checkoutRunId: string | null;
4122
- checkoutLeaseRenewedAt: string | null;
4123
- checkoutLeaseEpoch: number | null;
4124
- deletedAt: string | null;
4125
- allowResurrection: number | null;
4126
- }
4127
- type TaskPersistSerializationContext = {
4128
- lineageId: string;
4129
- };
4130
- type TaskColumnDescriptor = {
4131
- column: keyof TaskRow;
4132
- sqlIdentifier: string;
4133
- serialize: (task: Task, context: TaskPersistSerializationContext) => unknown;
4134
- };
4135
-
4136
4159
  interface MoveTaskIfResult {
4137
4160
  task: Task;
4138
4161
  moved: boolean;
@@ -4823,7 +4846,6 @@ interface TaskStoreEvents {
4823
4846
  }];
4824
4847
  "task:deleted": [task: Task, meta?: {
4825
4848
  githubIssueAction?: GithubIssueAction;
4826
- closureContext?: TaskDeleteClosureContext;
4827
4849
  observed?: boolean;
4828
4850
  outboxEventId?: string;
4829
4851
  }];
@@ -4999,7 +5021,7 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
4999
5021
  consumerId?: string;
5000
5022
  });
5001
5023
  emitTaskLifecycleEventSafely(event: "task:created" | "task:updated" | "task:deleted", args: TaskStoreEvents["task:created"] | TaskStoreEvents["task:updated"] | TaskStoreEvents["task:deleted"]): boolean;
5002
- emitObservedTaskDeleted(task: Task, outboxEventId: string, metadata?: Pick<NonNullable<TaskStoreEvents["task:deleted"][1]>, "githubIssueAction" | "closureContext">): boolean;
5024
+ emitObservedTaskDeleted(task: Task, outboxEventId: string, metadata?: Pick<NonNullable<TaskStoreEvents["task:deleted"][1]>, "githubIssueAction">): boolean;
5003
5025
  startTaskDeletedOutboxConsumer(): Promise<void>;
5004
5026
  stopTaskDeletedOutboxConsumer(): Promise<void>;
5005
5027
  get db(): Database;
@@ -5494,6 +5516,7 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
5494
5516
  prompt?: string;
5495
5517
  worktree?: string | null;
5496
5518
  workspaceWorktrees?: Task["workspaceWorktrees"];
5519
+ repositoryScope?: Task["repositoryScope"] | null;
5497
5520
  status?: string | null;
5498
5521
  awaitingApprovalReason?: Task["awaitingApprovalReason"] | null;
5499
5522
  dependencies?: string[];
@@ -5530,12 +5553,16 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
5530
5553
  baseBranch?: string | null;
5531
5554
  autoMerge?: boolean | null;
5532
5555
  branch?: string | null;
5556
+ branchWriteOrigin?: "operator" | "engine";
5557
+ branchContext?: TaskBranchContext | null;
5533
5558
  executionStartBranch?: string | null;
5534
5559
  baseCommitSha?: string | null;
5535
5560
  size?: "S" | "M" | "L";
5536
5561
  reviewLevel?: number;
5537
5562
  executionMode?: ExecutionMode | null;
5538
5563
  mergeRetries?: number;
5564
+ aiMergeReviewReconciliation?: Task["aiMergeReviewReconciliation"] | null;
5565
+ log?: TaskLogEntry[];
5539
5566
  workflowStepRetries?: number;
5540
5567
  stuckKillCount?: number | null;
5541
5568
  resumeLimboCount?: number | null;
@@ -5668,12 +5695,15 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
5668
5695
  claimNextToolFailureRetry(taskId: string, expectedCursor: number, maxRetries: number): Promise<ToolFailureRetryClaim>;
5669
5696
  markToolFailureRetryExhaustedAudit(taskId: string): Promise<boolean>;
5670
5697
  updateTaskAtomic(id: string, updater: (current: Task) => Parameters<TaskStore["updateTask"]>[1] | null | undefined | Promise<Parameters<TaskStore["updateTask"]>[1] | null | undefined>, runContext?: RunMutationContext): Promise<Task>;
5698
+ dismissAiMergeReviewFinding(taskId: string, findingId: string, reason: string, actor?: string): Promise<Task>;
5671
5699
  linkTaskRecommendation(id: string, recommendationId: string, createdTaskId: string, completeColumns?: ReadonlySet<string>): Promise<Task>;
5672
5700
  normalizeWorkspaceTaskWorktreeMetadata(id: string): Promise<Task>;
5673
5701
  mergeWorkspaceWorktreeEntry(id: string, repoRelPath: string, patch: Partial<WorkspaceWorktreeEntry>, options?: {
5674
5702
  requireExistingEntry?: boolean;
5675
5703
  clearSingularWorktree?: boolean;
5676
5704
  }): Promise<Task>;
5705
+ updateTaskRepositoryScope(id: string, repositoryScope: TaskRepositoryScope | undefined): Promise<Task>;
5706
+ mutateTaskRepositoryScope(id: string, mutation: TaskRepositoryScopeMutation): Promise<Task>;
5677
5707
  resolveTaskWedgeNotificationEpisode(id: string, episodeId: string): Promise<{
5678
5708
  task: Task;
5679
5709
  resolved: boolean;
@@ -5845,7 +5875,6 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
5845
5875
  removeLineageReferences?: boolean;
5846
5876
  allowResurrection?: boolean;
5847
5877
  githubIssueAction?: GithubIssueAction;
5848
- closureContext?: TaskDeleteClosureContext;
5849
5878
  auditContext?: TaskDeleteAuditContext;
5850
5879
  }): Promise<Task>;
5851
5880
  recordRunAuditEventBackend(tx: DbTransaction, event: {
@@ -5862,7 +5891,6 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
5862
5891
  removeLineageReferences?: boolean;
5863
5892
  allowResurrection?: boolean;
5864
5893
  githubIssueAction?: GithubIssueAction;
5865
- closureContext?: TaskDeleteClosureContext;
5866
5894
  auditContext?: TaskDeleteAuditContext;
5867
5895
  }): Promise<Task>;
5868
5896
  deleteTaskIf(id: string, predicate: (live: Task) => boolean | Promise<boolean>, options?: {
@@ -5870,7 +5898,6 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
5870
5898
  removeLineageReferences?: boolean;
5871
5899
  allowResurrection?: boolean;
5872
5900
  githubIssueAction?: GithubIssueAction;
5873
- closureContext?: TaskDeleteClosureContext;
5874
5901
  auditContext?: TaskDeleteAuditContext;
5875
5902
  }): Promise<DeleteTaskIfResult>;
5876
5903
  deleteTaskById(taskId: string): void;
@@ -6193,6 +6220,7 @@ declare class TaskStore extends EventEmitter<TaskStoreEvents> {
6193
6220
  limit?: number;
6194
6221
  since?: string;
6195
6222
  type?: ActivityEventType;
6223
+ taskId?: string;
6196
6224
  }): Promise<ActivityLogEntry[]>;
6197
6225
  getTaskMovedCountsByDay(options: {
6198
6226
  since: string;
@@ -7379,9 +7407,15 @@ interface TaskSource {
7379
7407
  type TaskBranchGroupSource = "planning" | "mission" | "new-task";
7380
7408
  type TaskBranchAssignmentMode = "shared" | "per-task-derived";
7381
7409
  interface TaskBranchContext {
7410
+ branchOverride?: {
7411
+ by: "operator";
7412
+ at: string;
7413
+ branch: string;
7414
+ previousBranch?: string;
7415
+ };
7382
7416
  groupId?: string;
7383
- source: TaskBranchGroupSource;
7384
- assignmentMode: TaskBranchAssignmentMode;
7417
+ source?: TaskBranchGroupSource;
7418
+ assignmentMode?: TaskBranchAssignmentMode;
7385
7419
  inheritedBaseBranch?: string;
7386
7420
  }
7387
7421
  type BranchGroupPrState = "none" | "open" | "merged" | "closed";
@@ -7556,6 +7590,27 @@ interface TaskReleaseGateVerdict {
7556
7590
  evaluatedAt: string;
7557
7591
  evaluatedForUpdatedAt?: string;
7558
7592
  }
7593
+ interface TaskRepositoryScope {
7594
+ repositories: string[];
7595
+ state?: "proposed" | "confirmed";
7596
+ revision?: number;
7597
+ confirmedAt?: string;
7598
+ confirmedBy?: "operator" | "plan" | "inferred";
7599
+ reviewEvidence?: Record<string, {
7600
+ fingerprint: string;
7601
+ approvedAt: string;
7602
+ }>;
7603
+ extensions?: Array<{
7604
+ repository: string;
7605
+ requestedAt: string;
7606
+ requestedBy: string;
7607
+ reason: string;
7608
+ status: "accepted" | "refused";
7609
+ refusedAt?: string;
7610
+ refusedBy?: string;
7611
+ refusalReason?: string;
7612
+ }>;
7613
+ }
7559
7614
  interface WorkspaceWorktreeEntry {
7560
7615
  worktreePath: string;
7561
7616
  branch: string;
@@ -7570,6 +7625,28 @@ interface WorkspaceWorktreeEntry {
7570
7625
  branch?: string;
7571
7626
  };
7572
7627
  }
7628
+ type AiMergeFindingDisposition = "pending" | "corrected" | "absent-from-squash" | "still-present" | "dismissed";
7629
+ interface AiMergeReviewFinding {
7630
+ id: string;
7631
+ text: string;
7632
+ disposition: AiMergeFindingDisposition;
7633
+ audit?: Array<{
7634
+ at: string;
7635
+ actor: string;
7636
+ disposition: AiMergeFindingDisposition;
7637
+ reason?: string;
7638
+ }>;
7639
+ }
7640
+ interface AiMergeReviewReconciliation {
7641
+ sourceSha: string;
7642
+ integrationTipSha: string;
7643
+ candidateSha?: string;
7644
+ candidateTreeSha?: string;
7645
+ findings: AiMergeReviewFinding[];
7646
+ consecutiveCleanApprovals: number;
7647
+ correctivePasses: number;
7648
+ terminal?: boolean;
7649
+ }
7573
7650
  interface Task {
7574
7651
  id: string;
7575
7652
  lineageId?: string;
@@ -7580,10 +7657,10 @@ interface Task {
7580
7657
  column: ColumnId;
7581
7658
  preArchiveColumn?: Column;
7582
7659
  dependencies: string[];
7583
- breakIntoSubtasks?: boolean;
7584
7660
  noCommitsExpected?: boolean;
7585
7661
  worktree?: string;
7586
7662
  workspaceWorktrees?: Record<string, WorkspaceWorktreeEntry>;
7663
+ repositoryScope?: TaskRepositoryScope;
7587
7664
  steps: TaskStep[];
7588
7665
  currentStep: number;
7589
7666
  customFields?: Record<string, unknown>;
@@ -7664,6 +7741,7 @@ interface Task {
7664
7741
  enabledWorkflowSteps?: string[];
7665
7742
  workflowStepResults?: WorkflowStepResult[];
7666
7743
  mergeRetries?: number;
7744
+ aiMergeReviewReconciliation?: AiMergeReviewReconciliation;
7667
7745
  workflowStepRetries?: number;
7668
7746
  stuckKillCount?: number;
7669
7747
  resumeLimboCount?: number;
@@ -7696,7 +7774,7 @@ interface Task {
7696
7774
  reviewerFallbackRetryCount?: number;
7697
7775
  retrySummary?: RetrySummary;
7698
7776
  nextRecoveryAt?: string;
7699
- awaitingApprovalReason?: "release-authorization" | "plan-review-replan-cap" | "merge-blocked-by-policy";
7777
+ awaitingApprovalReason?: "release-authorization" | "plan-review-replan-cap" | "merge-blocked-by-policy" | "code-review-non-convergence";
7700
7778
  approvedPlanFingerprint?: string;
7701
7779
  thinkingLevel?: ThinkingLevel;
7702
7780
  validatorThinkingLevel?: ThinkingLevel;
@@ -7800,6 +7878,7 @@ interface TaskCreateInput {
7800
7878
  description: string;
7801
7879
  baseBranch?: string;
7802
7880
  branch?: string;
7881
+ branchWriteOrigin?: "operator" | "engine";
7803
7882
  branchContext?: TaskBranchContext;
7804
7883
  taskPrefix?: string;
7805
7884
  autoMerge?: boolean;
@@ -7811,8 +7890,8 @@ interface TaskCreateInput {
7811
7890
  priority?: TaskPriority;
7812
7891
  column?: ColumnId;
7813
7892
  dependencies?: string[];
7814
- breakIntoSubtasks?: boolean;
7815
7893
  noCommitsExpected?: boolean;
7894
+ repositoryScope?: string[];
7816
7895
  enabledWorkflowSteps?: string[];
7817
7896
  workflowId?: string | null;
7818
7897
  modelPresetId?: string;
@@ -8099,9 +8178,18 @@ interface GlobalSettings {
8099
8178
  gitlabApiBaseUrl?: string;
8100
8179
  gitlabAuthToken?: string;
8101
8180
  gitlabAuthTokenType?: GitlabAuthTokenType;
8181
+ jiraEnabled?: boolean;
8182
+ jiraBaseUrl?: string;
8183
+ jiraApiBaseUrl?: string;
8184
+ jiraAuthEmail?: string;
8185
+ jiraAuthTokenSecretKey?: string;
8186
+ jiraAuthTokenSecretScope?: "project" | "global";
8187
+ jiraBranchNameTemplate?: string;
8102
8188
  updateCheckFrequency?: "manual" | "on-startup" | "daily" | "weekly";
8103
8189
  updateChannel?: UpdateChannel;
8104
8190
  autoUpdateAndRestart?: boolean;
8191
+ autoUpdateEnabled?: boolean;
8192
+ autoRestartAfterUpdate?: boolean;
8105
8193
  autoReloadOnVersionChange?: boolean;
8106
8194
  modelOnboardingComplete?: boolean;
8107
8195
  useClaudeCli?: boolean;
@@ -8488,6 +8576,13 @@ interface ProjectSettings {
8488
8576
  gitlabApiBaseUrl?: string;
8489
8577
  gitlabAuthToken?: string;
8490
8578
  gitlabAuthTokenType?: GitlabAuthTokenType;
8579
+ jiraEnabled?: boolean;
8580
+ jiraBaseUrl?: string;
8581
+ jiraApiBaseUrl?: string;
8582
+ jiraAuthEmail?: string;
8583
+ jiraAuthTokenSecretKey?: string;
8584
+ jiraAuthTokenSecretScope?: "project" | "global";
8585
+ jiraBranchNameTemplate?: string;
8491
8586
  gitlabCommentOnDone?: boolean;
8492
8587
  gitlabCommentTemplate?: string;
8493
8588
  gitlabCloseSourceIssueOnDone?: boolean;
@@ -8851,7 +8946,6 @@ interface ArchivedTaskEntry {
8851
8946
  mergerModelId?: string;
8852
8947
  mergerThinkingLevel?: ThinkingLevel;
8853
8948
  tokenUsage?: TaskTokenUsage;
8854
- breakIntoSubtasks?: boolean;
8855
8949
  noCommitsExpected?: boolean;
8856
8950
  paused?: boolean;
8857
8951
  baseBranch?: string;
@@ -9204,10 +9298,6 @@ interface RunAuditEventFilter {
9204
9298
  limit?: number;
9205
9299
  }
9206
9300
 
9207
- interface TaskDeleteClosureContext {
9208
- kind: "split-into-subtasks";
9209
- childTaskIds: string[];
9210
- }
9211
9301
  interface BlockedStateSnapshot {
9212
9302
  taskId: string;
9213
9303
  blockedBy: string;