@launchsecure/launch-kit 0.0.26 → 0.0.27
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/chart-client/assets/index-CJ4mgRRF.css +1 -0
- package/dist/chart-client/assets/{index-Bk1hawjD.js → index-Ccy-DpI-.js} +46 -42
- package/dist/chart-client/index.html +2 -2
- package/dist/client/assets/index-DI5qSR_w.css +32 -0
- package/dist/client/assets/index-Dp0_okva.js +294 -0
- package/dist/client/index.html +2 -2
- package/dist/council-client/assets/index-C_-vAM9L.css +1 -0
- package/dist/council-client/index.html +2 -2
- package/dist/deck-client/assets/{_baseUniq-C2xT_eYu.js → _baseUniq-W2JQDmje.js} +1 -1
- package/dist/deck-client/assets/{arc-CmVL9pGd.js → arc-DIBWAId9.js} +1 -1
- package/dist/deck-client/assets/{architectureDiagram-Q4EWVU46-BSFgdjve.js → architectureDiagram-Q4EWVU46-CAIRMvJK.js} +1 -1
- package/dist/deck-client/assets/{blockDiagram-DXYQGD6D-DuLzscvP.js → blockDiagram-DXYQGD6D-BeNaNiOi.js} +1 -1
- package/dist/deck-client/assets/{c4Diagram-AHTNJAMY-CfCJB8eY.js → c4Diagram-AHTNJAMY-B9Ozi62h.js} +1 -1
- package/dist/deck-client/assets/channel-CRdozqbp.js +1 -0
- package/dist/deck-client/assets/{chunk-4BX2VUAB-DxmLYTWZ.js → chunk-4BX2VUAB-D7AZ47dt.js} +1 -1
- package/dist/deck-client/assets/{chunk-4TB4RGXK-CCnf7GFE.js → chunk-4TB4RGXK-DnVnNPcI.js} +1 -1
- package/dist/deck-client/assets/{chunk-55IACEB6-Db9DApcj.js → chunk-55IACEB6-UKYs-YNd.js} +1 -1
- package/dist/deck-client/assets/{chunk-EDXVE4YY-DmYDq8ZI.js → chunk-EDXVE4YY-D43b-SKn.js} +1 -1
- package/dist/deck-client/assets/{chunk-FMBD7UC4-BGhUlF20.js → chunk-FMBD7UC4-QzBAoyyW.js} +1 -1
- package/dist/deck-client/assets/{chunk-OYMX7WX6-CpEnicQZ.js → chunk-OYMX7WX6-Cjif4r6W.js} +1 -1
- package/dist/deck-client/assets/{chunk-QZHKN3VN-Doa7LKwf.js → chunk-QZHKN3VN-CqLDirEI.js} +1 -1
- package/dist/deck-client/assets/{chunk-YZCP3GAM-CpkIlH6V.js → chunk-YZCP3GAM-_FQvmMs4.js} +1 -1
- package/dist/deck-client/assets/classDiagram-6PBFFD2Q-lIZMp57W.js +1 -0
- package/dist/deck-client/assets/classDiagram-v2-HSJHXN6E-lIZMp57W.js +1 -0
- package/dist/deck-client/assets/clone-BtWeSTyJ.js +1 -0
- package/dist/deck-client/assets/{cose-bilkent-S5V4N54A-Bkh8Bfcb.js → cose-bilkent-S5V4N54A-rfrocesE.js} +1 -1
- package/dist/deck-client/assets/{dagre-KV5264BT-Bp0XpTgH.js → dagre-KV5264BT-Bv_7DJat.js} +1 -1
- package/dist/deck-client/assets/{diagram-5BDNPKRD-ZHiyGYPQ.js → diagram-5BDNPKRD-4F1414G5.js} +1 -1
- package/dist/deck-client/assets/{diagram-G4DWMVQ6-BW-Q8_H5.js → diagram-G4DWMVQ6-C4-Pszqm.js} +1 -1
- package/dist/deck-client/assets/{diagram-MMDJMWI5-6I3LTafu.js → diagram-MMDJMWI5-B647TIx9.js} +1 -1
- package/dist/deck-client/assets/{diagram-TYMM5635-CyM5YK28.js → diagram-TYMM5635-BFAqpezd.js} +1 -1
- package/dist/deck-client/assets/{erDiagram-SMLLAGMA-CjNxVJHk.js → erDiagram-SMLLAGMA-BfBfrJOC.js} +1 -1
- package/dist/deck-client/assets/{flowDiagram-DWJPFMVM-BDQHuAJR.js → flowDiagram-DWJPFMVM-DX9YAYes.js} +1 -1
- package/dist/deck-client/assets/{ganttDiagram-T4ZO3ILL-B7MnkpbP.js → ganttDiagram-T4ZO3ILL-DCuiy7wF.js} +1 -1
- package/dist/deck-client/assets/{gitGraphDiagram-UUTBAWPF-C9dZAcYD.js → gitGraphDiagram-UUTBAWPF-CGp1IXUh.js} +1 -1
- package/dist/deck-client/assets/{graph-CjdBnzUy.js → graph-B7g8aoxv.js} +1 -1
- package/dist/deck-client/assets/{index-DeIVPW63.js → index-Dg1r-WSN.js} +3 -3
- package/dist/deck-client/assets/index-DsIZ3LqL.css +1 -0
- package/dist/deck-client/assets/{infoDiagram-42DDH7IO-C7d3iRC3.js → infoDiagram-42DDH7IO-L3fahMkF.js} +1 -1
- package/dist/deck-client/assets/{ishikawaDiagram-UXIWVN3A-BcYGKj09.js → ishikawaDiagram-UXIWVN3A-aS_EjWBZ.js} +1 -1
- package/dist/deck-client/assets/{journeyDiagram-VCZTEJTY-DqFlRrOL.js → journeyDiagram-VCZTEJTY-djTSQZF9.js} +1 -1
- package/dist/deck-client/assets/{kanban-definition-6JOO6SKY-BJhPp1NR.js → kanban-definition-6JOO6SKY-CcTHo4CM.js} +1 -1
- package/dist/deck-client/assets/{layout-DIeS6GvK.js → layout-mEJiadb7.js} +1 -1
- package/dist/deck-client/assets/{linear-He_yJy5H.js → linear-XgTKqyRu.js} +1 -1
- package/dist/deck-client/assets/{min-DQ6Kx06t.js → min-Ct9jZdpd.js} +1 -1
- package/dist/deck-client/assets/{mindmap-definition-QFDTVHPH-sQ62L8T2.js → mindmap-definition-QFDTVHPH-BaFxCGNU.js} +1 -1
- package/dist/deck-client/assets/{pieDiagram-DEJITSTG-BqCWmU2K.js → pieDiagram-DEJITSTG-CIbYYjtw.js} +1 -1
- package/dist/deck-client/assets/{quadrantDiagram-34T5L4WZ-rQ1TJOoe.js → quadrantDiagram-34T5L4WZ-D9EtCOvh.js} +1 -1
- package/dist/deck-client/assets/{requirementDiagram-MS252O5E-BO2MPBOM.js → requirementDiagram-MS252O5E-xeni9eVG.js} +1 -1
- package/dist/deck-client/assets/{sankeyDiagram-XADWPNL6-BgsHEVex.js → sankeyDiagram-XADWPNL6-LYeknz9h.js} +1 -1
- package/dist/deck-client/assets/{sequenceDiagram-FGHM5R23-B3j1yMLU.js → sequenceDiagram-FGHM5R23-RDbsKFZf.js} +1 -1
- package/dist/deck-client/assets/{stateDiagram-FHFEXIEX-C8jFlZou.js → stateDiagram-FHFEXIEX-BH1Zjglk.js} +1 -1
- package/dist/deck-client/assets/stateDiagram-v2-QKLJ7IA2-BrV78NDR.js +1 -0
- package/dist/deck-client/assets/{timeline-definition-GMOUNBTQ-tM-qo4Zk.js → timeline-definition-GMOUNBTQ-IFXxKptt.js} +1 -1
- package/dist/deck-client/assets/{vennDiagram-DHZGUBPP-B0-6kOEu.js → vennDiagram-DHZGUBPP-D-sLkQs9.js} +1 -1
- package/dist/deck-client/assets/{wardley-RL74JXVD-HpBk07P-.js → wardley-RL74JXVD-C010F8l4.js} +1 -1
- package/dist/deck-client/assets/{wardleyDiagram-NUSXRM2D-BkA1NLDE.js → wardleyDiagram-NUSXRM2D-BTjjuDU3.js} +1 -1
- package/dist/deck-client/assets/{xychartDiagram-5P7HB3ND-CEKGSuI-.js → xychartDiagram-5P7HB3ND-AYbv92n-.js} +1 -1
- package/dist/deck-client/index.html +2 -2
- package/dist/server/chart-serve.js +3836 -3750
- package/dist/server/cli.js +8746 -8224
- package/dist/server/council-entry.js +17 -5
- package/dist/server/council-serve.js +8 -3
- package/dist/server/deck-mcp-entry.js +24 -12
- package/dist/server/deck-serve.js +11 -8
- package/dist/server/fb-wizard.js +0 -0
- package/dist/server/graph-mcp-entry.js +5005 -4865
- package/dist/server/init-entry.js +609 -0
- package/dist/server/orbit-entry.js +2272 -0
- package/dist/server/parse-worker-entry.js +4721 -0
- package/dist/server/recall-entry.js +356 -18
- package/package.json +29 -23
- package/scaffolds/migrate-safety/.github/workflows/backup-on-migration.yml +72 -0
- package/scaffolds/migrate-safety/docs/migrations-runbook.md +172 -0
- package/scaffolds/migrate-safety/scripts/migrate-with-backup.sh +294 -0
- package/dist/chart-client/assets/index-DpaGa3bY.css +0 -1
- package/dist/client/assets/index-Bfel4OQ5.css +0 -32
- package/dist/client/assets/index-eC-WuUWB.js +0 -291
- package/dist/council-client/assets/index-P5kMsT5a.css +0 -1
- package/dist/deck-client/assets/channel-B4aNO8ZB.js +0 -1
- package/dist/deck-client/assets/classDiagram-6PBFFD2Q-BHTI0yWz.js +0 -1
- package/dist/deck-client/assets/classDiagram-v2-HSJHXN6E-BHTI0yWz.js +0 -1
- package/dist/deck-client/assets/clone-HduFm7qU.js +0 -1
- package/dist/deck-client/assets/index-LKZDAS9S.css +0 -1
- package/dist/deck-client/assets/stateDiagram-v2-QKLJ7IA2-BoqepHW0.js +0 -1
- /package/dist/council-client/assets/{index-Cs_MVXHf.js → index-Dt4zWKSj.js} +0 -0
|
@@ -31,9 +31,18 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
31
31
|
));
|
|
32
32
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
33
33
|
|
|
34
|
+
// src/server/launch-kit-paths.ts
|
|
35
|
+
var LAUNCHSECURE_DIR;
|
|
36
|
+
var init_launch_kit_paths = __esm({
|
|
37
|
+
"src/server/launch-kit-paths.ts"() {
|
|
38
|
+
"use strict";
|
|
39
|
+
LAUNCHSECURE_DIR = ".launchsecure";
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
|
|
34
43
|
// src/server/council-lockfile.ts
|
|
35
44
|
function lockDir(projectRoot) {
|
|
36
|
-
return projectRoot ? (0, import_node_path.join)(projectRoot,
|
|
45
|
+
return projectRoot ? (0, import_node_path.join)(projectRoot, LAUNCHSECURE_DIR) : (0, import_node_path.join)((0, import_node_os.homedir)(), LAUNCHSECURE_DIR);
|
|
37
46
|
}
|
|
38
47
|
function lockPath(projectRoot) {
|
|
39
48
|
return (0, import_node_path.join)(lockDir(projectRoot), "launch-council.lock");
|
|
@@ -111,6 +120,7 @@ var init_council_lockfile = __esm({
|
|
|
111
120
|
import_node_fs = require("node:fs");
|
|
112
121
|
import_node_os = require("node:os");
|
|
113
122
|
import_node_path = require("node:path");
|
|
123
|
+
init_launch_kit_paths();
|
|
114
124
|
}
|
|
115
125
|
});
|
|
116
126
|
|
|
@@ -446,7 +456,7 @@ Be specific with search terms \u2014 use actual names that would appear in code
|
|
|
446
456
|
|
|
447
457
|
// src/server/graph-reader.ts
|
|
448
458
|
function readGraphLayer(projectRoot, layer) {
|
|
449
|
-
const filePath = (0, import_node_path4.join)(projectRoot,
|
|
459
|
+
const filePath = (0, import_node_path4.join)(projectRoot, LAUNCHSECURE_DIR, GRAPHS_SUBDIR, `${layer}.json`);
|
|
450
460
|
if (!(0, import_node_fs4.existsSync)(filePath)) return null;
|
|
451
461
|
try {
|
|
452
462
|
return JSON.parse((0, import_node_fs4.readFileSync)(filePath, "utf-8"));
|
|
@@ -503,13 +513,14 @@ function searchGraph(projectRoot, searchTerms, layers = ["ui", "api", "db"]) {
|
|
|
503
513
|
layers: usedLayers
|
|
504
514
|
};
|
|
505
515
|
}
|
|
506
|
-
var import_node_fs4, import_node_path4,
|
|
516
|
+
var import_node_fs4, import_node_path4, GRAPHS_SUBDIR;
|
|
507
517
|
var init_graph_reader = __esm({
|
|
508
518
|
"src/server/graph-reader.ts"() {
|
|
509
519
|
"use strict";
|
|
510
520
|
import_node_fs4 = require("node:fs");
|
|
511
521
|
import_node_path4 = require("node:path");
|
|
512
|
-
|
|
522
|
+
init_launch_kit_paths();
|
|
523
|
+
GRAPHS_SUBDIR = "graphs";
|
|
513
524
|
}
|
|
514
525
|
});
|
|
515
526
|
|
|
@@ -1186,7 +1197,7 @@ async function handleTool(name, args) {
|
|
|
1186
1197
|
}));
|
|
1187
1198
|
}
|
|
1188
1199
|
try {
|
|
1189
|
-
const logDir = (0, import_node_path6.join)((0, import_node_os2.homedir)(),
|
|
1200
|
+
const logDir = (0, import_node_path6.join)((0, import_node_os2.homedir)(), LAUNCHSECURE_DIR);
|
|
1190
1201
|
(0, import_node_fs6.mkdirSync)(logDir, { recursive: true });
|
|
1191
1202
|
const logPath = (0, import_node_path6.join)(logDir, "launch-council.log");
|
|
1192
1203
|
const out = (0, import_node_fs6.openSync)(logPath, "a");
|
|
@@ -1326,6 +1337,7 @@ var init_council_mcp = __esm({
|
|
|
1326
1337
|
import_node_child_process3 = require("node:child_process");
|
|
1327
1338
|
import_node_fs6 = require("node:fs");
|
|
1328
1339
|
import_node_os2 = require("node:os");
|
|
1340
|
+
init_launch_kit_paths();
|
|
1329
1341
|
init_council_lockfile();
|
|
1330
1342
|
init_council_config();
|
|
1331
1343
|
SERVER_INFO = {
|
|
@@ -152,8 +152,13 @@ var import_node_child_process = require("node:child_process");
|
|
|
152
152
|
var import_node_fs = require("node:fs");
|
|
153
153
|
var import_node_os = require("node:os");
|
|
154
154
|
var import_node_path = require("node:path");
|
|
155
|
+
|
|
156
|
+
// src/server/launch-kit-paths.ts
|
|
157
|
+
var LAUNCHSECURE_DIR = ".launchsecure";
|
|
158
|
+
|
|
159
|
+
// src/server/council-lockfile.ts
|
|
155
160
|
function lockDir(projectRoot) {
|
|
156
|
-
return projectRoot ? (0, import_node_path.join)(projectRoot,
|
|
161
|
+
return projectRoot ? (0, import_node_path.join)(projectRoot, LAUNCHSECURE_DIR) : (0, import_node_path.join)((0, import_node_os.homedir)(), LAUNCHSECURE_DIR);
|
|
157
162
|
}
|
|
158
163
|
function lockPath(projectRoot) {
|
|
159
164
|
return (0, import_node_path.join)(lockDir(projectRoot), "launch-council.lock");
|
|
@@ -531,9 +536,9 @@ async function extractIntent(adapter, discussionContent) {
|
|
|
531
536
|
// src/server/graph-reader.ts
|
|
532
537
|
var import_node_fs4 = require("node:fs");
|
|
533
538
|
var import_node_path4 = require("node:path");
|
|
534
|
-
var
|
|
539
|
+
var GRAPHS_SUBDIR = "graphs";
|
|
535
540
|
function readGraphLayer(projectRoot, layer) {
|
|
536
|
-
const filePath = (0, import_node_path4.join)(projectRoot,
|
|
541
|
+
const filePath = (0, import_node_path4.join)(projectRoot, LAUNCHSECURE_DIR, GRAPHS_SUBDIR, `${layer}.json`);
|
|
537
542
|
if (!(0, import_node_fs4.existsSync)(filePath)) return null;
|
|
538
543
|
try {
|
|
539
544
|
return JSON.parse((0, import_node_fs4.readFileSync)(filePath, "utf-8"));
|
|
@@ -30,12 +30,21 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
30
30
|
mod
|
|
31
31
|
));
|
|
32
32
|
|
|
33
|
+
// src/server/launch-kit-paths.ts
|
|
34
|
+
var LAUNCHSECURE_DIR;
|
|
35
|
+
var init_launch_kit_paths = __esm({
|
|
36
|
+
"src/server/launch-kit-paths.ts"() {
|
|
37
|
+
"use strict";
|
|
38
|
+
LAUNCHSECURE_DIR = ".launchsecure";
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
|
|
33
42
|
// src/server/deck-lockfile.ts
|
|
34
43
|
function lockDir(projectRoot) {
|
|
35
44
|
if (projectRoot) {
|
|
36
|
-
return (0, import_node_path.join)(projectRoot,
|
|
45
|
+
return (0, import_node_path.join)(projectRoot, LAUNCHSECURE_DIR);
|
|
37
46
|
}
|
|
38
|
-
return (0, import_node_path.join)((0, import_node_os.homedir)(),
|
|
47
|
+
return (0, import_node_path.join)((0, import_node_os.homedir)(), LAUNCHSECURE_DIR);
|
|
39
48
|
}
|
|
40
49
|
function lockPath(projectRoot) {
|
|
41
50
|
return (0, import_node_path.join)(lockDir(projectRoot), "launch-deck.lock");
|
|
@@ -113,6 +122,7 @@ var init_deck_lockfile = __esm({
|
|
|
113
122
|
import_node_fs = require("node:fs");
|
|
114
123
|
import_node_os = require("node:os");
|
|
115
124
|
import_node_path = require("node:path");
|
|
125
|
+
init_launch_kit_paths();
|
|
116
126
|
}
|
|
117
127
|
});
|
|
118
128
|
|
|
@@ -1322,7 +1332,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1322
1332
|
const baseUrl = `/deck-files/${sessionEncoded}`;
|
|
1323
1333
|
const html = generateBlastRadiusHtml(block.manifest, baseUrl);
|
|
1324
1334
|
const report = generateBlastRadiusReport(block.manifest);
|
|
1325
|
-
const dir = import_node_path3.default.join(cwd,
|
|
1335
|
+
const dir = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", body.session);
|
|
1326
1336
|
import_node_fs3.default.mkdirSync(dir, { recursive: true });
|
|
1327
1337
|
import_node_fs3.default.writeFileSync(import_node_path3.default.join(dir, "blast-radius.html"), html);
|
|
1328
1338
|
import_node_fs3.default.writeFileSync(import_node_path3.default.join(dir, "blast-radius-report.md"), report);
|
|
@@ -1349,7 +1359,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1349
1359
|
const sessionEncoded = encodeURIComponent(body.session);
|
|
1350
1360
|
const baseUrl = `/deck-files/${sessionEncoded}`;
|
|
1351
1361
|
const filename = `${slugify(block.label)}.html`;
|
|
1352
|
-
const dir = import_node_path3.default.join(cwd,
|
|
1362
|
+
const dir = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", body.session);
|
|
1353
1363
|
import_node_fs3.default.mkdirSync(dir, { recursive: true });
|
|
1354
1364
|
import_node_fs3.default.writeFileSync(import_node_path3.default.join(dir, filename), html);
|
|
1355
1365
|
block.type = "iframe";
|
|
@@ -1397,7 +1407,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1397
1407
|
resolveFeedback(session, { comment: "", closed: true });
|
|
1398
1408
|
}
|
|
1399
1409
|
try {
|
|
1400
|
-
const deckFilesBase = import_node_path3.default.join(cwd,
|
|
1410
|
+
const deckFilesBase = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files");
|
|
1401
1411
|
if (session === "all") {
|
|
1402
1412
|
if (import_node_fs3.default.existsSync(deckFilesBase)) {
|
|
1403
1413
|
import_node_fs3.default.rmSync(deckFilesBase, { recursive: true, force: true });
|
|
@@ -1425,7 +1435,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1425
1435
|
res.end("Forbidden");
|
|
1426
1436
|
return;
|
|
1427
1437
|
}
|
|
1428
|
-
const filePath = import_node_path3.default.join(cwd,
|
|
1438
|
+
const filePath = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", relative);
|
|
1429
1439
|
if (serveStatic(res, filePath)) return;
|
|
1430
1440
|
res.writeHead(404);
|
|
1431
1441
|
res.end("Not found");
|
|
@@ -1438,7 +1448,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1438
1448
|
res.end("Forbidden");
|
|
1439
1449
|
return;
|
|
1440
1450
|
}
|
|
1441
|
-
const filePath = import_node_path3.default.join(cwd,
|
|
1451
|
+
const filePath = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", relative);
|
|
1442
1452
|
if (!import_node_fs3.default.existsSync(filePath) || !import_node_fs3.default.statSync(filePath).isFile()) {
|
|
1443
1453
|
res.writeHead(404);
|
|
1444
1454
|
res.end("Not found");
|
|
@@ -1523,7 +1533,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1523
1533
|
pendingFeedback.delete(id);
|
|
1524
1534
|
}
|
|
1525
1535
|
try {
|
|
1526
|
-
const deckFilesBase = import_node_path3.default.join(cwd,
|
|
1536
|
+
const deckFilesBase = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files");
|
|
1527
1537
|
if (import_node_fs3.default.existsSync(deckFilesBase)) {
|
|
1528
1538
|
import_node_fs3.default.rmSync(deckFilesBase, { recursive: true, force: true });
|
|
1529
1539
|
}
|
|
@@ -1570,6 +1580,7 @@ var init_deck_serve = __esm({
|
|
|
1570
1580
|
import_node_fs3 = __toESM(require("node:fs"));
|
|
1571
1581
|
import_node_path3 = __toESM(require("node:path"));
|
|
1572
1582
|
import_ws = require("ws");
|
|
1583
|
+
init_launch_kit_paths();
|
|
1573
1584
|
init_deck_lockfile();
|
|
1574
1585
|
init_deck_config();
|
|
1575
1586
|
init_blast_radius_render();
|
|
@@ -1660,7 +1671,7 @@ async function handleTool(name, args) {
|
|
|
1660
1671
|
const baseUrl = `/deck-files/${sessionEncoded}`;
|
|
1661
1672
|
const html = generateBlastRadiusHtml(block.manifest, baseUrl);
|
|
1662
1673
|
const report = generateBlastRadiusReport(block.manifest);
|
|
1663
|
-
const dir = (0, import_node_path4.join)(projectRoot,
|
|
1674
|
+
const dir = (0, import_node_path4.join)(projectRoot, LAUNCHSECURE_DIR, "deck-files", session);
|
|
1664
1675
|
import_node_fs4.default.mkdirSync(dir, { recursive: true });
|
|
1665
1676
|
import_node_fs4.default.writeFileSync((0, import_node_path4.join)(dir, "blast-radius.html"), html);
|
|
1666
1677
|
import_node_fs4.default.writeFileSync((0, import_node_path4.join)(dir, "blast-radius-report.md"), report);
|
|
@@ -1687,7 +1698,7 @@ async function handleTool(name, args) {
|
|
|
1687
1698
|
const sessionEncoded = encodeURIComponent(session);
|
|
1688
1699
|
const baseUrl = `/deck-files/${sessionEncoded}`;
|
|
1689
1700
|
const filename = `${slugify(block.label)}.html`;
|
|
1690
|
-
const dir = (0, import_node_path4.join)(projectRoot,
|
|
1701
|
+
const dir = (0, import_node_path4.join)(projectRoot, LAUNCHSECURE_DIR, "deck-files", session);
|
|
1691
1702
|
import_node_fs4.default.mkdirSync(dir, { recursive: true });
|
|
1692
1703
|
import_node_fs4.default.writeFileSync((0, import_node_path4.join)(dir, filename), html);
|
|
1693
1704
|
block.type = "iframe";
|
|
@@ -1782,7 +1793,7 @@ async function handleTool(name, args) {
|
|
|
1782
1793
|
}));
|
|
1783
1794
|
}
|
|
1784
1795
|
try {
|
|
1785
|
-
const logDir = (0, import_node_path4.join)((0, import_node_os2.homedir)(),
|
|
1796
|
+
const logDir = (0, import_node_path4.join)((0, import_node_os2.homedir)(), LAUNCHSECURE_DIR);
|
|
1786
1797
|
(0, import_node_fs5.mkdirSync)(logDir, { recursive: true });
|
|
1787
1798
|
const logPath = (0, import_node_path4.join)(logDir, "launch-deck.log");
|
|
1788
1799
|
const out = (0, import_node_fs5.openSync)(logPath, "a");
|
|
@@ -1842,7 +1853,7 @@ async function handleTool(name, args) {
|
|
|
1842
1853
|
}
|
|
1843
1854
|
case "generate_contract": {
|
|
1844
1855
|
const session = args.session;
|
|
1845
|
-
const dir = (0, import_node_path4.join)(projectRoot,
|
|
1856
|
+
const dir = (0, import_node_path4.join)(projectRoot, LAUNCHSECURE_DIR, "deck-files", session);
|
|
1846
1857
|
const manifestPath = (0, import_node_path4.join)(dir, "blast-radius-manifest.json");
|
|
1847
1858
|
if (!import_node_fs4.default.existsSync(manifestPath)) {
|
|
1848
1859
|
return text(JSON.stringify({
|
|
@@ -1957,6 +1968,7 @@ var init_deck_mcp = __esm({
|
|
|
1957
1968
|
import_node_child_process2 = require("node:child_process");
|
|
1958
1969
|
import_node_fs5 = require("node:fs");
|
|
1959
1970
|
import_node_os2 = require("node:os");
|
|
1971
|
+
init_launch_kit_paths();
|
|
1960
1972
|
init_deck_lockfile();
|
|
1961
1973
|
init_deck_config();
|
|
1962
1974
|
init_blast_radius_render();
|
|
@@ -43,6 +43,9 @@ var import_node_fs3 = __toESM(require("node:fs"));
|
|
|
43
43
|
var import_node_path3 = __toESM(require("node:path"));
|
|
44
44
|
var import_ws = require("ws");
|
|
45
45
|
|
|
46
|
+
// src/server/launch-kit-paths.ts
|
|
47
|
+
var LAUNCHSECURE_DIR = ".launchsecure";
|
|
48
|
+
|
|
46
49
|
// src/server/deck-lockfile.ts
|
|
47
50
|
var import_node_child_process = require("node:child_process");
|
|
48
51
|
var import_node_fs = require("node:fs");
|
|
@@ -50,9 +53,9 @@ var import_node_os = require("node:os");
|
|
|
50
53
|
var import_node_path = require("node:path");
|
|
51
54
|
function lockDir(projectRoot) {
|
|
52
55
|
if (projectRoot) {
|
|
53
|
-
return (0, import_node_path.join)(projectRoot,
|
|
56
|
+
return (0, import_node_path.join)(projectRoot, LAUNCHSECURE_DIR);
|
|
54
57
|
}
|
|
55
|
-
return (0, import_node_path.join)((0, import_node_os.homedir)(),
|
|
58
|
+
return (0, import_node_path.join)((0, import_node_os.homedir)(), LAUNCHSECURE_DIR);
|
|
56
59
|
}
|
|
57
60
|
function lockPath(projectRoot) {
|
|
58
61
|
return (0, import_node_path.join)(lockDir(projectRoot), "launch-deck.lock");
|
|
@@ -1312,7 +1315,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1312
1315
|
const baseUrl = `/deck-files/${sessionEncoded}`;
|
|
1313
1316
|
const html = generateBlastRadiusHtml(block.manifest, baseUrl);
|
|
1314
1317
|
const report = generateBlastRadiusReport(block.manifest);
|
|
1315
|
-
const dir = import_node_path3.default.join(cwd,
|
|
1318
|
+
const dir = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", body.session);
|
|
1316
1319
|
import_node_fs3.default.mkdirSync(dir, { recursive: true });
|
|
1317
1320
|
import_node_fs3.default.writeFileSync(import_node_path3.default.join(dir, "blast-radius.html"), html);
|
|
1318
1321
|
import_node_fs3.default.writeFileSync(import_node_path3.default.join(dir, "blast-radius-report.md"), report);
|
|
@@ -1339,7 +1342,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1339
1342
|
const sessionEncoded = encodeURIComponent(body.session);
|
|
1340
1343
|
const baseUrl = `/deck-files/${sessionEncoded}`;
|
|
1341
1344
|
const filename = `${slugify(block.label)}.html`;
|
|
1342
|
-
const dir = import_node_path3.default.join(cwd,
|
|
1345
|
+
const dir = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", body.session);
|
|
1343
1346
|
import_node_fs3.default.mkdirSync(dir, { recursive: true });
|
|
1344
1347
|
import_node_fs3.default.writeFileSync(import_node_path3.default.join(dir, filename), html);
|
|
1345
1348
|
block.type = "iframe";
|
|
@@ -1387,7 +1390,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1387
1390
|
resolveFeedback(session, { comment: "", closed: true });
|
|
1388
1391
|
}
|
|
1389
1392
|
try {
|
|
1390
|
-
const deckFilesBase = import_node_path3.default.join(cwd,
|
|
1393
|
+
const deckFilesBase = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files");
|
|
1391
1394
|
if (session === "all") {
|
|
1392
1395
|
if (import_node_fs3.default.existsSync(deckFilesBase)) {
|
|
1393
1396
|
import_node_fs3.default.rmSync(deckFilesBase, { recursive: true, force: true });
|
|
@@ -1415,7 +1418,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1415
1418
|
res.end("Forbidden");
|
|
1416
1419
|
return;
|
|
1417
1420
|
}
|
|
1418
|
-
const filePath = import_node_path3.default.join(cwd,
|
|
1421
|
+
const filePath = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", relative);
|
|
1419
1422
|
if (serveStatic(res, filePath)) return;
|
|
1420
1423
|
res.writeHead(404);
|
|
1421
1424
|
res.end("Not found");
|
|
@@ -1428,7 +1431,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1428
1431
|
res.end("Forbidden");
|
|
1429
1432
|
return;
|
|
1430
1433
|
}
|
|
1431
|
-
const filePath = import_node_path3.default.join(cwd,
|
|
1434
|
+
const filePath = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files", relative);
|
|
1432
1435
|
if (!import_node_fs3.default.existsSync(filePath) || !import_node_fs3.default.statSync(filePath).isFile()) {
|
|
1433
1436
|
res.writeHead(404);
|
|
1434
1437
|
res.end("Not found");
|
|
@@ -1513,7 +1516,7 @@ async function startDeckServer(opts = {}) {
|
|
|
1513
1516
|
pendingFeedback.delete(id);
|
|
1514
1517
|
}
|
|
1515
1518
|
try {
|
|
1516
|
-
const deckFilesBase = import_node_path3.default.join(cwd,
|
|
1519
|
+
const deckFilesBase = import_node_path3.default.join(cwd, LAUNCHSECURE_DIR, "deck-files");
|
|
1517
1520
|
if (import_node_fs3.default.existsSync(deckFilesBase)) {
|
|
1518
1521
|
import_node_fs3.default.rmSync(deckFilesBase, { recursive: true, force: true });
|
|
1519
1522
|
}
|
package/dist/server/fb-wizard.js
CHANGED
|
File without changes
|