@milehimikey/em 1.14.2 → 1.16.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 (125) hide show
  1. package/.claude/agents/em-implementer.md +12 -2
  2. package/.claude/agents/em-validator.md +2 -1
  3. package/.claude/skills/event-modeling/SKILL.md +3 -3
  4. package/.claude/skills/event-modeling-conform/SKILL.md +1 -1
  5. package/.claude/skills/event-modeling-design/SKILL.md +29 -18
  6. package/.claude/skills/event-modeling-discover/SKILL.md +1 -1
  7. package/.claude/skills/event-modeling-engagement/SKILL.md +60 -56
  8. package/.claude/skills/event-modeling-engagement/reference/engagement.md +13 -19
  9. package/.claude/skills/event-modeling-implement/SKILL.md +3 -3
  10. package/.claude/skills/event-modeling-implement/reference/implement.md +40 -27
  11. package/.claude/skills/event-modeling-review/SKILL.md +13 -3
  12. package/.claude/skills/event-modeling-shared/reference/em-dsl.md +234 -228
  13. package/.claude/skills/event-modeling-shared/reference/operating-principles.md +3 -3
  14. package/.claude/skills/event-modeling-shared/reference/slice-doc-schema.md +69 -27
  15. package/.claude/skills/event-modeling-shared/templates/constitution.md +5 -7
  16. package/.claude-plugin/marketplace.json +2 -2
  17. package/dist/catalog/deferQueue.d.ts +20 -0
  18. package/dist/catalog/deferQueue.js +63 -0
  19. package/dist/catalog/deferQueue.js.map +1 -0
  20. package/dist/catalog/docJoin.d.ts +22 -1
  21. package/dist/catalog/docJoin.js +13 -4
  22. package/dist/catalog/docJoin.js.map +1 -1
  23. package/dist/catalog/docModelConsistencyValidate.js +4 -8
  24. package/dist/catalog/docModelConsistencyValidate.js.map +1 -1
  25. package/dist/catalog/driftSignal.d.ts +16 -12
  26. package/dist/catalog/driftSignal.js +14 -9
  27. package/dist/catalog/driftSignal.js.map +1 -1
  28. package/dist/catalog/sliceDoc.d.ts +51 -0
  29. package/dist/catalog/sliceDoc.js +47 -0
  30. package/dist/catalog/sliceDoc.js.map +1 -1
  31. package/dist/catalog/sliceReadyValidate.js +19 -1
  32. package/dist/catalog/sliceReadyValidate.js.map +1 -1
  33. package/dist/catalog/sliceSections.d.ts +5 -0
  34. package/dist/catalog/sliceSections.js +11 -2
  35. package/dist/catalog/sliceSections.js.map +1 -1
  36. package/dist/cli/conformScope.d.ts +4 -0
  37. package/dist/cli/conformScope.js +2 -2
  38. package/dist/cli/conformScope.js.map +1 -1
  39. package/dist/cli/coverage.js +7 -3
  40. package/dist/cli/coverage.js.map +1 -1
  41. package/dist/cli/defer.d.ts +106 -2
  42. package/dist/cli/defer.js +357 -24
  43. package/dist/cli/defer.js.map +1 -1
  44. package/dist/cli/engagement.d.ts +26 -5
  45. package/dist/cli/engagement.js +55 -28
  46. package/dist/cli/engagement.js.map +1 -1
  47. package/dist/cli/engagementFile.d.ts +2 -0
  48. package/dist/cli/engagementFile.js +5 -3
  49. package/dist/cli/engagementFile.js.map +1 -1
  50. package/dist/cli/findings.d.ts +2 -2
  51. package/dist/cli/findings.js +2 -2
  52. package/dist/cli/frontmatterSurgery.d.ts +3 -3
  53. package/dist/cli/frontmatterSurgery.js +3 -3
  54. package/dist/cli/frontmatterSurgery.js.map +1 -1
  55. package/dist/cli/markImplemented.d.ts +23 -18
  56. package/dist/cli/markImplemented.js +99 -15
  57. package/dist/cli/markImplemented.js.map +1 -1
  58. package/dist/cli/ratify.d.ts +36 -6
  59. package/dist/cli/ratify.js +130 -35
  60. package/dist/cli/ratify.js.map +1 -1
  61. package/dist/cli/review.js +3 -3
  62. package/dist/cli/review.js.map +1 -1
  63. package/dist/cli/revise.d.ts +67 -0
  64. package/dist/cli/revise.js +229 -0
  65. package/dist/cli/revise.js.map +1 -0
  66. package/dist/cli/sliceConform.d.ts +4 -3
  67. package/dist/cli/sliceConform.js +29 -12
  68. package/dist/cli/sliceConform.js.map +1 -1
  69. package/dist/cli/status.d.ts +30 -6
  70. package/dist/cli/status.js +59 -19
  71. package/dist/cli/status.js.map +1 -1
  72. package/dist/cli/upgrade.js +17 -12
  73. package/dist/cli/upgrade.js.map +1 -1
  74. package/dist/cli.js +173 -85
  75. package/dist/cli.js.map +1 -1
  76. package/dist/emit/engagementJson.d.ts +7 -4
  77. package/dist/emit/engagementJson.js +11 -4
  78. package/dist/emit/engagementJson.js.map +1 -1
  79. package/dist/emit/json.d.ts +1 -1
  80. package/dist/emit/json.js +18 -5
  81. package/dist/emit/json.js.map +1 -1
  82. package/dist/emit/statusJson.d.ts +1 -1
  83. package/dist/emit/statusJson.js +6 -1
  84. package/dist/emit/statusJson.js.map +1 -1
  85. package/dist/mcp/server.js +5 -5
  86. package/dist/mcp/server.js.map +1 -1
  87. package/dist/model/continuation.d.ts +11 -1
  88. package/dist/model/continuation.js +29 -0
  89. package/dist/model/continuation.js.map +1 -1
  90. package/dist/model/resolveSlice.d.ts +19 -0
  91. package/dist/model/resolveSlice.js +69 -0
  92. package/dist/model/resolveSlice.js.map +1 -0
  93. package/dist/model/rules.d.ts +8 -0
  94. package/dist/model/rules.js +8 -0
  95. package/dist/model/rules.js.map +1 -1
  96. package/dist/model/sliceDocIndex.d.ts +5 -0
  97. package/dist/model/sliceDocIndex.js +6 -4
  98. package/dist/model/sliceDocIndex.js.map +1 -1
  99. package/dist/model/validate.js +5 -2
  100. package/dist/model/validate.js.map +1 -1
  101. package/dist/parser/parser.js +55 -1
  102. package/dist/parser/parser.js.map +1 -1
  103. package/dist/templates.d.ts +1 -1
  104. package/dist/templates.js +5 -7
  105. package/dist/templates.js.map +1 -1
  106. package/package.json +1 -1
  107. package/plugin/.claude-plugin/plugin.json +2 -2
  108. package/plugin/agents/em-implementer.md +12 -2
  109. package/plugin/agents/em-validator.md +2 -1
  110. package/plugin/shared/reference/em-dsl.md +234 -228
  111. package/plugin/shared/reference/operating-principles.md +3 -3
  112. package/plugin/shared/reference/slice-doc-schema.md +69 -27
  113. package/plugin/shared/templates/constitution.md +5 -7
  114. package/plugin/skills/conform/SKILL.md +1 -1
  115. package/plugin/skills/design/SKILL.md +29 -18
  116. package/plugin/skills/discover/SKILL.md +1 -1
  117. package/plugin/skills/engagement/SKILL.md +60 -56
  118. package/plugin/skills/engagement/reference/engagement.md +13 -19
  119. package/plugin/skills/event-modeling/SKILL.md +3 -3
  120. package/plugin/skills/implement/SKILL.md +3 -3
  121. package/plugin/skills/implement/reference/implement.md +40 -27
  122. package/plugin/skills/review/SKILL.md +13 -3
  123. package/dist/cli/reratify.d.ts +0 -58
  124. package/dist/cli/reratify.js +0 -238
  125. package/dist/cli/reratify.js.map +0 -1
