@xdevops/issue-auto-finish 1.0.65 → 1.0.66
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/{analyze-ADGALVRY.js → analyze-QPIQMHX7.js} +2 -2
- package/dist/{braindump-IL5L6QLK.js → braindump-R5RPHUAM.js} +4 -4
- package/dist/{chunk-DW2WCWL6.js → chunk-2FBXAHPE.js} +103 -43
- package/dist/chunk-2FBXAHPE.js.map +1 -0
- package/dist/{chunk-5DPIOSJD.js → chunk-ACPXD54H.js} +1 -60
- package/dist/chunk-ACPXD54H.js.map +1 -0
- package/dist/{chunk-M5WQGKUB.js → chunk-CAZ3QRNK.js} +2 -2
- package/dist/{chunk-LE5LVFBY.js → chunk-DBL3NZU6.js} +2 -2
- package/dist/{chunk-GSGUXRVL.js → chunk-T2NHCBTT.js} +71 -5
- package/dist/chunk-T2NHCBTT.js.map +1 -0
- package/dist/{chunk-CNU7PC4A.js → chunk-WVWU7HNF.js} +145 -448
- package/dist/chunk-WVWU7HNF.js.map +1 -0
- package/dist/{chunk-UOMCLJ3K.js → chunk-ZPEZQ3BS.js} +21 -22
- package/dist/chunk-ZPEZQ3BS.js.map +1 -0
- package/dist/cli/setup/ConfigGenerator.d.ts +4 -0
- package/dist/cli/setup/ConfigGenerator.d.ts.map +1 -1
- package/dist/cli.js +6 -6
- package/dist/{config-SOUGKD7I.js → config-KZA3DVS6.js} +2 -2
- package/dist/config-schema.d.ts +0 -6
- package/dist/config-schema.d.ts.map +1 -1
- package/dist/config.d.ts +1 -3
- package/dist/config.d.ts.map +1 -1
- package/dist/git/GitOperations.d.ts +1 -0
- package/dist/git/GitOperations.d.ts.map +1 -1
- package/dist/git/WorktreeContext.d.ts +0 -25
- package/dist/git/WorktreeContext.d.ts.map +1 -1
- package/dist/index.js +6 -6
- package/dist/{init-Z3HCHE2N.js → init-SIMAZTAZ.js} +3 -3
- package/dist/lib.js +3 -3
- package/dist/orchestrator/IssueProcessingContext.d.ts +3 -22
- package/dist/orchestrator/IssueProcessingContext.d.ts.map +1 -1
- package/dist/orchestrator/PipelineOrchestrator.d.ts +0 -9
- package/dist/orchestrator/PipelineOrchestrator.d.ts.map +1 -1
- package/dist/orchestrator/steps/CompletionStep.d.ts +1 -11
- package/dist/orchestrator/steps/CompletionStep.d.ts.map +1 -1
- package/dist/orchestrator/steps/FailureHandler.d.ts +2 -12
- package/dist/orchestrator/steps/FailureHandler.d.ts.map +1 -1
- package/dist/orchestrator/steps/SetupStep.d.ts +1 -5
- package/dist/orchestrator/steps/SetupStep.d.ts.map +1 -1
- package/dist/phases/BasePhase.d.ts +0 -9
- package/dist/phases/BasePhase.d.ts.map +1 -1
- package/dist/prompts/templates.d.ts +0 -6
- package/dist/prompts/templates.d.ts.map +1 -1
- package/dist/{restart-RG55T6PV.js → restart-FDRLHKCO.js} +3 -3
- package/dist/run.js +6 -6
- package/dist/{start-ZDS7LAOY.js → start-6TPVNZ4M.js} +3 -3
- package/dist/web/WebServer.d.ts +1 -0
- package/dist/web/WebServer.d.ts.map +1 -1
- package/dist/web/routes/api.d.ts +2 -0
- package/dist/web/routes/api.d.ts.map +1 -1
- package/dist/web/routes/setup.d.ts.map +1 -1
- package/dist/workspace/WorkspaceManager.d.ts +3 -1
- package/dist/workspace/WorkspaceManager.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/web/frontend/dist/assets/index-BM-aPpBO.css +1 -0
- package/src/web/frontend/dist/assets/index-DUmK6O3T.js +125 -0
- package/src/web/frontend/dist/index.html +2 -2
- package/dist/chunk-5DPIOSJD.js.map +0 -1
- package/dist/chunk-CNU7PC4A.js.map +0 -1
- package/dist/chunk-DW2WCWL6.js.map +0 -1
- package/dist/chunk-GSGUXRVL.js.map +0 -1
- package/dist/chunk-UOMCLJ3K.js.map +0 -1
- package/dist/repo/RepoSpec.d.ts +0 -49
- package/dist/repo/RepoSpec.d.ts.map +0 -1
- package/src/web/frontend/dist/assets/index-CLmx3ZD3.js +0 -125
- package/src/web/frontend/dist/assets/index-DxXyMMb9.css +0 -1
- /package/dist/{analyze-ADGALVRY.js.map → analyze-QPIQMHX7.js.map} +0 -0
- /package/dist/{braindump-IL5L6QLK.js.map → braindump-R5RPHUAM.js.map} +0 -0
- /package/dist/{chunk-M5WQGKUB.js.map → chunk-CAZ3QRNK.js.map} +0 -0
- /package/dist/{chunk-LE5LVFBY.js.map → chunk-DBL3NZU6.js.map} +0 -0
- /package/dist/{config-SOUGKD7I.js.map → config-KZA3DVS6.js.map} +0 -0
- /package/dist/{init-Z3HCHE2N.js.map → init-SIMAZTAZ.js.map} +0 -0
- /package/dist/{restart-RG55T6PV.js.map → restart-FDRLHKCO.js.map} +0 -0
- /package/dist/{start-ZDS7LAOY.js.map → start-6TPVNZ4M.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ACPXD54H.js";
|
|
4
4
|
import {
|
|
5
5
|
analyze
|
|
6
6
|
} from "./chunk-B7TVVODN.js";
|
|
@@ -72,4 +72,4 @@ async function analyzeCommand(opts) {
|
|
|
72
72
|
export {
|
|
73
73
|
analyzeCommand
|
|
74
74
|
};
|
|
75
|
-
//# sourceMappingURL=analyze-
|
|
75
|
+
//# sourceMappingURL=analyze-QPIQMHX7.js.map
|
|
@@ -9,16 +9,16 @@ import {
|
|
|
9
9
|
import {
|
|
10
10
|
BraindumpOrchestrator,
|
|
11
11
|
BraindumpTracker
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-DBL3NZU6.js";
|
|
13
13
|
import {
|
|
14
14
|
AsyncMutex,
|
|
15
15
|
GitOperations
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-ZPEZQ3BS.js";
|
|
17
17
|
import "./chunk-ACVOOHAR.js";
|
|
18
18
|
import "./chunk-EB6TGE3H.js";
|
|
19
19
|
import {
|
|
20
20
|
loadConfig
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-ACPXD54H.js";
|
|
22
22
|
import "./chunk-B7TVVODN.js";
|
|
23
23
|
import "./chunk-TN2SYADO.js";
|
|
24
24
|
import "./chunk-DAX3FD2O.js";
|
|
@@ -204,4 +204,4 @@ ${bold("\u786E\u8BA4\u6267\u884C\uFF1F")} (${green("y")}=\u786E\u8BA4 / ${red("q
|
|
|
204
204
|
export {
|
|
205
205
|
braindumpCommand
|
|
206
206
|
};
|
|
207
|
-
//# sourceMappingURL=braindump-
|
|
207
|
+
//# sourceMappingURL=braindump-R5RPHUAM.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BraindumpOrchestrator,
|
|
3
3
|
BraindumpTracker
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-DBL3NZU6.js";
|
|
5
5
|
import {
|
|
6
6
|
createSetupRouter
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-T2NHCBTT.js";
|
|
8
8
|
import {
|
|
9
9
|
buildLockNoteBody,
|
|
10
10
|
buildReleaseNoteBody,
|
|
@@ -25,13 +25,14 @@ import {
|
|
|
25
25
|
getNoteSyncEnabled,
|
|
26
26
|
getPipelineDef,
|
|
27
27
|
gongfengIssueToDemandSpec,
|
|
28
|
+
isMultiRepo,
|
|
28
29
|
isNoteSyncEnabledForIssue,
|
|
29
30
|
loadWorkspaceConfig,
|
|
30
31
|
metrics,
|
|
31
32
|
setE2eOverride,
|
|
32
33
|
setNoteSyncOverride,
|
|
33
34
|
validatePhaseRegistry
|
|
34
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-WVWU7HNF.js";
|
|
35
36
|
import {
|
|
36
37
|
AsyncMutex,
|
|
37
38
|
BaseTracker,
|
|
@@ -40,7 +41,7 @@ import {
|
|
|
40
41
|
getExternalId,
|
|
41
42
|
getIid,
|
|
42
43
|
getTitle
|
|
43
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-ZPEZQ3BS.js";
|
|
44
45
|
import {
|
|
45
46
|
IwikiImporter,
|
|
46
47
|
getProjectKnowledge,
|
|
@@ -51,12 +52,10 @@ import {
|
|
|
51
52
|
t
|
|
52
53
|
} from "./chunk-EB6TGE3H.js";
|
|
53
54
|
import {
|
|
54
|
-
getLinkedRepos,
|
|
55
|
-
isMultiRepo,
|
|
56
55
|
loadConfig,
|
|
57
56
|
reloadConfig,
|
|
58
57
|
resolveDisplayHost
|
|
59
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-ACPXD54H.js";
|
|
60
59
|
import {
|
|
61
60
|
collectStaticInfo
|
|
62
61
|
} from "./chunk-B7TVVODN.js";
|
|
@@ -757,6 +756,7 @@ function createApiRouter(trackerOrDeps, config, agentLogStore, orchestrator, mai
|
|
|
757
756
|
let diaryCollector;
|
|
758
757
|
let claimer;
|
|
759
758
|
let configReloader;
|
|
759
|
+
let wsConfig;
|
|
760
760
|
if (config !== void 0) {
|
|
761
761
|
tracker = trackerOrDeps;
|
|
762
762
|
cfg = config;
|
|
@@ -779,6 +779,7 @@ function createApiRouter(trackerOrDeps, config, agentLogStore, orchestrator, mai
|
|
|
779
779
|
diaryCollector = deps.diaryCollector;
|
|
780
780
|
claimer = deps.claimer;
|
|
781
781
|
configReloader = deps.configReloader;
|
|
782
|
+
wsConfig = deps.wsConfig;
|
|
782
783
|
}
|
|
783
784
|
const router = Router();
|
|
784
785
|
function getLifecycleManager(pipelineMode) {
|
|
@@ -1340,12 +1341,12 @@ function createApiRouter(trackerOrDeps, config, agentLogStore, orchestrator, mai
|
|
|
1340
1341
|
knowledgeEnabled: getFeatureEnabled("knowledge", cfg),
|
|
1341
1342
|
distillEnabled: getFeatureEnabled("distill", cfg),
|
|
1342
1343
|
knowledgeSyncEnabled: true,
|
|
1343
|
-
multiRepoEnabled: isMultiRepo(
|
|
1344
|
-
linkedRepos:
|
|
1345
|
-
name:
|
|
1346
|
-
projectPath:
|
|
1347
|
-
baseBranch:
|
|
1348
|
-
}))
|
|
1344
|
+
multiRepoEnabled: wsConfig ? isMultiRepo(wsConfig) : false,
|
|
1345
|
+
linkedRepos: wsConfig?.associates.map((a) => ({
|
|
1346
|
+
name: a.name,
|
|
1347
|
+
projectPath: a.projectPath,
|
|
1348
|
+
baseBranch: a.baseBranch
|
|
1349
|
+
})) ?? []
|
|
1349
1350
|
},
|
|
1350
1351
|
issues: {
|
|
1351
1352
|
total: allIssues.length,
|
|
@@ -1566,20 +1567,23 @@ data: ${JSON.stringify({ time: (/* @__PURE__ */ new Date()).toISOString() })}
|
|
|
1566
1567
|
}
|
|
1567
1568
|
const IMAGE_EXTS = /* @__PURE__ */ new Set([".png", ".jpg", ".jpeg", ".gif", ".webp"]);
|
|
1568
1569
|
const VIDEO_EXTS = /* @__PURE__ */ new Set([".webm", ".mp4", ".mkv", ".avi"]);
|
|
1569
|
-
const
|
|
1570
|
+
const DOC_EXTS = /* @__PURE__ */ new Set([".md", ".json", ".jsonl", ".log", ".py", ".html", ".har", ".txt"]);
|
|
1571
|
+
const ALL_ARTIFACT_EXTS = /* @__PURE__ */ new Set([...IMAGE_EXTS, ...VIDEO_EXTS, ...DOC_EXTS]);
|
|
1572
|
+
const RUN_DIR_PATTERN = /^\d{8}-\d{6}/;
|
|
1570
1573
|
router.get("/api/e2e-artifacts", (req, res) => {
|
|
1571
1574
|
const issueIid = req.query.issueIid;
|
|
1572
1575
|
if (!isE2eConfigured()) {
|
|
1573
|
-
res.json({ configured: false, runs: [] });
|
|
1576
|
+
res.json({ configured: false, runs: [], scenarios: [] });
|
|
1574
1577
|
return;
|
|
1575
1578
|
}
|
|
1576
1579
|
const outputsDir = resolveE2eOutputsDir(issueIid);
|
|
1577
1580
|
if (!outputsDir) {
|
|
1578
|
-
res.json({ configured: true, runs: [] });
|
|
1581
|
+
res.json({ configured: true, runs: [], scenarios: [] });
|
|
1579
1582
|
return;
|
|
1580
1583
|
}
|
|
1581
1584
|
try {
|
|
1582
|
-
const
|
|
1585
|
+
const allDirs = fs3.readdirSync(outputsDir, { withFileTypes: true }).filter((e) => e.isDirectory());
|
|
1586
|
+
const runs = allDirs.filter((e) => RUN_DIR_PATTERN.test(e.name)).map((e) => {
|
|
1583
1587
|
const runDir = path3.join(outputsDir, e.name);
|
|
1584
1588
|
const resultFile = path3.join(runDir, "result.json");
|
|
1585
1589
|
let metadata = null;
|
|
@@ -1589,23 +1593,30 @@ data: ${JSON.stringify({ time: (/* @__PURE__ */ new Date()).toISOString() })}
|
|
|
1589
1593
|
} catch {
|
|
1590
1594
|
}
|
|
1591
1595
|
}
|
|
1592
|
-
const
|
|
1596
|
+
const counts = countArtifactFiles(runDir);
|
|
1593
1597
|
return {
|
|
1594
1598
|
runId: e.name,
|
|
1595
1599
|
timestamp: e.name,
|
|
1596
|
-
imageCount:
|
|
1597
|
-
videoCount:
|
|
1600
|
+
imageCount: counts.images,
|
|
1601
|
+
videoCount: counts.videos,
|
|
1602
|
+
documentCount: counts.documents,
|
|
1598
1603
|
metadata
|
|
1599
1604
|
};
|
|
1600
|
-
}).filter((r) => r.imageCount > 0 || r.videoCount > 0).sort((a, b) => b.runId.localeCompare(a.runId));
|
|
1601
|
-
|
|
1605
|
+
}).filter((r) => r.imageCount > 0 || r.videoCount > 0 || r.documentCount > 0).sort((a, b) => b.runId.localeCompare(a.runId));
|
|
1606
|
+
const scenariosDir = path3.join(outputsDir, "scenarios");
|
|
1607
|
+
let scenarios = [];
|
|
1608
|
+
if (fs3.existsSync(scenariosDir) && fs3.statSync(scenariosDir).isDirectory()) {
|
|
1609
|
+
scenarios = collectArtifactFiles(scenariosDir, scenariosDir);
|
|
1610
|
+
}
|
|
1611
|
+
res.json({ configured: true, runs, scenarios });
|
|
1602
1612
|
} catch (err) {
|
|
1603
1613
|
res.status(500).json({ error: err.message });
|
|
1604
1614
|
}
|
|
1605
1615
|
});
|
|
1606
|
-
function
|
|
1616
|
+
function countArtifactFiles(dir) {
|
|
1607
1617
|
let images = 0;
|
|
1608
1618
|
let videos = 0;
|
|
1619
|
+
let documents = 0;
|
|
1609
1620
|
try {
|
|
1610
1621
|
const walk = (d) => {
|
|
1611
1622
|
for (const entry of fs3.readdirSync(d, { withFileTypes: true })) {
|
|
@@ -1614,16 +1625,23 @@ data: ${JSON.stringify({ time: (/* @__PURE__ */ new Date()).toISOString() })}
|
|
|
1614
1625
|
} else {
|
|
1615
1626
|
const ext = path3.extname(entry.name).toLowerCase();
|
|
1616
1627
|
if (IMAGE_EXTS.has(ext)) images++;
|
|
1617
|
-
if (VIDEO_EXTS.has(ext)) videos++;
|
|
1628
|
+
else if (VIDEO_EXTS.has(ext)) videos++;
|
|
1629
|
+
else if (DOC_EXTS.has(ext)) documents++;
|
|
1618
1630
|
}
|
|
1619
1631
|
}
|
|
1620
1632
|
};
|
|
1621
1633
|
walk(dir);
|
|
1622
1634
|
} catch {
|
|
1623
1635
|
}
|
|
1624
|
-
return { images, videos };
|
|
1636
|
+
return { images, videos, documents };
|
|
1625
1637
|
}
|
|
1626
|
-
function
|
|
1638
|
+
function classifyExt(ext) {
|
|
1639
|
+
if (IMAGE_EXTS.has(ext)) return "image";
|
|
1640
|
+
if (VIDEO_EXTS.has(ext)) return "video";
|
|
1641
|
+
if (DOC_EXTS.has(ext)) return "document";
|
|
1642
|
+
return null;
|
|
1643
|
+
}
|
|
1644
|
+
function collectArtifactFiles(dir, base) {
|
|
1627
1645
|
const result = [];
|
|
1628
1646
|
try {
|
|
1629
1647
|
const walk = (d) => {
|
|
@@ -1633,12 +1651,13 @@ data: ${JSON.stringify({ time: (/* @__PURE__ */ new Date()).toISOString() })}
|
|
|
1633
1651
|
walk(fullPath);
|
|
1634
1652
|
} else {
|
|
1635
1653
|
const ext = path3.extname(entry.name).toLowerCase();
|
|
1636
|
-
|
|
1654
|
+
const fileType = classifyExt(ext);
|
|
1655
|
+
if (fileType) {
|
|
1637
1656
|
const stat = fs3.statSync(fullPath);
|
|
1638
1657
|
result.push({
|
|
1639
1658
|
name: entry.name,
|
|
1640
1659
|
relativePath: path3.relative(base, fullPath),
|
|
1641
|
-
type:
|
|
1660
|
+
type: fileType,
|
|
1642
1661
|
size: stat.size
|
|
1643
1662
|
});
|
|
1644
1663
|
}
|
|
@@ -1666,9 +1685,42 @@ data: ${JSON.stringify({ time: (/* @__PURE__ */ new Date()).toISOString() })}
|
|
|
1666
1685
|
res.status(400).json({ error: "Invalid run ID" });
|
|
1667
1686
|
return;
|
|
1668
1687
|
}
|
|
1669
|
-
const files =
|
|
1688
|
+
const files = collectArtifactFiles(runDir, runDir);
|
|
1670
1689
|
res.json({ runId: req.params.runId, files });
|
|
1671
1690
|
});
|
|
1691
|
+
router.get("/api/e2e-scenarios/file/{*filePath}", (req, res) => {
|
|
1692
|
+
const issueIid = req.query.issueIid;
|
|
1693
|
+
const outputsDir = resolveE2eOutputsDir(issueIid);
|
|
1694
|
+
if (!outputsDir) {
|
|
1695
|
+
res.status(404).json({ error: "E2E outputs not configured" });
|
|
1696
|
+
return;
|
|
1697
|
+
}
|
|
1698
|
+
const scenariosDir = path3.join(outputsDir, "scenarios");
|
|
1699
|
+
const rawFilePath = req.params.filePath;
|
|
1700
|
+
const filePath = Array.isArray(rawFilePath) ? rawFilePath.join("/") : String(rawFilePath);
|
|
1701
|
+
const fullPath = path3.resolve(scenariosDir, filePath);
|
|
1702
|
+
if (!fullPath.startsWith(scenariosDir)) {
|
|
1703
|
+
res.status(400).json({ error: "Invalid path" });
|
|
1704
|
+
return;
|
|
1705
|
+
}
|
|
1706
|
+
if (!fs3.existsSync(fullPath)) {
|
|
1707
|
+
res.status(404).json({ error: "File not found" });
|
|
1708
|
+
return;
|
|
1709
|
+
}
|
|
1710
|
+
const ext = path3.extname(fullPath).toLowerCase();
|
|
1711
|
+
const mimeMap = {
|
|
1712
|
+
".md": "text/markdown; charset=utf-8",
|
|
1713
|
+
".json": "application/json; charset=utf-8",
|
|
1714
|
+
".jsonl": "application/x-ndjson; charset=utf-8",
|
|
1715
|
+
".log": "text/plain; charset=utf-8",
|
|
1716
|
+
".py": "text/x-python; charset=utf-8",
|
|
1717
|
+
".html": "text/html; charset=utf-8",
|
|
1718
|
+
".txt": "text/plain; charset=utf-8"
|
|
1719
|
+
};
|
|
1720
|
+
res.setHeader("Content-Type", mimeMap[ext] ?? "application/octet-stream");
|
|
1721
|
+
res.setHeader("Cache-Control", "public, max-age=86400");
|
|
1722
|
+
fs3.createReadStream(fullPath).pipe(res);
|
|
1723
|
+
});
|
|
1672
1724
|
router.get("/api/e2e-artifacts/:runId/file/{*filePath}", (req, res) => {
|
|
1673
1725
|
const issueIid = req.query.issueIid;
|
|
1674
1726
|
const outputsDir = resolveE2eOutputsDir(issueIid);
|
|
@@ -1697,7 +1749,15 @@ data: ${JSON.stringify({ time: (/* @__PURE__ */ new Date()).toISOString() })}
|
|
|
1697
1749
|
".webm": "video/webm",
|
|
1698
1750
|
".mp4": "video/mp4",
|
|
1699
1751
|
".mkv": "video/x-matroska",
|
|
1700
|
-
".avi": "video/x-msvideo"
|
|
1752
|
+
".avi": "video/x-msvideo",
|
|
1753
|
+
".md": "text/markdown; charset=utf-8",
|
|
1754
|
+
".json": "application/json; charset=utf-8",
|
|
1755
|
+
".jsonl": "application/x-ndjson; charset=utf-8",
|
|
1756
|
+
".log": "text/plain; charset=utf-8",
|
|
1757
|
+
".py": "text/x-python; charset=utf-8",
|
|
1758
|
+
".html": "text/html; charset=utf-8",
|
|
1759
|
+
".har": "application/json; charset=utf-8",
|
|
1760
|
+
".txt": "text/plain; charset=utf-8"
|
|
1701
1761
|
};
|
|
1702
1762
|
res.setHeader("Content-Type", mimeMap[ext] ?? "application/octet-stream");
|
|
1703
1763
|
res.setHeader("Cache-Control", "public, max-age=86400");
|
|
@@ -4872,7 +4932,8 @@ var WebServer = class _WebServer {
|
|
|
4872
4932
|
distillScheduler: deps.distillScheduler,
|
|
4873
4933
|
diaryCollector: deps.diaryCollector,
|
|
4874
4934
|
claimer: deps.claimer,
|
|
4875
|
-
configReloader: deps.configReloader
|
|
4935
|
+
configReloader: deps.configReloader,
|
|
4936
|
+
wsConfig: deps.wsConfig
|
|
4876
4937
|
};
|
|
4877
4938
|
}
|
|
4878
4939
|
this.app = express12();
|
|
@@ -8345,16 +8406,14 @@ async function main() {
|
|
|
8345
8406
|
const mainGitMutex = new AsyncMutex();
|
|
8346
8407
|
const tracker = new IssueTracker(dataDir, lifecycleManagers, tid);
|
|
8347
8408
|
if (!primaryTracker) primaryTracker = tracker;
|
|
8348
|
-
const
|
|
8349
|
-
|
|
8350
|
-
|
|
8351
|
-
|
|
8352
|
-
|
|
8353
|
-
|
|
8354
|
-
|
|
8355
|
-
|
|
8356
|
-
gongfengConfig.projectPath
|
|
8357
|
-
);
|
|
8409
|
+
const projectForTenant = {
|
|
8410
|
+
workDir: tenantDef.overrides?.workDir ?? config.project.workDir,
|
|
8411
|
+
gitRootDir,
|
|
8412
|
+
baseBranch: tenantDef.overrides?.baseBranch ?? config.project.baseBranch,
|
|
8413
|
+
branchPrefix: tenantDef.overrides?.branchPrefix ?? config.project.branchPrefix,
|
|
8414
|
+
projectSubDir: tenantDef.overrides?.projectSubDir ?? config.project.projectSubDir
|
|
8415
|
+
};
|
|
8416
|
+
const wsConfig = tenantDef.workspace ? loadWorkspaceConfig(tenantDef.workspace) ?? buildSingleRepoWorkspace(projectForTenant, gongfengConfig.projectPath) : isDefault ? loadWorkspaceConfig(config.workspace.configPath) ?? buildSingleRepoWorkspace(config.project, gongfengConfig.projectPath) : buildSingleRepoWorkspace(projectForTenant, gongfengConfig.projectPath);
|
|
8358
8417
|
const orchestrator = new PipelineOrchestrator(
|
|
8359
8418
|
config,
|
|
8360
8419
|
gongfeng,
|
|
@@ -8538,7 +8597,8 @@ async function main() {
|
|
|
8538
8597
|
diaryCollector,
|
|
8539
8598
|
claimer: primaryTenant.claimer,
|
|
8540
8599
|
configReloader,
|
|
8541
|
-
orphanManager
|
|
8600
|
+
orphanManager,
|
|
8601
|
+
wsConfig: primaryTenant.wsConfig
|
|
8542
8602
|
});
|
|
8543
8603
|
await webServer.start();
|
|
8544
8604
|
}
|
|
@@ -8643,4 +8703,4 @@ function migrateKnowledgeDir(srcDir, destDir) {
|
|
|
8643
8703
|
export {
|
|
8644
8704
|
main
|
|
8645
8705
|
};
|
|
8646
|
-
//# sourceMappingURL=chunk-
|
|
8706
|
+
//# sourceMappingURL=chunk-2FBXAHPE.js.map
|