@runfusion/fusion 0.76.0-beta.3 → 0.77.0-beta.0
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/dist/bin.js +13802 -9587
- package/dist/child-process-worker.js +6472 -4028
- package/dist/client/.vite/manifest.json +280 -269
- package/dist/client/assets/AgentDetailView-0G9qFd4j.js +13 -0
- package/dist/client/assets/{AgentDetailView-Cc3ATg8a.css → AgentDetailView-jzgy1BAS.css} +1 -1
- package/dist/client/assets/{AgentPermissionPolicyEditor--u9jyUf2.js → AgentPermissionPolicyEditor-BM68g7wo.js} +1 -1
- package/dist/client/assets/AgentsView-DkOUZWw4.js +24 -0
- package/dist/client/assets/ChatView-BPSm2JIH.js +13 -0
- package/dist/client/assets/{CommandCenter-CSRYoveB.js → CommandCenter-DxRSFWNc.js} +26 -26
- package/dist/client/assets/CommandCenter-ilm-DbtI.css +1 -0
- package/dist/client/assets/{DevServerView-B9So_oYx.js → DevServerView-DO-bqJFE.js} +1 -1
- package/dist/client/assets/{DirectoryPicker-BhyDL_2m.js → DirectoryPicker-Cp2gddTE.js} +1 -1
- package/dist/client/assets/DocumentsView-D0E-3G96.js +1 -0
- package/dist/client/assets/EvalsView-BoFVq5hw.js +1 -0
- package/dist/client/assets/ExperimentalAgentOnboardingModal-CS1Sdogm.js +1 -0
- package/dist/client/assets/{GoalsView-B6X5_0Ve.js → GoalsView-sybf7JY4.js} +1 -1
- package/dist/client/assets/InsightsView-nHa7aShn.js +11 -0
- package/dist/client/assets/{MemoryView-DN_3IFmA.css → MemoryView-CdpQqPJJ.css} +1 -1
- package/dist/client/assets/MemoryView-D0IG44za.js +3 -0
- package/dist/client/assets/{PiExtensionsManager-B8At6fO8.js → PiExtensionsManager-CU76weJe.js} +2 -2
- package/dist/client/assets/PluginManager-DyT8XbcG.js +1 -0
- package/dist/client/assets/{PullRequestView-B1hZFrWo.js → PullRequestView-CnxWUSen.js} +2 -2
- package/dist/client/assets/{ReportModal-C46V_zEa.js → ReportModal-CMrmMQjD.js} +5 -5
- package/dist/client/assets/{ResearchView-D8G85BYN.js → ResearchView-BTytQSgy.js} +2 -2
- package/dist/client/assets/{SecretsView-CTri9LRK.js → SecretsView-BuSH5J87.js} +1 -1
- package/dist/client/assets/SessionTerminal-D04kYRrT.js +2 -0
- package/dist/client/assets/SettingsModal-C0FY8MPW.css +1 -0
- package/dist/client/assets/{SettingsModal-rUQcSTJp.js → SettingsModal-Dm-ngbRr.js} +1 -1
- package/dist/client/assets/{SettingsModal-DmfMotcd.css → SettingsModal-Ds0Yj47X.css} +1 -1
- package/dist/client/assets/SettingsModal-xSLhH7Tr.js +21 -0
- package/dist/client/assets/{SettingsTextareaRow-BirlBcem.js → SettingsTextareaRow-CHPgocEp.js} +1 -1
- package/dist/client/assets/{SetupWizardModal-xnCBM9EL.js → SetupWizardModal-y88aXNIQ.js} +2 -2
- package/dist/client/assets/{SkillsView-O5U0ep50.js → SkillsView-CYyQW1Hv.js} +1 -1
- package/dist/client/assets/{WorkflowNodeEditor-BX4d2qqF.js → WorkflowNodeEditor-hYeoz1X8.js} +3 -3
- package/dist/client/assets/{agent-import-generation-DnqVkPkz.js → agent-import-generation-CjiYXzCr.js} +1 -1
- package/dist/client/assets/agentsOrgChartLayout-C0UP_X3z.js +1 -0
- package/dist/client/assets/app-BgpuMvTU.js +13 -0
- package/dist/client/assets/app-BlexHhbW.js +13 -0
- package/dist/client/assets/app-BsuUOR0P.js +13 -0
- package/dist/client/assets/app-DQVOujmO.js +13 -0
- package/dist/client/assets/app-DjyTRx1N.js +5 -0
- package/dist/client/assets/app-Dniggype.js +13 -0
- package/dist/client/assets/app-EV-lyZ0T.js +5 -0
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-gi467xY0.js → architectureDiagram-3BPJPVTR-Dd6GPcqM.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-B_gpcYiR.js → blockDiagram-GPEHLZMM-CC6pLxlz.js} +1 -1
- package/dist/client/assets/{c4Diagram-AAUBKEIU-DeylEYsQ.js → c4Diagram-AAUBKEIU-DxMP_l6y.js} +1 -1
- package/dist/client/assets/channel-DlCEMoEf.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-BL2WY0HN.js → chunk-2J33WTMH-BKYToL43.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-BkLExGMe.js → chunk-4BX2VUAB-Bg6rjQb3.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-CSTvCF5T.js → chunk-55IACEB6-CPUwbbGa.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-9J8pKk4x.js → chunk-727SXJPM-DScQBCvv.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-DXC1vPWr.js → chunk-AQP2D5EJ-DbX7uaXK.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-CFRUb-zD.js → chunk-FMBD7UC4-DvYKea1c.js} +1 -1
- package/dist/client/assets/{chunk-ND2GUHAM-B87HFYS8.js → chunk-ND2GUHAM-CH-Tvw7w.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-CTjHiGbd.js → chunk-QZHKN3VN-CbyEvOoM.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-Bc92O8Ks.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Bc92O8Ks.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-D3Edq3L9.js → cose-bilkent-S5V4N54A-BPB5fV3A.js} +1 -1
- package/dist/client/assets/{dagre-BM42HDAG-CwwbeQfN.js → dagre-BM42HDAG-CilYJ3rR.js} +1 -1
- package/dist/client/assets/{dashboard-view-QxQwJFLz.js → dashboard-view-BnGe8cWo.js} +1 -1
- package/dist/client/assets/{dashboard-view-BLAoW3D4.js → dashboard-view-DnVf3tmI.js} +1 -1
- package/dist/client/assets/{dashboard-view-DAlJxqiJ.js → dashboard-view-DoLU6FxZ.js} +1 -1
- package/dist/client/assets/{dashboard-view-aPzfv99T.js → dashboard-view-dChSM_So.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-koJWWXE4.js → diagram-2AECGRRQ-m9u1Qhyx.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-Yob5cOKT.js → diagram-5GNKFQAL-DVr7Kf0N.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-DelvFSkK.js → diagram-KO2AKTUF-D7sgJDFx.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47-CMput2h2.js → diagram-LMA3HP47-DNKNDS6r.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-04VXDl79.js → diagram-OG6HWLK6-1Bff4FWn.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-C9iP8Uyp.js → erDiagram-TEJ5UH35-DGua1UHN.js} +1 -1
- package/dist/client/assets/{flowDiagram-I6XJVG4X-DENQvu_t.js → flowDiagram-I6XJVG4X-UDfDtwsE.js} +1 -1
- package/dist/client/assets/{folder-open-D-554oji.js → folder-open-CteOypVk.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-BqOttZAT.js → ganttDiagram-6RSMTGT7-COdmD328.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CDcydi-5.js → gitGraphDiagram-PVQCEYII-SUSls7Kw.js} +1 -1
- package/dist/client/assets/index-0ovTXt3t.css +1 -0
- package/dist/client/assets/index-DpCHwyiD.js +2818 -0
- package/dist/client/assets/{infoDiagram-5YYISTIA-B5LQQnxt.js → infoDiagram-5YYISTIA-e_DloXj7.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-DpFEt7D2.js → ishikawaDiagram-YF4QCWOH-DVWqihXg.js} +1 -1
- package/dist/client/assets/{journeyDiagram-JHISSGLW-MELtgu22.js → journeyDiagram-JHISSGLW-BcPY-XP0.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-h33PLATd.js → kanban-definition-UN3LZRKU-BCFG2Jle.js} +1 -1
- package/dist/client/assets/{mermaid.core-Dk2mUPOq.js → mermaid.core-5yPje9Bi.js} +4 -4
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-B_T4O2-B.js → mindmap-definition-RKZ34NQL-DDApeT3K.js} +1 -1
- package/dist/client/assets/{pieDiagram-4H26LBE5-B1YIFkRl.js → pieDiagram-4H26LBE5-N61_jyeP.js} +1 -1
- package/dist/client/assets/{puzzle-hvecxlpJ.js → puzzle-BkaCP30D.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-BoGQR_hO.js → quadrantDiagram-W4KKPZXB-C5qHiApF.js} +1 -1
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-BSDmUBIx.js → requirementDiagram-4Y6WPE33-C71okgzt.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-Dz_GqOa5.js → sankeyDiagram-5OEKKPKP-B2iKyLjB.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-B6twjYUH.js → sequenceDiagram-3UESZ5HK-DfdoYKKk.js} +1 -1
- package/dist/client/assets/{shield-alert-BX4WRJOv.js → shield-alert-BNSeDB8l.js} +1 -1
- package/dist/client/assets/standing-instructions-template-pZtzo1lK.js +20 -0
- package/dist/client/assets/standing-instructions-template-w7Ouw_37.css +1 -0
- package/dist/client/assets/{stateDiagram-AJRCARHV-DuwqWLx-.js → stateDiagram-AJRCARHV-lS-sUi12.js} +1 -1
- package/dist/client/assets/{stateDiagram-v2-BHNVJYJU-Bu8Sk187.js → stateDiagram-v2-BHNVJYJU-DXJNDrV9.js} +1 -1
- package/dist/client/assets/{timeline-definition-PNZ67QCA-BS6VnqSI.js → timeline-definition-PNZ67QCA-CCwvX81K.js} +1 -1
- package/dist/client/assets/{upload-CaDoyaMW.js → upload-CDovVbu2.js} +1 -1
- package/dist/client/assets/useDiscoveredSkillsCache-BYqP-afh.js +1 -0
- package/dist/client/assets/{users-C5uCLwVM.js → users-CTqECGLo.js} +1 -1
- package/dist/client/assets/{vennDiagram-CIIHVFJN-CUbzqT5Y.js → vennDiagram-CIIHVFJN-DaiR5nv9.js} +1 -1
- package/dist/client/assets/{wardley-L42UT6IY-Mv-NotFS.js → wardley-L42UT6IY-hA5IHyPW.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-DuYpvLZX.js → wardleyDiagram-YWT4CUSO-CILUNESc.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-24_7QXdw.js → xychartDiagram-2RQKCTM6-72eNMmjz.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/client/version.json +1 -1
- package/dist/droid-cli/package.json +1 -1
- package/dist/extension.js +10671 -6904
- package/dist/migrations/0059_fn_9037_tasks_source_agent_index.sql +3 -0
- package/dist/migrations/0060_fn_9059_workspace_coordination_leases.sql +10 -0
- package/dist/pi-claude-cli/package.json +1 -1
- package/dist/plugin-sdk/index.d.ts +190 -9
- package/dist/plugin-sdk/index.js +74 -28
- package/dist/plugins/fusion-plugin-acp-runtime/bundled.js +83 -29
- package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-claude-runtime/bundled.js +83 -29
- package/dist/plugins/fusion-plugin-claude-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-cli-printing-press/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
- package/dist/plugins/fusion-plugin-compound-engineering/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
- package/dist/plugins/fusion-plugin-cursor-runtime/bundled.js +1096 -73
- package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-dependency-graph/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
- package/dist/plugins/fusion-plugin-droid-runtime/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-grok-runtime/bundled.js +83 -29
- package/dist/plugins/fusion-plugin-grok-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-hermes-runtime/bundled.js +302 -71
- package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-linear-import/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-linear-import/package.json +1 -1
- package/dist/plugins/fusion-plugin-omp-runtime/bundled.js +83 -29
- package/dist/plugins/fusion-plugin-omp-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-openclaw-runtime/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-paperclip-runtime/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-quality/bundled.js +176 -46
- package/dist/plugins/fusion-plugin-quality/package.json +1 -1
- package/dist/plugins/fusion-plugin-reports/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-reports/package.json +1 -1
- package/dist/plugins/fusion-plugin-roadmap/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
- package/dist/plugins/fusion-plugin-todos/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-todos/package.json +1 -1
- package/dist/plugins/fusion-plugin-whatsapp-chat/bundled.js +74 -28
- package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
- package/package.json +1 -1
- package/skill/fusion/references/extension-tools.md +2 -0
- package/dist/client/assets/AgentDetailView-T767kKTg.js +0 -13
- package/dist/client/assets/AgentsView-6Ifu7qDr.js +0 -24
- package/dist/client/assets/ChatView-BV3lixQi.js +0 -13
- package/dist/client/assets/CommandCenter-CE4rYjHn.css +0 -1
- package/dist/client/assets/DocumentsView-pbERA7O-.js +0 -1
- package/dist/client/assets/EvalsView-DJQ4ltCg.js +0 -1
- package/dist/client/assets/ExperimentalAgentOnboardingModal-BwJuzkzB.js +0 -1
- package/dist/client/assets/InsightsView-CJgI0J7S.js +0 -11
- package/dist/client/assets/MemoryView-BHq1AHPu.js +0 -3
- package/dist/client/assets/PluginManager-k7hV7_9e.js +0 -1
- package/dist/client/assets/SessionTerminal-BRf6r4Vp.js +0 -2
- package/dist/client/assets/SettingsModal-B30rPfYC.css +0 -1
- package/dist/client/assets/SettingsModal-D0RBeZik.js +0 -21
- package/dist/client/assets/agentsOrgChartLayout-CKuzbhFf.js +0 -1
- package/dist/client/assets/app-B2FwULu2.js +0 -5
- package/dist/client/assets/app-B6nJaqAl.js +0 -13
- package/dist/client/assets/app-CGXZeIRc.js +0 -13
- package/dist/client/assets/app-CGtkeBF5.js +0 -13
- package/dist/client/assets/app-CNzN1Plu.js +0 -13
- package/dist/client/assets/app-DLs-f5yM.js +0 -13
- package/dist/client/assets/app-DsvtcRUG.js +0 -5
- package/dist/client/assets/channel-BoE8DeM4.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-qnbLX_9_.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-qnbLX_9_.js +0 -1
- package/dist/client/assets/index-CXTd3LAB.css +0 -1
- package/dist/client/assets/index-CtYRoouR.js +0 -2818
- package/dist/client/assets/standing-instructions-template-BJY317CC.js +0 -20
- package/dist/client/assets/standing-instructions-template-Ddi_4TIk.css +0 -1
|
@@ -5776,7 +5776,9 @@ __export(project_exports, {
|
|
|
5776
5776
|
workflowSettings: () => workflowSettings,
|
|
5777
5777
|
workflowSteps: () => workflowSteps,
|
|
5778
5778
|
workflowWorkItems: () => workflowWorkItems,
|
|
5779
|
-
workflows: () => workflows
|
|
5779
|
+
workflows: () => workflows,
|
|
5780
|
+
workspaceCoordinationLeases: () => workspaceCoordinationLeases,
|
|
5781
|
+
workspaceLandIntents: () => workspaceLandIntents
|
|
5780
5782
|
});
|
|
5781
5783
|
var projectSchema = pgSchema(PROJECT_SCHEMA);
|
|
5782
5784
|
var tasks = projectSchema.table("tasks", {
|
|
@@ -6043,6 +6045,9 @@ var tasks = projectSchema.table("tasks", {
|
|
|
6043
6045
|
the gate is a full tasks-table scan. Sparse: most rows have NULL parent.
|
|
6044
6046
|
*/
|
|
6045
6047
|
index("idxTasksSourceParentTaskId").on(t.sourceParentTaskId),
|
|
6048
|
+
/* FNXC:TaskRecommendations 2026-08-13-22:23: duplicate intake filters source
|
|
6049
|
+
* lineage on recommendation/agent creates; this sparse index avoids a task-table scan. */
|
|
6050
|
+
index("idxTasksProjectSourceAgentId").on(t.projectId, t.sourceAgentId).where(sql`${t.sourceAgentId} IS NOT NULL`),
|
|
6046
6051
|
// FNXC:EphemeralAgentTaskCreation 2026-07-30-12:00: proposal retries share one stable key, so the database—not a read-before-create race—enforces at-most-once materialization.
|
|
6047
6052
|
uniqueIndex("uqTasksProjectProposalClaimId").on(t.projectId, t.proposalClaimId).where(sql`${t.proposalClaimId} IS NOT NULL`),
|
|
6048
6053
|
/*
|
|
@@ -6277,6 +6282,52 @@ var distributedTaskIdReservations = projectSchema.table("distributed_task_id_res
|
|
|
6277
6282
|
index("idxDistributedTaskIdReservationsPrefixStatus").on(t.prefix, t.status),
|
|
6278
6283
|
index("idxDistributedTaskIdReservationsExpiry").on(t.status, t.expiresAt)
|
|
6279
6284
|
]);
|
|
6285
|
+
var workspaceCoordinationLeases = projectSchema.table("workspace_coordination_leases", {
|
|
6286
|
+
projectId: text("project_id").notNull().default(sql`current_setting('fusion.project_id', true)`),
|
|
6287
|
+
leaseKey: text("lease_key").notNull(),
|
|
6288
|
+
kind: text("kind").notNull(),
|
|
6289
|
+
ownerTaskId: text("owner_task_id").notNull(),
|
|
6290
|
+
ownerNodeId: text("owner_node_id").notNull(),
|
|
6291
|
+
ownerIncarnationId: text("owner_incarnation_id").notNull(),
|
|
6292
|
+
ownerRunId: text("owner_run_id"),
|
|
6293
|
+
fenceToken: bigint("fence_token", { mode: "bigint" }).notNull().default(sql`0`),
|
|
6294
|
+
fenceRefName: text("fence_ref_name"),
|
|
6295
|
+
fenceRefSha: text("fence_ref_sha"),
|
|
6296
|
+
status: text("status").notNull(),
|
|
6297
|
+
acquiredAt: text("acquired_at").notNull(),
|
|
6298
|
+
renewedAt: text("renewed_at").notNull(),
|
|
6299
|
+
expiresAt: text("expires_at").notNull(),
|
|
6300
|
+
createdAt: text("created_at").notNull(),
|
|
6301
|
+
updatedAt: text("updated_at").notNull()
|
|
6302
|
+
}, (t) => [
|
|
6303
|
+
primaryKey({ columns: [t.projectId, t.leaseKey] }),
|
|
6304
|
+
check("workspace_coordination_leases_kind_check", sql`${t.kind} IN ('acquire', 'land', 'merge-dispatch')`),
|
|
6305
|
+
check("workspace_coordination_leases_status_check", sql`${t.status} IN ('held', 'released', 'expired')`),
|
|
6306
|
+
index("idxWorkspaceCoordinationLeasesOwnerTask").on(t.projectId, t.ownerTaskId),
|
|
6307
|
+
index("idxWorkspaceCoordinationLeasesOwnerNode").on(t.projectId, t.ownerNodeId),
|
|
6308
|
+
index("idxWorkspaceCoordinationLeasesExpiry").on(t.status, t.expiresAt)
|
|
6309
|
+
]);
|
|
6310
|
+
var workspaceLandIntents = projectSchema.table("workspace_land_intents", {
|
|
6311
|
+
projectId: text("project_id").notNull().default(sql`current_setting('fusion.project_id', true)`),
|
|
6312
|
+
taskId: text("task_id").notNull(),
|
|
6313
|
+
repoRelPath: text("repo_rel_path").notNull(),
|
|
6314
|
+
remoteUrl: text("remote_url").notNull(),
|
|
6315
|
+
integrationRef: text("integration_ref").notNull(),
|
|
6316
|
+
intendedSha: text("intended_sha").notNull(),
|
|
6317
|
+
expectedTip: text("expected_tip").notNull(),
|
|
6318
|
+
fenceRefName: text("fence_ref_name").notNull(),
|
|
6319
|
+
fenceRefSha: text("fence_ref_sha").notNull(),
|
|
6320
|
+
ownerTaskId: text("owner_task_id").notNull(),
|
|
6321
|
+
ownerNodeId: text("owner_node_id").notNull(),
|
|
6322
|
+
ownerIncarnationId: text("owner_incarnation_id").notNull(),
|
|
6323
|
+
fenceToken: bigint("fence_token", { mode: "bigint" }).notNull(),
|
|
6324
|
+
status: text("status").notNull(),
|
|
6325
|
+
resolvedSha: text("resolved_sha"),
|
|
6326
|
+
resolution: text("resolution"),
|
|
6327
|
+
createdAt: text("created_at").notNull(),
|
|
6328
|
+
updatedAt: text("updated_at").notNull(),
|
|
6329
|
+
resolvedAt: text("resolved_at")
|
|
6330
|
+
}, (t) => [primaryKey({ columns: [t.projectId, t.taskId, t.repoRelPath] }), check("workspace_land_intents_status_check", sql`${t.status} IN ('pending', 'recorded', 'abandoned')`), check("workspace_land_intents_resolution_check", sql`${t.resolution} IS NULL OR ${t.resolution} IN ('landed', 'not-landed')`), index("idxWorkspaceLandIntentsStatus").on(t.projectId, t.status)]);
|
|
6280
6331
|
var symbolLocks = projectSchema.table("symbol_locks", {
|
|
6281
6332
|
projectId: text("project_id").notNull().default(sql`current_setting('fusion.project_id', true)`),
|
|
6282
6333
|
symbolKey: text("symbol_key").notNull(),
|
|
@@ -8851,6 +8902,11 @@ var DEFAULT_GLOBAL_SETTINGS = {
|
|
|
8851
8902
|
Critical-action confirmation dialogs stay enabled by default. This global-only preference may opt an operator into primary/default auto-approval, but project settings cannot enable it for collaborators.
|
|
8852
8903
|
*/
|
|
8853
8904
|
skipConfirmationDialogs: false,
|
|
8905
|
+
/*
|
|
8906
|
+
FNXC:QuickEntry 2026-08-16-03:15:
|
|
8907
|
+
Quick Add keeps its historical Enter-to-submit behavior by default; only an operator's global preference may opt into newline-first entry.
|
|
8908
|
+
*/
|
|
8909
|
+
quickAddSubmitOnEnter: true,
|
|
8854
8910
|
language: void 0,
|
|
8855
8911
|
defaultProvider: void 0,
|
|
8856
8912
|
defaultCredentialInstanceId: void 0,
|
|
@@ -9313,9 +9369,6 @@ var DEFAULT_PROJECT_SETTINGS = {
|
|
|
9313
9369
|
* New and unconfigured projects default AI merge to sync a dirty checked-out integration branch, restoring the legacy stash → fast-forward → restore landing behavior. Explicit persisted merger.allowDirtyLocalCheckoutSync values still win, and no existing-project migration stamps this default into storage.
|
|
9314
9370
|
*/
|
|
9315
9371
|
merger: { mode: "ai", maxReviewPasses: 3, allowDirtyLocalCheckoutSync: true },
|
|
9316
|
-
mergeDiffVolumeMinLines: void 0,
|
|
9317
|
-
mergeDiffVolumeThreshold: void 0,
|
|
9318
|
-
mergeDiffVolumeAllowlist: void 0,
|
|
9319
9372
|
requiredChecks: void 0,
|
|
9320
9373
|
mergeStrategyOverlapBehavior: "flip-to-prefer-branch",
|
|
9321
9374
|
postMergeAuditMode: "warn",
|
|
@@ -17977,10 +18030,6 @@ var AgentStore = class _AgentStore extends EventEmitter {
|
|
|
17977
18030
|
};
|
|
17978
18031
|
await this.writeAgent(updated);
|
|
17979
18032
|
this.emit("agent:stateChanged", agentId, currentState, newState);
|
|
17980
|
-
if (this.asyncLayer) try {
|
|
17981
|
-
await appendAgentActivityEvent(this.asyncLayer, { type: "agent:state-changed", attributionClaim: resolveAgentActivityAttribution([{ id: agentId, provenance: "roster" }], "executor"), taskId: updated.taskId, occurredAt: updated.updatedAt, discriminator: updated.updatedAt, metadata: { fromState: currentState, toState: newState, source: "update" } });
|
|
17982
|
-
} catch {
|
|
17983
|
-
}
|
|
17984
18033
|
this.emit("agent:updated", updated, currentState);
|
|
17985
18034
|
return updated;
|
|
17986
18035
|
});
|
|
@@ -18472,10 +18521,10 @@ var AgentStore = class _AgentStore extends EventEmitter {
|
|
|
18472
18521
|
return agents2;
|
|
18473
18522
|
}
|
|
18474
18523
|
/*
|
|
18475
|
-
FNXC:MemoryAgent 2026-08-
|
|
18476
|
-
Memory Keeper is custom because it is not a workflow-stage principal.
|
|
18477
|
-
|
|
18478
|
-
|
|
18524
|
+
FNXC:MemoryAgent 2026-08-16-02:31:
|
|
18525
|
+
Memory Keeper is custom because it is not a workflow-stage principal. Its heartbeat defaults off
|
|
18526
|
+
until an operator opts in, while auto-claim remains off because it only maintains memory. This
|
|
18527
|
+
runs during init, where createAgent name collisions would abort startup; preflight probes,
|
|
18479
18528
|
a fallback name, a null degraded result, and the init-side catch keep an operator's same-named
|
|
18480
18529
|
agent untouched and the project runnable.
|
|
18481
18530
|
*/
|
|
@@ -18501,7 +18550,13 @@ var AgentStore = class _AgentStore extends EventEmitter {
|
|
|
18501
18550
|
roles: [...BUILTIN_MEMORY_AGENT_DEFAULT.roles],
|
|
18502
18551
|
title: BUILTIN_MEMORY_AGENT_DEFAULT.title,
|
|
18503
18552
|
metadata: { [BUILTIN_MEMORY_AGENT_PROVENANCE_KEY]: true },
|
|
18504
|
-
|
|
18553
|
+
/*
|
|
18554
|
+
FNXC:MemoryAgent 2026-08-16-02:31:
|
|
18555
|
+
Memory consolidation is opt-in: newly provisioned Memory Keepers must not begin
|
|
18556
|
+
hourly autonomous heartbeats until an operator enables the existing heartbeat toggle.
|
|
18557
|
+
Keep auto-claim off and the one-hour interval ready for that later opt-in.
|
|
18558
|
+
*/
|
|
18559
|
+
runtimeConfig: { enabled: false, autoClaimRelevantTasks: false, heartbeatIntervalMs: 36e5 },
|
|
18505
18560
|
instructionsText: BUILTIN_MEMORY_AGENT_DEFAULT.instructionsText,
|
|
18506
18561
|
soul: BUILTIN_MEMORY_AGENT_DEFAULT.soul,
|
|
18507
18562
|
bundleConfig: { ...BUILTIN_MEMORY_AGENT_DEFAULT.bundleConfig, files: [...BUILTIN_MEMORY_AGENT_DEFAULT.bundleConfig.files] }
|
|
@@ -18516,7 +18571,9 @@ var AgentStore = class _AgentStore extends EventEmitter {
|
|
|
18516
18571
|
return owner;
|
|
18517
18572
|
}
|
|
18518
18573
|
const metadata = { ...owner.metadata ?? {}, [BUILTIN_MEMORY_AGENT_PROVENANCE_KEY]: true };
|
|
18519
|
-
const
|
|
18574
|
+
const currentRuntimeConfig = owner.runtimeConfig ?? {};
|
|
18575
|
+
const enabled = typeof currentRuntimeConfig.enabled === "boolean" ? currentRuntimeConfig.enabled : false;
|
|
18576
|
+
const runtimeConfig = currentRuntimeConfig.enabled === enabled && currentRuntimeConfig.autoClaimRelevantTasks === false && currentRuntimeConfig.heartbeatIntervalMs === DEFAULT_AGENT_HEARTBEAT_INTERVAL_MS ? currentRuntimeConfig : { ...currentRuntimeConfig, enabled, autoClaimRelevantTasks: false, heartbeatIntervalMs: DEFAULT_AGENT_HEARTBEAT_INTERVAL_MS };
|
|
18520
18577
|
const updates = {
|
|
18521
18578
|
roles: [...BUILTIN_MEMORY_AGENT_DEFAULT.roles],
|
|
18522
18579
|
role: "custom",
|
|
@@ -18526,7 +18583,9 @@ var AgentStore = class _AgentStore extends EventEmitter {
|
|
|
18526
18583
|
instructionsText: owner.instructionsText?.trim() ? owner.instructionsText : BUILTIN_MEMORY_AGENT_DEFAULT.instructionsText,
|
|
18527
18584
|
soul: owner.soul?.trim() ? owner.soul : BUILTIN_MEMORY_AGENT_DEFAULT.soul
|
|
18528
18585
|
};
|
|
18529
|
-
|
|
18586
|
+
const nextOwner = { ...owner, ...updates };
|
|
18587
|
+
if (JSON.stringify(nextOwner) === JSON.stringify(owner)) return owner;
|
|
18588
|
+
owner = { ...nextOwner, updatedAt: (/* @__PURE__ */ new Date()).toISOString() };
|
|
18530
18589
|
await this.writeAgent(owner, executor);
|
|
18531
18590
|
return owner;
|
|
18532
18591
|
};
|
|
@@ -19398,19 +19457,6 @@ var AgentStore = class _AgentStore extends EventEmitter {
|
|
|
19398
19457
|
this.agentSnapshotCache.set(agent.id, this.watchSnapshotOf(agent));
|
|
19399
19458
|
if (stateChanged) {
|
|
19400
19459
|
this.emit("agent:stateChanged", agent.id, previousState, agent.state);
|
|
19401
|
-
if (this.asyncLayer) {
|
|
19402
|
-
try {
|
|
19403
|
-
await appendAgentActivityEvent(this.asyncLayer, {
|
|
19404
|
-
type: "agent:state-changed",
|
|
19405
|
-
attributionClaim: resolveAgentActivityAttribution([{ id: agent.id, provenance: "roster" }], "executor"),
|
|
19406
|
-
taskId: agent.taskId,
|
|
19407
|
-
occurredAt: agent.updatedAt,
|
|
19408
|
-
discriminator: agent.updatedAt,
|
|
19409
|
-
metadata: { fromState: previousState, toState: agent.state, source: "reconciliation" }
|
|
19410
|
-
});
|
|
19411
|
-
} catch {
|
|
19412
|
-
}
|
|
19413
|
-
}
|
|
19414
19460
|
this.emit("agent:updated", agent, previousState);
|
|
19415
19461
|
} else {
|
|
19416
19462
|
this.emit("agent:updated", agent);
|