ctxr-cli 0.23.0 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/README.md +6 -1
  2. package/dist/commands/graph-diff.d.ts +33 -0
  3. package/dist/commands/graph-diff.d.ts.map +1 -0
  4. package/dist/commands/graph-diff.js +52 -0
  5. package/dist/commands/graph-diff.js.map +1 -0
  6. package/dist/commands/publish-check.d.ts +6 -0
  7. package/dist/commands/publish-check.d.ts.map +1 -1
  8. package/dist/commands/publish-check.js +78 -3
  9. package/dist/commands/publish-check.js.map +1 -1
  10. package/dist/commands/publish-gather.d.ts.map +1 -1
  11. package/dist/commands/publish-gather.js +4 -1
  12. package/dist/commands/publish-gather.js.map +1 -1
  13. package/dist/commands/publish-new.d.ts +5 -0
  14. package/dist/commands/publish-new.d.ts.map +1 -1
  15. package/dist/commands/publish-new.js +30 -10
  16. package/dist/commands/publish-new.js.map +1 -1
  17. package/dist/commands/publish-stamp.d.ts +32 -0
  18. package/dist/commands/publish-stamp.d.ts.map +1 -0
  19. package/dist/commands/publish-stamp.js +78 -0
  20. package/dist/commands/publish-stamp.js.map +1 -0
  21. package/dist/commands/publish-urls.d.ts +6 -0
  22. package/dist/commands/publish-urls.d.ts.map +1 -1
  23. package/dist/commands/publish-urls.js +10 -1
  24. package/dist/commands/publish-urls.js.map +1 -1
  25. package/dist/commands/serve.d.ts.map +1 -1
  26. package/dist/commands/serve.js +83 -5
  27. package/dist/commands/serve.js.map +1 -1
  28. package/dist/core/browse/diagram-assets.d.ts +15 -0
  29. package/dist/core/browse/diagram-assets.d.ts.map +1 -0
  30. package/dist/core/browse/diagram-assets.js +35 -0
  31. package/dist/core/browse/diagram-assets.js.map +1 -0
  32. package/dist/core/browse/page-url.d.ts +22 -0
  33. package/dist/core/browse/page-url.d.ts.map +1 -1
  34. package/dist/core/browse/page-url.js +31 -0
  35. package/dist/core/browse/page-url.js.map +1 -1
  36. package/dist/core/browse/render.d.ts +10 -1
  37. package/dist/core/browse/render.d.ts.map +1 -1
  38. package/dist/core/browse/render.js +23 -1
  39. package/dist/core/browse/render.js.map +1 -1
  40. package/dist/core/browse/templates.d.ts +4 -1
  41. package/dist/core/browse/templates.d.ts.map +1 -1
  42. package/dist/core/browse/templates.js +18 -2
  43. package/dist/core/browse/templates.js.map +1 -1
  44. package/dist/core/checks/organize-checks.d.ts +17 -0
  45. package/dist/core/checks/organize-checks.d.ts.map +1 -1
  46. package/dist/core/checks/organize-checks.js +116 -0
  47. package/dist/core/checks/organize-checks.js.map +1 -1
  48. package/dist/core/errors.d.ts +43 -0
  49. package/dist/core/errors.d.ts.map +1 -1
  50. package/dist/core/errors.js +105 -0
  51. package/dist/core/errors.js.map +1 -1
  52. package/dist/core/git/exec.d.ts +10 -0
  53. package/dist/core/git/exec.d.ts.map +1 -1
  54. package/dist/core/git/exec.js +52 -2
  55. package/dist/core/git/exec.js.map +1 -1
  56. package/dist/core/graph/diff-block.d.ts +6 -0
  57. package/dist/core/graph/diff-block.d.ts.map +1 -0
  58. package/dist/core/graph/diff-block.js +54 -0
  59. package/dist/core/graph/diff-block.js.map +1 -0
  60. package/dist/core/graph/diff-document.d.ts +37 -0
  61. package/dist/core/graph/diff-document.d.ts.map +1 -0
  62. package/dist/core/graph/diff-document.js +119 -0
  63. package/dist/core/graph/diff-document.js.map +1 -0
  64. package/dist/core/graph/diff.d.ts +123 -0
  65. package/dist/core/graph/diff.d.ts.map +1 -0
  66. package/dist/core/graph/diff.js +253 -0
  67. package/dist/core/graph/diff.js.map +1 -0
  68. package/dist/core/graph/tree.d.ts +24 -0
  69. package/dist/core/graph/tree.d.ts.map +1 -0
  70. package/dist/core/graph/tree.js +45 -0
  71. package/dist/core/graph/tree.js.map +1 -0
  72. package/dist/core/notes/list.d.ts +10 -0
  73. package/dist/core/notes/list.d.ts.map +1 -1
  74. package/dist/core/notes/list.js +35 -12
  75. package/dist/core/notes/list.js.map +1 -1
  76. package/dist/core/publish/filing.d.ts +12 -12
  77. package/dist/core/publish/filing.d.ts.map +1 -1
  78. package/dist/core/publish/filing.js +20 -18
  79. package/dist/core/publish/filing.js.map +1 -1
  80. package/dist/core/publish/lifespan.d.ts +37 -0
  81. package/dist/core/publish/lifespan.d.ts.map +1 -0
  82. package/dist/core/publish/lifespan.js +59 -0
  83. package/dist/core/publish/lifespan.js.map +1 -0
  84. package/dist/core/publish/represents.d.ts +72 -0
  85. package/dist/core/publish/represents.d.ts.map +1 -0
  86. package/dist/core/publish/represents.js +83 -0
  87. package/dist/core/publish/represents.js.map +1 -0
  88. package/dist/run.d.ts.map +1 -1
  89. package/dist/run.js +34 -4
  90. package/dist/run.js.map +1 -1
  91. package/dist/version.d.ts +1 -1
  92. package/dist/version.js +1 -1
  93. package/package.json +2 -1
  94. package/templates/conventions/baseline-conventions.md +6 -0
  95. package/templates/graph/knowledge-changes/archived.md +1 -0
  96. package/templates/graph/knowledge-changes/bare-route.md +2 -0
  97. package/templates/graph/knowledge-changes/block.md +10 -0
  98. package/templates/graph/knowledge-changes/counts.md +1 -0
  99. package/templates/graph/knowledge-changes/dangling.md +1 -0
  100. package/templates/graph/knowledge-changes/empty.md +1 -0
  101. package/templates/graph/knowledge-changes/review.md +4 -0
  102. package/templates/serve/diagrams.mjs +136 -0
  103. package/templates/serve/shell.html +1 -1
  104. package/templates/serve/style.css +27 -0
  105. package/templates/skills/ctxr-organize-audit.md +19 -0
  106. package/templates/skills/ctxr-publish.md +100 -45
  107. package/templates/skills/ctxr-submit.md +24 -15
