@agentshouse/mdmodel 0.1.0-c4fe1bc82bc55 → 0.1.0-c520180b7a33f

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 (137) hide show
  1. package/API.md +264 -250
  2. package/README.md +21 -22
  3. package/dist/blocks.d.ts.map +1 -1
  4. package/dist/blocks.js +35 -20
  5. package/dist/definition.d.ts +17 -1
  6. package/dist/definition.d.ts.map +1 -1
  7. package/dist/definition.js +321 -45
  8. package/dist/divide.d.ts.map +1 -1
  9. package/dist/divide.js +27 -17
  10. package/dist/document.d.ts +6 -3
  11. package/dist/document.d.ts.map +1 -1
  12. package/dist/document.js +326 -171
  13. package/dist/event.d.ts +78 -0
  14. package/dist/event.d.ts.map +1 -0
  15. package/dist/event.js +230 -0
  16. package/dist/fields.d.ts +2 -0
  17. package/dist/fields.d.ts.map +1 -1
  18. package/dist/fields.js +7 -0
  19. package/dist/index.d.ts +24 -10
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +14 -7
  22. package/dist/kinds.d.ts +19 -0
  23. package/dist/kinds.d.ts.map +1 -0
  24. package/dist/kinds.js +161 -0
  25. package/dist/links.d.ts +3 -0
  26. package/dist/links.d.ts.map +1 -1
  27. package/dist/links.js +108 -51
  28. package/dist/paths.d.ts +10 -1
  29. package/dist/paths.d.ts.map +1 -1
  30. package/dist/paths.js +118 -12
  31. package/dist/pattern.d.ts +10 -0
  32. package/dist/pattern.d.ts.map +1 -0
  33. package/dist/pattern.js +355 -0
  34. package/dist/project.d.ts +1 -0
  35. package/dist/project.d.ts.map +1 -1
  36. package/dist/project.js +38 -15
  37. package/dist/query/language.d.ts +223 -0
  38. package/dist/query/language.d.ts.map +1 -0
  39. package/dist/query/language.js +565 -0
  40. package/dist/query/match.d.ts +14 -0
  41. package/dist/query/match.d.ts.map +1 -0
  42. package/dist/query/match.js +121 -0
  43. package/dist/query/rows.d.ts +32 -0
  44. package/dist/query/rows.d.ts.map +1 -0
  45. package/dist/query/rows.js +161 -0
  46. package/dist/query/sql.d.ts +39 -0
  47. package/dist/query/sql.d.ts.map +1 -0
  48. package/dist/query/sql.js +279 -0
  49. package/dist/references.d.ts +2 -2
  50. package/dist/references.d.ts.map +1 -1
  51. package/dist/references.js +6 -1
  52. package/dist/reserved.d.ts +5 -0
  53. package/dist/reserved.d.ts.map +1 -0
  54. package/dist/reserved.js +20 -0
  55. package/dist/schema.d.ts +1 -0
  56. package/dist/schema.d.ts.map +1 -1
  57. package/dist/schema.js +57 -6
  58. package/dist/types.d.ts +57 -2
  59. package/dist/types.d.ts.map +1 -1
  60. package/dist/validate.d.ts +31 -2
  61. package/dist/validate.d.ts.map +1 -1
  62. package/dist/validate.js +400 -115
  63. package/dist/yaml.d.ts +1 -2
  64. package/dist/yaml.d.ts.map +1 -1
  65. package/dist/yaml.js +75 -32
  66. package/fixtures/README.md +27 -7
  67. package/fixtures/cases/conditional-section/context.json +1 -0
  68. package/fixtures/cases/conditional-section/expected.json +6 -0
  69. package/fixtures/cases/conditional-section/library/questions/hosting.md +9 -0
  70. package/fixtures/cases/conditional-section/library/questions/payments.md +12 -0
  71. package/fixtures/cases/conditional-section/schema.yaml +14 -0
  72. package/fixtures/cases/cross-room-link/context.json +1 -0
  73. package/fixtures/cases/cross-room-link/expected.json +1 -0
  74. package/fixtures/cases/cross-room-link/library/clients/acme.md +6 -0
  75. package/fixtures/cases/cross-room-link/schema.yaml +3 -0
  76. package/fixtures/cases/cross-room-reference/context.json +1 -0
  77. package/fixtures/cases/cross-room-reference/expected.json +1 -0
  78. package/fixtures/cases/cross-room-reference/library/clients/acme.md +9 -0
  79. package/fixtures/cases/cross-room-reference/schema.yaml +9 -0
  80. package/fixtures/cases/link-into-a-reserved-name/context.json +1 -0
  81. package/fixtures/cases/link-into-a-reserved-name/expected.json +5 -0
  82. package/fixtures/cases/link-into-a-reserved-name/library/notes/a.md +6 -0
  83. package/fixtures/cases/link-into-a-reserved-name/schema.yaml +3 -0
  84. package/fixtures/cases/link-into-a-reserved-name-from-an-untyped-document/context.json +1 -0
  85. package/fixtures/cases/link-into-a-reserved-name-from-an-untyped-document/expected.json +5 -0
  86. package/fixtures/cases/link-into-a-reserved-name-from-an-untyped-document/library/notes/b.md +5 -0
  87. package/fixtures/cases/member-on-an-untyped-document/context.json +1 -0
  88. package/fixtures/cases/member-on-an-untyped-document/expected.json +6 -0
  89. package/fixtures/cases/member-on-an-untyped-document/library/note.md +4 -0
  90. package/fixtures/cases/member-on-another-type/context.json +1 -0
  91. package/fixtures/cases/member-on-another-type/expected.json +6 -0
  92. package/fixtures/cases/member-on-another-type/library/note.md +4 -0
  93. package/fixtures/cases/member-on-another-type/schema.yaml +7 -0
  94. package/fixtures/cases/reference-into-a-reserved-name/context.json +1 -0
  95. package/fixtures/cases/reference-into-a-reserved-name/expected.json +6 -0
  96. package/fixtures/cases/reference-into-a-reserved-name/library/notes/a.md +4 -0
  97. package/fixtures/cases/reference-into-a-reserved-name/library/settings/brief.md +1 -0
  98. package/fixtures/cases/reference-into-a-reserved-name/schema.yaml +3 -0
  99. package/fixtures/cases/room-md-declares-a-type/context.json +1 -0
  100. package/fixtures/cases/room-md-declares-a-type/expected.json +6 -0
  101. package/fixtures/cases/room-md-declares-a-type/library/ROOM.md +5 -0
  102. package/fixtures/cases/typed-path-names-another-type/context.json +11 -0
  103. package/fixtures/cases/typed-path-names-another-type/expected.json +6 -0
  104. package/fixtures/cases/typed-path-names-another-type/library/settings/prefs/one.md +3 -0
  105. package/fixtures/cases/typed-path-names-another-type/schema.yaml +6 -0
  106. package/fixtures/cases/typed-path-names-its-type/context.json +11 -0
  107. package/fixtures/cases/typed-path-names-its-type/expected.json +3 -0
  108. package/fixtures/cases/typed-path-names-its-type/library/settings/prefs/deeper/two.md +1 -0
  109. package/fixtures/cases/typed-path-names-its-type/library/settings/prefs/one.md +4 -0
  110. package/fixtures/cases/typed-path-names-its-type/schema.yaml +6 -0
  111. package/fixtures/cases/typed-path-names-no-type/context.json +11 -0
  112. package/fixtures/cases/typed-path-names-no-type/expected.json +6 -0
  113. package/fixtures/cases/typed-path-names-no-type/library/settings/prefs/one.md +1 -0
  114. package/fixtures/cases/typed-path-names-no-type/schema.yaml +6 -0
  115. package/fixtures/cases/unnamed-typed-path-checks-its-fields/context.json +11 -0
  116. package/fixtures/cases/unnamed-typed-path-checks-its-fields/expected.json +6 -0
  117. package/fixtures/cases/unnamed-typed-path-checks-its-fields/library/rooms/team/tasks/plan.md +4 -0
  118. package/fixtures/cases/unnamed-typed-path-checks-its-fields/schema.yaml +5 -0
  119. package/fixtures/cases/unnamed-typed-path-names-a-type/context.json +11 -0
  120. package/fixtures/cases/unnamed-typed-path-names-a-type/expected.json +6 -0
  121. package/fixtures/cases/unnamed-typed-path-names-a-type/library/rooms/team/tasks/plan.md +6 -0
  122. package/fixtures/cases/unnamed-typed-path-names-a-type/schema.yaml +5 -0
  123. package/fixtures/cases/unnamed-typed-path-reads-its-type/context.json +11 -0
  124. package/fixtures/cases/unnamed-typed-path-reads-its-type/expected.json +3 -0
  125. package/fixtures/cases/unnamed-typed-path-reads-its-type/library/rooms/team/plan.md +1 -0
  126. package/fixtures/cases/unnamed-typed-path-reads-its-type/library/rooms/team/tasks/plan.md +5 -0
  127. package/fixtures/cases/unnamed-typed-path-reads-its-type/schema.yaml +5 -0
  128. package/fixtures/cases/unnamed-typed-path-without-a-body/context.json +11 -0
  129. package/fixtures/cases/unnamed-typed-path-without-a-body/expected.json +5 -0
  130. package/fixtures/cases/unnamed-typed-path-without-a-body/library/rooms/team/tasks/plan.md +5 -0
  131. package/fixtures/cases/unnamed-typed-path-without-a-body/schema.yaml +5 -0
  132. package/fixtures/division.json +26 -26
  133. package/fixtures/queries.json +913 -0
  134. package/package.json +10 -3
  135. package/dist/condition.d.ts +0 -149
  136. package/dist/condition.d.ts.map +0 -1
  137. package/dist/condition.js +0 -491
