ctxr-cli 0.10.0 → 0.11.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 (61) hide show
  1. package/README.md +11 -4
  2. package/dist/commands/init.d.ts.map +1 -1
  3. package/dist/commands/init.js +9 -2
  4. package/dist/commands/init.js.map +1 -1
  5. package/dist/config/defaults.d.ts +59 -3
  6. package/dist/config/defaults.d.ts.map +1 -1
  7. package/dist/config/defaults.js +61 -3
  8. package/dist/config/defaults.js.map +1 -1
  9. package/dist/config/schema.d.ts +4 -1
  10. package/dist/config/schema.d.ts.map +1 -1
  11. package/dist/config/schema.js +14 -1
  12. package/dist/config/schema.js.map +1 -1
  13. package/dist/core/agents-doc.d.ts.map +1 -1
  14. package/dist/core/agents-doc.js +2 -1
  15. package/dist/core/agents-doc.js.map +1 -1
  16. package/dist/core/checks/integrity-checks.d.ts.map +1 -1
  17. package/dist/core/checks/integrity-checks.js +36 -0
  18. package/dist/core/checks/integrity-checks.js.map +1 -1
  19. package/dist/core/checks/manifest.d.ts.map +1 -1
  20. package/dist/core/checks/manifest.js +2 -0
  21. package/dist/core/checks/manifest.js.map +1 -1
  22. package/dist/core/checks/store-checks.d.ts +12 -0
  23. package/dist/core/checks/store-checks.d.ts.map +1 -0
  24. package/dist/core/checks/store-checks.js +37 -0
  25. package/dist/core/checks/store-checks.js.map +1 -0
  26. package/dist/core/convention-doc.d.ts.map +1 -1
  27. package/dist/core/convention-doc.js +15 -9
  28. package/dist/core/convention-doc.js.map +1 -1
  29. package/dist/core/graph/model.d.ts +7 -6
  30. package/dist/core/graph/model.d.ts.map +1 -1
  31. package/dist/core/graph/model.js +11 -7
  32. package/dist/core/graph/model.js.map +1 -1
  33. package/dist/core/note-templates.d.ts +61 -0
  34. package/dist/core/note-templates.d.ts.map +1 -0
  35. package/dist/core/note-templates.js +188 -0
  36. package/dist/core/note-templates.js.map +1 -0
  37. package/dist/core/notes/list.d.ts.map +1 -1
  38. package/dist/core/notes/list.js +5 -0
  39. package/dist/core/notes/list.js.map +1 -1
  40. package/dist/core/reconcile.d.ts.map +1 -1
  41. package/dist/core/reconcile.js +8 -0
  42. package/dist/core/reconcile.js.map +1 -1
  43. package/dist/core/skills.d.ts.map +1 -1
  44. package/dist/core/skills.js +25 -15
  45. package/dist/core/skills.js.map +1 -1
  46. package/dist/core/write-lifecycle/path-gate.d.ts.map +1 -1
  47. package/dist/core/write-lifecycle/path-gate.js +4 -1
  48. package/dist/core/write-lifecycle/path-gate.js.map +1 -1
  49. package/dist/version.d.ts +1 -1
  50. package/dist/version.js +1 -1
  51. package/package.json +1 -1
  52. package/templates/agents/canonical.md +4 -0
  53. package/templates/notes/Company.md +25 -0
  54. package/templates/notes/Concept.md +29 -0
  55. package/templates/notes/Deal.md +25 -0
  56. package/templates/notes/Note.md +6 -0
  57. package/templates/notes/People.md +19 -0
  58. package/templates/notes/Project.md +19 -0
  59. package/templates/skills/ctxr-ingest-orchestration.md +4 -1
  60. package/templates/skills/ctxr-placement.md +21 -2
  61. package/templates/skills/ctxr-session-capture.md +5 -1
@@ -1,6 +1,8 @@
1
1
  import { readFile } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { configuredAdapters, resolveAdapter } from '../../adapters/registry.js';
4
+ import { parse as parseYaml } from 'yaml';
5
+ import { CONFIG_FILE_NAME } from '../root.js';
4
6
  import { StoreConfigSchema } from '../../config/schema.js';
5
7
  import { AGENTS_MD_CONVENTIONS_FENCE, AGENTS_MD_MISSION_FENCE, agentsMdPath, checkAgentsMdDrift, renderConventionsSection, renderMissionSection, } from '../agents-doc.js';
6
8
  import { checkCatalogStale } from '../catalog/build.js';
