create-thally-docs 0.10.75 → 0.10.77

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.
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  STABLE_SCAFFOLD_RELEASE
4
- } from "./chunk-ZV5ARFUQ.js";
4
+ } from "./chunk-S5ZQSE5V.js";
5
5
 
6
6
  // src/starter-sync.ts
7
7
  import { createHash } from "crypto";
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  readStarterReleaseManifest
4
- } from "./chunk-65U6RKP2.js";
4
+ } from "./chunk-7KLBTC3I.js";
5
5
  import {
6
6
  STABLE_SCAFFOLD_RELEASE
7
- } from "./chunk-ZV5ARFUQ.js";
7
+ } from "./chunk-S5ZQSE5V.js";
8
8
 
9
9
  // src/download.ts
10
10
  import { Readable, Transform, pipeline } from "stream";
@@ -3,19 +3,19 @@
3
3
  // src/stable-scaffold-release.json
4
4
  var stable_scaffold_release_default = {
5
5
  schemaVersion: 1,
6
- id: "2026-10-01.4f272434.177e20c9",
6
+ id: "2026-10-02.644cbada.498675f5",
7
7
  source: {
8
8
  repository: "thallylabs/starter",
9
- commitSha: "4f2724342aadc6151fc2aa3dfdb8b7e169ee370c",
10
- treeSha: "93e8a046393c3aca94fb9616c8c317fb1a670bd9",
11
- archiveUrl: "https://codeload.github.com/thallylabs/starter/tar.gz/4f2724342aadc6151fc2aa3dfdb8b7e169ee370c",
9
+ commitSha: "644cbada1c1651e43149875a31711b907dcf00ea",
10
+ treeSha: "3486dd205040a82d0b78f824211807ba81a64aac",
11
+ archiveUrl: "https://codeload.github.com/thallylabs/starter/tar.gz/644cbada1c1651e43149875a31711b907dcf00ea",
12
12
  manifestPath: "starter-release.json",
13
- manifestSha256: "b312bbe6e7bb102c877b16c8a8d22fc803a0dfa7eff92243717b1171c7fb70fc"
13
+ manifestSha256: "403e7ae7b642f35b383626dc3b7c3734f9b518483a032bbe52ec11884e5ff507"
14
14
  },
15
15
  runtime: {
16
16
  repository: "thallylabs/thally",
17
- commitSha: "177e20c9a6aab3fdea9971f25082b42bf662c7a1",
18
- treeSha: "be9afded1c3838af0c290a93a51241a2d865a3c7",
17
+ commitSha: "498675f5a219c875ec2bb7915cb5420e5adb80c8",
18
+ treeSha: "ba1d019a08c8ce86ec545dc21f94698af3d271a3",
19
19
  contentSource: "assets",
20
20
  identityContractVersion: 1
21
21
  },
@@ -24,6 +24,26 @@ var stable_scaffold_release_default = {
24
24
 
25
25
  // src/previous-scaffold-releases.json
26
26
  var previous_scaffold_releases_default = [
27
+ {
28
+ schemaVersion: 1,
29
+ id: "2026-10-01.4f272434.177e20c9",
30
+ source: {
31
+ repository: "thallylabs/starter",
32
+ commitSha: "4f2724342aadc6151fc2aa3dfdb8b7e169ee370c",
33
+ treeSha: "93e8a046393c3aca94fb9616c8c317fb1a670bd9",
34
+ archiveUrl: "https://codeload.github.com/thallylabs/starter/tar.gz/4f2724342aadc6151fc2aa3dfdb8b7e169ee370c",
35
+ manifestPath: "starter-release.json",
36
+ manifestSha256: "b312bbe6e7bb102c877b16c8a8d22fc803a0dfa7eff92243717b1171c7fb70fc"
37
+ },
38
+ runtime: {
39
+ repository: "thallylabs/thally",
40
+ commitSha: "177e20c9a6aab3fdea9971f25082b42bf662c7a1",
41
+ treeSha: "be9afded1c3838af0c290a93a51241a2d865a3c7",
42
+ contentSource: "assets",
43
+ identityContractVersion: 1
44
+ },
45
+ starterVersion: 2
46
+ },
27
47
  {
28
48
  schemaVersion: 1,
29
49
  id: "2026-09-30.f7cdf474.f4a15647",
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-4VKRBJV2.js";
6
6
  import {
7
7
  downloadStarter
8
- } from "./chunk-EONUB6XH.js";
8
+ } from "./chunk-PXGRHNHB.js";
9
9
 
10
10
  // src/scaffold.ts
11
11
  import { existsSync, mkdirSync, readdirSync } from "fs";
@@ -5,7 +5,7 @@ import {
5
5
  readDocsJson,
6
6
  scaffold,
7
7
  writeDocsJson
8
- } from "./chunk-B3SIMFT3.js";
8
+ } from "./chunk-VXDTKVBA.js";
9
9
  import {
10
10
  pruneMissingSiteLinks
11
11
  } from "./chunk-4VKRBJV2.js";
@@ -468,15 +468,12 @@ function renderedHeadingText(source) {
468
468
  }
469
469
  function extractHeadingAnchors(content) {
470
470
  const anchors = /* @__PURE__ */ new Set();
471
- const occurrences = /* @__PURE__ */ new Map();
471
+ const headings = [];
472
472
  forEachNonFencedLine(content, (line) => {
473
473
  const heading = /^ {0,3}#{1,6}\s+(.+?)\s*#*\s*$/.exec(line);
474
474
  if (heading) {
475
475
  const explicit = /\{\/\*\s*#(\S+?)\s*\*\/\}$/.exec(heading[1]);
476
- const base = explicit?.[1] ?? slugify(renderedHeadingText(heading[1]));
477
- const occurrence = (occurrences.get(base) ?? 0) + 1;
478
- occurrences.set(base, occurrence);
479
- anchors.add(occurrence === 1 ? base : `${base}-${occurrence}`);
476
+ headings.push({ base: explicit?.[1] ?? slugify(renderedHeadingText(heading[1])), explicit: !!explicit });
480
477
  }
481
478
  for (const idMatch of line.matchAll(EXPLICIT_ID_ATTRIBUTE)) {
482
479
  const id = idMatch[1] ?? idMatch[2] ?? idMatch[3];
@@ -487,6 +484,24 @@ function extractHeadingAnchors(content) {
487
484
  if (name) anchors.add(name);
488
485
  }
489
486
  });
487
+ const reserved = new Set(headings.filter((heading) => heading.explicit).map((heading) => heading.base));
488
+ const used = /* @__PURE__ */ new Set();
489
+ const occurrences = /* @__PURE__ */ new Map();
490
+ for (const { base, explicit } of headings) {
491
+ let id = base;
492
+ let n = 1;
493
+ if (explicit) {
494
+ while (used.has(id)) id = `${base}-${++n}`;
495
+ } else {
496
+ n = occurrences.get(base) ?? 0;
497
+ do
498
+ id = ++n === 1 ? base : `${base}-${n}`;
499
+ while (used.has(id) || reserved.has(id));
500
+ occurrences.set(base, n);
501
+ }
502
+ used.add(id);
503
+ anchors.add(id);
504
+ }
490
505
  return anchors;
491
506
  }
492
507
  function decodedFragment(fragment) {
@@ -656,8 +671,12 @@ function validateOpenApi(projectDir, source, issues, overrides) {
656
671
  issues.push({ severity: "error", message: 'OpenAPI spec is missing the "info" object', file: source });
657
672
  }
658
673
  const paths = s?.paths;
674
+ const is31 = typeof s?.openapi === "string" && s.openapi.startsWith("3.1");
675
+ const hasOtherRoot = (key) => typeof s?.[key] === "object" && s[key] !== null;
659
676
  if (typeof paths !== "object" || paths === null) {
660
- issues.push({ severity: "error", message: 'OpenAPI spec is missing the "paths" object', file: source });
677
+ if (!is31 || !(hasOtherRoot("webhooks") || hasOtherRoot("components"))) {
678
+ issues.push({ severity: "error", message: is31 ? 'OpenAPI spec needs a "paths", "webhooks" or "components" object' : 'OpenAPI spec is missing the "paths" object', file: source });
679
+ }
661
680
  } else {
662
681
  const methods = /* @__PURE__ */ new Set(["get", "post", "put", "patch", "delete", "options", "head", "trace"]);
663
682
  for (const [p, ops] of Object.entries(paths)) {
package/dist/index.js CHANGED
@@ -3,17 +3,17 @@ import {
3
3
  migrateDocs,
4
4
  parseFrontmatter,
5
5
  runCheck
6
- } from "./chunk-PCTZQCM6.js";
6
+ } from "./chunk-YQCDMIZE.js";
7
7
  import {
8
8
  logo,
9
9
  scaffold,
10
10
  slugify,
11
11
  success
12
- } from "./chunk-B3SIMFT3.js";
12
+ } from "./chunk-VXDTKVBA.js";
13
13
  import "./chunk-4VKRBJV2.js";
14
- import "./chunk-EONUB6XH.js";
15
- import "./chunk-65U6RKP2.js";
16
- import "./chunk-ZV5ARFUQ.js";
14
+ import "./chunk-PXGRHNHB.js";
15
+ import "./chunk-7KLBTC3I.js";
16
+ import "./chunk-S5ZQSE5V.js";
17
17
 
18
18
  // src/index.ts
19
19
  import { existsSync as existsSync2, readdirSync } from "fs";
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  migrateDocs
4
- } from "../chunk-PCTZQCM6.js";
5
- import "../chunk-B3SIMFT3.js";
4
+ } from "../chunk-YQCDMIZE.js";
5
+ import "../chunk-VXDTKVBA.js";
6
6
  import "../chunk-4VKRBJV2.js";
7
- import "../chunk-EONUB6XH.js";
8
- import "../chunk-65U6RKP2.js";
9
- import "../chunk-ZV5ARFUQ.js";
7
+ import "../chunk-PXGRHNHB.js";
8
+ import "../chunk-7KLBTC3I.js";
9
+ import "../chunk-S5ZQSE5V.js";
10
10
  export {
11
11
  migrateDocs
12
12
  };
package/dist/release.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  STABLE_SCAFFOLD_RELEASE,
4
4
  SUPPORTED_SCAFFOLD_RELEASES,
5
5
  isStableScaffoldRelease
6
- } from "./chunk-ZV5ARFUQ.js";
6
+ } from "./chunk-S5ZQSE5V.js";
7
7
  export {
8
8
  STABLE_SCAFFOLD_RELEASE,
9
9
  SUPPORTED_SCAFFOLD_RELEASES,
package/dist/scaffold.js CHANGED
@@ -1,18 +1,18 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  scaffold
4
- } from "./chunk-B3SIMFT3.js";
4
+ } from "./chunk-VXDTKVBA.js";
5
5
  import "./chunk-4VKRBJV2.js";
