frizz 0.12.9 → 0.12.11
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/claude-agent-broker.js +7850 -7778
- package/dist/codex-app-server-daemon.js +49 -10
- package/dist/dev-child.js +653 -297
- package/dist/frizz.js +118 -21
- package/package.json +1 -1
- package/runtime/cc-worker/bin/frizz-mcp.mjs +58 -5
- package/web-dist/assets/{TerminalPane-CDk5zKv9.js → TerminalPane-DHvHCziB.js} +1 -1
- package/web-dist/assets/{abnfDiagram-VRR7QNED-DmkK2qjk.js → abnfDiagram-VRR7QNED-DIzM_IN8.js} +1 -1
- package/web-dist/assets/architecture-TIHT7OUA-DBvKOf0j.js +1 -0
- package/web-dist/assets/{architectureDiagram-ZJ3FMSHR-BFbA3OG6.js → architectureDiagram-ZJ3FMSHR-Bm_8vd5v.js} +1 -1
- package/web-dist/assets/{blockDiagram-677ZJIJ3-DTslTfq9.js → blockDiagram-677ZJIJ3-BXUW_N2o.js} +1 -1
- package/web-dist/assets/{c4Diagram-LMCZKHZV-Dmugni-f.js → c4Diagram-LMCZKHZV-C7rfqxUO.js} +1 -1
- package/web-dist/assets/channel-CbdXYswc.js +1 -0
- package/web-dist/assets/{chunk-32BRIVSS-DS7QIaUB.js → chunk-32BRIVSS-DbfUERLa.js} +1 -1
- package/web-dist/assets/{chunk-52WLFC77-CnnFIjVe.js → chunk-52WLFC77-BT_3wKSP.js} +1 -1
- package/web-dist/assets/{chunk-C7G6YPKG-BZxNdEVe.js → chunk-C7G6YPKG-JqApnOVt.js} +1 -1
- package/web-dist/assets/{chunk-EX3LRPZG-Zv7RLgbb.js → chunk-EX3LRPZG-Cj6hlA4t.js} +1 -1
- package/web-dist/assets/{chunk-FWX5IMBZ-6-Zb5eo-.js → chunk-FWX5IMBZ-BGthhuW_.js} +2 -2
- package/web-dist/assets/{chunk-HOUHSVGY-J5Ui6IxH.js → chunk-HOUHSVGY-uyLpm_YS.js} +1 -1
- package/web-dist/assets/{chunk-ICXQ74PX-DH6GE_Om.js → chunk-ICXQ74PX-BlwUMZAk.js} +1 -1
- package/web-dist/assets/{chunk-MOJQB5TN-Bjd1ChDq.js → chunk-MOJQB5TN-MXbNNk-P.js} +1 -1
- package/web-dist/assets/{chunk-OGEWGWER-BNvzjYRM.js → chunk-OGEWGWER-Da4My1Rf.js} +1 -1
- package/web-dist/assets/{chunk-PUDLZKDR-CdtfylsO.js → chunk-PUDLZKDR-C-PgvO__.js} +1 -1
- package/web-dist/assets/{chunk-Q4XR5HBZ-C7N3sKog.js → chunk-Q4XR5HBZ-BxZFe7gr.js} +1 -1
- package/web-dist/assets/{chunk-V7JOEXUC-vX-c4OzH.js → chunk-V7JOEXUC-DgERuXm_.js} +1 -1
- package/web-dist/assets/{chunk-VAUOI2AC-DtbheJmZ.js → chunk-VAUOI2AC-T5OoQE-_.js} +1 -1
- package/web-dist/assets/{chunk-VR4S4FIN-BpE1AOJR.js → chunk-VR4S4FIN--HFvJUG1.js} +1 -1
- package/web-dist/assets/{chunk-WYO6CB5R-BupZRR1a.js → chunk-WYO6CB5R-DlAvy41i.js} +1 -1
- package/web-dist/assets/{chunk-ZGVPDNZ5-XoWDM-02.js → chunk-ZGVPDNZ5-BdDg7X_H.js} +1 -1
- package/web-dist/assets/classDiagram-OUVF2IWQ-BVXwECjS.js +1 -0
- package/web-dist/assets/classDiagram-v2-EOCWNBFH-BVXwECjS.js +1 -0
- package/web-dist/assets/{cynefin-VYW2F7L2-DOIzVENe.js → cynefin-VYW2F7L2-BhjNO28R.js} +1 -1
- package/web-dist/assets/{cynefinDiagram-TSTJHNR4-DGq-kl_q.js → cynefinDiagram-TSTJHNR4-B6VA5gCd.js} +1 -1
- package/web-dist/assets/{dagre-VKFMJZFB-Brs6wxcd.js → dagre-VKFMJZFB-6MXoEc6K.js} +1 -1
- package/web-dist/assets/{diagram-FQU43EPY-BrQd5FEw.js → diagram-FQU43EPY-D2RSPoK4.js} +1 -1
- package/web-dist/assets/{diagram-G47NLZAW-B-DN7aQk.js → diagram-G47NLZAW-BOSbtzOf.js} +1 -1
- package/web-dist/assets/{diagram-NH7WQ7WH-DB-NFs3X.js → diagram-NH7WQ7WH-Dt_u21nP.js} +1 -1
- package/web-dist/assets/{diagram-OA4YK3LP-DsrBhvMB.js → diagram-OA4YK3LP-CjuWW-7r.js} +1 -1
- package/web-dist/assets/{diagram-WEI45ONY-DYctq6PN.js → diagram-WEI45ONY-rANIKJ8N.js} +1 -1
- package/web-dist/assets/{ebnfDiagram-CCIWWBDH-C6ghRrJP.js → ebnfDiagram-CCIWWBDH-Bf3kfaKZ.js} +1 -1
- package/web-dist/assets/{erDiagram-Q63AITRT-C_iK-Ja6.js → erDiagram-Q63AITRT-6vBp0ITn.js} +1 -1
- package/web-dist/assets/eventmodeling-45OFAUF4-STTT-geQ.js +1 -0
- package/web-dist/assets/flowDiagram-23GEKE2U-CC7DF1Fz.js +1 -0
- package/web-dist/assets/{ganttDiagram-NO4QXBWP-Y9GZAgbA.js → ganttDiagram-NO4QXBWP-C2qN2PMS.js} +1 -1
- package/web-dist/assets/{gitGraph-TEB2WS4Q-BgqW4vt7.js → gitGraph-TEB2WS4Q-CRASqc9n.js} +1 -1
- package/web-dist/assets/{gitGraphDiagram-IHSO6WYX-eImStPZ8.js → gitGraphDiagram-IHSO6WYX-gsXSPrH2.js} +1 -1
- package/web-dist/assets/{index-BOACK0Xu.js → index-DimQCLe8.js} +96 -96
- package/web-dist/assets/index-XhfdAXcw.css +1 -0
- package/web-dist/assets/{info-DKCQHKI2-BtbNWkY3.js → info-DKCQHKI2-rDkFlFOd.js} +1 -1
- package/web-dist/assets/{infoDiagram-FWYZ7A6U-DMIPEeRd.js → infoDiagram-FWYZ7A6U-03ql8Tqr.js} +1 -1
- package/web-dist/assets/{ishikawaDiagram-FXEZZL3T-08_raW8G.js → ishikawaDiagram-FXEZZL3T-CfDSAVNp.js} +1 -1
- package/web-dist/assets/{journeyDiagram-5HDEW3XC-hPkkufFj.js → journeyDiagram-5HDEW3XC-RWaA6AvH.js} +1 -1
- package/web-dist/assets/{kanban-definition-HUTT4EX6-CDBcUNEE.js → kanban-definition-HUTT4EX6-C89qresM.js} +1 -1
- package/web-dist/assets/{line-Njg200Gq.js → line-CZtSsvHu.js} +1 -1
- package/web-dist/assets/{mermaid-parser.core-1A-yH2Ql.js → mermaid-parser.core-DKNnvxt0.js} +3 -3
- package/web-dist/assets/{mermaid.core-D5Mvu4fo.js → mermaid.core-DX8cFeBF.js} +3 -3
- package/web-dist/assets/{mindmap-definition-LN4V7U3C-r-0LqhPG.js → mindmap-definition-LN4V7U3C-DW8ClyAX.js} +1 -1
- package/web-dist/assets/{packet-7NZHBO7P-Dj8tWs_Q.js → packet-7NZHBO7P-CUOv3apI.js} +1 -1
- package/web-dist/assets/{pegDiagram-2B236MQR-BHoUQUjJ.js → pegDiagram-2B236MQR-CFyxKEBL.js} +1 -1
- package/web-dist/assets/{pie-RZYD4A2V-GZmPkAjn.js → pie-RZYD4A2V-DyXXRie2.js} +1 -1
- package/web-dist/assets/{pieDiagram-ENE6RG2P-CL0ZHN1y.js → pieDiagram-ENE6RG2P-yUw7HA8l.js} +1 -1
- package/web-dist/assets/{quadrantDiagram-ABIIQ3AL-vZJzUcfC.js → quadrantDiagram-ABIIQ3AL-Mc7aea_i.js} +1 -1
- package/web-dist/assets/{radar-I7S5WNFK-D3x_tyhl.js → radar-I7S5WNFK-BKj0BsQy.js} +1 -1
- package/web-dist/assets/{railroad-3IZDKUUU-HVHtGCKZ.js → railroad-3IZDKUUU-DUK_kJIY.js} +1 -1
- package/web-dist/assets/railroad-abnf-AHOZXSZD-BDImJcFw.js +1 -0
- package/web-dist/assets/railroad-ebnf-EBAXGLYW-BR2XIYqq.js +1 -0
- package/web-dist/assets/railroad-peg-LSFZ7HO6-DRCwBbJY.js +1 -0
- package/web-dist/assets/{railroadDiagram-RFXS5EU6-Dfw0JONh.js → railroadDiagram-RFXS5EU6-By0Xgb_U.js} +1 -1
- package/web-dist/assets/{requirementDiagram-TGXJPOKE-DLM4etHl.js → requirementDiagram-TGXJPOKE-CgTycsRY.js} +1 -1
- package/web-dist/assets/{sankeyDiagram-HTMAVEWB-2nsrE-nL.js → sankeyDiagram-HTMAVEWB-mJ_-Grkn.js} +1 -1
- package/web-dist/assets/{sequenceDiagram-DBY2YBRQ-VkpQVaPX.js → sequenceDiagram-DBY2YBRQ-Dn6YyeNv.js} +1 -1
- package/web-dist/assets/{stateDiagram-2N3HPSRC-xvBH0825.js → stateDiagram-2N3HPSRC-BBws1E-e.js} +1 -1
- package/web-dist/assets/stateDiagram-v2-6OUMAXLB-B2jOFVGG.js +1 -0
- package/web-dist/assets/{swimlanes-5IMT3BWC-DA8H4qPO.js → swimlanes-5IMT3BWC-Jab-07o9.js} +1 -1
- package/web-dist/assets/swimlanesDiagram-G3AALYLV-DhYK_6fH.js +8 -0
- package/web-dist/assets/{timeline-definition-FHXFAJF6-npL1KNyH.js → timeline-definition-FHXFAJF6-Cq6RznHz.js} +1 -1
- package/web-dist/assets/{treeView-QDETBFTQ-Cea7MDUV.js → treeView-QDETBFTQ-KSelJnyL.js} +1 -1
- package/web-dist/assets/{treemap-6X3UGDF4-CGHINewA.js → treemap-6X3UGDF4-B-iiUurZ.js} +1 -1
- package/web-dist/assets/{vennDiagram-L72KCM5P-D-RIigY2.js → vennDiagram-L72KCM5P-B8t4NeQy.js} +1 -1
- package/web-dist/assets/{wardley-OPB4EBWU-BXdXDctR.js → wardley-OPB4EBWU-CtkAPZLQ.js} +1 -1
- package/web-dist/assets/{wardleyDiagram-EHGQE667-tLo8yxD2.js → wardleyDiagram-EHGQE667-DC-ms_sD.js} +1 -1
- package/web-dist/assets/{xychartDiagram-FW5EYKEG-I4H6c-9Q.js → xychartDiagram-FW5EYKEG-DW6fcgjF.js} +1 -1
- package/web-dist/index.html +2 -2
- package/web-dist/assets/architecture-TIHT7OUA-c0q2ebfx.js +0 -1
- package/web-dist/assets/channel-CZ15urUA.js +0 -1
- package/web-dist/assets/classDiagram-OUVF2IWQ-DFxJiEZ1.js +0 -1
- package/web-dist/assets/classDiagram-v2-EOCWNBFH-DFxJiEZ1.js +0 -1
- package/web-dist/assets/eventmodeling-45OFAUF4-BdXQ9Pv4.js +0 -1
- package/web-dist/assets/flowDiagram-23GEKE2U-rTXtf38R.js +0 -1
- package/web-dist/assets/index-BIGkwpMf.css +0 -1
- package/web-dist/assets/railroad-abnf-AHOZXSZD-BD2umz4T.js +0 -1
- package/web-dist/assets/railroad-ebnf-EBAXGLYW-C1IGySZs.js +0 -1
- package/web-dist/assets/railroad-peg-LSFZ7HO6-BVCH7yeK.js +0 -1
- package/web-dist/assets/stateDiagram-v2-6OUMAXLB-B3bLucl6.js +0 -1
- package/web-dist/assets/swimlanesDiagram-G3AALYLV-cYXAfa4Q.js +0 -8
|
@@ -3,8 +3,8 @@ import { createRequire as __frizzCreateRequire } from "node:module"; const requi
|
|
|
3
3
|
// packages/server/src/backend/codex-app-server-daemon.ts
|
|
4
4
|
import { spawn } from "node:child_process";
|
|
5
5
|
import { createServer } from "node:net";
|
|
6
|
-
import { existsSync, readFileSync, unlinkSync as
|
|
7
|
-
import { dirname } from "node:path";
|
|
6
|
+
import { existsSync as existsSync2, readFileSync as readFileSync2, unlinkSync as unlinkSync3, writeFileSync as writeFileSync2 } from "node:fs";
|
|
7
|
+
import { dirname as dirname2 } from "node:path";
|
|
8
8
|
import { StringDecoder } from "node:string_decoder";
|
|
9
9
|
|
|
10
10
|
// packages/server/src/backend/stale-socket-sweep.ts
|
|
@@ -70,6 +70,43 @@ function sweepStaleSockets(options, deps = {}) {
|
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
+
// packages/server/src/runtime-lease.ts
|
|
74
|
+
import { existsSync, mkdirSync, readdirSync as readdirSync2, readFileSync, unlinkSync as unlinkSync2, writeFileSync } from "node:fs";
|
|
75
|
+
import { dirname, join as join2 } from "node:path";
|
|
76
|
+
var PROVISIONED_MARKER = "provisioned.json";
|
|
77
|
+
var LEASES_DIR = ".leases";
|
|
78
|
+
var MAX_ASCENT = 6;
|
|
79
|
+
function runtimeVersionDir(bin) {
|
|
80
|
+
let dir = dirname(bin);
|
|
81
|
+
for (let step = 0; step < MAX_ASCENT; step++) {
|
|
82
|
+
if (existsSync(join2(dir, PROVISIONED_MARKER))) return dir;
|
|
83
|
+
const parent = dirname(dir);
|
|
84
|
+
if (parent === dir) return void 0;
|
|
85
|
+
dir = parent;
|
|
86
|
+
}
|
|
87
|
+
return void 0;
|
|
88
|
+
}
|
|
89
|
+
function leaseRuntime(bin, role) {
|
|
90
|
+
const versionDir = runtimeVersionDir(bin);
|
|
91
|
+
if (!versionDir) return () => {
|
|
92
|
+
};
|
|
93
|
+
const path = join2(versionDir, LEASES_DIR, `${process.pid}.json`);
|
|
94
|
+
try {
|
|
95
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
96
|
+
const lease = { pid: process.pid, role, bin, at: (/* @__PURE__ */ new Date()).toISOString() };
|
|
97
|
+
writeFileSync(path, JSON.stringify(lease));
|
|
98
|
+
} catch {
|
|
99
|
+
return () => {
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
return () => {
|
|
103
|
+
try {
|
|
104
|
+
unlinkSync2(path);
|
|
105
|
+
} catch {
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
|
|
73
110
|
// packages/server/src/backend/codex-app-server-daemon.ts
|
|
74
111
|
var MAX_QUEUED_LINES = 2e4;
|
|
75
112
|
var MAX_QUEUED_BYTES = 64 * 1024 * 1024;
|
|
@@ -118,6 +155,7 @@ function lineReader(onLine, onOverflow) {
|
|
|
118
155
|
}
|
|
119
156
|
function main() {
|
|
120
157
|
const config = readConfig();
|
|
158
|
+
const releaseRuntimeLease = leaseRuntime(config.codexBin, "codex-app-server");
|
|
121
159
|
const child = spawn(config.codexBin, config.appServerArgs ?? ["app-server", "--stdio"], {
|
|
122
160
|
cwd: config.cwd,
|
|
123
161
|
env: config.env,
|
|
@@ -131,7 +169,7 @@ function main() {
|
|
|
131
169
|
let published = false;
|
|
132
170
|
const recordOwner = () => {
|
|
133
171
|
try {
|
|
134
|
-
const value = JSON.parse(
|
|
172
|
+
const value = JSON.parse(readFileSync2(config.recordPath, "utf8"));
|
|
135
173
|
return typeof value.daemonPid === "number" ? value.daemonPid : null;
|
|
136
174
|
} catch {
|
|
137
175
|
return null;
|
|
@@ -145,21 +183,21 @@ function main() {
|
|
|
145
183
|
const owner = recordOwner();
|
|
146
184
|
if (owner === process.pid) {
|
|
147
185
|
try {
|
|
148
|
-
|
|
186
|
+
unlinkSync3(config.recordPath);
|
|
149
187
|
} catch {
|
|
150
188
|
}
|
|
151
189
|
}
|
|
152
190
|
if (published && owner !== null && owner !== process.pid) return;
|
|
153
191
|
if (published && process.platform !== "win32") {
|
|
154
192
|
try {
|
|
155
|
-
|
|
193
|
+
unlinkSync3(config.socketPath);
|
|
156
194
|
} catch {
|
|
157
195
|
}
|
|
158
196
|
}
|
|
159
197
|
};
|
|
160
198
|
const writeExitBreadcrumb = (reason) => {
|
|
161
199
|
try {
|
|
162
|
-
|
|
200
|
+
writeFileSync2(`${config.recordPath}.exit`, JSON.stringify({
|
|
163
201
|
projectId: config.projectId,
|
|
164
202
|
generation: config.generation,
|
|
165
203
|
daemonPid: process.pid,
|
|
@@ -172,6 +210,7 @@ function main() {
|
|
|
172
210
|
};
|
|
173
211
|
const die = (code, reason) => {
|
|
174
212
|
writeExitBreadcrumb(reason);
|
|
213
|
+
releaseRuntimeLease();
|
|
175
214
|
cleanup();
|
|
176
215
|
process.exit(code);
|
|
177
216
|
};
|
|
@@ -279,7 +318,7 @@ function main() {
|
|
|
279
318
|
toServer(message);
|
|
280
319
|
};
|
|
281
320
|
const writeRecord = () => {
|
|
282
|
-
|
|
321
|
+
writeFileSync2(config.recordPath, JSON.stringify({
|
|
283
322
|
projectId: config.projectId,
|
|
284
323
|
generation: config.generation,
|
|
285
324
|
daemonPid: process.pid,
|
|
@@ -323,11 +362,11 @@ function main() {
|
|
|
323
362
|
sock.on("close", drop);
|
|
324
363
|
sock.on("error", drop);
|
|
325
364
|
});
|
|
326
|
-
const sweepOwnFamily = () => sweepStaleSockets({ dir:
|
|
365
|
+
const sweepOwnFamily = () => sweepStaleSockets({ dir: dirname2(config.socketPath), prefix: "frizz-codex-", keep: [config.socketPath] });
|
|
327
366
|
const startListening = () => {
|
|
328
|
-
if (process.platform !== "win32" &&
|
|
367
|
+
if (process.platform !== "win32" && existsSync2(config.socketPath)) {
|
|
329
368
|
try {
|
|
330
|
-
|
|
369
|
+
unlinkSync3(config.socketPath);
|
|
331
370
|
} catch {
|
|
332
371
|
}
|
|
333
372
|
}
|