@@ -21,6 +23,22 @@ import { defineCheck } from './types.js';
21
23
  * the safety net promised at removal time actually exists.
22
24
  */
23
25
  const KNOWN_TOP_LEVEL_CONFIG_KEYS = new Set(Object.keys(StoreConfigSchema.shape));
26
+ /**
27
+ * fix-the-note-compass: keys contexture used to recognize and no longer does,
28
+ * as dotted paths.
29
+ *
30
+ * A NESTED key needs naming here because the schema strips one silently — zod
31
+ * drops an unknown key inside a block, so unlike a stray top-level key it
32
+ * leaves no trace in the parsed config for the check above to find. A store
33
+ * that keeps declaring one would go on believing it means something. Being
34
+ * told the key is dead is the whole point of removing it.
35
+ */
36
+ const RETIRED_CONFIG_KEYS = [
37
+ {
38
+ path: 'retrieval.relations',
39
+ replacedBy: 'The relation vocabulary is fixed and no longer configurable — the names it declared are the names contexture now ships. Delete the key.',
40
+ },
41
+ ];
24
42
  /**
25
43
  * store-integrity spec (task 9.3): "derived-artifact staleness." Covers
26
44
  * both derived legs in one check — the catalog's confirmed-gloss hash
@@ -245,6 +263,24 @@ export const noUnrecognizedConfigKeysCheck = defineCheck({
245
263
  message: `contexture.yaml has a top-level "${key}" key that this version of contexture doesn't recognize — a typo, or a capability retired in a later release. Remove it, or check contexture's release notes for what replaced it.`,
246
264
  subject: key,
247
265
  }));
266
+ // Read against the raw file, not the parsed config: a retired nested key has
267
+ // already been stripped by the time the config is an object.
268
+ const raw = await readFile(path.join(ctx.storeRoot, CONFIG_FILE_NAME), 'utf8').catch(() => undefined);
269
+ if (raw !== undefined) {
270
+ const parsed = parseYaml(raw);
271
+ for (const retired of RETIRED_CONFIG_KEYS) {
272
+ const [block = '', key = ''] = retired.path.split('.');
273
+ const section = parsed?.[block];
274
+ if (section && typeof section === 'object' && key in section) {
275
+ findings.push({
276
+ code: 'store.retired_config_key',
277
+ severity: 'error',
278
+ message: `contexture.yaml declares "${retired.path}", which this version of contexture no longer reads. ${retired.replacedBy}`,
279
+ subject: retired.path,
280
+ });
281
+ }
282
+ }
283
+ }
248
284
  return { status: findings.length > 0 ? 'fail' : 'pass', findings };
249
285
  },
250
286
  });
@@ -1 +1 @@
1
- {"version":3,"file":"integrity-checks.js","sourceRoot":"","sources":["../../../src/core/checks/integrity-checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integrity-checks.js","sourceRoot":"","sources":["../../../src/core/checks/integrity-checks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/core/checks/manifest.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,SAAS,eAAe,EAO5C,CAAC"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/core/checks/manifest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,SAAS,eAAe,EAQ5C,CAAC"}
@@ -3,6 +3,7 @@ import { HARNESS_PORTABILITY_CHECKS } from './harness-portability-checks.js';
3
3
  import { INTEGRITY_CHECKS } from './integrity-checks.js';
4
4
  import { ORGANIZE_CHECKS } from './organize-checks.js';
5
5
  import { RETRIEVAL_CHECKS } from './retrieval-checks.js';
6
+ import { STORE_CHECKS } from './store-checks.js';
6
7
  import { WRITE_LIFECYCLE_CHECKS } from './write-lifecycle-checks.js';
7
8
  /**
8
9
  * The only file later phases append to when they add a doctor/lint check:
@@ -14,6 +15,7 @@ export const CHECKS = [
14
15
  ...ORGANIZE_CHECKS,
15
16
  ...RETRIEVAL_CHECKS,
16
17
  ...INTEGRITY_CHECKS,
18
+ ...STORE_CHECKS,
17
19
  ...HARNESS_PORTABILITY_CHECKS,
18
20
  ];
19
21
  //# sourceMappingURL=manifest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/core/checks/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAGrE;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAA+B;IAChD,GAAG,sBAAsB;IACzB,GAAG,cAAc;IACjB,GAAG,eAAe;IAClB,GAAG,gBAAgB;IACnB,GAAG,gBAAgB;IACnB,GAAG,0BAA0B;CAC9B,CAAC"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/core/checks/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAGrE;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAA+B;IAChD,GAAG,sBAAsB;IACzB,GAAG,cAAc;IACjB,GAAG,eAAe;IAClB,GAAG,gBAAgB;IACnB,GAAG,gBAAgB;IACnB,GAAG,YAAY;IACf,GAAG,0BAA0B;CAC9B,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * context-store spec ("A note template's placeholder vocabulary"): a note that
3
+ * reached the store still carrying a template placeholder was never finished.
4
+ *
5
+ * An observation, never an invariant: the note is readable and valid, it just
6
+ * has a hole in it. And it matches the ENUMERATED vocabulary only — a note may
7
+ * legitimately quote another tool's double-brace syntax, and a check that
8
+ * reports those is one operators learn to ignore.
9
+ */
10
+ export declare const unsubstitutedPlaceholderCheck: import("./types.js").CheckDefinition;
11
+ export declare const STORE_CHECKS: import("./types.js").CheckDefinition[];
12
+ //# sourceMappingURL=store-checks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-checks.d.ts","sourceRoot":"","sources":["../../../src/core/checks/store-checks.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,sCAsBxC,CAAC;AAEH,eAAO,MAAM,YAAY,wCAAkC,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { NOTE_TEMPLATE_PLACEHOLDERS } from '../note-templates.js';
2
+ import { defineCheck } from './types.js';
3
+ /**
4
+ * context-store spec ("A note template's placeholder vocabulary"): a note that
5
+ * reached the store still carrying a template placeholder was never finished.
6
+ *
7
+ * An observation, never an invariant: the note is readable and valid, it just
8
+ * has a hole in it. And it matches the ENUMERATED vocabulary only — a note may
9
+ * legitimately quote another tool's double-brace syntax, and a check that
10
+ * reports those is one operators learn to ignore.
11
+ */
12
+ export const unsubstitutedPlaceholderCheck = defineCheck({
13
+ id: 'store.unsubstituted_placeholder',
14
+ title: 'Notes still carrying a template placeholder',
15
+ severity: 'observation',
16
+ capability: 'context-store',
17
+ scopes: ['store'],
18
+ async run(ctx) {
19
+ const findings = [];
20
+ for (const note of await ctx.notes()) {
21
+ const haystack = [note.body, ...Object.values(note.frontmatter ?? {}).map((v) => (typeof v === 'string' ? v : ''))].join('\n');
22
+ const found = NOTE_TEMPLATE_PLACEHOLDERS.filter((token) => haystack.includes(token));
23
+ if (found.length === 0)
24
+ continue;
25
+ findings.push({
26
+ code: 'store.unsubstituted_placeholder',
27
+ severity: 'info',
28
+ message: `"${note.path}" still carries the template placeholder ${found.join(', ')}.`,
29
+ subject: note.path,
30
+ details: { placeholders: found },
31
+ });
32
+ }
33
+ return { status: findings.length > 0 ? 'fail' : 'pass', findings };
34
+ },
35
+ });
36
+ export const STORE_CHECKS = [unsubstitutedPlaceholderCheck];
37
+ //# sourceMappingURL=store-checks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-checks.js","sourceRoot":"","sources":["../../../src/core/checks/store-checks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,WAAW,CAAC;IACvD,EAAE,EAAE,iCAAiC;IACrC,KAAK,EAAE,6CAA6C;IACpD,QAAQ,EAAE,aAAa;IACvB,UAAU,EAAE,eAAe;IAC3B,MAAM,EAAE,CAAC,OAAO,CAAC;IACjB,KAAK,CAAC,GAAG,CAAC,GAAG;QACX,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,MAAM,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/H,MAAM,KAAK,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YACrF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACjC,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,iCAAiC;gBACvC,QAAQ,EAAE,MAAM;gBAChB,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,4CAA4C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBACrF,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;aACjC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;IACrE,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,6BAA6B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"convention-doc.d.ts","sourceRoot":"","sources":["../../src/core/convention-doc.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAsBvD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAOrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAOhH;AAmBD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAW/G"}
1
+ {"version":3,"file":"convention-doc.d.ts","sourceRoot":"","sources":["../../src/core/convention-doc.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AA4BvD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAOrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAOhH;AAmBD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAW/G"}
@@ -1,6 +1,6 @@
1
1
  import { mkdir, readFile, rm } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
- import { DEFAULT_BASELINE_CONVENTIONS_FILE_NAME, DEFAULT_HOUSE_CONVENTIONS_FILE_NAME, LEGACY_BASELINE_CONVENTION_FILE_NAME, } from '../config/defaults.js';
3
+ import { RELATION_DIRECTEDNESS_NOTE, RELATION_VOCABULARY, DEFAULT_BASELINE_CONVENTIONS_FILE_NAME, DEFAULT_HOUSE_CONVENTIONS_FILE_NAME, LEGACY_BASELINE_CONVENTION_FILE_NAME, } from '../config/defaults.js';
4
4
  import { writeFileAtomic } from './fs/atomic.js';
5
5
  import { packagedTemplate, substituteBlock } from './templates.js';
6
6
  /** The header every contexture-owned guidance file carries; the guard on removing one. */
@@ -8,14 +8,20 @@ const MANAGED_OWNER_MARKER = '<!-- Owned by contexture —';
8
8
  function conventionTemplate(name) {
9
9
  return packagedTemplate('conventions', name);
10
10
  }
11
- function relationVocabularyLines(config) {
12
- const { relations } = config.retrieval;
13
- if (relations.length === 0) {
14
- return ['This store declares no relation vocabulary (`retrieval.relations`) — every link is untyped.'];
15
- }
16
- const named = relations.map((name) => `**${name}**`).join(', ');
11
+ /**
12
+ * fix-the-note-compass: the vocabulary is fixed, so there is no empty case to
13
+ * branch on. Each name is rendered with its definition, because the question an
14
+ * agent has is which of two adjacent relations a link belongs under, and the
15
+ * directedness note is rendered with them, because assuming the reciprocal is
16
+ * written for you is the way to leave half the graph unwritten.
17
+ */
18
+ function relationVocabularyLines() {
17
19
  return [
18
- `This store's configured relation vocabulary, in link-section order: ${named}. A link under one of these section headings in a note's body is typed accordingly; a link under any other heading is untyped.`,
20
+ "A link under one of these section headings in a note's body is recorded as an edge of that type; a link under any other heading is untyped.",
21
+ '',
22
+ ...RELATION_VOCABULARY.map((relation) => `- **${relation.name}** — ${relation.definition}`),
23
+ '',
24
+ RELATION_DIRECTEDNESS_NOTE,
19
25
  ];
20
26
  }
21
27
  /**
@@ -32,7 +38,7 @@ export function renderBaselineConventions(config) {
32
38
  .replaceAll('__ARCHIVE_DESTINATION__', config.organize.archive_destination)
33
39
  .replaceAll('__DEFAULT_BRANCH__', config.git.default_branch)
34
40
  .replaceAll('__WORKTREES_PATH__', config.session.worktrees_path);
35
- text = substituteBlock(text, '__RELATION_VOCABULARY__', relationVocabularyLines(config));
41
+ text = substituteBlock(text, '__RELATION_VOCABULARY__', relationVocabularyLines());
36
42
  return `${text}\n`;
37
43
  }
38
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"convention-doc.js","sourceRoot":"","sources":["../../src/core/convention-doc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convention-doc.js","sourceRoot":"","sources":["../../src/core/convention-doc.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,6 @@ export interface GraphBuildResult {
35
35
  }
36
36
  export interface GraphBuildOptions {
37
37
  /** Relation names whose section headings type the wikilinks under them (graph-context-document D3). Empty: no typed edges. */
38
- relations?: readonly string[];
39
38
  /** How many leading directory segments form a node's cluster (graph-context-document D2). */
40
39
  clusterDepth?: number;
41
40
  }
@@ -52,11 +51,14 @@ export interface LinkOccurrence {
52
51
  * heading — trimmed, trailing colon stripped, compared case-insensitively —
53
52
  * names a configured relation is typed with that relation; the section ends
54
53
  * at the next heading of the same or a higher level. Everything else,
55
- * including links on heading lines themselves, is an ordinary link. With
56
- * an empty vocabulary every link is ordinary, so a store that declares no
57
- * relations gets exactly the graph it had before.
54
+ * including links on heading lines themselves, is an ordinary link.
55
+ *
56
+ * fix-the-note-compass: the vocabulary is fixed and read from
57
+ * RELATION_NAMES rather than passed in, so typed edges need no
58
+ * configuration. A heading outside it yields an ordinary link, which is
59
+ * what every heading yielded before typing existed.
58
60
  */
59
- export declare function extractLinks(body: string, relations?: readonly string[]): LinkOccurrence[];
61
+ export declare function extractLinks(body: string): LinkOccurrence[];
60
62
  /** Every wikilink target in a body, in order, regardless of section — the pre-typed-edge view callers outside the graph still want. */
61
63
  export declare function extractLinkTargets(body: string): string[];
62
64
  /**
@@ -90,7 +92,6 @@ export declare function buildGraphFromNotes(notes: readonly Note[], options?: Gr
90
92
  /** The build options a store's configuration implies — the one place config is translated for the graph. */
91
93
  export declare function graphBuildOptions(config: {
92
94
  retrieval: {
93
- relations: readonly string[];
94
95
  graph: {
95
96
  cluster_depth: number;
96
97
  };
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/core/graph/model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,WAAW,CAAC;AAEvD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,kGAAkG;AAClG,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,8HAA8H;IAC9H,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,6FAA6F;IAC7F,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,mEAAmE;AACnE,eAAO,MAAM,YAAY,WAAW,CAAC;AAErC,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAA8B,GAAG,MAAM,CAIzF;AAKD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,SAAS,MAAM,EAAO,GAAG,cAAc,EAAE,CAuB9F;AAYD,uIAAuI;AACvI,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEzD;AAED;;;;;;;;;;;;GAYG;AACH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAS5E;AAED,MAAM,MAAM,cAAc,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC;AAE3E,0GAA0G;AAC1G,wBAAgB,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,CAKpG;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,OAAO,GAAE,iBAAsB,GAAG,gBAAgB,CA2B7G;AAED,4GAA4G;AAC5G,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IAAE,SAAS,EAAE;QAAE,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE;YAAE,aAAa,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,GAAG,iBAAiB,CAE9I"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/core/graph/model.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,WAAW,CAAC;AAEvD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,kGAAkG;AAClG,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,8HAA8H;IAC9H,6FAA6F;IAC7F,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,mEAAmE;AACnE,eAAO,MAAM,YAAY,WAAW,CAAC;AAErC,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAA8B,GAAG,MAAM,CAIzF;AAKD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE,CAuB3D;AAYD,uIAAuI;AACvI,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEzD;AAED;;;;;;;;;;;;GAYG;AACH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAS5E;AAED,MAAM,MAAM,cAAc,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC;AAE3E,0GAA0G;AAC1G,wBAAgB,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,CAKpG;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,OAAO,GAAE,iBAAsB,GAAG,gBAAgB,CA2B7G;AAED,4GAA4G;AAC5G,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IAAE,SAAS,EAAE;QAAE,KAAK,EAAE;YAAE,aAAa,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,GAAG,iBAAiB,CAEhH"}
@@ -1,5 +1,6 @@
1
1
  import path from 'node:path';
2
2
  import { GraphIdentityCollisionError } from '../errors.js';
3
+ import { RELATION_NAMES } from '../../config/defaults.js';
3
4
  /** The edge type of an ordinary wikilink; every other type is a configured relation name (D3). */
4
5
  export const LINK_EDGE_TYPE = 'link';
5
6
  export const DEFAULT_CLUSTER_DEPTH = 2;
@@ -21,13 +22,16 @@ function normalizeHeading(text) {
21
22
  * heading — trimmed, trailing colon stripped, compared case-insensitively —
22
23
  * names a configured relation is typed with that relation; the section ends
23
24
  * at the next heading of the same or a higher level. Everything else,
24
- * including links on heading lines themselves, is an ordinary link. With
25
- * an empty vocabulary every link is ordinary, so a store that declares no
26
- * relations gets exactly the graph it had before.
25
+ * including links on heading lines themselves, is an ordinary link.
26
+ *
27
+ * fix-the-note-compass: the vocabulary is fixed and read from
28
+ * RELATION_NAMES rather than passed in, so typed edges need no
29
+ * configuration. A heading outside it yields an ordinary link, which is
30
+ * what every heading yielded before typing existed.
27
31
  */
28
- export function extractLinks(body, relations = []) {
32
+ export function extractLinks(body) {
29
33
  const vocabulary = new Map();
30
- for (const name of relations)
34
+ for (const name of RELATION_NAMES)
31
35
  vocabulary.set(normalizeHeading(name), name);
32
36
  const links = [];
33
37
  let section = null;
@@ -116,7 +120,7 @@ export function buildGraphFromNotes(notes, options = {}) {
116
120
  const edges = [];
117
121
  const dangling = [];
118
122
  for (const note of notes) {
119
- for (const { target, type } of extractLinks(note.body, options.relations ?? [])) {
123
+ for (const { target, type } of extractLinks(note.body)) {
120
124
  const resolution = resolveStem(stemIndex, target);
121
125
  if ('reason' in resolution) {
122
126
  dangling.push({ from: note.path, target, reason: resolution.reason });
@@ -130,6 +134,6 @@ export function buildGraphFromNotes(notes, options = {}) {
130
134
  }
131
135
  /** The build options a store's configuration implies — the one place config is translated for the graph. */
132
136
  export function graphBuildOptions(config) {
133
- return { relations: config.retrieval.relations, clusterDepth: config.retrieval.graph.cluster_depth };
137
+ return { clusterDepth: config.retrieval.graph.cluster_depth };
134
138
  }
135
139
  //# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/core/graph/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/core/graph/model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import type { StoreConfig } from '../config/schema.js';
2
+ import type { Finding } from './envelope.js';
3
+ /**
4
+ * standardize-note-templates: the note templates a store starts a note from.
5
+ *
6
+ * Two existing patterns, combined. Rendering follows `convention-doc.ts` — the
7
+ * prose is packaged markdown, substituted against the store's own configuration,
8
+ * so a vocabulary change reaches the templates rather than silently diverging
9
+ * from the graph that reads them. Ownership follows the vendored-skill half of
10
+ * `skills.ts` — a record with a content hash, not a marker in the file.
11
+ *
12
+ * The record, and not an in-file header, is the whole point (design D2): a
13
+ * template's bytes are copied into a note, so an "Owned by contexture" comment
14
+ * would appear at the top of every note the store ever writes. This module is
15
+ * deliberately separate from `skills.ts` for the same reason — the two ownership
16
+ * marks must not be confused.
17
+ */
18
+ /** The record naming what contexture delivered, sibling to the templates it names. */
19
+ export declare const TEMPLATES_RECORD_FILE_NAME = ".ctxr-templates.json";
20
+ /**
21
+ * context-store spec: the placeholder vocabulary a template may carry,
22
+ * enumerated here and nowhere else. No command expands one — substitution is
23
+ * the agent's, as it starts the note — so this list exists to be CHECKED
24
+ * against, by the lint finding that reports a note which landed with a hole
25
+ * still in it.
26
+ */
27
+ export declare const NOTE_TEMPLATE_PLACEHOLDERS: readonly ['{{title}}', '{{date}}'];
28
+ export interface NoteTemplateRecord {
29
+ /** Template name (no extension) -> sha256 of the rendered bytes contexture wrote. */
30
+ templates: Record<string, string>;
31
+ ctxrVersion?: string;
32
+ }
33
+ /**
34
+ * The packaged template, normalized to exactly one trailing newline.
35
+ *
36
+ * Deliberately not a render: a template's content is fixed markdown, including
37
+ * its relation sections. Making those follow a per-store vocabulary was
38
+ * considered and dropped — it bought a configuration surface nobody had asked
39
+ * for, and the cost of the alternative is a heading a store does not use, which
40
+ * is inert. `config` stays in the signature because the sync below is
41
+ * config-scoped and a future template may legitimately need it.
42
+ */
43
+ export declare function renderNoteTemplate(name: string, _config: StoreConfig): string;
44
+ /** Every template name contexture packages, whether or not a store installs it. */
45
+ export declare function packagedTemplateNames(): string[];
46
+ /**
47
+ * Brings every note template a store declares (`config.templates.installed`) to
48
+ * the packaged version rendered for this store, and removes a previously
49
+ * installed template the store no longer wants.
50
+ *
51
+ * The hash in the record decides everything: it matches, so contexture wrote
52
+ * what is on disk and may rewrite it; it does not, so an operator edited the
53
+ * file and it is left exactly as it is with a finding naming it. A file the
54
+ * record does not name is the store's own kind and is never read, rewritten, or
55
+ * removed.
56
+ */
57
+ export declare function syncNoteTemplates(root: string, config: StoreConfig, ctxrVersion: string): Promise<{
58
+ changed: string[];
59
+ findings: Finding[];
60
+ }>;
61
+ //# sourceMappingURL=note-templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"note-templates.d.ts","sourceRoot":"","sources":["../../src/core/note-templates.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C;;;;;;;;;;;;;;GAcG;AAEH,sFAAsF;AACtF,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AAEjE;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,YAAI,WAAW,EAAE,UAAU,CAAU,CAAC;AAE7E,MAAM,WAAW,kBAAkB;IACjC,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAcD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM,CAE7E;AAED,mFAAmF;AACnF,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAEhD;AAqBD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC,CAiErD"}