@caelo-cms/shared 0.10.67 → 0.10.69

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.
Files changed (73) hide show
  1. package/dist/ai-tools.d.ts +30 -14
  2. package/dist/ai-tools.d.ts.map +1 -1
  3. package/dist/ai-tools.js +33 -14
  4. package/dist/ai-tools.js.map +1 -1
  5. package/dist/build-page.d.ts +7 -6
  6. package/dist/build-page.d.ts.map +1 -1
  7. package/dist/build-page.js +17 -13
  8. package/dist/build-page.js.map +1 -1
  9. package/dist/html-blank.d.ts +11 -0
  10. package/dist/html-blank.d.ts.map +1 -0
  11. package/dist/html-blank.js +17 -0
  12. package/dist/html-blank.js.map +1 -0
  13. package/dist/index.d.ts +2 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +2 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/link-canonicalise.d.ts +29 -4
  18. package/dist/link-canonicalise.d.ts.map +1 -1
  19. package/dist/link-canonicalise.js +96 -8
  20. package/dist/link-canonicalise.js.map +1 -1
  21. package/dist/markup-structure.d.ts +24 -0
  22. package/dist/markup-structure.d.ts.map +1 -1
  23. package/dist/markup-structure.js +52 -0
  24. package/dist/markup-structure.js.map +1 -1
  25. package/dist/media.d.ts +2 -2
  26. package/dist/phase-timer.d.ts +36 -0
  27. package/dist/phase-timer.d.ts.map +1 -0
  28. package/dist/phase-timer.js +54 -0
  29. package/dist/phase-timer.js.map +1 -0
  30. package/dist/run-batched.d.ts +12 -0
  31. package/dist/run-batched.d.ts.map +1 -0
  32. package/dist/run-batched.js +37 -0
  33. package/dist/run-batched.js.map +1 -0
  34. package/dist/seo.d.ts +12 -5
  35. package/dist/seo.d.ts.map +1 -1
  36. package/dist/seo.js +40 -8
  37. package/dist/seo.js.map +1 -1
  38. package/dist/strip-cdata.d.ts +23 -0
  39. package/dist/strip-cdata.d.ts.map +1 -1
  40. package/dist/strip-cdata.js +31 -0
  41. package/dist/strip-cdata.js.map +1 -1
  42. package/dist/template-engine.d.ts.map +1 -1
  43. package/dist/template-engine.js +54 -22
  44. package/dist/template-engine.js.map +1 -1
  45. package/dist/themes.d.ts.map +1 -1
  46. package/dist/themes.js +29 -4
  47. package/dist/themes.js.map +1 -1
  48. package/dist/version.d.ts +2 -2
  49. package/dist/version.js +1 -1
  50. package/package.json +1 -1
  51. package/src/ai-tools.ts +34 -14
  52. package/src/build-page.test.ts +5 -4
  53. package/src/build-page.ts +17 -14
  54. package/src/html-blank.ts +21 -0
  55. package/src/index.ts +2 -0
  56. package/src/link-canonicalise.test.ts +27 -0
  57. package/src/link-canonicalise.ts +100 -5
  58. package/src/markup-structure.test.ts +21 -0
  59. package/src/markup-structure.ts +54 -0
  60. package/src/nested-module-render.test.ts +77 -0
  61. package/src/phase-timer.test.ts +48 -0
  62. package/src/phase-timer.ts +62 -0
  63. package/src/run-batched.test.ts +40 -0
  64. package/src/run-batched.ts +39 -0
  65. package/src/seo.test.ts +50 -0
  66. package/src/seo.ts +40 -8
  67. package/src/strip-cdata.test.ts +30 -1
  68. package/src/strip-cdata.ts +31 -0
  69. package/src/template-engine.test.ts +84 -0
  70. package/src/template-engine.ts +62 -17
  71. package/src/theme-dimension.test.ts +61 -0
  72. package/src/themes.ts +30 -5
  73. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"themes.js","sourceRoot":"","sources":["../src/themes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"themes.js","sourceRoot":"","sources":["../src/themes.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -19,7 +19,7 @@
19
19
  * Format: SemVer 2.0.0. Pre-1.0 minor bumps are breaking; post-1.0
20
20
  * follow standard SemVer.
21
21
  */
22
- export declare const CAELO_VERSION = "0.10.67";
22
+ export declare const CAELO_VERSION = "0.10.69";
23
23
  /**
24
24
  * Deprecated alias for back-compat — early P17 work spelled this
25
25
  * `CALEO_VERSION` (typo of "Caelo"). New code should import
@@ -31,7 +31,7 @@ export declare const CAELO_VERSION = "0.10.67";
31
31
  *
32
32
  * @deprecated use CAELO_VERSION
33
33
  */
34
- export declare const CALEO_VERSION = "0.10.67";
34
+ export declare const CALEO_VERSION = "0.10.69";
35
35
  /**
36
36
  * Parsed shape — major/minor/patch + optional pre-release tag.
37
37
  * Stable interface for callers that need to feature-gate (rare —
package/dist/version.js CHANGED
@@ -20,7 +20,7 @@
20
20
  * Format: SemVer 2.0.0. Pre-1.0 minor bumps are breaking; post-1.0
21
21
  * follow standard SemVer.
22
22
  */
23
- export const CAELO_VERSION = "0.10.67";
23
+ export const CAELO_VERSION = "0.10.69";
24
24
  /**
25
25
  * Deprecated alias for back-compat — early P17 work spelled this
26
26
  * `CALEO_VERSION` (typo of "Caelo"). New code should import
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@caelo-cms/shared",
3
- "version": "0.10.67",
3
+ "version": "0.10.69",
4
4
  "private": false,
5
5
  "license": "MPL-2.0",
6
6
  "description": "Shared Zod schemas + types + the two-pass HTML composer used by every Caelo CMS workspace package. Stable enough for plugin authors and embedders to depend on directly.",
package/src/ai-tools.ts CHANGED
@@ -26,6 +26,7 @@ import {
26
26
  } from "./content.js";
27
27
  import { pluginPreviewSelectionSchema } from "./plugin-preview.js";
28
28
  import { redirectTargetPathSchema } from "./redirect-target.js";
29
+ import { unwrapCdataEnvelope } from "./strip-cdata.js";
29
30
 
30
31
  /**
31
32
  * v0.6.2 — `position` argument shared across the three `add_module_to_*`
@@ -58,6 +59,19 @@ function stripSurroundingQuotes(v: unknown): unknown {
58
59
  const m = v.match(/^(["'])([\s\S]+)\1$/);
59
60
  return m ? m[2] : v;
60
61
  }
62
+ /**
63
+ * An AI tool argument holding source text (html / css / js): the given
64
+ * string schema, with a whole-value `<![CDATA[ … ]]>` transport envelope
65
+ * decoded first (see `unwrapCdataEnvelope`). Every AI authoring surface for
66
+ * module, template and layout source uses it, so one encoding habit of the
67
+ * model is handled in one place instead of refused per tool.
68
+ *
69
+ * @param schema - the string schema (length caps, min) the decoded value must satisfy.
70
+ */
71
+ export function sourceTextArg<T extends z.ZodType<string>>(schema: T) {
72
+ return z.preprocess(unwrapCdataEnvelope, schema);
73
+ }
74
+
61
75
  export const positionInputSchema = z.preprocess(
62
76
  stripSurroundingQuotes,
63
77
  z.union([
@@ -87,9 +101,9 @@ export const editModuleToolInput = z
87
101
  * create time. Set it to make this module satisfy a parent's allowlist.
88
102
  */
89
103
  type: slugSchema.optional(),
90
- html: z.string().max(MODULE_HTML_MAX).optional(),
91
- css: z.string().max(MODULE_CSS_MAX).optional(),
92
- js: z.string().max(MODULE_JS_MAX).optional(),
104
+ html: sourceTextArg(z.string().max(MODULE_HTML_MAX)).optional(),
105
+ css: sourceTextArg(z.string().max(MODULE_CSS_MAX)).optional(),
106
+ js: sourceTextArg(z.string().max(MODULE_JS_MAX)).optional(),
93
107
  /**
94
108
  * v0.4.0 — module field schema. Each field declares one substitution
95
109
  * slot referenced in the module HTML as `{{name}}`. Page placements
@@ -138,10 +152,16 @@ export const siteMemoryProposeToolInput = z
138
152
  * smallest case rather than a separate singular tool. Loading three skills was
139
153
  * three provider round-trips whose only output was one tool call each.
140
154
  *
141
- * Capped at 5: skills are task-scoped, and a model that wants more than a
142
- * handful at once has almost certainly matched the index too loosely — each
143
- * body is a sizeable injection into history.
155
+ * Capped at LOAD_SKILL_MAX_SLUGS as a bound on garbage input, not on
156
+ * judgement. It used to be 5 on the theory that wanting more meant matching
157
+ * the index too loosely; building a site from nothing legitimately engages
158
+ * six (bootstrap-site, compose-page, design-quality, brand-voice-guard,
159
+ * theme-branding, templates-layouts — e2e-livedit runs 39924624682 and
160
+ * 40018333047), and the description tells the model to pass EVERY skill it
161
+ * needs in one call, so the cap split one correct call into a refusal and a
162
+ * retry.
144
163
  */
164
+ export const LOAD_SKILL_MAX_SLUGS = 20;
145
165
  export const loadSkillToolInput = z
146
166
  .object({
147
167
  slugs: z
@@ -153,7 +173,7 @@ export const loadSkillToolInput = z
153
173
  .regex(/^[a-z0-9-]+$/, "lowercase letters/digits/hyphens"),
154
174
  )
155
175
  .min(1)
156
- .max(5),
176
+ .max(LOAD_SKILL_MAX_SLUGS),
157
177
  })
158
178
  .strict();
159
179
  export type LoadSkillToolInput = z.infer<typeof loadSkillToolInput>;
@@ -186,9 +206,9 @@ export const addModuleToolInput = z
186
206
  description: z.string().max(1000).optional(),
187
207
  kind: z.enum(["chrome", "hero", "content", "cta", "utility"]).optional(),
188
208
  type: slugSchema.optional(),
189
- html: z.string().min(1).max(50_000).optional(),
190
- css: z.string().max(50_000).optional(),
191
- js: z.string().max(50_000).optional(),
209
+ html: sourceTextArg(z.string().min(1).max(50_000)).optional(),
210
+ css: sourceTextArg(z.string().max(50_000)).optional(),
211
+ js: sourceTextArg(z.string().max(50_000)).optional(),
192
212
  fields: z.array(moduleFieldSchema).max(64).optional(),
193
213
  bindThemeLiterals: z.boolean().optional(),
194
214
  /**
@@ -627,8 +647,8 @@ export const createTemplateToolInput = z
627
647
  .object({
628
648
  slug: slugInputSchema,
629
649
  displayName: z.string().min(1).max(256),
630
- html: z.string().min(1).max(2_000_000),
631
- css: z.string().max(2_000_000).default(""),
650
+ html: sourceTextArg(z.string().min(1).max(2_000_000)),
651
+ css: sourceTextArg(z.string().max(2_000_000)).default(""),
632
652
  layoutId: z.string().uuid().optional(),
633
653
  // Optional block-set metadata, symmetric with create_layout. Omit to
634
654
  // auto-derive blocks from <caelo-slot> tags; pass to set displayName /
@@ -693,8 +713,8 @@ export const createLayoutToolInput = z
693
713
  .object({
694
714
  slug: slugInputSchema,
695
715
  displayName: z.string().min(1).max(200),
696
- html: z.string().min(1).max(50_000),
697
- css: z.string().max(50_000).optional(),
716
+ html: sourceTextArg(z.string().min(1).max(50_000)),
717
+ css: sourceTextArg(z.string().max(50_000)).optional(),
698
718
  blocks: z
699
719
  .array(
700
720
  z
@@ -70,19 +70,20 @@ describe("buildPageInputSchema — page target modes", () => {
70
70
  expect(r.data.page.metaDescription).toBe("Plans and prices.");
71
71
  });
72
72
 
73
- it("rejects a blank meta description and one given with pageId (fill-once is autofill_page_seo's job there)", () => {
73
+ it("rejects a blank meta description", () => {
74
74
  const blank = buildPageInputSchema.safeParse({
75
75
  page: { slug: "pricing", title: "Pricing", metaDescription: " " },
76
76
  modules: [],
77
77
  });
78
78
  expect(blank.success).toBe(false);
79
+ });
80
+
81
+ it("takes a meta description with pageId (the existing page's first fill; run 40018361466)", () => {
79
82
  const existing = buildPageInputSchema.safeParse({
80
83
  page: { pageId: UUID, metaDescription: "Plans and prices." },
81
84
  modules: [],
82
85
  });
83
- expect(existing.success).toBe(false);
84
- if (existing.success) return;
85
- expect(existing.error.issues[0]!.message).toContain("autofill_page_seo");
86
+ expect(existing.success).toBe(true);
86
87
  });
87
88
 
88
89
  it("rejects a page target with neither pageId nor slug+title", () => {
package/src/build-page.ts CHANGED
@@ -20,7 +20,7 @@
20
20
  */
21
21
 
22
22
  import { z } from "zod";
23
- import { positionInputSchema } from "./ai-tools.js";
23
+ import { positionInputSchema, sourceTextArg } from "./ai-tools.js";
24
24
  import {
25
25
  contentInstanceCreateSchema,
26
26
  MODULE_CSS_MAX,
@@ -155,9 +155,9 @@ export const buildPageModuleSchema = z
155
155
  description: z.string().max(1000).optional(),
156
156
  kind: moduleKindSchema.optional(),
157
157
  type: slugSchema.optional(),
158
- html: z.string().min(1).max(MODULE_HTML_MAX).optional(),
159
- css: z.string().max(MODULE_CSS_MAX).optional(),
160
- js: z.string().max(MODULE_JS_MAX).optional(),
158
+ html: sourceTextArg(z.string().min(1).max(MODULE_HTML_MAX)).optional(),
159
+ css: sourceTextArg(z.string().max(MODULE_CSS_MAX)).optional(),
160
+ js: sourceTextArg(z.string().max(MODULE_JS_MAX)).optional(),
161
161
  fields: z.array(moduleFieldSchema).max(64).optional(),
162
162
  /** issue #164 slice 2 — opt-in mechanical token binding (tool layer). */
163
163
  bindThemeLiterals: z.boolean().optional(),
@@ -239,9 +239,13 @@ export const buildPageTargetSchema = z
239
239
  * The new page's meta description, written in the same transaction
240
240
  * with the fill-once semantics of `pages_seo.autofill` (CLAUDE.md §2).
241
241
  * A staging build refuses a published page without one, so the page
242
- * is Stage-ready from the call that creates it. Create mode (or an
243
- * importPageId rebuild) only — an existing page gets its first
244
- * description from `autofill_page_seo`.
242
+ * is Stage-ready from the call that creates it. With `pageId` it is the
243
+ * existing page's FIRST description, same fill-once rule: a page that
244
+ * already has a different one keeps it (`kept-existing`, never an
245
+ * overwrite). Refusing it there (as #993 did) failed the natural "build
246
+ * the page's content and describe it in one pass" call (e2e-livedit run
247
+ * 40018361466) although the op applied it safely for importPageId
248
+ * rebuilds of existing pages all along.
245
249
  */
246
250
  metaDescription: z.string().trim().min(1).max(SEO_DESCRIPTION_HARD_MAX).optional(),
247
251
  })
@@ -251,13 +255,6 @@ export const buildPageTargetSchema = z
251
255
  ["slug", "title", "name", "templateId", "status", "parentPageId"] as const
252
256
  ).filter((k) => page[k] !== undefined);
253
257
  if (page.pageId !== undefined) {
254
- if (page.metaDescription !== undefined) {
255
- ctx.addIssue({
256
- code: z.ZodIssueCode.custom,
257
- message:
258
- "page.metaDescription is written only for a page this call CREATES — drop it with pageId; an existing page without a description gets one via autofill_page_seo.",
259
- });
260
- }
261
258
  if (createKeys.length > 0) {
262
259
  ctx.addIssue({
263
260
  code: z.ZodIssueCode.custom,
@@ -309,6 +306,12 @@ export type BuildPageInput = z.infer<typeof buildPageInputSchema>;
309
306
 
310
307
  /** `pages.build_page` op output — one row per placed module, in input order. */
311
308
  export const buildPagePlacementResultSchema = z.object({
309
+ /**
310
+ * The entry's index in the call's `modules` array. Detached (nested-only)
311
+ * entries are not placed, so the row's position in `placements` is NOT
312
+ * the input index once one precedes it — label results with this.
313
+ */
314
+ index: z.number().int().nonnegative(),
312
315
  blockName: z.string(),
313
316
  position: z.number().int().nonnegative(),
314
317
  moduleId: z.string(),
@@ -0,0 +1,21 @@
1
+ // SPDX-License-Identifier: MPL-2.0
2
+
3
+ /**
4
+ * `html` with comments and the contents of raw-text elements (script,
5
+ * style, template, noscript, textarea) replaced by spaces of the same
6
+ * length. Scans over the result see only markup a browser would parse as
7
+ * elements, and every offset found in it is the same offset in `html`.
8
+ *
9
+ * @example
10
+ * blankNonMarkup('<!-- <a href="x"> --><p>y</p>'); // ' <p>y</p>'
11
+ */
12
+ export function blankNonMarkup(html: string): string {
13
+ const blank = (s: string): string => " ".repeat(s.length);
14
+ return html
15
+ .replace(/<!--[\s\S]*?(?:-->|$)/g, blank)
16
+ .replace(
17
+ /(<(script|style|template|noscript|textarea)\b[^>]*>)([\s\S]*?)(<\/\2\s*>|$)/gi,
18
+ (_all, open: string, _tag: string, body: string, close: string) =>
19
+ `${open}${blank(body)}${close}`,
20
+ );
21
+ }
package/src/index.ts CHANGED
@@ -47,6 +47,7 @@ export * from "./mcp-access.js";
47
47
  export * from "./media.js";
48
48
  export * from "./nested-module-render.js";
49
49
  export * from "./page-log.js";
50
+ export * from "./phase-timer.js";
50
51
  export * from "./platform-updates.js";
51
52
  export * from "./plugin-preview.js";
52
53
  export * from "./preview-compose.js";
@@ -64,6 +65,7 @@ export * from "./redirect-target.js";
64
65
  export * from "./release-manifest.js";
65
66
  export * from "./responsive-images.js";
66
67
  export * from "./result.js";
68
+ export * from "./run-batched.js";
67
69
  export * from "./safe-keys.js";
68
70
  export * from "./screenshot-capture.js";
69
71
  export * from "./seo.js";
@@ -17,6 +17,7 @@ import {
17
17
  describeLinkIssues,
18
18
  type LinkTargetLookup,
19
19
  linkCanonicaliseRun,
20
+ urlFieldNamesInHtml,
20
21
  } from "./link-canonicalise.js";
21
22
 
22
23
  const ABOUT = "11111111-1111-4111-8111-111111111111";
@@ -414,3 +415,29 @@ describe("grandfathering + messages", () => {
414
415
  expect(msg).toContain("create it first");
415
416
  });
416
417
  });
418
+
419
+ describe("urlFieldNamesInHtml (#852)", () => {
420
+ it("names fields put whole into href/src, in sections too, and skips partial values", () => {
421
+ const names = urlFieldNamesInHtml(
422
+ '<a href="{{Target}}">{{label}}</a><img src="{{{photo}}}" alt="">' +
423
+ "<ul>{{#links}}<li><a href='{{.}}'>x</a></li>{{/links}}</ul>" +
424
+ '{{#cta}}<a href=" {{cta}} ">go</a>{{/cta}}' +
425
+ '<a href="{{base}}/docs">part</a><a href="mailto:{{email}}">m</a>' +
426
+ '<img srcset="{{set}}" alt="">',
427
+ );
428
+ expect([...names].sort()).toEqual(["cta", "links", "photo", "target"]);
429
+ });
430
+
431
+ it("returns nothing for HTML without placeholders", () => {
432
+ expect(urlFieldNamesInHtml('<a href="/about">x</a>').size).toBe(0);
433
+ });
434
+
435
+ it("ignores links inside comments and script or style text", () => {
436
+ const names = urlFieldNamesInHtml(
437
+ '<!-- <a href="{{caption}}">old</a> --><p>{{caption}}</p>' +
438
+ "<script>const t = '<a href=\"{{label}}\">x</a>';</script>" +
439
+ '<style>/* <img src="{{photo}}"> */</style><a href="{{target}}">go</a>',
440
+ );
441
+ expect([...names]).toEqual(["target"]);
442
+ });
443
+ });
@@ -47,6 +47,7 @@
47
47
  * homepage. Once the homepage exists, `/` canonicalises as usual.
48
48
  */
49
49
 
50
+ import { blankNonMarkup } from "./html-blank.js";
50
51
  import {
51
52
  findMalformedLinkRefs,
52
53
  formatLinkRef,
@@ -419,6 +420,78 @@ function* startTags(html: string): Generator<[number, number]> {
419
420
  }
420
421
  }
421
422
 
423
+ // A whole attribute value that is exactly one placeholder: `{{name}}`,
424
+ // `{{{name}}}`, `{{&name}}`, or a list item `{{.}}` / `{{item}}`.
425
+ const WHOLE_PLACEHOLDER_RE = /^\s*\{\{\{?\s*&?\s*([A-Za-z][A-Za-z0-9_]*|\.)\s*\}?\}\}\s*$/;
426
+ // Section open / close tags, to name the list a `{{.}}` iterates.
427
+ const SECTION_TAG_RE = /\{\{\s*([#^/])\s*([A-Za-z][A-Za-z0-9_]*)\s*\}\}/g;
428
+
429
+ /**
430
+ * The fields module HTML puts WHOLE into a link attribute
431
+ * (`href="{{cta}}"`, `src="{{photo}}"`, `<a href="{{.}}">` inside
432
+ * `{{#links}}…{{/links}}`), lowercased as the template engine looks them
433
+ * up. Such a value renders as a link whatever kind the field declares
434
+ * (`text`), and even when no field declares it at all (the engine puts
435
+ * every stored value into its view), so link checks and write-time
436
+ * canonicalisation read it as a URL (#852). A placeholder that is only
437
+ * part of the value (`href="{{base}}/docs"`, `mailto:{{email}}`) is not:
438
+ * the value is not a link on its own. `srcset` is a list of candidates,
439
+ * never one URL, and stays out.
440
+ *
441
+ * @example
442
+ * urlFieldNamesInHtml('<a href="{{cta_target}}">{{label}}</a>'); // Set { "cta_target" }
443
+ */
444
+ export function urlFieldNamesInHtml(html: string): Set<string> {
445
+ const out = new Set<string>();
446
+ if (!html.includes("{{")) return out;
447
+ // Commented-out markup and script/style strings are not links: scan a
448
+ // copy with them blanked (equal length, so offsets match).
449
+ const markup = blankNonMarkup(html);
450
+ // Open sections by position, so a `{{.}}` names its innermost list.
451
+ const sections: { name: string; start: number; end: number }[] = [];
452
+ const open: { name: string; start: number }[] = [];
453
+ for (const m of markup.matchAll(SECTION_TAG_RE)) {
454
+ const name = (m[2] as string).toLowerCase();
455
+ if (m[1] !== "/") {
456
+ open.push({ name, start: m.index });
457
+ continue;
458
+ }
459
+ for (let k = open.length - 1; k >= 0; k -= 1) {
460
+ const o = open[k] as { name: string; start: number };
461
+ if (o.name !== name) continue;
462
+ sections.push({ name, start: o.start, end: m.index });
463
+ open.length = k;
464
+ break;
465
+ }
466
+ }
467
+ const innermostSection = (at: number): string | null => {
468
+ let best: { name: string; start: number; end: number } | null = null;
469
+ for (const s of sections) {
470
+ if (s.start < at && at < s.end && (best === null || s.start > best.start)) best = s;
471
+ }
472
+ return best?.name ?? null;
473
+ };
474
+ for (const [start, end] of startTags(markup)) {
475
+ const tag = markup.slice(start, end);
476
+ for (const m of tag.matchAll(ATTR_RE)) {
477
+ const attr = (m[1] as string)
478
+ .trim()
479
+ .replace(/\s*=\s*$/, "")
480
+ .toLowerCase();
481
+ if (attr === "srcset") continue;
482
+ const placeholder = WHOLE_PLACEHOLDER_RE.exec(m[2] ?? m[3] ?? "")?.[1];
483
+ if (placeholder === undefined) continue;
484
+ if (placeholder !== "." && placeholder.toLowerCase() !== "item") {
485
+ out.add(placeholder.toLowerCase());
486
+ continue;
487
+ }
488
+ const list = innermostSection(start + m.index);
489
+ if (list !== null) out.add(list);
490
+ }
491
+ }
492
+ return out;
493
+ }
494
+
422
495
  function canonicaliseTagAttributes(tag: string, run: LinkCanonicaliseRun, where: string): string {
423
496
  return tag.replace(ATTR_RE, (whole, prefix: string, dq?: string, sq?: string) => {
424
497
  const quote = dq !== undefined ? '"' : "'";
@@ -511,38 +584,60 @@ function canonicaliseFieldValue(
511
584
  value: unknown,
512
585
  run: LinkCanonicaliseRun,
513
586
  where: string,
587
+ urlNames: ReadonlySet<string> | undefined,
514
588
  ): unknown {
515
589
  if (field && NESTED_KINDS.has(field.kind)) return value;
516
- const asUrl = (field !== undefined && URL_KINDS.has(field.kind)) || isLinkKeyName(name);
590
+ const asUrl =
591
+ (field !== undefined && URL_KINDS.has(field.kind)) ||
592
+ isLinkKeyName(name) ||
593
+ urlNames?.has(name.toLowerCase()) === true;
517
594
  return canonicaliseJsonLinks(value, run, where, asUrl);
518
595
  }
519
596
 
520
597
  /**
521
598
  * Canonicalise a content instance's values against its module's fields.
522
599
  * Values without a declared field are still scanned (key-name rule +
523
- * HTML) — a stale value renders nowhere today but may again tomorrow.
600
+ * HTML): the template engine renders every stored value a placeholder
601
+ * names, declared or not.
602
+ *
603
+ * @param urlNames fields the module HTML puts whole into a link
604
+ * attribute ({@link urlFieldNamesInHtml}); their values are URLs
605
+ * whatever their declared kind.
524
606
  */
525
607
  export function canonicaliseContentValues(
526
608
  fields: readonly CanonicaliseField[],
527
609
  values: Readonly<Record<string, unknown>>,
528
610
  run: LinkCanonicaliseRun,
611
+ urlNames?: ReadonlySet<string>,
529
612
  ): Record<string, unknown> {
530
613
  const byName = new Map(fields.map((f) => [f.name, f]));
531
614
  const out: Record<string, unknown> = {};
532
615
  for (const [k, v] of Object.entries(values)) {
533
- out[k] = canonicaliseFieldValue(byName.get(k), k, v, run, `values.${k}`);
616
+ out[k] = canonicaliseFieldValue(byName.get(k), k, v, run, `values.${k}`, urlNames);
534
617
  }
535
618
  return out;
536
619
  }
537
620
 
538
- /** Canonicalise every field's `default` (layout chrome content lives there). */
621
+ /**
622
+ * Canonicalise every field's `default` (layout chrome content lives there).
623
+ *
624
+ * @param urlNames as for {@link canonicaliseContentValues}.
625
+ */
539
626
  export function canonicaliseFieldDefaults<F extends CanonicaliseField>(
540
627
  fields: readonly F[],
541
628
  run: LinkCanonicaliseRun,
629
+ urlNames?: ReadonlySet<string>,
542
630
  ): F[] {
543
631
  return fields.map((f) => {
544
632
  if (f.default === undefined || f.default === null) return f;
545
- const next = canonicaliseFieldValue(f, f.name, f.default, run, `fields.${f.name}.default`);
633
+ const next = canonicaliseFieldValue(
634
+ f,
635
+ f.name,
636
+ f.default,
637
+ run,
638
+ `fields.${f.name}.default`,
639
+ urlNames,
640
+ );
546
641
  return next === f.default ? f : { ...f, default: next };
547
642
  });
548
643
  }
@@ -9,6 +9,7 @@ import {
9
9
  NEAR_MATCH_THRESHOLD,
10
10
  outermostPatterns,
11
11
  parseMarkup,
12
+ repeatedSiblingPatterns,
12
13
  shapeSimilarity,
13
14
  shapeTree,
14
15
  stripMustache,
@@ -267,3 +268,23 @@ describe("bounds", () => {
267
268
  expect(root?.children[0]?.children).toEqual([]);
268
269
  });
269
270
  });
271
+
272
+ describe("repeatedSiblingPatterns (#1068)", () => {
273
+ const card = '<article class="tc"><h3 class="n">x</h3><dl><dt>a</dt><dd>b</dd></dl></article>';
274
+
275
+ it("finds 3+ sibling copies at any depth, once, and ignores pairs and prose", () => {
276
+ const found = repeatedSiblingPatterns(
277
+ parseMarkup(`<div class="grid">${card.repeat(4)}</div>${card.repeat(2)}`),
278
+ );
279
+ expect(found.map((f) => [f.node.tag, f.count])).toEqual([["article", 4]]);
280
+ expect(repeatedSiblingPatterns(parseMarkup(card.repeat(2)))).toEqual([]);
281
+ expect(repeatedSiblingPatterns(parseMarkup("<ul><li><p>a</p></li></ul>".repeat(5)))).toEqual(
282
+ [],
283
+ );
284
+ });
285
+
286
+ it("skips nested module roots: their own module owns them", () => {
287
+ const tagged = card.replace("<article", '<article data-caelo-module-id="m"');
288
+ expect(repeatedSiblingPatterns(parseMarkup(tagged.repeat(3)))).toEqual([]);
289
+ });
290
+ });
@@ -244,6 +244,60 @@ export function outermostPatterns(roots: readonly MarkupNode[]): FoundPattern[]
244
244
  return found;
245
245
  }
246
246
 
247
+ /**
248
+ * Copies of one pattern side by side at which free markup reads as a
249
+ * hand-written list (#1068): three cards in a row are a list of items, two
250
+ * may still be a deliberate pair (a before/after, a two-column split).
251
+ */
252
+ export const MIN_SIBLING_REPEATS = 3;
253
+
254
+ /** A pattern repeated side by side in one piece of markup. */
255
+ export interface RepeatedSiblings {
256
+ /** The first copy. */
257
+ readonly node: MarkupNode;
258
+ readonly shape: SubtreeShape;
259
+ /** How many siblings share its signature. */
260
+ readonly count: number;
261
+ }
262
+
263
+ /**
264
+ * Patterns that repeat {@link MIN_SIBLING_REPEATS}+ times as siblings: the
265
+ * same component written out once per item (83 tool cards in one richtext
266
+ * value) instead of a list field rendering one module per item. Roots of
267
+ * the forest that share a parent are siblings too (the free regions of one
268
+ * rendered module). A repeated set is reported once and not searched
269
+ * inside; anything else is searched all the way down. Nested module roots
270
+ * are skipped: their own module owns them.
271
+ */
272
+ export function repeatedSiblingPatterns(roots: readonly MarkupNode[]): RepeatedSiblings[] {
273
+ const shapes = new Map<MarkupNode, SubtreeShape>();
274
+ for (const r of roots) if (r.moduleId === null) shapeTree(r, shapes);
275
+ const found: RepeatedSiblings[] = [];
276
+ const visitSiblings = (siblings: readonly MarkupNode[]) => {
277
+ const bySig = new Map<string, MarkupNode[]>();
278
+ for (const n of siblings) {
279
+ if (n.moduleId !== null) continue;
280
+ const shape = shapes.get(n);
281
+ if (!shape || !isPattern(shape)) continue;
282
+ bySig.set(shape.signature, [...(bySig.get(shape.signature) ?? []), n]);
283
+ }
284
+ const reported = new Set<MarkupNode>();
285
+ for (const copies of bySig.values()) {
286
+ if (copies.length < MIN_SIBLING_REPEATS) continue;
287
+ const first = copies[0] as MarkupNode;
288
+ found.push({ node: first, shape: shapes.get(first) as SubtreeShape, count: copies.length });
289
+ for (const c of copies) reported.add(c);
290
+ }
291
+ for (const n of siblings) {
292
+ if (n.moduleId === null && !reported.has(n)) visitSiblings(n.children);
293
+ }
294
+ };
295
+ const byParent = new Map<MarkupNode | null, MarkupNode[]>();
296
+ for (const r of roots) byParent.set(r.parent, [...(byParent.get(r.parent) ?? []), r]);
297
+ for (const group of byParent.values()) visitSiblings(group);
298
+ return found;
299
+ }
300
+
247
301
  /** The shape of a whole module template (its first element), or null. */
248
302
  export function templateShape(templateHtml: string): SubtreeShape | null {
249
303
  const root = parseMarkup(stripMustache(templateHtml))[0];