6
6
  import {
7
7
  STARTER_ARCHIVE_ROOT,
8
8
  STARTER_COMMIT_SHA,
9
9
  STARTER_REPOSITORY,
10
10
  validateStarterArchiveEntry
11
- } from "./chunk-EONUB6XH.js";
12
- import "./chunk-65U6RKP2.js";
11
+ } from "./chunk-PXGRHNHB.js";
12
+ import "./chunk-7KLBTC3I.js";
13
13
  import {
14
14
  STABLE_SCAFFOLD_RELEASE
15
- } from "./chunk-ZV5ARFUQ.js";
15
+ } from "./chunk-S5ZQSE5V.js";
16
16
  export {
17
17
  STABLE_SCAFFOLD_RELEASE,
18
18
  STARTER_ARCHIVE_ROOT,
@@ -8,8 +8,8 @@ import {
8
8
  planStarterRuntimeSync,
9
9
  readStarterReleaseManifest,
10
10
  starterManifestSha256
11
- } from "./chunk-65U6RKP2.js";
12
- import "./chunk-ZV5ARFUQ.js";
11
+ } from "./chunk-7KLBTC3I.js";
12
+ import "./chunk-S5ZQSE5V.js";
13
13
  export {
14
14
  applyStarterRuntimeSyncPlan,
15
15
  classifyStarterPath,
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  downloadStarter
4
- } from "./chunk-EONUB6XH.js";
4
+ } from "./chunk-PXGRHNHB.js";
5
5
  import {
6
6
  applyStarterRuntimeSyncPlan,
7
7
  mergeStarterOwnershipContracts,
@@ -9,11 +9,11 @@ import {
9
9
  planStarterRuntimeSync,
10
10
  readStarterReleaseManifest,
11
11
  starterManifestSha256
12
- } from "./chunk-65U6RKP2.js";
12
+ } from "./chunk-7KLBTC3I.js";
13
13
  import {
14
14
  STABLE_SCAFFOLD_RELEASE,
15
15
  SUPPORTED_SCAFFOLD_RELEASES
16
- } from "./chunk-ZV5ARFUQ.js";
16
+ } from "./chunk-S5ZQSE5V.js";
17
17
 
18
18
  // src/starter-update.ts
19
19
  import {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-thally-docs",
3
- "version": "0.10.75",
3
+ "version": "0.10.77",
4
4
  "description": "Scaffold an open-source Thally docs site for people, search engines, and AI tools.",
5
5
  "type": "module",
6
6
  "engines": {
@@ -44,8 +44,8 @@
44
44
  "dependencies": {
45
45
  "@anthropic-ai/sdk": "^0.36.0",
46
46
  "@inquirer/prompts": "^7.0.0",
47
- "@thallylabs/core": "0.2.10",
48
- "@thallylabs/migrate": "0.2.23",
47
+ "@thallylabs/core": "0.2.11",
48
+ "@thallylabs/migrate": "0.2.24",
49
49
  "p-limit": "^6.1.0",
50
50
  "remark-mdx": "^3.1.1",
51
51
  "remark-parse": "^11.0.0",