package/README.md CHANGED
@@ -1,11 +1,12 @@
1
1
  # `@agentshouse/mdmodel`
2
2
 
3
- Typed Markdown documents: MD Types declared in JSON Schema, a parser, a validator, and the
4
- deterministic application of one structured change to a Document, plus a
5
- conformance fixture corpus.
3
+ Typed Markdown documents: MD Types declared in JSON Schema, a parser, a validator, the
4
+ deterministic application of one structured change to a Document, and one query language
5
+ answered in SQL over a collection or in memory over one Document, plus a conformance
6
+ fixture corpus.
6
7
 
7
8
  It runs in the browser and in Node, makes no network call, and reads no
8
- filesystem on its own. It ships one ESM artifact that Node 24.21.0 and later
9
+ filesystem on its own. It ships one ESM artifact that Node 24.22.1 and later
9
10
  loads through `import` or `require`.
10
11
 
11
12
  ## Install
@@ -26,30 +27,28 @@ if (checked.verdict === 'accept') {
26
27
 
27
28
  const parsed = parse('---\ntype: note\ntitle: Hello\n---\n');
28
29
  if (parsed.ok) {
29
- const next = apply(parsed.document, {
30
- kind: 'field',
31
- name: 'title',
32
- value: 'World',
33
- prior: 'Hello',
34
- });
30
+ const next = apply(parsed.document, [
31
+ { kind: 'field', name: 'title', value: 'World', prior: 'Hello' },
32
+ ]);
35
33
  if (next.outcome === 'applied') serialize(next.document);
36
34
  }
37
35
  ```
38
36
 
39
37
  ## API
40
38
 
41
- | Export | Purpose |
42
- | ---------------------------------------------- | ----------------------------------------------------------------- |
43
- | `verify` | Verify one schema text into a model of MD Types |
44
- | `validate` | Validate a text Library; returns acceptance or one refusal |
45
- | `parse`, `serialize` | Read and write one Document |
46
- | `apply` | Apply one field, section, preamble, or link change |
47
- | `links`, `target`, `retarget` | Inventory and rewrite link destinations |
48
- | `escapePointer` | Write one key as a JSON Pointer token |
49
- | `project`, `divide` | Embedding projection input and its division into Spans |
50
- | `facts`, `factKind`, `holds`, `fires` | A condition over a Document and over one of its changes |
51
- | `MARKDOWN_SYNTAX_PROFILE`, `VERSION` | The pinned Markdown profile (GFM 0.29) and MD model version |
52
- | `MEMBER_FIELD`, `SITE_FIELD`, `RECEIVED_FIELD` | The field names validation counts as declared beyond a type's own |
39
+ | Export | Purpose |
40
+ | ---------------------------------------------- | ------------------------------------------------------------------ |
41
+ | `verify` | Verify one schema text into a model of MD Types |
42
+ | `validate` | Validate a text Library; returns acceptance or one refusal |
43
+ | `parse`, `serialize` | Read and write one Document |
44
+ | `apply` | Apply field, section, preamble, link and reference changes at once |
45
+ | `links`, `target`, `retarget` | Inventory and rewrite link destinations |
46
+ | `escapePointer` | Write one key as a JSON Pointer token |
47
+ | `project`, `divide` | Embedding projection input and its division into Spans |
48
+ | `facts`, `candidateOf` | A Document as one change saw it, matched as one query candidate |
49
+ | `planOf`, `matches`, `sql` | Check a query, answer it over one Document or compile it to SQL |
50
+ | `MARKDOWN_SYNTAX_PROFILE`, `VERSION` | The pinned Markdown profile (GFM 0.29) and MD model version |
51
+ | `MEMBER_FIELD`, `SITE_FIELD`, `RECEIVED_FIELD` | The field names validation counts as declared beyond a type's own |
53
52
 
54
53
  The full reference is in [`API.md`](API.md). The conformance corpus and its
55
54
  verdict format and rule ids are described in [`fixtures/README.md`](fixtures/README.md).
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../src/blocks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;AAqCF,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,EAAE,CA+BrF;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAe/E"}
1
+ {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../src/blocks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;AAoDF,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,EAAE,CA4BrF;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAe/E"}
package/dist/blocks.js CHANGED
@@ -1,5 +1,29 @@
1
- import { fenceSpans } from './links.js';
2
- const HEADING = /^(#{1,6})(?!#)[ \t]+(.+?)[ \t]*#*[ \t]*$/;
1
+ import { fenceSpans, spanCursor } from './links.js';
2
+ const HEADING_OPEN = /^(#{1,6})(?!#)([ \t]+)/;
3
+ const LINE_BREAK = /[\n\r\u2028\u2029]/;
4
+ function blank(character) {
5
+ return character === ' ' || character === '\t';
6
+ }
7
+ function heading(text) {
8
+ const open = HEADING_OPEN.exec(text);
9
+ if (open === null || LINE_BREAK.test(text))
10
+ return null;
11
+ const level = open[1].length;
12
+ const rest = text.slice(open[0].length);
13
+ if (rest === '')
14
+ return open[2].length > 1 ? { level, name: '' } : null;
15
+ let end = rest.length;
16
+ while (blank(rest[end - 1]))
17
+ end -= 1;
18
+ let hashes = end;
19
+ while (rest[hashes - 1] === '#')
20
+ hashes -= 1;
21
+ let spaced = hashes;
22
+ while (blank(rest[spaced - 1]))
23
+ spaced -= 1;
24
+ const closed = hashes < end && spaced < hashes && spaced > 0;
25
+ return { level, name: rest.slice(0, closed ? spaced : end).trim() };
26
+ }
3
27
  function lineAt(content, from, to) {
4
28
  const nl = content.indexOf('\n', from);
5
29
  const end = nl === -1 || nl >= to ? to : nl;
@@ -7,17 +31,11 @@ function lineAt(content, from, to) {
7
31
  return { text: raw.endsWith('\r') ? raw.slice(0, -1) : raw, next: end === to ? to : end + 1 };
8
32
  }
9
33
  function scan(content, from, to, visit) {
10
- const fences = fenceSpans(content.slice(from, to));
34
+ const fenced = spanCursor(fenceSpans(content.slice(from, to)));
11
35
  let i = from;
12
36
  while (i < to) {
13
37
  const { text, next } = lineAt(content, i, to);
14
- const at = i - from;
15
- visit({
16
- text,
17
- start: i,
18
- next,
19
- fenced: fences.some(([start, end]) => at >= start && at < end),
20
- });
38
+ visit({ text, start: i, next, fenced: fenced(i - from) !== undefined });
21
39
  if (next === i)
22
40
  break;
23
41
  i = next;
@@ -26,24 +44,21 @@ function scan(content, from, to, visit) {
26
44
  const HASH = 0x23;
27
45
  export function headingLines(content, from, to) {
28
46
  const found = [];
29
- let fences = null;
47
+ let fenced = null;
30
48
  let i = from;
31
49
  while (i < to) {
32
50
  const nl = content.indexOf('\n', i);
33
51
  const end = nl === -1 || nl >= to ? to : nl;
34
52
  const next = end === to ? to : end + 1;
35
53
  if (content.charCodeAt(i) === HASH) {
36
- fences ??= fenceSpans(content.slice(from, to));
37
- const at = i - from;
38
- if (!fences.some(([start, stop]) => at >= start && at < stop)) {
54
+ fenced ??= spanCursor(fenceSpans(content.slice(from, to)));
55
+ if (fenced(i - from) === undefined) {
39
56
  const { text } = lineAt(content, i, to);
40
- const match = HEADING.exec(text);
41
- const hashes = match?.[1];
42
- const name = match?.[2];
43
- if (hashes !== undefined && name !== undefined) {
57
+ const read = heading(text);
58
+ if (read !== null) {
44
59
  found.push({
45
- level: hashes.length,
46
- name: name.trim(),
60
+ level: read.level,
61
+ name: read.name,
47
62
  start: i,
48
63
  textEnd: i + text.length,
49
64
  next,
@@ -5,6 +5,7 @@ export type ValueFacts = {
5
5
  readonly format?: string;
6
6
  readonly values?: readonly unknown[];
7
7
  readonly reference?: readonly string[];
8
+ readonly crossRoom?: true;
8
9
  readonly prose: boolean;
9
10
  readonly conditional?: true;
10
11
  readonly prefix?: readonly ValueFacts[];
@@ -29,12 +30,26 @@ export type Shape = {
29
30
  readonly schema: Readonly<Record<string, unknown>>;
30
31
  readonly defs: Readonly<Record<string, unknown>>;
31
32
  };
33
+ export type RuleValue = string | number | boolean | null;
34
+ export type Transition = {
35
+ readonly from: RuleValue;
36
+ readonly to: RuleValue;
37
+ readonly roles?: readonly string[];
38
+ };
39
+ export type FieldRules = {
40
+ readonly changeRoles?: readonly string[];
41
+ readonly initialRoles?: readonly string[];
42
+ readonly transitions?: readonly Transition[];
43
+ };
32
44
  export type Definition = {
33
45
  readonly name: string;
34
46
  readonly memberDocument: boolean;
35
47
  readonly frontmatter: ValueFacts;
36
48
  readonly fields: Readonly<Record<string, ValueFacts>>;
37
49
  readonly sections: Readonly<Record<string, SectionSpec>>;
50
+ readonly rules: Readonly<Record<string, FieldRules>>;
51
+ readonly createRoles?: readonly string[];
52
+ readonly deleteRoles?: readonly string[];
38
53
  readonly shape: Shape;
39
54
  };
40
55
  export type Failure = {
@@ -45,6 +60,7 @@ export declare const JSON_TYPES: readonly JsonType[];
45
60
  export declare const BUILT_IN_TYPE = "any";
46
61
  export declare const ATTACHMENT = "attachment";
47
62
  export declare const ARRAY_INDEX: RegExp;
63
+ export declare const JSON_POINTER: RegExp;
48
64
  export declare function escapePointer(key: string): string;
49
65
  export declare function pointerSegments(pointer: string): string[];
50
66
  export declare function refTarget(reference: string, defs: Readonly<Record<string, unknown>>): {
@@ -62,5 +78,5 @@ export type PointerFacts = {
62
78
  export declare function crossedFacts(facts: ValueFacts): ValueFacts[];
63
79
  export declare function fieldFacts(definition: Definition, key: string): ValueFacts | undefined;
64
80
  export declare function pointerFacts(definition: Definition, pointer: string): PointerFacts | undefined;
65
- export declare function readSchema(text: string): VerifiedModel | Failure;
81
+ export declare function readSchema(text: string, provided?: VerifiedModel): VerifiedModel | Failure;
66
82
  //# sourceMappingURL=definition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../src/definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../src/definition.ts"],"names":[],"mappings":"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"}