@mesh-tech/mesh-cli 0.36.0 → 0.37.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/assets/docs-preview.css +1599 -0
- package/dist/bin/mesh.auth-preflight-JFKL4Y4X.js +48 -0
- package/dist/bin/mesh.auth-preflight-JFKL4Y4X.js.map +6 -0
- package/dist/bin/mesh.capture-history-A4IAVVIR.js +38 -0
- package/dist/bin/mesh.capture-history-A4IAVVIR.js.map +6 -0
- package/dist/bin/mesh.chunk-5A5OFSYR.js +187 -0
- package/dist/bin/mesh.chunk-5A5OFSYR.js.map +6 -0
- package/dist/bin/mesh.chunk-7DMAFUBQ.js +7715 -0
- package/dist/bin/mesh.chunk-7DMAFUBQ.js.map +6 -0
- package/dist/bin/mesh.chunk-A4DGMGHF.js +303 -0
- package/dist/bin/mesh.chunk-A4DGMGHF.js.map +6 -0
- package/dist/bin/mesh.chunk-CQ2IC4OP.js +217 -0
- package/dist/bin/mesh.chunk-CQ2IC4OP.js.map +6 -0
- package/dist/bin/mesh.chunk-F4654EPX.js +383 -0
- package/dist/bin/mesh.chunk-F4654EPX.js.map +6 -0
- package/dist/bin/mesh.chunk-IQOBTL42.js +60 -0
- package/dist/bin/mesh.chunk-IQOBTL42.js.map +6 -0
- package/dist/bin/mesh.chunk-J6DVWKRW.js +647 -0
- package/dist/bin/mesh.chunk-J6DVWKRW.js.map +6 -0
- package/dist/bin/mesh.chunk-JB7FWYSP.js +1751 -0
- package/dist/bin/mesh.chunk-JB7FWYSP.js.map +6 -0
- package/dist/bin/mesh.chunk-MCBMHWXP.js +837 -0
- package/dist/bin/mesh.chunk-MCBMHWXP.js.map +6 -0
- package/dist/bin/mesh.chunk-OW5EMVG5.js +507 -0
- package/dist/bin/mesh.chunk-OW5EMVG5.js.map +6 -0
- package/dist/bin/mesh.chunk-R5VVTXG4.js +10092 -0
- package/dist/bin/mesh.chunk-R5VVTXG4.js.map +6 -0
- package/dist/bin/mesh.chunk-VKV6Z3UI.js +1146 -0
- package/dist/bin/mesh.chunk-VKV6Z3UI.js.map +6 -0
- package/dist/bin/mesh.chunk-WFFDF346.js +59 -0
- package/dist/bin/mesh.chunk-WFFDF346.js.map +6 -0
- package/dist/bin/mesh.chunk-WOJOTUFZ.js +835 -0
- package/dist/bin/mesh.chunk-WOJOTUFZ.js.map +6 -0
- package/dist/bin/mesh.cli-reference-H3TOPIET.js +158 -0
- package/dist/bin/mesh.cli-reference-H3TOPIET.js.map +6 -0
- package/dist/bin/mesh.convert-KK6ZP256.js +274 -0
- package/dist/bin/mesh.convert-KK6ZP256.js.map +6 -0
- package/dist/bin/mesh.create-app-A5F45PWZ.js +39 -0
- package/dist/bin/mesh.create-app-A5F45PWZ.js.map +6 -0
- package/dist/bin/mesh.dev-token-server-GYDYPXYH.js +61 -0
- package/dist/bin/mesh.dev-token-server-GYDYPXYH.js.map +6 -0
- package/dist/bin/mesh.js +20 -26418
- package/dist/bin/mesh.js.map +3 -3
- package/dist/bin/mesh.login-JNHPVMCT.js +91 -0
- package/dist/bin/mesh.login-JNHPVMCT.js.map +6 -0
- package/dist/bin/mesh.platform-setup-EB64EFRN.js +37 -0
- package/dist/bin/mesh.platform-setup-EB64EFRN.js.map +6 -0
- package/dist/bin/mesh.preview-3IP34TDO.js +2410 -0
- package/dist/bin/mesh.preview-3IP34TDO.js.map +6 -0
- package/dist/bin/mesh.program-DWOKHNMQ.js +23 -0
- package/dist/bin/mesh.program-DWOKHNMQ.js.map +6 -0
- package/dist/bin/mesh.registry-OXF57OQW.js +47 -0
- package/dist/bin/mesh.registry-OXF57OQW.js.map +6 -0
- package/dist/bin/mesh.registry-identity-2HSGQGJC.js +42 -0
- package/dist/bin/mesh.registry-identity-2HSGQGJC.js.map +6 -0
- package/dist/bin/mesh.skills-MNDSMBIE.js +23 -0
- package/dist/bin/mesh.skills-MNDSMBIE.js.map +6 -0
- package/dist/bin/mesh.src-5D5DFSLX.js +1302 -0
- package/dist/bin/mesh.src-5D5DFSLX.js.map +6 -0
- package/dist/bin/mesh.src-G7TJBLNJ.js +40 -0
- package/dist/bin/mesh.src-G7TJBLNJ.js.map +6 -0
- package/dist/bin/mesh.stack-EFTFAOCV.js +64 -0
- package/dist/bin/mesh.stack-EFTFAOCV.js.map +6 -0
- package/dist/bin/mesh.start-ARIIY6CV.js +454 -0
- package/dist/bin/mesh.start-ARIIY6CV.js.map +6 -0
- package/dist/bin/mesh.wizard-ROAQAGSF.js +500 -0
- package/dist/bin/mesh.wizard-ROAQAGSF.js.map +6 -0
- package/dist/build-info.json +2 -2
- package/dist/src/commands/app-check.d.ts +2 -1
- package/dist/src/commands/app-check.js +32 -0
- package/dist/src/commands/dev.d.ts +6 -0
- package/dist/src/commands/dev.js +152 -3
- package/dist/src/commands/docs.js +33 -0
- package/dist/src/commands/local/act-as-local.d.ts +5 -0
- package/dist/src/commands/local/act-as-local.js +41 -0
- package/dist/src/commands/local/auth-provision.d.ts +1 -0
- package/dist/src/commands/local/auth-provision.js +1 -0
- package/dist/src/commands/local/index.js +4 -0
- package/dist/src/commands/local/local-api-key.d.ts +44 -0
- package/dist/src/commands/local/local-api-key.js +115 -0
- package/dist/src/commands/local/local-spicedb.d.ts +95 -0
- package/dist/src/commands/local/local-spicedb.js +304 -0
- package/dist/src/commands/local/publish-docs.d.ts +81 -0
- package/dist/src/commands/local/publish-docs.js +328 -0
- package/dist/src/commands/local/seed-zitadel.js +2 -0
- package/dist/src/commands/temporal.js +191 -61
- package/dist/src/commands/temporal.js.map +3 -3
- package/dist/src/docs/convert.d.ts +35 -0
- package/dist/src/docs/convert.js +276 -0
- package/dist/src/docs/preview-source.d.ts +13 -0
- package/dist/src/docs/preview-source.js +58 -0
- package/dist/src/docs/preview.d.ts +32 -0
- package/dist/src/docs/preview.js +279 -0
- package/fragments/agents/AGENTS.md.hbs +27 -27
- package/fragments/base/README.md.hbs +5 -2
- package/fragments/base/index.ts.hbs +17 -30
- package/fragments/base/package.json.hbs +4 -1
- package/fragments/service/api/openapi.json.hbs +1 -1
- package/fragments/service/docs/docs.yaml.hbs +10 -0
- package/fragments/service/docs/pages/getting-started.md.hbs +6 -9
- package/package.json +19 -3
- package/skills/mesh/SKILL.md +2 -2
- package/stack/docker-compose.hub.yml +6 -0
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../workflow-model/src/workflow-ir.ts", "../../../workflow-model/src/workflow-ir-validate.ts", "../../../workflow-model/src/apply-preview-patch.ts", "../../../workflow-model/src/change-counts.ts", "../../../workflow-model/src/process-artifact.ts", "../../../workflow-model/src/process-lint.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_APPROVAL_PATH_PREFIX,
|
|
3
|
+
DEFAULT_CONVERSATION_PATH_PREFIX,
|
|
4
|
+
DEFAULT_REGISTRY_PATH,
|
|
5
|
+
RegistrySchema,
|
|
6
|
+
TargetEntrySchema,
|
|
7
|
+
approvalUrl,
|
|
8
|
+
conversationUrl,
|
|
9
|
+
createVcsFolderReader,
|
|
10
|
+
deriveVcsBaseUrl,
|
|
11
|
+
extractDelegateIds,
|
|
12
|
+
loadTargetsFile,
|
|
13
|
+
normalizePathPrefix,
|
|
14
|
+
pullConversation,
|
|
15
|
+
renderMessageContent,
|
|
16
|
+
resolveEntry,
|
|
17
|
+
slugForDesign,
|
|
18
|
+
stripSlash,
|
|
19
|
+
writeBundle
|
|
20
|
+
} from "./mesh.chunk-OW5EMVG5.js";
|
|
21
|
+
export {
|
|
22
|
+
DEFAULT_APPROVAL_PATH_PREFIX,
|
|
23
|
+
DEFAULT_CONVERSATION_PATH_PREFIX,
|
|
24
|
+
DEFAULT_REGISTRY_PATH,
|
|
25
|
+
RegistrySchema,
|
|
26
|
+
TargetEntrySchema,
|
|
27
|
+
approvalUrl,
|
|
28
|
+
conversationUrl,
|
|
29
|
+
createVcsFolderReader,
|
|
30
|
+
deriveVcsBaseUrl,
|
|
31
|
+
extractDelegateIds,
|
|
32
|
+
loadTargetsFile,
|
|
33
|
+
normalizePathPrefix,
|
|
34
|
+
pullConversation,
|
|
35
|
+
renderMessageContent,
|
|
36
|
+
resolveEntry,
|
|
37
|
+
slugForDesign,
|
|
38
|
+
stripSlash,
|
|
39
|
+
writeBundle
|
|
40
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import {
|
|
2
|
+
BASE_COMPOSE_FILE,
|
|
3
|
+
COMPOSE_PROJECT,
|
|
4
|
+
DEFAULT_HUB_PORT,
|
|
5
|
+
HUB_OVERLAY_FILE,
|
|
6
|
+
IDPS_OVERLAY_FILE,
|
|
7
|
+
ONE_SHOT_SERVICES,
|
|
8
|
+
STACK_ENDPOINTS,
|
|
9
|
+
compose,
|
|
10
|
+
composeLogPath,
|
|
11
|
+
composeStreamed,
|
|
12
|
+
crashedServices,
|
|
13
|
+
ensureDockerAvailable,
|
|
14
|
+
findPackageRoot,
|
|
15
|
+
hubApiRunning,
|
|
16
|
+
hubEndpoints,
|
|
17
|
+
hubOverlayServices,
|
|
18
|
+
hubPort,
|
|
19
|
+
idpsOverlayServices,
|
|
20
|
+
localLogsDir,
|
|
21
|
+
localProbesDir,
|
|
22
|
+
overlayRunning,
|
|
23
|
+
parseComposePs,
|
|
24
|
+
parseComposeServiceNames,
|
|
25
|
+
probeEndpoint,
|
|
26
|
+
stackDir,
|
|
27
|
+
stackOwnedElsewhere,
|
|
28
|
+
stackServices,
|
|
29
|
+
summarizeComposeFailure,
|
|
30
|
+
writeAppServiceProbes
|
|
31
|
+
} from "./mesh.chunk-MCBMHWXP.js";
|
|
32
|
+
import "./mesh.chunk-WFFDF346.js";
|
|
33
|
+
import "./mesh.chunk-IQOBTL42.js";
|
|
34
|
+
export {
|
|
35
|
+
BASE_COMPOSE_FILE,
|
|
36
|
+
COMPOSE_PROJECT,
|
|
37
|
+
DEFAULT_HUB_PORT,
|
|
38
|
+
HUB_OVERLAY_FILE,
|
|
39
|
+
IDPS_OVERLAY_FILE,
|
|
40
|
+
ONE_SHOT_SERVICES,
|
|
41
|
+
STACK_ENDPOINTS,
|
|
42
|
+
compose,
|
|
43
|
+
composeLogPath,
|
|
44
|
+
composeStreamed,
|
|
45
|
+
crashedServices,
|
|
46
|
+
ensureDockerAvailable,
|
|
47
|
+
findPackageRoot,
|
|
48
|
+
hubApiRunning,
|
|
49
|
+
hubEndpoints,
|
|
50
|
+
hubOverlayServices,
|
|
51
|
+
hubPort,
|
|
52
|
+
idpsOverlayServices,
|
|
53
|
+
localLogsDir,
|
|
54
|
+
localProbesDir,
|
|
55
|
+
overlayRunning,
|
|
56
|
+
parseComposePs,
|
|
57
|
+
parseComposeServiceNames,
|
|
58
|
+
probeEndpoint,
|
|
59
|
+
stackDir,
|
|
60
|
+
stackOwnedElsewhere,
|
|
61
|
+
stackServices,
|
|
62
|
+
summarizeComposeFailure,
|
|
63
|
+
writeAppServiceProbes
|
|
64
|
+
};
|
|
@@ -0,0 +1,454 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DOCS_APP_DIR,
|
|
3
|
+
discoverDocRoots,
|
|
4
|
+
reportAssembly,
|
|
5
|
+
resolveCliRuntime,
|
|
6
|
+
runAssemble
|
|
7
|
+
} from "./mesh.chunk-VKV6Z3UI.js";
|
|
8
|
+
import {
|
|
9
|
+
logError,
|
|
10
|
+
logInfo,
|
|
11
|
+
logSuccess
|
|
12
|
+
} from "./mesh.chunk-WFFDF346.js";
|
|
13
|
+
import {
|
|
14
|
+
homeNpmrcPath,
|
|
15
|
+
parseNpmrcRegistryAuth
|
|
16
|
+
} from "./mesh.chunk-5A5OFSYR.js";
|
|
17
|
+
|
|
18
|
+
// packages/mesh-cli/src/docs/start.ts
|
|
19
|
+
import { execFileSync as execFileSync2 } from "node:child_process";
|
|
20
|
+
import { appendFileSync, existsSync as existsSync2, writeFileSync as writeFileSync2 } from "node:fs";
|
|
21
|
+
import path2 from "node:path";
|
|
22
|
+
|
|
23
|
+
// packages/mesh-cli/src/docs/serve.ts
|
|
24
|
+
import { createServer } from "node:http";
|
|
25
|
+
import { readFile } from "node:fs/promises";
|
|
26
|
+
import { extname, join, normalize, sep } from "node:path";
|
|
27
|
+
var CONTENT_TYPES = {
|
|
28
|
+
".html": "text/html; charset=utf-8",
|
|
29
|
+
".js": "text/javascript; charset=utf-8",
|
|
30
|
+
".mjs": "text/javascript; charset=utf-8",
|
|
31
|
+
".css": "text/css; charset=utf-8",
|
|
32
|
+
".json": "application/json; charset=utf-8",
|
|
33
|
+
".map": "application/json; charset=utf-8",
|
|
34
|
+
".svg": "image/svg+xml",
|
|
35
|
+
".png": "image/png",
|
|
36
|
+
".jpg": "image/jpeg",
|
|
37
|
+
".jpeg": "image/jpeg",
|
|
38
|
+
".gif": "image/gif",
|
|
39
|
+
".ico": "image/x-icon",
|
|
40
|
+
".woff": "font/woff",
|
|
41
|
+
".woff2": "font/woff2",
|
|
42
|
+
".txt": "text/plain; charset=utf-8",
|
|
43
|
+
".md": "text/markdown; charset=utf-8",
|
|
44
|
+
".webmanifest": "application/manifest+json"
|
|
45
|
+
};
|
|
46
|
+
async function serveDocsSite(args) {
|
|
47
|
+
const root = normalize(args.root);
|
|
48
|
+
const rootPrefix = root.endsWith(sep) ? root : root + sep;
|
|
49
|
+
const server = createServer((req, res) => {
|
|
50
|
+
void (async () => {
|
|
51
|
+
const url = new URL(req.url ?? "/", "http://localhost");
|
|
52
|
+
const pathname = decodeURIComponent(url.pathname);
|
|
53
|
+
if (pathname === "/healthz") {
|
|
54
|
+
res.writeHead(200, { "content-type": "text/plain" }).end("ok");
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const candidates = [
|
|
58
|
+
pathname,
|
|
59
|
+
`${pathname}.html`,
|
|
60
|
+
`${pathname.replace(/\/$/, "")}/index.html`
|
|
61
|
+
];
|
|
62
|
+
if (pathname !== "/") candidates.push("/index.html");
|
|
63
|
+
for (const candidate of candidates) {
|
|
64
|
+
const filePath = normalize(join(root, candidate));
|
|
65
|
+
if (filePath !== root && !filePath.startsWith(rootPrefix)) continue;
|
|
66
|
+
try {
|
|
67
|
+
const body = await readFile(filePath);
|
|
68
|
+
const type = CONTENT_TYPES[extname(filePath)] ?? "application/octet-stream";
|
|
69
|
+
const cache = candidate.includes("/assets/") ? "public, max-age=31536000, immutable" : "no-cache";
|
|
70
|
+
res.writeHead(200, { "content-type": type, "cache-control": cache });
|
|
71
|
+
res.end(body);
|
|
72
|
+
return;
|
|
73
|
+
} catch {
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
res.writeHead(404, { "content-type": "text/plain" }).end("not found");
|
|
77
|
+
})().catch(() => {
|
|
78
|
+
res.writeHead(500).end("internal error");
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
await new Promise((resolve, reject) => {
|
|
82
|
+
server.once("error", reject);
|
|
83
|
+
server.listen(args.port, "127.0.0.1", () => resolve());
|
|
84
|
+
});
|
|
85
|
+
const address = server.address();
|
|
86
|
+
const port = typeof address === "object" && address ? address.port : args.port;
|
|
87
|
+
return {
|
|
88
|
+
url: `http://127.0.0.1:${port}`,
|
|
89
|
+
port,
|
|
90
|
+
close: () => new Promise((resolve, reject) => {
|
|
91
|
+
server.close((error) => error ? reject(error) : resolve());
|
|
92
|
+
})
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
// packages/mesh-cli/src/docs/registry-docs.ts
|
|
97
|
+
import { execFileSync } from "node:child_process";
|
|
98
|
+
import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
|
|
99
|
+
import { tmpdir } from "node:os";
|
|
100
|
+
import path from "node:path";
|
|
101
|
+
var DOCS_PACKAGE = "@mesh-tech/docs";
|
|
102
|
+
function readDocsRegistryAuth(npmrcPath = homeNpmrcPath()) {
|
|
103
|
+
if (!existsSync(npmrcPath)) return null;
|
|
104
|
+
return parseNpmrcRegistryAuth(readFileSync(npmrcPath, "utf-8"));
|
|
105
|
+
}
|
|
106
|
+
function packumentUrl(endpoint, pkg) {
|
|
107
|
+
return `${endpoint.replace(/\/+$/, "")}/${pkg.replace(/\//g, "%2f")}`;
|
|
108
|
+
}
|
|
109
|
+
async function registryFetch(auth, url, fetchImpl, accept = "application/json") {
|
|
110
|
+
return fetchImpl(url, {
|
|
111
|
+
headers: {
|
|
112
|
+
authorization: `Bearer ${auth.token}`,
|
|
113
|
+
accept
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
function compareVersions(a, b) {
|
|
118
|
+
const parse = (v) => {
|
|
119
|
+
const parts = v.split(".").map((n) => Number.parseInt(n, 10) || 0);
|
|
120
|
+
while (parts.length < 3) parts.push(0);
|
|
121
|
+
return parts;
|
|
122
|
+
};
|
|
123
|
+
const pa = parse(a);
|
|
124
|
+
const pb = parse(b);
|
|
125
|
+
for (let i = 0; i < 3; i++) {
|
|
126
|
+
if (pa[i] !== pb[i]) return pa[i] - pb[i];
|
|
127
|
+
}
|
|
128
|
+
return 0;
|
|
129
|
+
}
|
|
130
|
+
async function listDocsVersions(auth, fetchImpl = fetch) {
|
|
131
|
+
const response = await registryFetch(auth, packumentUrl(auth.endpoint, DOCS_PACKAGE), fetchImpl).catch((error) => {
|
|
132
|
+
throw new Error(
|
|
133
|
+
`could not reach the package registry: ${error instanceof Error ? error.message : String(error)}`
|
|
134
|
+
);
|
|
135
|
+
});
|
|
136
|
+
if (response.status === 401 || response.status === 403) {
|
|
137
|
+
throw new Error(
|
|
138
|
+
`registry auth rejected the token (${response.status}). Refresh it: mesh registry login`
|
|
139
|
+
);
|
|
140
|
+
}
|
|
141
|
+
if (response.status === 404) {
|
|
142
|
+
throw new Error(
|
|
143
|
+
`${DOCS_PACKAGE} is not published yet \u2014 no release has shipped the docs artifact. In a mesh-platform checkout, use \`mesh docs start\` against the working tree instead.`
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
if (!response.ok) {
|
|
147
|
+
throw new Error(`registry returned ${response.status} for ${DOCS_PACKAGE}`);
|
|
148
|
+
}
|
|
149
|
+
const packument = await response.json();
|
|
150
|
+
const versions = Object.keys(packument.versions ?? {}).sort(compareVersions);
|
|
151
|
+
return { versions, latest: packument["dist-tags"]?.latest };
|
|
152
|
+
}
|
|
153
|
+
function docsCacheRoot() {
|
|
154
|
+
const base = process.env.XDG_CACHE_HOME ?? path.join(homeDir(), ".cache");
|
|
155
|
+
return path.join(base, "mesh", "docs");
|
|
156
|
+
}
|
|
157
|
+
function homeDir() {
|
|
158
|
+
return process.env.HOME ?? tmpdir();
|
|
159
|
+
}
|
|
160
|
+
async function fetchDocsArtifact(auth, version, cacheRoot = docsCacheRoot(), fetchImpl = fetch) {
|
|
161
|
+
const targetDir = path.join(cacheRoot, version);
|
|
162
|
+
if (existsSync(path.join(targetDir, "dist", "index.html"))) return targetDir;
|
|
163
|
+
const listResponse = await registryFetch(auth, packumentUrl(auth.endpoint, DOCS_PACKAGE), fetchImpl);
|
|
164
|
+
if (!listResponse.ok) {
|
|
165
|
+
throw new Error(`registry returned ${listResponse.status} for ${DOCS_PACKAGE}`);
|
|
166
|
+
}
|
|
167
|
+
const packument = await listResponse.json();
|
|
168
|
+
const tarball = packument.versions?.[version]?.dist?.tarball;
|
|
169
|
+
if (!tarball) {
|
|
170
|
+
throw new Error(
|
|
171
|
+
`${DOCS_PACKAGE}@${version} is not in the registry. Run \`mesh docs list\` to see published versions.`
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
if (new URL(tarball).origin !== new URL(auth.endpoint).origin) {
|
|
175
|
+
throw new Error(
|
|
176
|
+
`${DOCS_PACKAGE}@${version} points its tarball at ${new URL(tarball).origin}, not the registry (${new URL(auth.endpoint).origin}) \u2014 refusing to send the registry token off-origin`
|
|
177
|
+
);
|
|
178
|
+
}
|
|
179
|
+
const tgzResponse = await registryFetch(auth, tarball, fetchImpl, "application/octet-stream");
|
|
180
|
+
if (!tgzResponse.ok) {
|
|
181
|
+
throw new Error(`downloading ${DOCS_PACKAGE}@${version} failed: ${tgzResponse.status}`);
|
|
182
|
+
}
|
|
183
|
+
mkdirSync(cacheRoot, { recursive: true });
|
|
184
|
+
const tgzPath = path.join(cacheRoot, `.${version}.tgz`);
|
|
185
|
+
writeFileSync(tgzPath, Buffer.from(await tgzResponse.arrayBuffer()));
|
|
186
|
+
const staging = path.join(cacheRoot, `.staging-${version}`);
|
|
187
|
+
rmSync(staging, { recursive: true, force: true });
|
|
188
|
+
mkdirSync(staging, { recursive: true });
|
|
189
|
+
try {
|
|
190
|
+
execFileSync("tar", ["-xzf", tgzPath, "-C", staging, "--strip-components", "1"], {
|
|
191
|
+
stdio: ["pipe", "pipe", "pipe"]
|
|
192
|
+
});
|
|
193
|
+
} finally {
|
|
194
|
+
rmSync(tgzPath, { force: true });
|
|
195
|
+
}
|
|
196
|
+
if (!existsSync(path.join(staging, "dist", "index.html"))) {
|
|
197
|
+
rmSync(staging, { recursive: true, force: true });
|
|
198
|
+
throw new Error(`${DOCS_PACKAGE}@${version} unpacked without a dist/index.html \u2014 the artifact is malformed`);
|
|
199
|
+
}
|
|
200
|
+
rmSync(targetDir, { recursive: true, force: true });
|
|
201
|
+
renameSync(staging, targetDir);
|
|
202
|
+
return targetDir;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
// packages/mesh-cli/src/docs/start.ts
|
|
206
|
+
var DOCS_TMUX_SESSION = "mesh-docs";
|
|
207
|
+
function registryAuthOrThrow() {
|
|
208
|
+
const auth = readDocsRegistryAuth();
|
|
209
|
+
if (!auth) {
|
|
210
|
+
throw new Error(
|
|
211
|
+
"no CodeArtifact token in ~/.npmrc \u2014 run `mesh registry login` first (the docs artifact is role-gated the same way the packages are)."
|
|
212
|
+
);
|
|
213
|
+
}
|
|
214
|
+
return auth;
|
|
215
|
+
}
|
|
216
|
+
async function runDocsList() {
|
|
217
|
+
const auth = registryAuthOrThrow();
|
|
218
|
+
const { versions, latest } = await listDocsVersions(auth);
|
|
219
|
+
if (versions.length === 0) {
|
|
220
|
+
logInfo(`No ${DOCS_PACKAGE} versions published yet.`);
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
logInfo(`Published docs versions (docs version == @mesh-tech/* baseline):`);
|
|
224
|
+
for (const version of [...versions].reverse()) {
|
|
225
|
+
const marker = version === latest ? " \u2190 latest" : "";
|
|
226
|
+
process.stdout.write(` ${version}${marker}
|
|
227
|
+
`);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
function tmuxInstallHint(platform = process.platform) {
|
|
231
|
+
if (platform === "darwin") return "brew install tmux";
|
|
232
|
+
if (platform === "linux") return "sudo apt-get install tmux # or your distro's package manager";
|
|
233
|
+
return "install tmux via your package manager";
|
|
234
|
+
}
|
|
235
|
+
function tmuxAvailable() {
|
|
236
|
+
try {
|
|
237
|
+
execFileSync2("tmux", ["-V"], { stdio: ["pipe", "pipe", "pipe"] });
|
|
238
|
+
return true;
|
|
239
|
+
} catch {
|
|
240
|
+
return false;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
function shouldDetach(args) {
|
|
244
|
+
return !args.foreground && !args.dev && args.isTTY;
|
|
245
|
+
}
|
|
246
|
+
function docsSessionExists() {
|
|
247
|
+
try {
|
|
248
|
+
execFileSync2("tmux", ["has-session", "-t", DOCS_TMUX_SESSION], { stdio: ["pipe", "pipe", "pipe"] });
|
|
249
|
+
return true;
|
|
250
|
+
} catch {
|
|
251
|
+
return false;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
function tmuxServeArgs(args) {
|
|
255
|
+
const serveArgs = ["docs", "serve-static", "--root", args.serveRoot, "--port", String(args.port)];
|
|
256
|
+
if (args.mode === "dist") {
|
|
257
|
+
return { command: ["mesh", ...serveArgs], cwd: args.repoRoot };
|
|
258
|
+
}
|
|
259
|
+
return { command: ["pnpm", "exec", "mesh", ...serveArgs], cwd: args.repoRoot };
|
|
260
|
+
}
|
|
261
|
+
async function startDetached(args) {
|
|
262
|
+
if (!tmuxAvailable()) {
|
|
263
|
+
throw new Error(
|
|
264
|
+
`tmux is not installed \u2014 the detached docs server runs in a tmux session named "${DOCS_TMUX_SESSION}".
|
|
265
|
+
Install it with: ${tmuxInstallHint()}
|
|
266
|
+
Or run in the foreground instead: mesh docs start --foreground`
|
|
267
|
+
);
|
|
268
|
+
}
|
|
269
|
+
if (docsSessionExists()) {
|
|
270
|
+
logInfo(`Replacing the docs server already running in tmux session "${DOCS_TMUX_SESSION}".`);
|
|
271
|
+
try {
|
|
272
|
+
execFileSync2("tmux", ["kill-session", "-t", DOCS_TMUX_SESSION], { stdio: ["pipe", "pipe", "pipe"] });
|
|
273
|
+
} catch {
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
const { command, cwd } = tmuxServeArgs(args);
|
|
277
|
+
execFileSync2(
|
|
278
|
+
"tmux",
|
|
279
|
+
["new-session", "-d", "-s", DOCS_TMUX_SESSION, "-c", cwd, "--", ...command],
|
|
280
|
+
{ stdio: ["pipe", "pipe", "pipe"] }
|
|
281
|
+
);
|
|
282
|
+
const deadline = Date.now() + 6e4;
|
|
283
|
+
const url = `http://127.0.0.1:${args.port}`;
|
|
284
|
+
let lastError = "";
|
|
285
|
+
while (Date.now() < deadline) {
|
|
286
|
+
try {
|
|
287
|
+
const response = await fetch(`${url}/healthz`);
|
|
288
|
+
if (response.ok) {
|
|
289
|
+
printReady(url, args.label);
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
292
|
+
lastError = `HTTP ${response.status}`;
|
|
293
|
+
} catch (error) {
|
|
294
|
+
lastError = error instanceof Error ? error.message : String(error);
|
|
295
|
+
}
|
|
296
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
297
|
+
}
|
|
298
|
+
throw new Error(
|
|
299
|
+
`the docs server did not answer at ${url} within 60s (${lastError || "no response"}).
|
|
300
|
+
Read its log with: tmux attach -t ${DOCS_TMUX_SESSION} (detach: Ctrl-B then D)`
|
|
301
|
+
);
|
|
302
|
+
}
|
|
303
|
+
function printReady(url, label) {
|
|
304
|
+
logSuccess(`Mesh docs (${label}) are live:`);
|
|
305
|
+
process.stdout.write(`
|
|
306
|
+
${url}
|
|
307
|
+
|
|
308
|
+
`);
|
|
309
|
+
logInfo(`Running detached in the tmux session "${DOCS_TMUX_SESSION}".`);
|
|
310
|
+
logInfo(` attach: tmux attach -t ${DOCS_TMUX_SESSION}`);
|
|
311
|
+
logInfo(` stop: mesh docs stop`);
|
|
312
|
+
}
|
|
313
|
+
function runDocsStop() {
|
|
314
|
+
try {
|
|
315
|
+
execFileSync2("tmux", ["kill-session", "-t", DOCS_TMUX_SESSION], { stdio: ["pipe", "pipe", "pipe"] });
|
|
316
|
+
logSuccess(`Stopped the docs server (tmux session "${DOCS_TMUX_SESSION}").`);
|
|
317
|
+
} catch {
|
|
318
|
+
logInfo(`No docs server is running (no tmux session named "${DOCS_TMUX_SESSION}").`);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
async function runDocsServeStatic(args) {
|
|
322
|
+
const requestedPort = Number.parseInt(args.port, 10);
|
|
323
|
+
if (!Number.isInteger(requestedPort) || requestedPort < 0 || requestedPort > 65535) {
|
|
324
|
+
throw new Error(`Invalid --port: ${args.port}`);
|
|
325
|
+
}
|
|
326
|
+
if (!args.root || !existsSync2(path2.join(args.root, "index.html"))) {
|
|
327
|
+
throw new Error(
|
|
328
|
+
`--root ${args.root || "(empty)"} does not hold a built site (no index.html). This command exists so the detached tmux session can re-enter; you probably want \`mesh docs start\`.`
|
|
329
|
+
);
|
|
330
|
+
}
|
|
331
|
+
const server = await serveDocsSite({ root: args.root, port: requestedPort });
|
|
332
|
+
logSuccess(`Mesh docs serving at ${server.url} (from ${args.root})`);
|
|
333
|
+
await new Promise((resolve) => {
|
|
334
|
+
const stop = () => void server.close().finally(() => resolve());
|
|
335
|
+
process.once("SIGINT", stop);
|
|
336
|
+
process.once("SIGTERM", stop);
|
|
337
|
+
});
|
|
338
|
+
}
|
|
339
|
+
async function runDocsStart(args) {
|
|
340
|
+
const requestedPort = Number.parseInt(args.port, 10);
|
|
341
|
+
if (!Number.isInteger(requestedPort) || requestedPort < 0 || requestedPort > 65535) {
|
|
342
|
+
throw new Error(`Invalid --port: ${args.port}`);
|
|
343
|
+
}
|
|
344
|
+
const detached = shouldDetach({
|
|
345
|
+
foreground: args.foreground,
|
|
346
|
+
dev: args.dev,
|
|
347
|
+
isTTY: process.stdout.isTTY === true
|
|
348
|
+
});
|
|
349
|
+
if (detached && requestedPort === 0) {
|
|
350
|
+
throw new Error(
|
|
351
|
+
"--port 0 (pick a free port) needs a foreground server, because the detached session cannot report the port it chose back to this process. Use `mesh docs start --foreground --port 0`, or pass an explicit port to run detached."
|
|
352
|
+
);
|
|
353
|
+
}
|
|
354
|
+
const localRoots = discoverDocRoots(args.repoRoot);
|
|
355
|
+
const repoHasDocs = localRoots.roots.length > 0;
|
|
356
|
+
const registryMode = args.version !== void 0 || !repoHasDocs;
|
|
357
|
+
let serveRoot;
|
|
358
|
+
let label;
|
|
359
|
+
if (registryMode) {
|
|
360
|
+
const auth = registryAuthOrThrow();
|
|
361
|
+
const version = args.version === void 0 || args.version === "latest" ? (await listDocsVersions(auth)).latest : args.version;
|
|
362
|
+
if (!version) {
|
|
363
|
+
throw new Error(`the registry has no ${DOCS_PACKAGE} versions tagged latest`);
|
|
364
|
+
}
|
|
365
|
+
logInfo(`Fetching ${DOCS_PACKAGE}@${version} from the registry\u2026`);
|
|
366
|
+
const artifactDir = await fetchDocsArtifact(auth, version);
|
|
367
|
+
serveRoot = path2.join(artifactDir, "dist");
|
|
368
|
+
label = `@mesh-tech/* ${version} (published artifact)`;
|
|
369
|
+
} else {
|
|
370
|
+
if (localRoots.errors.length > 0) {
|
|
371
|
+
for (const error of localRoots.errors) logError(error);
|
|
372
|
+
throw new Error(`docs discovery failed with ${localRoots.errors.length} problem(s)`);
|
|
373
|
+
}
|
|
374
|
+
const appDir = path2.join(args.repoRoot, DOCS_APP_DIR);
|
|
375
|
+
if (args.dev) {
|
|
376
|
+
const result2 = runAssemble({
|
|
377
|
+
repoRoot: args.repoRoot,
|
|
378
|
+
outDir: path2.join(appDir, "content"),
|
|
379
|
+
configOut: path2.join(appDir, "zudoku.config.ts")
|
|
380
|
+
});
|
|
381
|
+
reportAssembly(result2);
|
|
382
|
+
const { spawn: spawn2 } = await import("node:child_process");
|
|
383
|
+
const child = spawn2("pnpm", ["exec", "zudoku", "dev", "--port", String(requestedPort)], {
|
|
384
|
+
cwd: appDir,
|
|
385
|
+
stdio: "inherit",
|
|
386
|
+
env: process.env
|
|
387
|
+
});
|
|
388
|
+
await new Promise((resolve) => {
|
|
389
|
+
child.on("close", () => resolve());
|
|
390
|
+
process.once("SIGINT", () => child.kill("SIGINT"));
|
|
391
|
+
process.once("SIGTERM", () => child.kill("SIGTERM"));
|
|
392
|
+
});
|
|
393
|
+
return;
|
|
394
|
+
}
|
|
395
|
+
const buildLog = path2.join(args.repoRoot, DOCS_APP_DIR, "build.log");
|
|
396
|
+
logInfo(`Preparing the docs from this checkout (assemble + build \u2014 log: ${path2.relative(args.repoRoot, buildLog)})\u2026`);
|
|
397
|
+
const result = runAssemble({
|
|
398
|
+
repoRoot: args.repoRoot,
|
|
399
|
+
outDir: path2.join(appDir, "content"),
|
|
400
|
+
configOut: path2.join(appDir, "zudoku.config.ts")
|
|
401
|
+
});
|
|
402
|
+
reportAssembly(result);
|
|
403
|
+
const { spawn } = await import("node:child_process");
|
|
404
|
+
writeFileSync2(buildLog, "");
|
|
405
|
+
const code = await new Promise((resolve) => {
|
|
406
|
+
const child = spawn("pnpm", ["exec", "zudoku", "build"], {
|
|
407
|
+
cwd: appDir,
|
|
408
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
409
|
+
env: process.env
|
|
410
|
+
});
|
|
411
|
+
child.stdout?.on("data", (chunk) => appendFileSync(buildLog, chunk));
|
|
412
|
+
child.stderr?.on("data", (chunk) => appendFileSync(buildLog, chunk));
|
|
413
|
+
child.on("error", () => resolve(1));
|
|
414
|
+
child.on("close", (exitCode) => resolve(exitCode ?? 1));
|
|
415
|
+
});
|
|
416
|
+
if (code !== 0) throw new Error(`zudoku build exited with code ${code} \u2014 see ${buildLog}`);
|
|
417
|
+
serveRoot = path2.join(appDir, "dist");
|
|
418
|
+
label = "this checkout";
|
|
419
|
+
}
|
|
420
|
+
if (detached) {
|
|
421
|
+
const runtime = resolveCliRuntime({ vcs: false });
|
|
422
|
+
await startDetached({
|
|
423
|
+
mode: runtime.mode,
|
|
424
|
+
repoRoot: args.repoRoot,
|
|
425
|
+
serveRoot,
|
|
426
|
+
port: requestedPort,
|
|
427
|
+
label
|
|
428
|
+
});
|
|
429
|
+
return;
|
|
430
|
+
}
|
|
431
|
+
const server = await serveDocsSite({ root: serveRoot, port: requestedPort });
|
|
432
|
+
logSuccess(`Mesh docs (${label}) serving at ${server.url}`);
|
|
433
|
+
logInfo("Press Ctrl-C to stop");
|
|
434
|
+
await new Promise((resolve) => {
|
|
435
|
+
const stop = () => {
|
|
436
|
+
void server.close().finally(() => resolve());
|
|
437
|
+
};
|
|
438
|
+
process.once("SIGINT", stop);
|
|
439
|
+
process.once("SIGTERM", stop);
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
export {
|
|
443
|
+
DOCS_TMUX_SESSION,
|
|
444
|
+
docsSessionExists,
|
|
445
|
+
runDocsList,
|
|
446
|
+
runDocsServeStatic,
|
|
447
|
+
runDocsStart,
|
|
448
|
+
runDocsStop,
|
|
449
|
+
shouldDetach,
|
|
450
|
+
startDetached,
|
|
451
|
+
tmuxAvailable,
|
|
452
|
+
tmuxInstallHint,
|
|
453
|
+
tmuxServeArgs
|
|
454
|
+
};
|