@@ -587,6 +587,14 @@ export declare const RULES: {
587
587
  readonly docAnchor: "slice-readiness";
588
588
  readonly optIn: true;
589
589
  };
590
+ readonly "slice-ready-body-changed-since-ratification": {
591
+ readonly severity: "error";
592
+ readonly title: "Body changed since ratification";
593
+ readonly fix: "The doc body no longer matches the `ratifiedHash:` recorded at sign-off — either revert the edit, or re-ratify the new content (`em slice reratify`, then review and `em slice ratify --by`). A deferral after sign-off (`em slice defer` rewrites a body line) is the usual cause: defer before ratifying.";
594
+ readonly usageCategory: "slice-ready body changed since ratification";
595
+ readonly docAnchor: "slice-readiness";
596
+ readonly optIn: true;
597
+ };
590
598
  readonly "slice-ready-contract-stale": {
591
599
  readonly severity: "error";
592
600
  readonly title: "Contract missing or stale";
@@ -630,6 +630,14 @@ export const RULES = {
630
630
  docAnchor: "slice-readiness",
631
631
  optIn: true,
632
632
  },
633
+ "slice-ready-body-changed-since-ratification": {
634
+ severity: "error",
635
+ title: "Body changed since ratification",
636
+ fix: "The doc body no longer matches the `ratifiedHash:` recorded at sign-off — either revert the edit, or re-ratify the new content (`em slice reratify`, then review and `em slice ratify --by`). A deferral after sign-off (`em slice defer` rewrites a body line) is the usual cause: defer before ratifying.",
637
+ usageCategory: "slice-ready body changed since ratification",
638
+ docAnchor: "slice-readiness",
639
+ optIn: true,
640
+ },
633
641
  "slice-ready-contract-stale": {
634
642
  severity: "error",
635
643
  title: "Contract missing or stale",
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/model/rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/model/rules.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,11 @@ export interface SliceQueryDoc {
19
19
  reason: "no-doc-bound" | "binding-missing-file" | "frontmatter-invalid" | null;
20
20
  status: string | null;
21
21
  implementedIn: string | null;
22
+ /** MIL-283: a version of this slice has shipped (`shippedRecordOf`) — what the readers that used
23
+ * to test `status === "implemented"` read now; false whenever `found` is false. */
24
+ shipped: boolean;
25
+ /** GH #241: the doc's own frontmatter `tracking:` (null when absent or no usable doc). */
26
+ tracking: string | null;
22
27
  driftSignal: DriftSignalKind | null;
23
28
  /** The doc's body text (post-frontmatter), for `extractInvariantIds()` — null whenever
24
29
  * `found` is false or the frontmatter wasn't usable (nothing safe to scan). */
@@ -16,7 +16,7 @@
16
16
  // already do.
17
17
  import { existsSync, readdirSync, readFileSync } from "node:fs";
18
18
  import { join } from "node:path";
19
- import { parseSliceDoc, hasUsableFrontmatter } from "../catalog/sliceDoc.js";
19
+ import { parseSliceDoc, hasUsableFrontmatter, shippedRecordOf } from "../catalog/sliceDoc.js";
20
20
  import { classifyImplementationDrift } from "../catalog/driftSignal.js";
21
21
  import { NOTE_SLICE_PATH } from "../catalog/docJoin.js";
22
22
  import { continuationOf } from "./continuation.js";
@@ -96,13 +96,13 @@ export function joinSliceDocFast(model, refs, slice, sliceKey, docsByKey) {
96
96
  const originatingDoc = joinSliceDocFast(model, refs, originatingSlice, continuation.sliceKey, docsByKey);
97
97
  return { ...originatingDoc, continuationOf: continuation.sliceKey };
98
98
  }
99
- return { found: false, path, reason: "no-doc-bound", status: null, implementedIn: null, driftSignal: null, body: null, continuationOf: null };
99
+ return { found: false, path, reason: "no-doc-bound", status: null, implementedIn: null, shipped: false, tracking: null, driftSignal: null, body: null, continuationOf: null };
100
100
  }
101
101
  const doc = docsByKey.get(sliceKey);
102
102
  if (!doc)
103
- return { found: false, path, reason: "binding-missing-file", status: null, implementedIn: null, driftSignal: null, body: null, continuationOf: null };
103
+ return { found: false, path, reason: "binding-missing-file", status: null, implementedIn: null, shipped: false, tracking: null, driftSignal: null, body: null, continuationOf: null };
104
104
  if (!hasUsableFrontmatter(doc)) {
105
- return { found: true, path, reason: "frontmatter-invalid", status: null, implementedIn: null, driftSignal: null, body: null, continuationOf: null };
105
+ return { found: true, path, reason: "frontmatter-invalid", status: null, implementedIn: null, shipped: false, tracking: null, driftSignal: null, body: null, continuationOf: null };
106
106
  }
107
107
  return foundDoc(path, doc);
108
108
  }
@@ -113,6 +113,8 @@ function foundDoc(path, doc) {
113
113
  reason: null,
114
114
  status: doc.status,
115
115
  implementedIn: doc.implementedIn,
116
+ shipped: shippedRecordOf(doc) !== null,
117
+ tracking: doc.tracking,
116
118
  driftSignal: classifyImplementationDrift(doc),
117
119
  body: doc.body,
118
120
  continuationOf: null,
@@ -1 +1 @@
1
- {"version":3,"file":"sliceDocIndex.js","sourceRoot":"","sources":["../../src/model/sliceDocIndex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sliceDocIndex.js","sourceRoot":"","sources":["../../src/model/sliceDocIndex.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,qFAAqF;AACrF,8FAA8F;AAC9F,4EAA4E;AAC5E,4FAA4F;AAC5F,gGAAgG;AAChG,+FAA+F;AAC/F,0FAA0F;AAC1F,4FAA4F;AAC5F,gGAAgG;AAChG,2CAA2C;AAC3C,EAAE;AACF,0FAA0F;AAC1F,2FAA2F;AAC3F,+FAA+F;AAC/F,cAAc;AAEd,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAY,oBAAoB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxG,OAAO,EAAE,2BAA2B,EAAmB,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;mGACmG;AACnG,MAAM,qBAAqB,GAAG,mCAAmC,CAAC;AAElE;;;;;4EAK4E;AAC5E,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAC;IACzC,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/B,6FAA6F;QAC7F,wFAAwF;QACxF,wFAAwF;QACxF,mFAAmF;QACnF,wFAAwF;QACxF,qBAAqB;QACrB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACjB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC;gBAAE,SAAS;YACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;gBAAE,SAAS;QAClE,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,2FAA2F;QAC7F,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AA4BD;;;;0EAI0E;AAC1E,MAAM,UAAU,gBAAgB,CAC9B,KAAsB,EACtB,IAAgB,EAChB,KAAY,EACZ,QAAgB,EAChB,SAAgC;IAEhC,MAAM,IAAI,GAAG,UAAU,QAAQ,KAAK,CAAC;IACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAEjE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,EAAE,CAAC,IAAI;gBAAE,SAAS;YACvB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACzC,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,QAAQ,KAAK,QAAQ;gBAAE,SAAS;YACpC,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACnF,OAAO,QAAQ,CAAC,UAAU,QAAQ,KAAK,EAAE,GAAG,CAAC,CAAC;QAChD,CAAC;QACD,2FAA2F;QAC3F,wFAAwF;QACxF,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC/D,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACzG,OAAO,EAAE,GAAG,cAAc,EAAE,cAAc,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC;QACtE,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;IAChL,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;IAChM,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;IACtL,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,GAAa;IAC3C,OAAO;QACL,KAAK,EAAE,IAAI;QACX,IAAI;QACJ,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,KAAK,IAAI;QACtC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,WAAW,EAAE,2BAA2B,CAAC,GAAG,CAAC;QAC7C,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,cAAc,EAAE,IAAI;KACrB,CAAC;AACJ,CAAC"}
@@ -3,6 +3,7 @@
3
3
  import { AUTOMATION_KINDS } from "../parser/ast.js";
4
4
  import { collectModelInvariants, collectTags, MODEL_INVARIANT_ID_RE, PUBLIC_SCALAR_TYPE_NAMES, normalizeName, resolvePublicType, resolveTypeRef, } from "./model.js";
5
5
  import { pushDiag } from "./rules.js";
6
+ import { viewSourceNames } from "./continuation.js";
6
7
  import { connectionKind, resolveLoopsToTarget } from "./edges.js";
7
8
  import { kebabSlug } from "../util/slug.js";
8
9
  /** A GitHub user (`@alice`) or team (`@org/team`) — the shape CODEOWNERS accepts. */
@@ -107,7 +108,9 @@ export function validate(model, grid, refs) {
107
108
  // model's own record that the field is computed from which events have landed, not
108
109
  // copied from a single source event's payload.
109
110
  if (view.fields && view.fields.length > 0) {
110
- const fromNames = view.from ?? [];
111
+ // Instances of a repeated read model are one logical view (MIL-286): its sources are
112
+ // the union of `from` across the originating instance and every `again` instance.
113
+ const fromNames = viewSourceNames(model, view);
111
114
  const sourceEvents = [];
112
115
  for (const src of fromNames) {
113
116
  const bucket = model.byName.get(normalizeName(src)) ?? [];
@@ -140,7 +143,7 @@ export function validate(model, grid, refs) {
140
143
  }
141
144
  // `derived from "Event A", "Event B"` (view fields only, MIL-200): the traced form
142
145
  // still checks something — every named event must resolve among the view's ACTUAL
143
- // sources, its `from` names, or (for a `from`-less view) the events in its own slice.
146
+ // sources, its `from` names across every instance, or (for a `from`-less view) the events in its own slice.
144
147
  // Independent of `sourcesDeclareFields` above: this checks event *names*, not field
145
148
  // completeness, so it applies whether or not the sources declare `{ fields }`.
146
149
  const actualSourceEvents = fromNames.length > 0 ? sourceEvents : events;
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/model/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/model/validate.ts"],"names":[],"mappings":"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"}
@@ -781,6 +781,57 @@ function splitOptionalMarker(rawName) {
781
781
  return { rawName: t.slice(0, -1).trim(), optional: true };
782
782
  return { rawName: t, optional: false };
783
783
  }
784
+ /** Same-length copy of `s` with quoted spans and bracketed (`<…>`, `[…]`, `(…)`, `{…}`) contents
785
+ * blanked to `_`, so a scan for a second `name:` sees only top-level text and indices still
786
+ * line up with `s`. */
787
+ function maskQuotedAndBracketed(s) {
788
+ let out = "";
789
+ let depth = 0;
790
+ for (let i = 0; i < s.length; i++) {
791
+ const c = s[i];
792
+ if (c === '"') {
793
+ const close = matchQuote(s, i);
794
+ const end = close >= 0 ? close : s.length - 1;
795
+ out += "_".repeat(end - i + 1);
796
+ i = end;
797
+ }
798
+ else if ("<[({".includes(c)) {
799
+ depth++;
800
+ out += depth === 1 ? c : "_";
801
+ }
802
+ else if (">])}".includes(c) && depth > 0) {
803
+ depth--;
804
+ out += depth === 0 ? c : "_";
805
+ }
806
+ else {
807
+ out += depth > 0 ? "_" : c;
808
+ }
809
+ }
810
+ return out;
811
+ }
812
+ /** A second field's start inside a field's type: whitespace, a name (bare, or quoted and so
813
+ * already masked to `_`), an optional `?`, then `:` — `orderId: string total: number`. Clause
814
+ * keywords (`tag`, `derived from "…"`, …) carry no colon, so they never match. Runs on the
815
+ * masked type. */
816
+ const SECOND_FIELD_START = /\s+(?=(?:[A-Za-z_][\w.-]*|_+)\??\s*:)/g;
817
+ /** Throws when a field's type swallowed a second field because inline fields were separated by
818
+ * whitespace instead of commas (GH #245) — otherwise `{ orderId: string total: number }`
819
+ * parses silently as one field typed `string total: number`. */
820
+ function assertNoSecondField(name, rawType, line) {
821
+ const type = rawType.trim();
822
+ const starts = [...maskQuotedAndBracketed(type).matchAll(SECOND_FIELD_START)];
823
+ if (starts.length === 0)
824
+ return;
825
+ let fixed = "";
826
+ let last = 0;
827
+ for (const m of starts) {
828
+ fixed += type.slice(last, m.index) + ", ";
829
+ last = m.index + m[0].length;
830
+ }
831
+ fixed += type.slice(last);
832
+ throw new ParseError(`field "${name}" type \`${type}\` looks like two fields — inline fields are comma-separated: ` +
833
+ `\`{ ${name}: ${fixed} }\``, line);
834
+ }
784
835
  /** Parse one field spec: `name`, `name: Type`, `name?: Type` or `name?` (optional, MIL-237),
785
836
  * plus any trailing field-level clauses (`extractFieldClauses`). Returns null for blanks. */
786
837
  function parseFieldSpec(raw, line, context) {
@@ -798,7 +849,10 @@ function parseFieldSpec(raw, line, context) {
798
849
  const marker = splitOptionalMarker(spec.slice(0, colon));
799
850
  optional = marker.optional;
800
851
  const name = unquote(marker.rawName);
801
- const type = unquote(spec.slice(colon + 1).trim());
852
+ const rawType = spec.slice(colon + 1).trim();
853
+ if (name)
854
+ assertNoSecondField(name, rawType, line);
855
+ const type = unquote(rawType);
802
856
  field = name ? { name, ...(type ? { type } : {}) } : null;
803
857
  }
804
858
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser/parser.ts"],"names":[],"mappings":"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"}