@@ -0,0 +1,83 @@
1
+ import { readFile } from 'node:fs/promises';
2
+ import { contentHashOfBody } from '../content/canonicalize.js';
3
+ import { buildStemIndex, extractLinkTargets } from '../graph/model.js';
4
+ import { parseNoteText } from '../notes/parse.js';
5
+ /**
6
+ * Parsed rather than grepped so frontmatter is excluded, matching how the graph
7
+ * resolves a wikilink. `extractLinkTargets` reports occurrences in body order,
8
+ * so the first line that yields one holds the lead.
9
+ */
10
+ export function readLeadLink(readmeRaw, readmePath) {
11
+ const { body } = parseNoteText(readmeRaw, readmePath);
12
+ const frontmatterLines = readmeRaw.slice(0, readmeRaw.length - body.length).split('\n').length - 1;
13
+ const lines = body.split('\n');
14
+ for (let i = 0; i < lines.length; i++) {
15
+ const target = extractLinkTargets(lines[i])[0];
16
+ if (target !== undefined)
17
+ return { target, line: frontmatterLines + i };
18
+ }
19
+ return null;
20
+ }
21
+ /**
22
+ * By filename stem, through the one stem index every wikilink resolution in the
23
+ * system reads (`buildStemIndex`): exactly one note resolves, zero or two-plus
24
+ * do not. The candidates are named so the author can qualify the link.
25
+ */
26
+ export function resolveRepresented(notes, stem) {
27
+ const paths = buildStemIndex(notes).get(stem) ?? [];
28
+ if (paths.length === 0)
29
+ return { none: true };
30
+ if (paths.length > 1)
31
+ return { ambiguous: [...paths].sort() };
32
+ return { note: notes.find((note) => note.path === paths[0]) };
33
+ }
34
+ /** The catalog's frozen-hash form, so an agent that has learned one has learned both (D5). */
35
+ const HASH_MARKER_RE = /\s*<!-- hash:([0-9a-f]{16}) -->/;
36
+ export function readHashMarker(line) {
37
+ return HASH_MARKER_RE.exec(line)?.[1] ?? null;
38
+ }
39
+ /**
40
+ * D5: the marker is written once and never overwritten. A line that already
41
+ * carries one comes back unchanged — confirming a page against a changed note
42
+ * takes removing the marker by hand and stamping again.
43
+ */
44
+ export function appendHashMarker(line, hash) {
45
+ if (readHashMarker(line) !== null)
46
+ return line;
47
+ // A CRLF file's line keeps its `\r`, so nothing but the marker changes.
48
+ const ending = line.endsWith('\r') ? '\r' : '';
49
+ return `${line.replace(/\s+$/, '')} <!-- hash:${hash} -->${ending}`;
50
+ }
51
+ /** The represented note's hash — `contentHashOfBody`, imported and never re-spelled. */
52
+ export function representedNoteHash(note) {
53
+ return contentHashOfBody(note.body);
54
+ }
55
+ /** Where a permanent page stands against its note — one reading for `publish check`, `publish stamp` and lint. */
56
+ export function assessRepresentation(readmeRaw, readmePath, notes) {
57
+ const lead = readLeadLink(readmeRaw, readmePath);
58
+ if (lead === null)
59
+ return { status: 'no-link' };
60
+ const resolved = resolveRepresented(notes, lead.target);
61
+ if ('none' in resolved)
62
+ return { status: 'not-found', target: lead.target };
63
+ if ('ambiguous' in resolved)
64
+ return { status: 'ambiguous', target: lead.target, candidates: resolved.ambiguous };
65
+ const hash = representedNoteHash(resolved.note);
66
+ const recorded = readHashMarker(readmeRaw.split('\n')[lead.line]);
67
+ if (recorded === null)
68
+ return { status: 'not-stamped', note: resolved.note.path, hash, lead };
69
+ if (recorded !== hash)
70
+ return { status: 'stale', note: resolved.note.path, hash, recorded, lead };
71
+ return { status: 'current', note: resolved.note.path, hash, lead };
72
+ }
73
+ export async function readReadme(readmeAbsolutePath) {
74
+ try {
75
+ return await readFile(readmeAbsolutePath, 'utf8');
76
+ }
77
+ catch (err) {
78
+ if (err.code === 'ENOENT')
79
+ return null;
80
+ throw err;
81
+ }
82
+ }
83
+ //# sourceMappingURL=represents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"represents.js","sourceRoot":"","sources":["../../../src/core/publish/represents.ts"],"names":[],"mappings":"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"}
package/dist/run.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQhD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,YAAI,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAuIpE,wBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAgjBjF"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQhD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,YAAI,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAuIpE,wBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA8kBjF"}
package/dist/run.js CHANGED
@@ -9,6 +9,7 @@ import * as ingestCommand from './commands/ingest.js';
9
9
  import * as lintCommand from './commands/lint.js';
