primitive-admin 1.1.0-alpha.43 → 1.1.0-alpha.45
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/README.md +2 -2
- package/dist/bin/primitive.js +0 -0
- package/dist/src/commands/blob-buckets.js +20 -7
- package/dist/src/commands/blob-buckets.js.map +1 -1
- package/dist/src/commands/catalog.js +3 -3
- package/dist/src/commands/catalog.js.map +1 -1
- package/dist/src/commands/databases.js +3 -3
- package/dist/src/commands/databases.js.map +1 -1
- package/dist/src/commands/guides.d.ts +86 -0
- package/dist/src/commands/guides.js +222 -41
- package/dist/src/commands/guides.js.map +1 -1
- package/dist/src/commands/integrations.js +2 -2
- package/dist/src/commands/integrations.js.map +1 -1
- package/dist/src/commands/prompts.js +2 -2
- package/dist/src/commands/prompts.js.map +1 -1
- package/dist/src/commands/sync.d.ts +23 -3
- package/dist/src/commands/sync.js +370 -121
- package/dist/src/commands/sync.js.map +1 -1
- package/dist/src/commands/workflows.js +191 -26
- package/dist/src/commands/workflows.js.map +1 -1
- package/dist/src/lib/api-client.d.ts +1 -0
- package/dist/src/lib/api-client.js +4 -0
- package/dist/src/lib/api-client.js.map +1 -1
- package/dist/src/lib/block-layout.js +5 -5
- package/dist/src/lib/block-layout.js.map +1 -1
- package/dist/src/lib/codegen-shared/generatedFiles.d.ts +61 -0
- package/dist/src/lib/codegen-shared/generatedFiles.js +127 -0
- package/dist/src/lib/codegen-shared/generatedFiles.js.map +1 -0
- package/dist/src/lib/config-toml.d.ts +10 -0
- package/dist/src/lib/config-toml.js +42 -0
- package/dist/src/lib/config-toml.js.map +1 -0
- package/dist/src/lib/constants.d.ts +9 -0
- package/dist/src/lib/constants.js +9 -0
- package/dist/src/lib/constants.js.map +1 -1
- package/dist/src/lib/db-codegen/dbGenerator.d.ts +35 -7
- package/dist/src/lib/db-codegen/dbGenerator.js +384 -125
- package/dist/src/lib/db-codegen/dbGenerator.js.map +1 -1
- package/dist/src/lib/db-codegen/dbNaming.d.ts +29 -0
- package/dist/src/lib/db-codegen/dbNaming.js +58 -0
- package/dist/src/lib/db-codegen/dbNaming.js.map +1 -1
- package/dist/src/lib/db-codegen/dbTemplates.d.ts +114 -5
- package/dist/src/lib/db-codegen/dbTemplates.js +163 -16
- package/dist/src/lib/db-codegen/dbTemplates.js.map +1 -1
- package/dist/src/lib/db-codegen/dbTsTypes.d.ts +7 -3
- package/dist/src/lib/db-codegen/dbTsTypes.js +23 -1
- package/dist/src/lib/db-codegen/dbTsTypes.js.map +1 -1
- package/dist/src/lib/generated-allowlist.js +14 -0
- package/dist/src/lib/generated-allowlist.js.map +1 -1
- package/dist/src/lib/init-config.js +2 -2
- package/dist/src/lib/init-config.js.map +1 -1
- package/dist/src/lib/toml-database-config.d.ts +10 -39
- package/dist/src/lib/toml-database-config.js +16 -82
- package/dist/src/lib/toml-database-config.js.map +1 -1
- package/dist/src/lib/toml-metadata-config.d.ts +1 -1
- package/dist/src/lib/toml-metadata-config.js +3 -3
- package/dist/src/lib/toml-metadata-config.js.map +1 -1
- package/dist/src/lib/toml-native-form.d.ts +46 -0
- package/dist/src/lib/toml-native-form.js +78 -0
- package/dist/src/lib/toml-native-form.js.map +1 -0
- package/dist/src/lib/workflow-codegen/generated-schema-descriptor.d.ts +96 -0
- package/dist/src/lib/workflow-codegen/generated-schema-descriptor.js +112 -0
- package/dist/src/lib/workflow-codegen/generated-schema-descriptor.js.map +1 -0
- package/dist/src/lib/workflow-codegen/generator.d.ts +70 -0
- package/dist/src/lib/workflow-codegen/generator.js +186 -0
- package/dist/src/lib/workflow-codegen/generator.js.map +1 -0
- package/dist/src/lib/workflow-codegen/naming.d.ts +33 -0
- package/dist/src/lib/workflow-codegen/naming.js +81 -0
- package/dist/src/lib/workflow-codegen/naming.js.map +1 -0
- package/dist/src/lib/workflow-codegen/schemaToTs.d.ts +55 -0
- package/dist/src/lib/workflow-codegen/schemaToTs.js +237 -0
- package/dist/src/lib/workflow-codegen/schemaToTs.js.map +1 -0
- package/dist/src/lib/workflow-fragments.js +3 -3
- package/dist/src/lib/workflow-fragments.js.map +1 -1
- package/dist/src/lib/workflow-toml-validator.d.ts +1 -1
- package/dist/src/lib/workflow-toml-validator.js +1 -1
- package/dist/src/validators.d.ts +4 -3
- package/dist/src/validators.js +6 -5
- package/dist/src/validators.js.map +1 -1
- package/package.json +5 -3
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
+
/**
|
|
3
|
+
* Normalize a server URL for comparison against `ALPHA_SERVER_URL`: keep the
|
|
4
|
+
* scheme/host/port, strip all trailing slashes from the pathname. Returns null
|
|
5
|
+
* for an unparseable value. `http` vs `https` intentionally does NOT normalize
|
|
6
|
+
* to the same string (scheme is significant), and a custom domain is never an
|
|
7
|
+
* alias of the alpha constant.
|
|
8
|
+
*/
|
|
9
|
+
export declare function normalizeServerUrl(raw: string): string | null;
|
|
10
|
+
/**
|
|
11
|
+
* Is `value` a plausible git branch ref that is safe to interpolate into a raw
|
|
12
|
+
* GitHub URL path? Deliberately strict — only ASCII letters/digits and
|
|
13
|
+
* `._/-`, no leading dash, no `..`, capped length. This guards the
|
|
14
|
+
* `PRIMITIVE_GUIDES_BRANCH` override so no arbitrary string reaches the URL.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isValidBranchName(value: string): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Resolve which `primitive-docs` branch to fetch guides from.
|
|
19
|
+
*
|
|
20
|
+
* Precedence (issue #1463):
|
|
21
|
+
* 1. `PRIMITIVE_GUIDES_BRANCH` override (undocumented, internal). Takes
|
|
22
|
+
* precedence over detection. An empty value is ignored; a value that is
|
|
23
|
+
* not a plausible git ref is rejected (throws) so no arbitrary string is
|
|
24
|
+
* interpolated into a raw GitHub URL.
|
|
25
|
+
* 2. Alpha detection: a normalized-URL match of the resolved server URL
|
|
26
|
+
* against `ALPHA_SERVER_URL` → `next`.
|
|
27
|
+
* 3. Otherwise `main` (production / local / any non-alpha target, or no
|
|
28
|
+
* target at all when the CLI is logged out).
|
|
29
|
+
*
|
|
30
|
+
* Pure and side-effect free: the caller passes the resolved server URL (or
|
|
31
|
+
* `undefined` when `getServerUrl()` threw) and the override, so this is fully
|
|
32
|
+
* unit-testable without config/credentials.
|
|
33
|
+
*/
|
|
34
|
+
export declare function resolveDocsBranch(serverUrl: string | undefined, override?: string | undefined): string;
|
|
2
35
|
/**
|
|
3
36
|
* A single available guide variant. `file` is always present; `language`
|
|
4
37
|
* and/or `platform` are optional — an omitted dimension means the variant is
|
|
@@ -48,6 +81,12 @@ export interface Manifest {
|
|
|
48
81
|
}>;
|
|
49
82
|
guides: Guide[];
|
|
50
83
|
}
|
|
84
|
+
interface VersionInfo {
|
|
85
|
+
version: string;
|
|
86
|
+
source: "flag" | "detected" | "default";
|
|
87
|
+
clientVersion?: string;
|
|
88
|
+
fallbackFrom?: string;
|
|
89
|
+
}
|
|
51
90
|
/**
|
|
52
91
|
* Normalize a `--language` flag value: lowercase, trim, and map known aliases
|
|
53
92
|
* (typescript/javascript/js → ts). Unknown values pass through unchanged.
|
|
@@ -147,6 +186,52 @@ export interface ResolveResult {
|
|
|
147
186
|
* (`--platform swift` → "Did you mean --language swift?", and vice versa).
|
|
148
187
|
*/
|
|
149
188
|
export declare function validateAndResolveRequest(manifest: Manifest, rawLanguage: string | undefined, rawPlatform: string | undefined): ResolveResult;
|
|
189
|
+
export declare function buildManifestUrl(branch: string, version: string): string;
|
|
190
|
+
export declare function buildGuideUrl(branch: string, version: string, fileName: string): string;
|
|
191
|
+
interface FetchManifestResult {
|
|
192
|
+
manifest: Manifest;
|
|
193
|
+
fromCache: boolean;
|
|
194
|
+
stale: boolean;
|
|
195
|
+
versionInfo: VersionInfo;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Thrown by `fetchManifest` when a branch/version genuinely has no published
|
|
199
|
+
* manifest — every candidate manifest URL returned 404. Distinct from a
|
|
200
|
+
* transport or server error (timeout, DNS, 5xx), which `fetchManifest` lets
|
|
201
|
+
* propagate as a plain `Error`. `resolveManifest` relies on this distinction:
|
|
202
|
+
* only a truly-absent branch may fall back to `main`; a transient failure must
|
|
203
|
+
* surface so an alpha/preview invocation is never silently downgraded to
|
|
204
|
+
* production `main` docs on a flake (#1463).
|
|
205
|
+
*/
|
|
206
|
+
export declare class ManifestNotFoundError extends Error {
|
|
207
|
+
constructor(message: string);
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* The manifest, plus the branch it was actually served from. `branchFellBack`
|
|
211
|
+
* is true when a non-`main` branch (`next`, or a `PRIMITIVE_GUIDES_BRANCH`
|
|
212
|
+
* override) had no manifest and we fell back to `main` (#1463, behavior 3).
|
|
213
|
+
*/
|
|
214
|
+
interface ResolvedManifest extends FetchManifestResult {
|
|
215
|
+
branch: string;
|
|
216
|
+
requestedBranch: string;
|
|
217
|
+
branchFellBack: boolean;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Fetch the manifest for `requestedBranch`, falling back to `main` **only when
|
|
221
|
+
* the non-`main` branch has no published manifest** — i.e. every candidate URL
|
|
222
|
+
* 404s and `fetchManifest` throws a `ManifestNotFoundError`. That fallback is
|
|
223
|
+
* what makes the alpha `next` target safe before `primitive-docs` publishes its
|
|
224
|
+
* `next` guides, and it covers a `PRIMITIVE_GUIDES_BRANCH` override that names a
|
|
225
|
+
* nonexistent branch.
|
|
226
|
+
*
|
|
227
|
+
* A transport or server error (timeout, DNS, 5xx) on the requested branch is
|
|
228
|
+
* NOT a missing branch — it arrives as a plain `Error` and is re-thrown, never
|
|
229
|
+
* downgraded to `main`. Silently serving production `main` docs for an
|
|
230
|
+
* alpha/preview invocation because of a transient flake would be wrong: a
|
|
231
|
+
* preview run must fail loudly rather than quietly return the wrong branch's
|
|
232
|
+
* docs (#1463).
|
|
233
|
+
*/
|
|
234
|
+
export declare function resolveManifest(requestedBranch: string, versionInfo: VersionInfo, forceRefresh?: boolean): Promise<ResolvedManifest>;
|
|
150
235
|
/**
|
|
151
236
|
* Compact rendering of the LANGUAGES a guide offers, for the `guides list`
|
|
152
237
|
* table (issue #1219 renamed the ambiguous `COMBINATIONS` column to
|
|
@@ -157,3 +242,4 @@ export declare function validateAndResolveRequest(manifest: Manifest, rawLanguag
|
|
|
157
242
|
*/
|
|
158
243
|
export declare function formatLanguages(guide: Guide): string;
|
|
159
244
|
export declare function registerGuidesCommands(program: Command): void;
|
|
245
|
+
export {};
|
|
@@ -2,13 +2,97 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
|
2
2
|
import { homedir } from "os";
|
|
3
3
|
import { join, basename } from "path";
|
|
4
4
|
import { error, info, warn, formatTable, json, keyValue, } from "../lib/output.js";
|
|
5
|
+
import { getServerUrl } from "../lib/config.js";
|
|
6
|
+
import { ALPHA_SERVER_URL } from "../lib/constants.js";
|
|
5
7
|
const GUIDES_CACHE_DIR = process.env.PRIMITIVE_CONFIG_DIR
|
|
6
8
|
? join(process.env.PRIMITIVE_CONFIG_DIR, "guides")
|
|
7
9
|
: join(homedir(), ".primitive", "guides");
|
|
8
10
|
const CACHE_META_FILE = join(GUIDES_CACHE_DIR, "cache-meta.json");
|
|
9
|
-
const
|
|
11
|
+
const GITHUB_RAW_ROOT = "https://raw.githubusercontent.com/Primitive-Labs/primitive-docs";
|
|
12
|
+
const DEFAULT_DOCS_BRANCH = "main";
|
|
10
13
|
const CACHE_TTL_MS = 24 * 60 * 60 * 1000; // 24 hours
|
|
11
14
|
const CLIENT_PACKAGE_NAME = "js-bao-wss-client";
|
|
15
|
+
/**
|
|
16
|
+
* Normalize a server URL for comparison against `ALPHA_SERVER_URL`: keep the
|
|
17
|
+
* scheme/host/port, strip all trailing slashes from the pathname. Returns null
|
|
18
|
+
* for an unparseable value. `http` vs `https` intentionally does NOT normalize
|
|
19
|
+
* to the same string (scheme is significant), and a custom domain is never an
|
|
20
|
+
* alias of the alpha constant.
|
|
21
|
+
*/
|
|
22
|
+
export function normalizeServerUrl(raw) {
|
|
23
|
+
try {
|
|
24
|
+
const u = new URL(raw);
|
|
25
|
+
const path = u.pathname.replace(/\/+$/, "");
|
|
26
|
+
return `${u.protocol}//${u.host}${path}`;
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Is `value` a plausible git branch ref that is safe to interpolate into a raw
|
|
34
|
+
* GitHub URL path? Deliberately strict — only ASCII letters/digits and
|
|
35
|
+
* `._/-`, no leading dash, no `..`, capped length. This guards the
|
|
36
|
+
* `PRIMITIVE_GUIDES_BRANCH` override so no arbitrary string reaches the URL.
|
|
37
|
+
*/
|
|
38
|
+
export function isValidBranchName(value) {
|
|
39
|
+
if (value.length === 0 || value.length > 100)
|
|
40
|
+
return false;
|
|
41
|
+
if (value.includes(".."))
|
|
42
|
+
return false;
|
|
43
|
+
return /^[A-Za-z0-9][A-Za-z0-9._/-]*$/.test(value);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Resolve which `primitive-docs` branch to fetch guides from.
|
|
47
|
+
*
|
|
48
|
+
* Precedence (issue #1463):
|
|
49
|
+
* 1. `PRIMITIVE_GUIDES_BRANCH` override (undocumented, internal). Takes
|
|
50
|
+
* precedence over detection. An empty value is ignored; a value that is
|
|
51
|
+
* not a plausible git ref is rejected (throws) so no arbitrary string is
|
|
52
|
+
* interpolated into a raw GitHub URL.
|
|
53
|
+
* 2. Alpha detection: a normalized-URL match of the resolved server URL
|
|
54
|
+
* against `ALPHA_SERVER_URL` → `next`.
|
|
55
|
+
* 3. Otherwise `main` (production / local / any non-alpha target, or no
|
|
56
|
+
* target at all when the CLI is logged out).
|
|
57
|
+
*
|
|
58
|
+
* Pure and side-effect free: the caller passes the resolved server URL (or
|
|
59
|
+
* `undefined` when `getServerUrl()` threw) and the override, so this is fully
|
|
60
|
+
* unit-testable without config/credentials.
|
|
61
|
+
*/
|
|
62
|
+
export function resolveDocsBranch(serverUrl, override = process.env.PRIMITIVE_GUIDES_BRANCH) {
|
|
63
|
+
const trimmedOverride = override?.trim();
|
|
64
|
+
if (trimmedOverride) {
|
|
65
|
+
if (!isValidBranchName(trimmedOverride)) {
|
|
66
|
+
throw new Error(`Invalid PRIMITIVE_GUIDES_BRANCH "${override}": must be a plausible git branch name.`);
|
|
67
|
+
}
|
|
68
|
+
return trimmedOverride;
|
|
69
|
+
}
|
|
70
|
+
if (serverUrl) {
|
|
71
|
+
const target = normalizeServerUrl(serverUrl);
|
|
72
|
+
const alpha = normalizeServerUrl(ALPHA_SERVER_URL);
|
|
73
|
+
if (target !== null && alpha !== null && target === alpha) {
|
|
74
|
+
return "next";
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return DEFAULT_DOCS_BRANCH;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Resolve the docs branch for the current invocation, reading the target from
|
|
81
|
+
* `getServerUrl()`. Logged-out / legacy-no-creds makes `getServerUrl()` throw;
|
|
82
|
+
* we treat that as "no target" and fall back to `main` (the override still
|
|
83
|
+
* applies). Only the branch decision is wrapped here — an invalid override
|
|
84
|
+
* still throws out to the command's error handler.
|
|
85
|
+
*/
|
|
86
|
+
function resolveDocsBranchForInvocation() {
|
|
87
|
+
let serverUrl;
|
|
88
|
+
try {
|
|
89
|
+
serverUrl = getServerUrl();
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
serverUrl = undefined;
|
|
93
|
+
}
|
|
94
|
+
return resolveDocsBranch(serverUrl);
|
|
95
|
+
}
|
|
12
96
|
// Language aliases — map the agent's natural vocabulary onto canonical values.
|
|
13
97
|
const LANGUAGE_ALIASES = {
|
|
14
98
|
typescript: "ts",
|
|
@@ -237,18 +321,21 @@ function formatClientVersion(info) {
|
|
|
237
321
|
function formatGuidesVersion(info) {
|
|
238
322
|
return info.version;
|
|
239
323
|
}
|
|
240
|
-
|
|
241
|
-
|
|
324
|
+
// Cache paths are segmented by branch (#1463): ~/.primitive/guides/{branch}/
|
|
325
|
+
// {version}/... so a `next` fetch never overwrites the `main` cached copy of
|
|
326
|
+
// the same version+filename (and vice versa).
|
|
327
|
+
function getVersionCacheDir(branch, version) {
|
|
328
|
+
return join(GUIDES_CACHE_DIR, branch, version);
|
|
242
329
|
}
|
|
243
|
-
function getManifestPath(version) {
|
|
244
|
-
return join(getVersionCacheDir(version), "manifest.json");
|
|
330
|
+
function getManifestPath(branch, version) {
|
|
331
|
+
return join(getVersionCacheDir(branch, version), "manifest.json");
|
|
245
332
|
}
|
|
246
|
-
function getGuidesCacheDir(version) {
|
|
247
|
-
return join(getVersionCacheDir(version), "guides");
|
|
333
|
+
function getGuidesCacheDir(branch, version) {
|
|
334
|
+
return join(getVersionCacheDir(branch, version), "guides");
|
|
248
335
|
}
|
|
249
|
-
function ensureCacheDir(version) {
|
|
250
|
-
const versionDir = getVersionCacheDir(version);
|
|
251
|
-
const guidesDir = getGuidesCacheDir(version);
|
|
336
|
+
function ensureCacheDir(branch, version) {
|
|
337
|
+
const versionDir = getVersionCacheDir(branch, version);
|
|
338
|
+
const guidesDir = getGuidesCacheDir(branch, version);
|
|
252
339
|
if (!existsSync(versionDir)) {
|
|
253
340
|
mkdirSync(versionDir, { recursive: true });
|
|
254
341
|
}
|
|
@@ -279,11 +366,15 @@ function isCacheExpired(fetchedAt) {
|
|
|
279
366
|
const fetchedTime = new Date(fetchedAt).getTime();
|
|
280
367
|
return Date.now() - fetchedTime > CACHE_TTL_MS;
|
|
281
368
|
}
|
|
282
|
-
|
|
283
|
-
|
|
369
|
+
/** The raw-GitHub base for a docs branch, e.g. `.../primitive-docs/next/guides`. */
|
|
370
|
+
function githubRawBase(branch) {
|
|
371
|
+
return `${GITHUB_RAW_ROOT}/${branch}/guides`;
|
|
372
|
+
}
|
|
373
|
+
export function buildManifestUrl(branch, version) {
|
|
374
|
+
return `${githubRawBase(branch)}/${version}/guides.json`;
|
|
284
375
|
}
|
|
285
|
-
function
|
|
286
|
-
return `${
|
|
376
|
+
export function buildGuideUrl(branch, version, fileName) {
|
|
377
|
+
return `${githubRawBase(branch)}/${version}/${fileName}`;
|
|
287
378
|
}
|
|
288
379
|
async function fetchWithTimeout(url, timeoutMs = 10000) {
|
|
289
380
|
const controller = new AbortController();
|
|
@@ -296,11 +387,26 @@ async function fetchWithTimeout(url, timeoutMs = 10000) {
|
|
|
296
387
|
clearTimeout(timeout);
|
|
297
388
|
}
|
|
298
389
|
}
|
|
299
|
-
|
|
300
|
-
|
|
390
|
+
/**
|
|
391
|
+
* Thrown by `fetchManifest` when a branch/version genuinely has no published
|
|
392
|
+
* manifest — every candidate manifest URL returned 404. Distinct from a
|
|
393
|
+
* transport or server error (timeout, DNS, 5xx), which `fetchManifest` lets
|
|
394
|
+
* propagate as a plain `Error`. `resolveManifest` relies on this distinction:
|
|
395
|
+
* only a truly-absent branch may fall back to `main`; a transient failure must
|
|
396
|
+
* surface so an alpha/preview invocation is never silently downgraded to
|
|
397
|
+
* production `main` docs on a flake (#1463).
|
|
398
|
+
*/
|
|
399
|
+
export class ManifestNotFoundError extends Error {
|
|
400
|
+
constructor(message) {
|
|
401
|
+
super(message);
|
|
402
|
+
this.name = "ManifestNotFoundError";
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
async function fetchManifestForVersion(branch, version, forceRefresh = false) {
|
|
406
|
+
ensureCacheDir(branch, version);
|
|
301
407
|
const meta = loadCacheMeta();
|
|
302
|
-
const manifestPath = getManifestPath(version);
|
|
303
|
-
const cacheExpired = isCacheExpired(meta.manifestFetchedAt?.[version]);
|
|
408
|
+
const manifestPath = getManifestPath(branch, version);
|
|
409
|
+
const cacheExpired = isCacheExpired(meta.manifestFetchedAt?.[branch]?.[version]);
|
|
304
410
|
const hasCachedManifest = existsSync(manifestPath);
|
|
305
411
|
// If cache is valid and not forcing refresh, use it
|
|
306
412
|
if (!forceRefresh && !cacheExpired && hasCachedManifest) {
|
|
@@ -313,11 +419,11 @@ async function fetchManifestForVersion(version, forceRefresh = false) {
|
|
|
313
419
|
}
|
|
314
420
|
}
|
|
315
421
|
// Try to fetch from network
|
|
316
|
-
const manifestUrl =
|
|
422
|
+
const manifestUrl = buildManifestUrl(branch, version);
|
|
317
423
|
try {
|
|
318
424
|
const response = await fetchWithTimeout(manifestUrl);
|
|
319
425
|
if (response.status === 404) {
|
|
320
|
-
return null; // Version doesn't exist
|
|
426
|
+
return null; // Version (or branch) doesn't exist
|
|
321
427
|
}
|
|
322
428
|
if (!response.ok) {
|
|
323
429
|
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
@@ -326,7 +432,8 @@ async function fetchManifestForVersion(version, forceRefresh = false) {
|
|
|
326
432
|
// Save to cache
|
|
327
433
|
writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
|
|
328
434
|
meta.manifestFetchedAt = meta.manifestFetchedAt || {};
|
|
329
|
-
meta.manifestFetchedAt[
|
|
435
|
+
meta.manifestFetchedAt[branch] = meta.manifestFetchedAt[branch] || {};
|
|
436
|
+
meta.manifestFetchedAt[branch][version] = new Date().toISOString();
|
|
330
437
|
saveCacheMeta(meta);
|
|
331
438
|
return { manifest, fromCache: false, stale: false };
|
|
332
439
|
}
|
|
@@ -344,15 +451,15 @@ async function fetchManifestForVersion(version, forceRefresh = false) {
|
|
|
344
451
|
throw new Error(`Failed to fetch guides manifest: ${err.message}`);
|
|
345
452
|
}
|
|
346
453
|
}
|
|
347
|
-
async function fetchManifest(versionInfo, forceRefresh = false) {
|
|
454
|
+
async function fetchManifest(branch, versionInfo, forceRefresh = false) {
|
|
348
455
|
// Try the requested version first
|
|
349
|
-
const result = await fetchManifestForVersion(versionInfo.version, forceRefresh);
|
|
456
|
+
const result = await fetchManifestForVersion(branch, versionInfo.version, forceRefresh);
|
|
350
457
|
if (result) {
|
|
351
458
|
return { ...result, versionInfo };
|
|
352
459
|
}
|
|
353
460
|
// Version not found, fall back to latest (unless already trying latest)
|
|
354
461
|
if (versionInfo.version !== "latest") {
|
|
355
|
-
const fallbackResult = await fetchManifestForVersion("latest", forceRefresh);
|
|
462
|
+
const fallbackResult = await fetchManifestForVersion(branch, "latest", forceRefresh);
|
|
356
463
|
if (fallbackResult) {
|
|
357
464
|
const fallbackInfo = {
|
|
358
465
|
version: "latest",
|
|
@@ -363,7 +470,67 @@ async function fetchManifest(versionInfo, forceRefresh = false) {
|
|
|
363
470
|
return { ...fallbackResult, versionInfo: fallbackInfo };
|
|
364
471
|
}
|
|
365
472
|
}
|
|
366
|
-
|
|
473
|
+
// Every candidate URL 404'd — the branch/version is genuinely absent. Signal
|
|
474
|
+
// this with a typed error so `resolveManifest` can tell it apart from a
|
|
475
|
+
// transport/server error (which arrives as a plain `Error` from
|
|
476
|
+
// `fetchManifestForVersion`) and only fall back to `main` in the former case.
|
|
477
|
+
throw new ManifestNotFoundError(`Failed to fetch guides manifest for ${versionInfo.version}`);
|
|
478
|
+
}
|
|
479
|
+
/**
|
|
480
|
+
* Fetch the manifest for `requestedBranch`, falling back to `main` **only when
|
|
481
|
+
* the non-`main` branch has no published manifest** — i.e. every candidate URL
|
|
482
|
+
* 404s and `fetchManifest` throws a `ManifestNotFoundError`. That fallback is
|
|
483
|
+
* what makes the alpha `next` target safe before `primitive-docs` publishes its
|
|
484
|
+
* `next` guides, and it covers a `PRIMITIVE_GUIDES_BRANCH` override that names a
|
|
485
|
+
* nonexistent branch.
|
|
486
|
+
*
|
|
487
|
+
* A transport or server error (timeout, DNS, 5xx) on the requested branch is
|
|
488
|
+
* NOT a missing branch — it arrives as a plain `Error` and is re-thrown, never
|
|
489
|
+
* downgraded to `main`. Silently serving production `main` docs for an
|
|
490
|
+
* alpha/preview invocation because of a transient flake would be wrong: a
|
|
491
|
+
* preview run must fail loudly rather than quietly return the wrong branch's
|
|
492
|
+
* docs (#1463).
|
|
493
|
+
*/
|
|
494
|
+
export async function resolveManifest(requestedBranch, versionInfo, forceRefresh = false) {
|
|
495
|
+
try {
|
|
496
|
+
const result = await fetchManifest(requestedBranch, versionInfo, forceRefresh);
|
|
497
|
+
return { ...result, branch: requestedBranch, requestedBranch, branchFellBack: false };
|
|
498
|
+
}
|
|
499
|
+
catch (err) {
|
|
500
|
+
// Only a genuinely-absent branch/version (a 404 on every candidate URL) may
|
|
501
|
+
// fall back to `main`. A transport/server error must surface — see the
|
|
502
|
+
// function doc.
|
|
503
|
+
if (!(err instanceof ManifestNotFoundError)) {
|
|
504
|
+
throw err;
|
|
505
|
+
}
|
|
506
|
+
if (requestedBranch === DEFAULT_DOCS_BRANCH) {
|
|
507
|
+
throw err; // already on main; nothing to fall back to
|
|
508
|
+
}
|
|
509
|
+
const result = await fetchManifest(DEFAULT_DOCS_BRANCH, versionInfo, forceRefresh);
|
|
510
|
+
return {
|
|
511
|
+
...result,
|
|
512
|
+
branch: DEFAULT_DOCS_BRANCH,
|
|
513
|
+
requestedBranch,
|
|
514
|
+
branchFellBack: true,
|
|
515
|
+
};
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
/**
|
|
519
|
+
* One stderr line reporting the served docs branch, only when a non-`main`
|
|
520
|
+
* branch was requested (alpha detection or the override) — a plain `main`
|
|
521
|
+
* target prints nothing so stdout/stderr stay clean for the common case
|
|
522
|
+
* (#1463, behavior 8). Uses `info()` (stderr) so guide content on stdout is
|
|
523
|
+
* never polluted.
|
|
524
|
+
*/
|
|
525
|
+
function reportDocsBranch(resolved) {
|
|
526
|
+
if (resolved.requestedBranch === DEFAULT_DOCS_BRANCH)
|
|
527
|
+
return;
|
|
528
|
+
if (resolved.branchFellBack) {
|
|
529
|
+
info(`Guides branch: ${resolved.requestedBranch} unavailable; using main`);
|
|
530
|
+
}
|
|
531
|
+
else {
|
|
532
|
+
info(`Guides branch: ${resolved.requestedBranch}`);
|
|
533
|
+
}
|
|
367
534
|
}
|
|
368
535
|
/**
|
|
369
536
|
* Internal error thrown by `fetchGuide` on a non-ok guide-file response. NOT
|
|
@@ -396,16 +563,17 @@ function readCachedGuide(cachedPath) {
|
|
|
396
563
|
return undefined; // corrupted cache
|
|
397
564
|
}
|
|
398
565
|
}
|
|
399
|
-
async function fetchGuide(guide, version, request = {}, forceRefresh = false) {
|
|
400
|
-
ensureCacheDir(version);
|
|
566
|
+
async function fetchGuide(guide, branch, version, request = {}, forceRefresh = false) {
|
|
567
|
+
ensureCacheDir(branch, version);
|
|
401
568
|
const meta = loadCacheMeta();
|
|
402
569
|
// Resolve the variant filename for the requested (language, platform).
|
|
403
570
|
const { file: selectedFile } = selectVariant(guide, request);
|
|
404
571
|
const guideFileName = basename(selectedFile);
|
|
405
|
-
const cachedPath = join(getGuidesCacheDir(version), guideFileName);
|
|
406
|
-
// Freshness is keyed by the RESOLVED filename (not topic)
|
|
407
|
-
// cannot mark the `swift` variant fresh
|
|
408
|
-
|
|
572
|
+
const cachedPath = join(getGuidesCacheDir(branch, version), guideFileName);
|
|
573
|
+
// Freshness is keyed by branch + the RESOLVED filename (not topic): a `ts`
|
|
574
|
+
// fetch cannot mark the `swift` variant fresh (#977), and a `next` fetch
|
|
575
|
+
// cannot mark the `main` copy of the same file fresh (#1463, behavior 7).
|
|
576
|
+
const fetchedAt = meta.guidesFetchedAt?.[branch]?.[version]?.[guideFileName];
|
|
409
577
|
const cacheExpired = isCacheExpired(fetchedAt);
|
|
410
578
|
const hasCachedGuide = existsSync(cachedPath);
|
|
411
579
|
// If cache is valid and not forcing refresh, use it
|
|
@@ -419,7 +587,7 @@ async function fetchGuide(guide, version, request = {}, forceRefresh = false) {
|
|
|
419
587
|
}
|
|
420
588
|
}
|
|
421
589
|
// Try to fetch from network
|
|
422
|
-
const guideUrl =
|
|
590
|
+
const guideUrl = buildGuideUrl(branch, version, selectedFile);
|
|
423
591
|
try {
|
|
424
592
|
const response = await fetchWithTimeout(guideUrl);
|
|
425
593
|
if (response.status === 404) {
|
|
@@ -437,8 +605,9 @@ async function fetchGuide(guide, version, request = {}, forceRefresh = false) {
|
|
|
437
605
|
// Save to cache
|
|
438
606
|
writeFileSync(cachedPath, content);
|
|
439
607
|
meta.guidesFetchedAt = meta.guidesFetchedAt || {};
|
|
440
|
-
meta.guidesFetchedAt[
|
|
441
|
-
meta.guidesFetchedAt[
|
|
608
|
+
meta.guidesFetchedAt[branch] = meta.guidesFetchedAt[branch] || {};
|
|
609
|
+
meta.guidesFetchedAt[branch][version] = meta.guidesFetchedAt[branch][version] || {};
|
|
610
|
+
meta.guidesFetchedAt[branch][version][guideFileName] = new Date().toISOString();
|
|
442
611
|
saveCacheMeta(meta);
|
|
443
612
|
return { content, fromCache: false, stale: false, selectedFile };
|
|
444
613
|
}
|
|
@@ -549,7 +718,9 @@ Cache:
|
|
|
549
718
|
.action(async (options) => {
|
|
550
719
|
try {
|
|
551
720
|
const requestedVersion = resolveVersion(options.guideVersion);
|
|
552
|
-
const
|
|
721
|
+
const requestedBranch = resolveDocsBranchForInvocation();
|
|
722
|
+
const resolved = await resolveManifest(requestedBranch, requestedVersion, options.refresh);
|
|
723
|
+
const { manifest, stale, versionInfo, branch } = resolved;
|
|
553
724
|
// Validate the requested dimensions against the loaded manifest (same
|
|
554
725
|
// rules as `get`, for one mental model — Q3). They have no per-row
|
|
555
726
|
// effect on `list`, but an unknown value should fail loudly here too.
|
|
@@ -561,6 +732,8 @@ Cache:
|
|
|
561
732
|
const reqLanguage = normalizeLanguage(options.language);
|
|
562
733
|
const reqPlatform = normalizePlatform(options.platform);
|
|
563
734
|
const supportedLanguages = [...deriveLanguages(manifest)].sort();
|
|
735
|
+
// Report the served docs branch (stderr) when alpha/override is involved.
|
|
736
|
+
reportDocsBranch(resolved);
|
|
564
737
|
if (stale) {
|
|
565
738
|
warn("Using stale cache (network unavailable)");
|
|
566
739
|
}
|
|
@@ -568,6 +741,7 @@ Cache:
|
|
|
568
741
|
json({
|
|
569
742
|
version: versionInfo.version,
|
|
570
743
|
versionSource: versionInfo.source,
|
|
744
|
+
guidesBranch: branch,
|
|
571
745
|
defaults: manifest.defaults ?? null,
|
|
572
746
|
platforms: manifest.platforms ?? null,
|
|
573
747
|
supportedLanguages,
|
|
@@ -624,7 +798,7 @@ Cache:
|
|
|
624
798
|
{ header: "LANGUAGES", key: "languages" },
|
|
625
799
|
]));
|
|
626
800
|
console.log("");
|
|
627
|
-
keyValue("Cache location", getVersionCacheDir(versionInfo.version));
|
|
801
|
+
keyValue("Cache location", getVersionCacheDir(branch, versionInfo.version));
|
|
628
802
|
info("Use 'primitive guides get <topic> --language <ts|swift>' to fetch a guide.");
|
|
629
803
|
info("Example: primitive guides get documents --language swift");
|
|
630
804
|
}
|
|
@@ -646,7 +820,9 @@ Cache:
|
|
|
646
820
|
.action(async (topic, options) => {
|
|
647
821
|
try {
|
|
648
822
|
const requestedVersion = resolveVersion(options.guideVersion);
|
|
649
|
-
const
|
|
823
|
+
const requestedBranch = resolveDocsBranchForInvocation();
|
|
824
|
+
const resolved = await resolveManifest(requestedBranch, requestedVersion, options.refresh);
|
|
825
|
+
const { manifest, fromCache, stale: manifestStale, versionInfo, branch } = resolved;
|
|
650
826
|
const guide = manifest.guides.find((g) => g.topic.toLowerCase() === topic.toLowerCase());
|
|
651
827
|
if (!guide) {
|
|
652
828
|
const availableTopics = manifest.guides.map((g) => g.topic).join(", ");
|
|
@@ -673,12 +849,15 @@ Cache:
|
|
|
673
849
|
language: reqLanguage,
|
|
674
850
|
platform: reqPlatform,
|
|
675
851
|
});
|
|
852
|
+
// Report the served docs branch (stderr) when alpha/override is involved.
|
|
853
|
+
reportDocsBranch(resolved);
|
|
676
854
|
if (options.json) {
|
|
677
855
|
// Output just metadata — does NOT fetch content. `selectedFile` is the
|
|
678
856
|
// file that WOULD be served for this request (see selection above).
|
|
679
857
|
json({
|
|
680
858
|
version: versionInfo.version,
|
|
681
859
|
versionSource: versionInfo.source,
|
|
860
|
+
guidesBranch: branch,
|
|
682
861
|
topic: guide.topic,
|
|
683
862
|
description: guide.description,
|
|
684
863
|
keywords: guide.keywords,
|
|
@@ -692,14 +871,14 @@ Cache:
|
|
|
692
871
|
selectedFile: selection.file,
|
|
693
872
|
matchedOn: selection.matchedOn,
|
|
694
873
|
availableVariants: normalizeVariants(guide),
|
|
695
|
-
cacheLocation: join(getGuidesCacheDir(versionInfo.version), basename(selection.file)),
|
|
874
|
+
cacheLocation: join(getGuidesCacheDir(branch, versionInfo.version), basename(selection.file)),
|
|
696
875
|
});
|
|
697
876
|
return;
|
|
698
877
|
}
|
|
699
878
|
const request = { language: reqLanguage, platform: reqPlatform };
|
|
700
879
|
let result;
|
|
701
880
|
try {
|
|
702
|
-
result = await fetchGuide(guide, versionInfo.version, request, options.refresh);
|
|
881
|
+
result = await fetchGuide(guide, branch, versionInfo.version, request, options.refresh);
|
|
703
882
|
}
|
|
704
883
|
catch (err) {
|
|
705
884
|
// Only a 404 is healable here. Transport errors already served stale
|
|
@@ -714,13 +893,15 @@ Cache:
|
|
|
714
893
|
// authoritative, so we skip straight to the last resort below (#1034).
|
|
715
894
|
if (fromCache) {
|
|
716
895
|
try {
|
|
717
|
-
|
|
896
|
+
// Heal on the SAME branch the manifest resolved on, so the
|
|
897
|
+
// manifest and guide never disagree (#1463, behavior 4).
|
|
898
|
+
const refreshed = await fetchManifest(branch, requestedVersion, /* forceRefresh */ true);
|
|
718
899
|
const freshGuide = refreshed.manifest.guides.find((g) => g.topic.toLowerCase() === topic.toLowerCase());
|
|
719
900
|
if (freshGuide) {
|
|
720
901
|
// Re-calling fetchGuide recomputes selectVariant + the cache path
|
|
721
902
|
// for the (possibly new) filename — no extra resolve site. If the
|
|
722
903
|
// filename is unchanged it just 404s again and falls through.
|
|
723
|
-
const retried = await fetchGuide(freshGuide, refreshed.versionInfo.version, request, options.refresh);
|
|
904
|
+
const retried = await fetchGuide(freshGuide, branch, refreshed.versionInfo.version, request, options.refresh);
|
|
724
905
|
if (basename(retried.selectedFile) !== basename(err.selectedFile)) {
|
|
725
906
|
warn(`Guide "${topic}" file moved upstream; refreshed manifest and retried.`);
|
|
726
907
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guides.js","sourceRoot":"","sources":["../../../src/commands/guides.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"guides.js","sourceRoot":"","sources":["../../../src/commands/guides.ts"],"names":[],"mappings":"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"}
|