@miadi/inquiry-weave 0.14.3 → 0.15.1

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 +1 @@
1
- {"version":3,"file":"chronicle-dsl.d.ts","sourceRoot":"","sources":["../src/chronicle-dsl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chronicle-dsl.d.ts","sourceRoot":"","sources":["../src/chronicle-dsl.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,11 @@ export const OPTION_PREFIX = "mc.";
38
38
  // reads it as an empty final segment and people type it by reflex; refusing it
39
39
  // degraded the reference to raw `{{ }}` braces with nothing explaining why
40
40
  // (earned 2026-08-15, episode 103 on the film-media article).
41
- const URI_RE = /^miadi-chronicle:(?:\/\/)?([A-Za-z0-9._~-]+(?:\/[A-Za-z0-9._~-]+)*)\/?(?:\?([^#]*))?(?:#(.*))?$/i;
41
+ //
42
+ // The query and fragment refuse control characters (C0, DEL, C1): a reference
43
+ // is printed into terminals, and an escape byte carried through a fragment
44
+ // planted its own hyperlink in a door (jgwill/Miadi#706 security review, F3).
45
+ const URI_RE = /^miadi-chronicle:(?:\/\/)?([A-Za-z0-9._~-]+(?:\/[A-Za-z0-9._~-]+)*)\/?(?:\?([^#\u0000-\u001f\u007f-\u009f]*))?(?:#([^\u0000-\u001f\u007f-\u009f]*))?$/i;
42
46
  /**
43
47
  * Reserved artifact segments — the registry SPEC §7.1 named itself after.
44
48
  * Each key is a name no episode folder can carry (folder names are
@@ -293,7 +297,8 @@ function toRef(segment, match, fragment) {
293
297
  if (!match)
294
298
  return { segment, resolved: false };
295
299
  const { entry, matchedBy, alternates } = match;
296
- const fragmentPart = fragment ? `#${fragment}` : "";
300
+ // Encoded, so nothing in a fragment can end the URL or the line it is printed on.
301
+ const fragmentPart = fragment ? `#${encodeURI(fragment)}` : "";
297
302
  return {
298
303
  segment,
299
304
  resolved: true,
@@ -330,7 +335,7 @@ export function resolveChronicleUri(uri, entries) {
330
335
  return { parsed, resolution: resolveChronicleRef(parsed, entries) };
331
336
  }
332
337
  // [1]=kind [2]=id [3]=query [4]=fragment
333
- const WHEEL_URI_RE = /^miadi-(ceremony|circle):(?:\/\/)?([A-Za-z0-9._~-]+(?::[A-Za-z0-9._~-]+)*)\/?(?:\?([^#]*))?(?:#(.*))?$/i;
338
+ const WHEEL_URI_RE = /^miadi-(ceremony|circle):(?:\/\/)?([A-Za-z0-9._~-]+(?::[A-Za-z0-9._~-]+)*)\/?(?:\?([^#\u0000-\u001f\u007f-\u009f]*))?(?:#([^\u0000-\u001f\u007f-\u009f]*))?$/i;
334
339
  export function isWheelRefUri(href) {
335
340
  return typeof href === "string" && /^miadi-(ceremony|circle):/i.test(href);
336
341
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chronicle-dsl.js","sourceRoot":"","sources":["../src/chronicle-dsl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chronicle-dsl.js","sourceRoot":"","sources":["../src/chronicle-dsl.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -16,6 +16,10 @@ export * from "./attention-node.js";
16
16
  export * from "./attention.js";
17
17
  export * from "./captures.js";
18
18
  export * from "./catalog.js";
19
+ export * from "./readings.js";
20
+ export * from "./text-references.js";
21
+ export * from "./chronicle-dsl.js";
22
+ export * from "./chronicle-terminal.js";
19
23
  export * from "./story-library.js";
20
24
  export * from "./git-landing.js";
21
25
  export * from "./closing.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA"}
package/dist/index.js CHANGED
@@ -16,6 +16,10 @@ export * from "./attention-node.js";
16
16
  export * from "./attention.js";
17
17
  export * from "./captures.js";
18
18
  export * from "./catalog.js";
19
+ export * from "./readings.js";
20
+ export * from "./text-references.js";
21
+ export * from "./chronicle-dsl.js";
22
+ export * from "./chronicle-terminal.js";
19
23
  export * from "./story-library.js";
20
24
  export * from "./git-landing.js";
21
25
  export * from "./closing.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,MAAM,EAAuC,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,MAAM,EAAuC,MAAM,UAAU,CAAA"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Episode readings: the theme, direction and arc a surface groups an episode
3
+ * under (jgwill/Miadi#506, moved here by jgwill/Miadi#706).
4
+ *
5
+ * The catalog (`buildChronicleCatalog`) carries no direction, theme or arc.
6
+ * Those are *readings* of an episode, not facts on disk: keyword guesses over
7
+ * its folder name, slug, title, type and status. They live here so the web
8
+ * room (`app/chronicle`) and the terminal browser read an episode by the same
9
+ * rule. Pure and deterministic, with no I/O, so it is safe in a client bundle
10
+ * through the `@miadi/inquiry-weave/readings` subpath.
11
+ */
12
+ import type { EpisodeManifestEntry } from "@miadi/episodic-memory-schema";
13
+ export type DirectionKey = "east" | "south" | "west" | "north";
14
+ export type ArcKey = "Book I · The Threshold" | "Book II · The Orchard" | "Book III · The Council";
15
+ export interface EpisodeReadings {
16
+ theme: string;
17
+ direction: DirectionKey;
18
+ arc: ArcKey;
19
+ }
20
+ /** The part of a catalog entry a reading looks at. */
21
+ export type ReadableEntry = Pick<EpisodeManifestEntry, "name" | "slug" | "title" | "type" | "status" | "number">;
22
+ export declare const DIRECTION_ORDER: readonly DirectionKey[];
23
+ /** First match wins, in this order. No match reads as "chronicle". */
24
+ export declare const THEME_KEYWORDS: ReadonlyArray<readonly [string, readonly string[]]>;
25
+ /** First match wins, in this order. No match falls back to the number's turn of the wheel. */
26
+ export declare const DIRECTION_KEYWORDS: ReadonlyArray<readonly [DirectionKey, readonly string[]]>;
27
+ /** Arcs in order. `maxNumber` is the inclusive last episode number; the last arc is open-ended. */
28
+ export declare const ARC_BOUNDARIES: ReadonlyArray<{
29
+ key: ArcKey;
30
+ maxNumber?: number;
31
+ }>;
32
+ export declare function inferTheme(entry: ReadableEntry): string;
33
+ export declare function inferDirection(entry: ReadableEntry): DirectionKey;
34
+ export declare function inferArc(entry: ReadableEntry): ArcKey;
35
+ export declare function readEpisode(entry: ReadableEntry): EpisodeReadings;
36
+ //# sourceMappingURL=readings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readings.d.ts","sourceRoot":"","sources":["../src/readings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAEzE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;AAC9D,MAAM,MAAM,MAAM,GACd,wBAAwB,GACxB,uBAAuB,GACvB,wBAAwB,CAAA;AAE5B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,YAAY,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,sDAAsD;AACtD,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAA;AAEhH,eAAO,MAAM,eAAe,EAAE,SAAS,YAAY,EAAuC,CAAA;AAE1F,sEAAsE;AACtE,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAQ9E,CAAA;AAED,8FAA8F;AAC9F,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC,CAKxF,CAAA;AAED,mGAAmG;AACnG,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAI7E,CAAA;AASD,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAMvD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,CAQjE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAOrD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAEjE"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Episode readings: the theme, direction and arc a surface groups an episode
3
+ * under (jgwill/Miadi#506, moved here by jgwill/Miadi#706).
4
+ *
5
+ * The catalog (`buildChronicleCatalog`) carries no direction, theme or arc.
6
+ * Those are *readings* of an episode, not facts on disk: keyword guesses over
7
+ * its folder name, slug, title, type and status. They live here so the web
8
+ * room (`app/chronicle`) and the terminal browser read an episode by the same
9
+ * rule. Pure and deterministic, with no I/O, so it is safe in a client bundle
10
+ * through the `@miadi/inquiry-weave/readings` subpath.
11
+ */
12
+ export const DIRECTION_ORDER = ["east", "south", "west", "north"];
13
+ /** First match wins, in this order. No match reads as "chronicle". */
14
+ export const THEME_KEYWORDS = [
15
+ ["ceremony", ["ceremony", "ceremonial", "medicine-wheel", "medicine wheel", "fire-keeper", "sacred", "relational", "council-table", "wheel"]],
16
+ ["orchestration", ["orchestrat", "conductor", "herd", "dispatch", "coordination", "delegation", "multi-agent", "pane", "tmux", "consolidat"]],
17
+ ["runtime", ["runtime", "hermes", "tide", "socket", "boundary", "launch", "server", "a2a", "gateway"]],
18
+ ["agents", ["agent", "skill", "copilot", "claude", "ava", "navigator", "operator", "witness"]],
19
+ ["inquiry", ["inquiry", "pde", "decompos", "question", "qmd", "tension", "structural", "glossary"]],
20
+ ["memory", ["memory", "episodic", "continuity", "ledger", "redis", "data-layer", "data layer", "persistence"]],
21
+ ["portal", ["portal", "house", "threshold", "tushell", "lantern", "tree"]],
22
+ ];
23
+ /** First match wins, in this order. No match falls back to the number's turn of the wheel. */
24
+ export const DIRECTION_KEYWORDS = [
25
+ ["east", ["portal", "threshold", "vision", "outline", "glossary", "plan", "foundation", "begin", "prelude", "lantern", "seed"]],
26
+ ["south", ["orchestrat", "runtime", "build", "agent", "delegation", "pipeline", "integration", "evolution", "growth", "gateway", "dispatch"]],
27
+ ["west", ["reflection", "review", "witness", "narration", "revision", "retrospect", "editor", "closure", "note", "triage", "media"]],
28
+ ["north", ["wisdom", "council", "memory", "ledger", "accountab", "security", "governance", "snapshot", "chronicle-data", "witness-layer"]],
29
+ ];
30
+ /** Arcs in order. `maxNumber` is the inclusive last episode number; the last arc is open-ended. */
31
+ export const ARC_BOUNDARIES = [
32
+ { key: "Book I · The Threshold", maxNumber: 27 },
33
+ { key: "Book II · The Orchard", maxNumber: 103 },
34
+ { key: "Book III · The Council" },
35
+ ];
36
+ function haystack(entry) {
37
+ return [entry.name, entry.slug, entry.title, entry.type, entry.status]
38
+ .filter(Boolean)
39
+ .join(" ")
40
+ .toLowerCase();
41
+ }
42
+ export function inferTheme(entry) {
43
+ const h = haystack(entry);
44
+ for (const [theme, kws] of THEME_KEYWORDS) {
45
+ if (kws.some((k) => h.includes(k)))
46
+ return theme;
47
+ }
48
+ return "chronicle";
49
+ }
50
+ export function inferDirection(entry) {
51
+ const h = haystack(entry);
52
+ for (const [dir, kws] of DIRECTION_KEYWORDS) {
53
+ if (kws.some((k) => h.includes(k)))
54
+ return dir;
55
+ }
56
+ // No keyword: rotate by number so episodes still flow through all four
57
+ // directions. This is why a reading is not a fact the episode declared.
58
+ return DIRECTION_ORDER[(entry.number ?? 0) % 4];
59
+ }
60
+ export function inferArc(entry) {
61
+ const n = entry.number;
62
+ if (n === undefined)
63
+ return "Book II · The Orchard";
64
+ for (const arc of ARC_BOUNDARIES) {
65
+ if (arc.maxNumber === undefined || n <= arc.maxNumber)
66
+ return arc.key;
67
+ }
68
+ return ARC_BOUNDARIES[ARC_BOUNDARIES.length - 1].key;
69
+ }
70
+ export function readEpisode(entry) {
71
+ return { theme: inferTheme(entry), direction: inferDirection(entry), arc: inferArc(entry) };
72
+ }
73
+ //# sourceMappingURL=readings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readings.js","sourceRoot":"","sources":["../src/readings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Find the chronicle, ceremony and circle references in a piece of text
3
+ * (jgwill/Miadi#706).
4
+ *
5
+ * A web page folds `{{ … }}` directives into links and lets its markdown
6
+ * parser hand it each href (`app/chronicle/lib/dsl.ts`). A terminal has no
7
+ * such parser, so this module scans the text once and returns every reference
8
+ * with its position, in the forms SPEC.md §3 and §9 allow:
9
+ *
10
+ * - directive: `{{ miadi-chronicle:126 | label="Mila" }}`, `{{ ceremony:cede9d8f }}`,
11
+ * `{{ circle:1790153219791:zv10r2 }}`, `{{ miadi-circle:… }}`
12
+ * - link: `[text](miadi-chronicle:126)`, with an optional `<…>` destination or
13
+ * title, and the reference forms `[text][label]`, `[label][]`, `[label]`
14
+ * resolved against `[label]: miadi-…` definitions
15
+ * - autolink: `<miadi-ceremony:…>`
16
+ * - bare: `**Episode:** miadi-chronicle://349`, as ceremony notes are written
17
+ *
18
+ * Fenced code (of any fence length), inline code (of any backtick count),
19
+ * indented code after a blank line and HTML comments are skipped, as a
20
+ * markdown renderer would show them literally. Every candidate must parse with
21
+ * `parseMiadiChronicleUri` or `parseWheelRefUri`, so nothing malformed becomes
22
+ * a chip, and a `{{ … }}` that is not a valid directive stays literal text.
23
+ *
24
+ * Every pattern is bounded (labels, tokens and option tails have a maximum
25
+ * length), so a hostile line costs linear time: the review of 0.15.0 found
26
+ * three patterns that took a minute on one 100 KB line.
27
+ *
28
+ * Pure, no I/O.
29
+ */
30
+ import { type WheelRefKind } from "./chronicle-dsl.js";
31
+ export type TextReferenceKind = "chronicle" | WheelRefKind;
32
+ export type TextReferenceForm = "directive" | "link" | "autolink" | "bare";
33
+ export interface TextReference {
34
+ /** Offset of the first character of `raw` in the text. */
35
+ start: number;
36
+ /** Offset just past `raw`. */
37
+ end: number;
38
+ /** The source text of the whole reference, brackets and braces included. */
39
+ raw: string;
40
+ kind: TextReferenceKind;
41
+ form: TextReferenceForm;
42
+ /** The reference to resolve: a `miadi-chronicle:` URI as written, or a canonical `miadi-ceremony:` / `miadi-circle:` URI. */
43
+ uri: string;
44
+ /** The words the author gave it (link text or `label=`), if any. */
45
+ label?: string;
46
+ /** Rendering options (`show`, `label`, …) from a directive tail or `mc.*` params. */
47
+ options: Record<string, string>;
48
+ }
49
+ /** The wheel id a short form names: `circle:<rest>`, a ceremony UUID (or prefix), or `ceremony:<rest>`. */
50
+ export declare function expandWheelShortForm(kind: WheelRefKind, rest: string): string;
51
+ export declare function findTextReferences(text: string): TextReference[];
52
+ //# sourceMappingURL=text-references.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-references.d.ts","sourceRoot":"","sources":["../src/text-references.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAA;AAE3B,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,YAAY,CAAA;AAC1D,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAA;AAE1E,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,KAAK,EAAE,MAAM,CAAA;IACb,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,4EAA4E;IAC5E,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,iBAAiB,CAAA;IACvB,IAAI,EAAE,iBAAiB,CAAA;IACvB,6HAA6H;IAC7H,GAAG,EAAE,MAAM,CAAA;IACX,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qFAAqF;IACrF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAoCD,2GAA2G;AAC3G,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAG7E;AAoFD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CAkDhE"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Find the chronicle, ceremony and circle references in a piece of text
3
+ * (jgwill/Miadi#706).
4
+ *
5
+ * A web page folds `{{ … }}` directives into links and lets its markdown
6
+ * parser hand it each href (`app/chronicle/lib/dsl.ts`). A terminal has no
7
+ * such parser, so this module scans the text once and returns every reference
8
+ * with its position, in the forms SPEC.md §3 and §9 allow:
9
+ *
10
+ * - directive: `{{ miadi-chronicle:126 | label="Mila" }}`, `{{ ceremony:cede9d8f }}`,
11
+ * `{{ circle:1790153219791:zv10r2 }}`, `{{ miadi-circle:… }}`
12
+ * - link: `[text](miadi-chronicle:126)`, with an optional `<…>` destination or
13
+ * title, and the reference forms `[text][label]`, `[label][]`, `[label]`
14
+ * resolved against `[label]: miadi-…` definitions
15
+ * - autolink: `<miadi-ceremony:…>`
16
+ * - bare: `**Episode:** miadi-chronicle://349`, as ceremony notes are written
17
+ *
18
+ * Fenced code (of any fence length), inline code (of any backtick count),
19
+ * indented code after a blank line and HTML comments are skipped, as a
20
+ * markdown renderer would show them literally. Every candidate must parse with
21
+ * `parseMiadiChronicleUri` or `parseWheelRefUri`, so nothing malformed becomes
22
+ * a chip, and a `{{ … }}` that is not a valid directive stays literal text.
23
+ *
24
+ * Every pattern is bounded (labels, tokens and option tails have a maximum
25
+ * length), so a hostile line costs linear time: the review of 0.15.0 found
26
+ * three patterns that took a minute on one 100 KB line.
27
+ *
28
+ * Pure, no I/O.
29
+ */
30
+ import { canonicalWheelRef, parseMiadiChronicleUri, parseWheelRefUri, } from "./chronicle-dsl.js";
31
+ const SCHEMES = "miadi-(?:chronicle|ceremony|circle)";
32
+ /** A link label: escaped characters, plain characters, or one level of nested brackets. */
33
+ const LABEL = "(?:\\\\.|[^\\[\\]\\\\\\n]|\\[[^\\[\\]\\n]{0,200}\\]){0,500}";
34
+ // Directives are single-line, with bounded URI and option tail (the app's
35
+ // review found a cubic backtrack with an unbounded tail: jgwill/Miadi#680, F2).
36
+ const CHRONICLE_DIRECTIVE_RE = /\{\{[ \t]*(miadi-chronicle:(?:\/\/)?[^|}\s]{1,512})[ \t]*(?:\|([^}\n]{0,512}))?\}\}/gi;
37
+ const WHEEL_DIRECTIVE_RE = /\{\{[ \t]*(miadi-)?(ceremony|circle):(?:\/\/)?([A-Za-z0-9._~:-]{1,512})\/?[ \t]*(?:\|([^}\n]{0,512}))?\}\}/gi;
38
+ /** Any brace span, closed or running to the end of its line: never a bare reference inside. */
39
+ const BRACES_RE = /\{\{[^}\n]{0,1024}(?:\}\}|$)/gm;
40
+ const LINK_RE = new RegExp(`(?<![!\\\\])\\[(${LABEL})\\]\\(\\s*<?(${SCHEMES}:[^\\s<>)]{1,512})>?(?:\\s+(?:"[^"\\n]{0,500}"|'[^'\\n]{0,500}'))?\\s*\\)`, "gi");
41
+ const DEFINITION_RE = new RegExp(`^ {0,3}\\[([^\\[\\]\\n]{1,500})\\]:[ \\t]*<?(${SCHEMES}:[^\\s<>]{1,512})>?`, "gim");
42
+ const REFERENCE_LINK_RE = new RegExp(`(?<![!\\\\\\]])\\[(${LABEL})\\](?:\\[([^\\[\\]\\n]{0,500})\\])?(?![(:\\[])`, "g");
43
+ const AUTOLINK_RE = new RegExp(`<(${SCHEMES}:[^>\\s]{1,512})>`, "gi");
44
+ // A bare reference starts where no URL, word or path continues into it
45
+ // (`https://x/?r=miadi-chronicle:1` is not one). A chronicle path may carry
46
+ // `/`; a ceremony or circle id ends before one (`…:zv10r2/notes.md`).
47
+ const BARE_CHRONICLE_RE = /(?<![\w/?=&%.~+:@-])miadi-chronicle:(?:\/\/)?[A-Za-z0-9._~:/?=&%#+-]{1,512}/gi;
48
+ const BARE_WHEEL_RE = /(?<![\w/?=&%.~+:@-])miadi-(?:ceremony|circle):(?:\/\/)?[A-Za-z0-9._~:?=&%#+-]{1,512}/gi;
49
+ const HEX_ID_RE = /^[0-9a-f][0-9a-f-]*$/i;
50
+ const OPTION_RE = /([A-Za-z0-9._~-]{1,64})\s*=\s*(?:"([^"\n]{0,500})"|([A-Za-z0-9._~/-]{1,500}))/g;
51
+ const TRAILING = new Set(".,;:!?)]'\"~_-");
52
+ function parseOptionTail(tail) {
53
+ const options = {};
54
+ if (!tail)
55
+ return options;
56
+ for (const m of tail.matchAll(OPTION_RE))
57
+ options[m[1]] = m[2] !== undefined ? m[2] : m[3];
58
+ return options;
59
+ }
60
+ /** The wheel id a short form names: `circle:<rest>`, a ceremony UUID (or prefix), or `ceremony:<rest>`. */
61
+ export function expandWheelShortForm(kind, rest) {
62
+ if (kind === "circle")
63
+ return `circle:${rest}`;
64
+ return HEX_ID_RE.test(rest) ? rest : `ceremony:${rest}`;
65
+ }
66
+ /** Sentence punctuation after a bare mention is not part of it (a loop: linear on any input). */
67
+ function trimTrailing(token) {
68
+ let end = token.length;
69
+ while (end > 0 && TRAILING.has(token[end - 1]))
70
+ end--;
71
+ return token.slice(0, end);
72
+ }
73
+ const unescapeLabel = (label) => label.replace(/\\([\\[\]])/g, "$1");
74
+ const normalizeLabel = (label) => label.trim().replace(/\s+/g, " ").toLowerCase();
75
+ /** Parse one href or bare mention into a reference, or null. */
76
+ function fromUri(uri, form, label) {
77
+ const chronicle = parseMiadiChronicleUri(uri);
78
+ if (chronicle) {
79
+ const authored = label ?? chronicle.options.label;
80
+ return { kind: "chronicle", form, uri: chronicle.uri, options: chronicle.options, ...(authored ? { label: authored } : {}) };
81
+ }
82
+ const wheel = parseWheelRefUri(uri);
83
+ if (wheel) {
84
+ const authored = label ?? wheel.options.label;
85
+ return { kind: wheel.kind, form, uri: wheel.canonical, options: wheel.options, ...(authored ? { label: authored } : {}) };
86
+ }
87
+ return null;
88
+ }
89
+ /**
90
+ * Where nothing is a reference: fenced blocks (closed by a fence at least as
91
+ * long, or running to the end), HTML comments, inline code of any backtick
92
+ * count, and indented code that follows a blank line outside a list.
93
+ */
94
+ function protectedRanges(text) {
95
+ const ranges = [];
96
+ const lines = text.split("\n");
97
+ let offset = 0;
98
+ let fence = null;
99
+ let fenceStart = 0;
100
+ let prevBlank = true;
101
+ let inIndented = false;
102
+ let lastNonBlankIsListItem = false;
103
+ for (const line of lines) {
104
+ const lineStart = offset;
105
+ const lineEnd = offset + line.length;
106
+ offset = lineEnd + 1;
107
+ if (fence) {
108
+ const close = /^ {0,3}(`{3,}|~{3,})[ \t]*$/.exec(line);
109
+ if (close && close[1][0] === fence.char && close[1].length >= fence.length) {
110
+ ranges.push([fenceStart, lineEnd]);
111
+ fence = null;
112
+ }
113
+ continue;
114
+ }
115
+ const open = /^ {0,3}(`{3,}|~{3,})/.exec(line);
116
+ if (open && !(open[1][0] === "`" && line.slice(open[0].length).includes("`"))) {
117
+ fence = { char: open[1][0], length: open[1].length };
118
+ fenceStart = lineStart;
119
+ inIndented = false;
120
+ prevBlank = false;
121
+ continue;
122
+ }
123
+ const blank = /^[ \t]*$/.test(line);
124
+ const indented = /^(?: {4}|\t)/.test(line) && !blank;
125
+ if (indented && (inIndented || (prevBlank && !lastNonBlankIsListItem))) {
126
+ ranges.push([lineStart, lineEnd]);
127
+ inIndented = true;
128
+ }
129
+ else if (!blank) {
130
+ inIndented = false;
131
+ lastNonBlankIsListItem = /^\s*(?:[-*+]|\d{1,9}[.)])\s/.test(line) || (lastNonBlankIsListItem && /^\s/.test(line));
132
+ }
133
+ prevBlank = blank;
134
+ }
135
+ if (fence)
136
+ ranges.push([fenceStart, text.length]);
137
+ for (const m of text.matchAll(/<!--[\s\S]*?(?:-->|$(?![\s\S]))/g))
138
+ ranges.push([m.index, m.index + m[0].length]);
139
+ // Inline code: a run of n backticks closed by a run of exactly n, on one line.
140
+ for (const m of text.matchAll(/(?<!`)(`{1,8})(?!`)[^\n]{0,2000}?(?<!`)\1(?!`)/g))
141
+ ranges.push([m.index, m.index + m[0].length]);
142
+ return ranges;
143
+ }
144
+ export function findTextReferences(text) {
145
+ const out = [];
146
+ const taken = protectedRanges(text);
147
+ const free = (start, end) => taken.every(([s, e]) => end <= s || start >= e);
148
+ const add = (start, raw, candidate) => {
149
+ const end = start + raw.length;
150
+ if (!candidate || !free(start, end))
151
+ return;
152
+ taken.push([start, end]);
153
+ out.push({ start, end, raw, ...candidate });
154
+ };
155
+ for (const m of text.matchAll(CHRONICLE_DIRECTIVE_RE)) {
156
+ const options = parseOptionTail(m[2]);
157
+ const found = fromUri(m[1], "directive", options.label);
158
+ add(m.index, m[0], found && { ...found, options: { ...found.options, ...options } });
159
+ }
160
+ for (const m of text.matchAll(WHEEL_DIRECTIVE_RE)) {
161
+ const kind = m[2].toLowerCase();
162
+ const id = m[1] ? m[3] : expandWheelShortForm(kind, m[3]);
163
+ const options = parseOptionTail(m[4]);
164
+ const found = fromUri(canonicalWheelRef(kind, id), "directive", options.label);
165
+ add(m.index, m[0], found && { ...found, options: { ...found.options, ...options } });
166
+ }
167
+ // A {{ … }} the passes above did not accept is literal text, as the app shows it.
168
+ for (const m of text.matchAll(BRACES_RE))
169
+ if (free(m.index, m.index + m[0].length))
170
+ taken.push([m.index, m.index + m[0].length]);
171
+ for (const m of text.matchAll(LINK_RE))
172
+ add(m.index, m[0], fromUri(m[2], "link", unescapeLabel(m[1]) || undefined));
173
+ const definitions = new Map();
174
+ for (const m of text.matchAll(DEFINITION_RE)) {
175
+ const key = normalizeLabel(m[1]);
176
+ if (!definitions.has(key))
177
+ definitions.set(key, m[2]);
178
+ }
179
+ if (definitions.size > 0) {
180
+ for (const m of text.matchAll(REFERENCE_LINK_RE)) {
181
+ const label = m[1];
182
+ const key = normalizeLabel(m[2] ? m[2] : label);
183
+ const uri = definitions.get(key);
184
+ if (uri)
185
+ add(m.index, m[0], fromUri(uri, "link", unescapeLabel(label) || undefined));
186
+ }
187
+ }
188
+ for (const m of text.matchAll(AUTOLINK_RE))
189
+ add(m.index, m[0], fromUri(m[1], "autolink"));
190
+ for (const pattern of [BARE_CHRONICLE_RE, BARE_WHEEL_RE]) {
191
+ for (const m of text.matchAll(pattern)) {
192
+ const raw = trimTrailing(m[0]);
193
+ add(m.index, raw, fromUri(raw, "bare"));
194
+ }
195
+ }
196
+ return out.sort((left, right) => left.start - right.start);
197
+ }
198
+ //# sourceMappingURL=text-references.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-references.js","sourceRoot":"","sources":["../src/text-references.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miadi/inquiry-weave",
3
- "version": "0.14.3",
3
+ "version": "0.15.1",
4
4
  "description": "Relate and sync IAIP inquiry artefacts, their GitHub issues, and miadi-chronicle episodes. Creates vessels and relations only — never inquiry content.",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -14,6 +14,11 @@
14
14
  "import": "./dist/index.js",
15
15
  "default": "./dist/index.js"
16
16
  },
17
+ "./readings": {
18
+ "types": "./dist/readings.d.ts",
19
+ "import": "./dist/readings.js",
20
+ "default": "./dist/readings.js"
21
+ },
17
22
  "./package.json": "./package.json"
18
23
  },
19
24
  "bin": {