10
10
  import * as contextGatherCommand from './commands/context-gather.js';
11
11
  import * as graphBuildCommand from './commands/graph-build.js';
12
+ import * as graphDiffCommand from './commands/graph-diff.js';
12
13
  import * as entryAppendCommand from './commands/entry-append.js';
13
14
  import * as graphQueryCommand from './commands/graph-query.js';
14
15
  import * as initCommand from './commands/init.js';
@@ -16,6 +17,7 @@ import * as publishGatherCommand from './commands/publish-gather.js';
16
17
  import * as publishCheckCommand from './commands/publish-check.js';
17
18
  import * as publishUrlsCommand from './commands/publish-urls.js';
18
19
  import * as publishNewCommand from './commands/publish-new.js';
20
+ import * as publishStampCommand from './commands/publish-stamp.js';
19
21
  import * as sessionCaptureCommand from './commands/session-capture.js';
20
22
  import * as sessionListCommand from './commands/session-list.js';
21
23
  import * as serveCommand from './commands/serve.js';
@@ -282,6 +284,23 @@ export async function run(argv, env) {
282
284
  return graphBuildCommand.execute(store, { emitRecords: cmdOpts.emitRecords });
283
285
  });
284
286
  });
287
+ graphCommand
288
+ .command('diff')
289
+ .description('how the knowledge changed between two commits: notes, links, dangling links, inbound links, rollups and newly cited sources — read from git, writing nothing')
290
+ .option('--since <ref>', 'compare from the merge base of this ref and the head (required)')
291
+ .option('--until <ref>', 'the head commit to compare (default: HEAD)')
292
+ .option('--format <form>', `the human output: ${graphDiffCommand.GRAPH_DIFF_FORMATS.join(' or ')} (markdown is the pull request's Knowledge changes block; not with --json)`)
293
+ .action(async (cmdOpts, cmd) => {
294
+ const { runEnv, jsonMode, root } = deriveRunEnv(env, cmd);
295
+ const flags = { since: cmdOpts.since, until: cmdOpts.until, format: cmdOpts.format };
296
+ // review-the-knowledge-diff (D9): `--format markdown` is the whole stdout — the
297
+ // block rides as the human summary, which the reporter writes verbatim and alone.
298
+ result = await runCommand('graph.diff', runEnv, jsonMode, async () => {
299
+ graphDiffCommand.checkFlags(flags, jsonMode);
300
+ const store = await openStore(runEnv, { root });
301
+ return graphDiffCommand.execute(store, flags, jsonMode);
302
+ });
303
+ });
285
304
  const graphQueryCommandGroup = graphCommand.command('query').description('query the built graph');
286
305
  graphQueryCommandGroup
287
306
  .command('neighbors <node>')
@@ -499,17 +518,28 @@ export async function run(argv, env) {
499
518
  });
500
519
  publishCommand
501
520
  .command('new <slug>')
502
- .description('scaffold a page folder with a sibling README, and name the address it is served at — the slug may name a path of folders under the publish path — refusing a reserved or already-existing slug')
503
- .action(async (slug, _cmdOpts, cmd) => {
521
+ .description('scaffold a page folder with a sibling README, and name the address it is served at and its lifespan — the slug may name a path of folders under the publish path — refusing a reserved or already-existing slug; with --disposable, a throwaway page at disposable/<today>-<slug>')
522
+ .option('--disposable', 'scaffold a disposable page at disposable/<YYYY-MM-DD>-<slug>, dated today by the command (two-kinds-of-published-page)')
523
+ .action(async (slug, cmdOpts, cmd) => {
504
524
  const { runEnv, jsonMode, root } = deriveRunEnv(env, cmd);
505
525
  result = await runCommand('publish.new', runEnv, jsonMode, async () => {
506
526
  const store = await openStore(runEnv, { root });
507
- return publishNewCommand.execute(store, { slug });
527
+ return publishNewCommand.execute(store, { slug, disposable: cmdOpts.disposable === true });
528
+ });
529
+ });
530
+ publishCommand
531
+ .command('stamp <path>')
532
+ .description("record the hash of the note a permanent page represents (its README's lead link) as a marker on that line — once; never overwrites a marker, and refuses a disposable page")
533
+ .action(async (pagePath, _cmdOpts, cmd) => {
534
+ const { runEnv, jsonMode, root } = deriveRunEnv(env, cmd);
535
+ result = await runCommand('publish.stamp', runEnv, jsonMode, async () => {
536
+ const store = await openStore(runEnv, { root });
537
+ return publishStampCommand.execute(store, { path: pagePath });
508
538
  });
509
539
  });
510
540
  publishCommand
511
541
  .command('check <path>')
512
- .description('the mechanized structural checks a published page must pass (no external references, viewport meta, print rule, provenance, sibling README, script syntax), and the address it is served at')
542
+ .description("the mechanized structural checks a published page must pass (no external references, viewport meta, print rule, provenance, sibling README, script syntax; a disposable page's shape; a permanent page's represented note and its hash), and the page's address and lifespan")
513
543
  .action(async (pagePath, _cmdOpts, cmd) => {
514
544
  const { runEnv, jsonMode, root } = deriveRunEnv(env, cmd);
515
545
  result = await runCommand('publish.check', runEnv, jsonMode, async () => {
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Kept in sync with package.json's "version" field. */
2
- export declare const CLI_VERSION = "0.23.0";
2
+ export declare const CLI_VERSION = "0.24.0";
3
3
  /**
4
4
  * The npm package this executable is published as. Bound here, beside the
5
5
  * version, because the release check resolves the latest published release by
package/dist/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Kept in sync with package.json's "version" field. */
2
- export const CLI_VERSION = '0.23.0';
2
+ export const CLI_VERSION = '0.24.0';
3
3
  /**
4
4
  * The npm package this executable is published as. Bound here, beside the
5
5
  * version, because the release check resolves the latest published release by
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ctxr-cli",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "description": "Context store for AI coding agents — markdown and git, catalog and graph retrieval, no vector database.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -45,6 +45,7 @@
45
45
  },
46
46
  "dependencies": {
47
47
  "@inquirer/prompts": "^8.7.0",
48
+ "@mermaid-js/tiny": "^12.2.0",
48
49
  "commander": "^15.0.0",
49
50
  "markdown-it": "^15.0.1",
50
51
  "yaml": "^2.9.0",
@@ -9,6 +9,12 @@ description: Contexture's shipped conventions, rendered from this store's own co
9
9
  - Keep a note's `title:` equal to its filename stem, unique in the store: the catalog builds each entry's wikilink from `title:`, so a divergent title links to nothing.
10
10
  - A task is a checkbox with a dated parenthetical: `- [ ] Task (added YYYY-MM-DD, due YYYY-MM-DD)`, `- [~] Task (added YYYY-MM-DD)` while in progress, `- [x] Task (done YYYY-MM-DD)`. Omit a date that does not apply.
11
11
 
12
+ ## Explaining
13
+
14
+ When you explain something to the operator, write about 80% of the way to ASD-STE100: one fact per sentence, at most 20 words to instruct and 25 to describe, active voice, one word for one thing, lists for three or more items, numbers over vague words. Keep the store's names as written. Give each reason its own `Why:` sentence. Copy quotes, output and report tables unchanged.
15
+
16
+ Draw a diagram when structure, flow or sequence would take a paragraph: fenced `mermaid` in notes, pull requests and answers; inline SVG in pages.
17
+
12
18
  ## What stays out of the store
13
19
 
14
20
  - Credentials and full card or account numbers never enter it — the last four digits only.
@@ -0,0 +1 @@
1
+ Notes archived:
@@ -0,0 +1,2 @@
1
+
2
+ No `serve.base_url` is declared, so the review view is a server-relative route.
@@ -0,0 +1,10 @@
1
+ ## Knowledge changes
2
+
3
+ Written by `ctxr graph diff` from the two commits below. Run the reproduce command to check it.
4
+
5
+ - Base commit: `__BASE__`
6
+ - Head commit: `__HEAD__`
7
+ - Reproduce: `ctxr graph diff --since __BASE__ --until __HEAD__`
8
+
9
+ __BODY__
10
+ __REVIEW__
@@ -0,0 +1 @@
1
+ Notes: __NOTES_ADDED__ added, __NOTES_REMOVED__ removed, __NOTES_MODIFIED__ modified, __NOTES_MOVED__ moved, __NOTES_ARCHIVED__ archived. Links: __LINKS_ADDED__ added, __LINKS_REMOVED__ removed. Dangling links: __DANGLING_INTRODUCED__ introduced, __DANGLING_RESOLVED__ resolved. Notes whose inbound links changed: __INBOUND_CHANGED__. Rollups touched: __ROLLUPS_TOUCHED__. Notes citing new sources: __SOURCES_CITED__.
@@ -0,0 +1 @@
1
+ Dangling links introduced:
@@ -0,0 +1 @@
1
+ This range changes no note.
@@ -0,0 +1,4 @@
1
+ Review view: __ADDRESS__
2
+
3
+ The review view resolves only while this session's worktree exists and the server can reach it.
4
+ __BARE_ROUTE__
@@ -0,0 +1,136 @@
1
+ /*
2
+ * render-diagrams-in-notes design.md D6/D7: draws each `.ctxr-diagram` source
3
+ * block with the renderer the shell loaded just before this module
4
+ * (`window.mermaid`, served by `ctxr serve` from its installed dependency).
5
+ * Script only enhances: without it the block stays readable source. This file
6
+ * registers no icon loader and fetches nothing.
7
+ *
8
+ * The two exported functions are pure, so a unit test imports them without a
9
+ * DOM; everything that touches the page runs only when there is a document.
10
+ */
11
+
12
+ /**
13
+ * The scheme the page renders in. `light` and `dark` are the reader's explicit
14
+ * choice, already applied by the server; only `system` defers to the browser.
15
+ */
16
+ export function effectiveScheme(themeAttr, prefersDark) {
17
+ if (themeAttr === 'dark') return 'dark';
18
+ if (themeAttr === 'light') return 'light';
19
+ return prefersDark ? 'dark' : 'light';
20
+ }
21
+
22
+ /**
23
+ * Maps the shell's `--ctxr-*` custom properties (read through `readProperty`,
24
+ * a name-to-value function) to mermaid `themeVariables` for its `base` theme,
25
+ * so `style.css` stays the palette's one source.
26
+ */
27
+ export function themeVariables(readProperty) {
28
+ const fg = readProperty('--ctxr-fg');
29
+ const bg = readProperty('--ctxr-bg');
30
+ const muted = readProperty('--ctxr-muted');
31
+ const border = readProperty('--ctxr-border');
32
+ const codeBg = readProperty('--ctxr-code-bg');
33
+ return {
34
+ background: bg,
35
+ textColor: fg,
36
+ lineColor: muted,
37
+ primaryColor: codeBg,
38
+ primaryTextColor: fg,
39
+ primaryBorderColor: muted,
40
+ secondaryColor: bg,
41
+ secondaryTextColor: fg,
42
+ secondaryBorderColor: muted,
43
+ tertiaryColor: bg,
44
+ tertiaryTextColor: fg,
45
+ tertiaryBorderColor: border,
46
+ mainBkg: codeBg,
47
+ nodeBorder: muted,
48
+ nodeTextColor: fg,
49
+ clusterBkg: bg,
50
+ clusterBorder: border,
51
+ titleColor: fg,
52
+ edgeLabelBackground: bg,
53
+ actorBkg: codeBg,
54
+ actorBorder: muted,
55
+ actorTextColor: fg,
56
+ actorLineColor: muted,
57
+ signalColor: fg,
58
+ signalTextColor: fg,
59
+ labelBoxBkgColor: codeBg,
60
+ labelBoxBorderColor: muted,
61
+ labelTextColor: fg,
62
+ loopTextColor: fg,
63
+ noteBkgColor: codeBg,
64
+ noteTextColor: fg,
65
+ noteBorderColor: border,
66
+ activationBkgColor: codeBg,
67
+ activationBorderColor: muted,
68
+ sequenceNumberColor: bg,
69
+ };
70
+ }
71
+
72
+ /**
73
+ * The configuration every draw initializes mermaid with. design.md D5:
74
+ * `securityLevel: 'strict'` alone still renders HTML in flowchart labels in
75
+ * mermaid 12.2.0, so an `<img>` in a label would load from any address. The
76
+ * top-level `htmlLabels: false` draws labels as SVG text instead, so markup
77
+ * in a diagram's source is shown as text or removed, never rendered.
78
+ */
79
+ export function mermaidConfig(variables) {
80
+ return {
81
+ startOnLoad: false,
82
+ securityLevel: 'strict',
83
+ htmlLabels: false,
84
+ suppressErrorRendering: true,
85
+ theme: 'base',
86
+ themeVariables: variables,
87
+ };
88
+ }
89
+
90
+ const DARK_QUERY = '(prefers-color-scheme: dark)';
91
+
92
+ /** Each block's source, kept from before the first draw so a redraw starts from the author's text. */
93
+ const sources = new Map();
94
+ let renderCount = 0;
95
+
96
+ function initialize(mermaid, root) {
97
+ const style = getComputedStyle(root);
98
+ const readProperty = (name) => style.getPropertyValue(name).trim();
99
+ const scheme = effectiveScheme(root.getAttribute('data-ctxr-theme'), matchMedia(DARK_QUERY).matches);
100
+ mermaid.initialize(mermaidConfig({ ...themeVariables(readProperty), darkMode: scheme === 'dark' }));
101
+ }
102
+
103
+ /** Draws one block; a failure keeps its source visible and marks it, without stopping the others. */
104
+ async function draw(mermaid, block) {
105
+ const source = sources.get(block);
106
+ try {
107
+ renderCount += 1;
108
+ const { svg } = await mermaid.render(`ctxr-diagram-${renderCount}`, source);
109
+ block.innerHTML = svg;
110
+ block.setAttribute('data-ctxr-diagram-drawn', '');
111
+ block.removeAttribute('data-ctxr-diagram-error');
112
+ } catch (err) {
113
+ block.textContent = source;
114
+ block.removeAttribute('data-ctxr-diagram-drawn');
115
+ block.setAttribute('data-ctxr-diagram-error', err instanceof Error ? err.message : String(err));
116
+ }
117
+ }
118
+
119
+ async function drawAll(mermaid, root) {
120
+ initialize(mermaid, root);
121
+ for (const block of sources.keys()) await draw(mermaid, block);
122
+ }
123
+
124
+ if (typeof document !== 'undefined') {
125
+ const mermaid = globalThis.mermaid;
126
+ const root = document.documentElement;
127
+ const blocks = document.querySelectorAll('.ctxr-diagram');
128
+ if (mermaid && blocks.length > 0) {
129
+ for (const block of blocks) sources.set(block, block.textContent);
130
+ void drawAll(mermaid, root);
131
+ // A chosen light or dark theme is a full page load; only `system` changes under an open page.
132
+ if (root.getAttribute('data-ctxr-theme') === 'system') {
133
+ matchMedia(DARK_QUERY).addEventListener('change', () => void drawAll(mermaid, root));
134
+ }
135
+ }
136
+ }
@@ -28,5 +28,5 @@
28
28
  {{BODY}}
29
29
  </main>
30
30
  </div>
31
- </body>
31
+ {{SCRIPTS}}</body>
32
32
  </html>
@@ -303,3 +303,30 @@ ul.ctxr-tree ul.ctxr-tree {
303
303
  .ctxr-build-hint code {
304
304
  font-weight: 600;
305
305
  }
306
+
307
+ /*
308
+ * render-diagrams-in-notes design.md D3/D7: an undrawn diagram is a source
309
+ * block in the code palette like any other, readable as it stands without
310
+ * script. Once drawn, it sits centered and scrolls sideways when wider than
311
+ * the column. A block the renderer could not draw keeps its source and gains
312
+ * a label in the broken palette, so it is never mistaken for a plain code block.
313
+ */
314
+ .ctxr-diagram[data-ctxr-diagram-drawn] {
315
+ background: none;
316
+ padding: 0.5rem 0;
317
+ text-align: center;
318
+ white-space: normal;
319
+ }
320
+
321
+ .ctxr-diagram[data-ctxr-diagram-error] {
322
+ border-left: 3px solid var(--ctxr-broken);
323
+ }
324
+
325
+ .ctxr-diagram[data-ctxr-diagram-error]::before {
326
+ content: "Diagram not drawn: " attr(data-ctxr-diagram-error);
327
+ display: block;
328
+ margin-bottom: 0.5rem;
329
+ color: var(--ctxr-broken);
330
+ font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
331
+ white-space: pre-wrap;
332
+ }
@@ -34,6 +34,25 @@ item was one of the mission's priorities, hand it to `ctxr-mission`, which propo
34
34
  have moved since their last synthesis, or which have never been rolled up — hand each one to
35
35
  `ctxr-rollup` rather than re-synthesizing ad hoc.
36
36
 
37
+ ## Disposable pages and drifted pages
38
+
39
+ `ctxr lint` lists disposable pages that are older than 30 days. Each one is a removal candidate, not a
40
+ removal. Do these steps:
41
+
42
+ 1. Show the list to the operator as a proposal, with each page's age. Ask which pages to remove.
43
+ 2. Remove only the pages that the operator approves. Why: somebody can still have the link to a
44
+ disposable page, and a removal breaks that link.
45
+ 3. Do the removal in a session, on its session branch, with `git rm -r <page folder>`.
46
+ 4. Land the removal through `ctxr-submit`. Its **Pages** table marks the address of each removed page
47
+ as one that stops working.
48
+
49
+ Never remove a disposable page that the operator did not approve, and never remove one only because it
50
+ is old.
51
+
52
+ `ctxr lint` also lists permanent pages that are out of step with the note they represent: stale, not
53
+ stamped, or with no note that resolves. Give each one to `ctxr-publish`. Do not stamp the page
54
+ yourself. Why: a stamp without a review of the page against its note confirms nothing.
55
+
37
56
  ## Broken links have classes — classify before fixing
38
57
 
39
58
  - URL wrapped in wikilink syntax → convert to a markdown link.