@sdd-method/sdd-cli 0.26.1 → 0.27.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/lib/catalogue/build.d.ts.map +1 -1
  2. package/dist/lib/catalogue/build.js +105 -1
  3. package/dist/lib/catalogue/build.js.map +1 -1
  4. package/dist/lib/catalogue/builders/c4-entity-rollups.d.ts +12 -0
  5. package/dist/lib/catalogue/builders/c4-entity-rollups.d.ts.map +1 -0
  6. package/dist/lib/catalogue/builders/c4-entity-rollups.js +87 -0
  7. package/dist/lib/catalogue/builders/c4-entity-rollups.js.map +1 -0
  8. package/dist/lib/catalogue/builders/entities-manifest.d.ts +18 -0
  9. package/dist/lib/catalogue/builders/entities-manifest.d.ts.map +1 -0
  10. package/dist/lib/catalogue/builders/entities-manifest.js +157 -0
  11. package/dist/lib/catalogue/builders/entities-manifest.js.map +1 -0
  12. package/dist/lib/catalogue/builders/entities-mermaid.d.ts +16 -0
  13. package/dist/lib/catalogue/builders/entities-mermaid.d.ts.map +1 -0
  14. package/dist/lib/catalogue/builders/entities-mermaid.js +166 -0
  15. package/dist/lib/catalogue/builders/entities-mermaid.js.map +1 -0
  16. package/dist/lib/catalogue/builders/entity-slug.d.ts +2 -0
  17. package/dist/lib/catalogue/builders/entity-slug.d.ts.map +1 -0
  18. package/dist/lib/catalogue/builders/entity-slug.js +34 -0
  19. package/dist/lib/catalogue/builders/entity-slug.js.map +1 -0
  20. package/dist/lib/catalogue/builders/glossary-xref.d.ts +3 -0
  21. package/dist/lib/catalogue/builders/glossary-xref.d.ts.map +1 -1
  22. package/dist/lib/catalogue/builders/glossary-xref.js +6 -0
  23. package/dist/lib/catalogue/builders/glossary-xref.js.map +1 -1
  24. package/dist/lib/catalogue/builders/index.d.ts +9 -0
  25. package/dist/lib/catalogue/builders/index.d.ts.map +1 -1
  26. package/dist/lib/catalogue/builders/index.js +5 -0
  27. package/dist/lib/catalogue/builders/index.js.map +1 -1
  28. package/dist/lib/catalogue/builders/service-entity-tables.d.ts +17 -0
  29. package/dist/lib/catalogue/builders/service-entity-tables.d.ts.map +1 -0
  30. package/dist/lib/catalogue/builders/service-entity-tables.js +212 -0
  31. package/dist/lib/catalogue/builders/service-entity-tables.js.map +1 -0
  32. package/dist/lib/catalogue/canonical-schema.yaml +58 -1
  33. package/dist/lib/mcp/tools/cascade-impact.d.ts +1 -1
  34. package/package.json +2 -2
@@ -0,0 +1,166 @@
1
+ // Reverse-method walker for the entities catalogue per ADR 0159 §4.3.
2
+ // Parses `erDiagram` blocks in `docs/domains/{domain}/architecture/data-model.mermaid.md`
3
+ // (or whatever file domain_models.csv references for that domain).
4
+ //
5
+ // Phase Pre findings (research/adr-0159-prototypes/connect-mermaid-authoring-quirks.md):
6
+ // - Multi-erDiagram-per-file is the norm (asset has 7 blocks; identity has 4).
7
+ // Walker merges entities across all `erDiagram` fences in the file.
8
+ // - Naming style varies within a single file: UPPER_SNAKE_CASE, PascalCase,
9
+ // ALLCAPS-no-underscores, lowercase / camelCase. Regex accepts [A-Za-z_]
10
+ // as first char with explicit Mermaid-keyword exclusion.
11
+ // - Relationship lines (`A ||--o{ B : "label"`) start with an identifier but
12
+ // are not entity declarations; detected via arrow-token pattern + skipped.
13
+ // - Mermaid comments (`%% ...`) are tolerated inside entity blocks.
14
+ // - Files may mix `erDiagram` with other Mermaid diagram types (flowchart,
15
+ // sequenceDiagram). Each fenced block is independently checked for the
16
+ // erDiagram opener; non-ER blocks are skipped.
17
+ import { readFile } from "node:fs/promises";
18
+ import { entitySlug } from "./entity-slug.js";
19
+ const RE_MERMAID_OPEN = /^```\s*mermaid\s*$/i;
20
+ const RE_FENCE_CLOSE = /^```\s*$/;
21
+ const RE_COMMENT = /^\s*%%/;
22
+ const RE_ENTITY_OPEN = /^\s*([A-Za-z_][A-Za-z0-9_]*)\s*\{\s*$/;
23
+ const RE_REL_LINE = /^\s*[A-Za-z_][A-Za-z0-9_]*\s+\|?\|?[o|\-]+\{?\s+[A-Za-z]/;
24
+ const MERMAID_KEYWORDS = new Set(["erdiagram", "subgraph", "classdef", "style", "class"]);
25
+ export async function buildEntitiesFromMermaid(inputs) {
26
+ const rows = [];
27
+ const seenAcrossFiles = new Map(); // id → originating doc_path
28
+ for (const dm of inputs.domainModels) {
29
+ if (!dm.doc_path.endsWith(".mermaid.md"))
30
+ continue;
31
+ const docPath = dm.doc_path.startsWith("/")
32
+ ? dm.doc_path
33
+ : `${inputs.sddPath}/${dm.doc_path}`;
34
+ let text;
35
+ try {
36
+ text = await readFile(docPath, "utf-8");
37
+ }
38
+ catch (err) {
39
+ if (err.code === "ENOENT")
40
+ continue;
41
+ throw err;
42
+ }
43
+ const parsed = parseFile(text, dm, inputs.findings);
44
+ // Within-file dedup by id is enforced inside parseFile via seen-set;
45
+ // cross-file dedup is enforced here (shouldn't fire in current Adopter A,
46
+ // defensive against future authoring that splits a domain across files).
47
+ for (const p of parsed) {
48
+ const id = `${p.domainId}-${entitySlug(p.name)}`;
49
+ const existing = seenAcrossFiles.get(id);
50
+ if (existing) {
51
+ inputs.findings.add("divergence", `entities: cross-file id collision on "${id}" — declared in ${existing} and ${dm.doc_path}; keeping first`);
52
+ continue;
53
+ }
54
+ seenAcrossFiles.set(id, dm.doc_path);
55
+ const glossaryTerm = resolveGlossaryTermBySlug(p.name, inputs.knownGlossaryIds);
56
+ rows.push({
57
+ id,
58
+ name: p.name,
59
+ domain_id: p.domainId,
60
+ source_domain_model_id: p.sourceDomainModelId,
61
+ persistence_kind: "",
62
+ glossary_term: glossaryTerm,
63
+ notes: `columns=${p.columnCount}`,
64
+ source_sdd_id: "",
65
+ });
66
+ }
67
+ }
68
+ return rows;
69
+ }
70
+ function parseFile(text, dm, findings) {
71
+ const lines = text.split(/\r?\n/);
72
+ const out = [];
73
+ const seenInFile = new Set();
74
+ let inMermaid = false;
75
+ let isEr = false;
76
+ let firstKeywordSeen = false;
77
+ let inEntity = false;
78
+ let entityName = null;
79
+ let entityColumns = 0;
80
+ for (let i = 0; i < lines.length; i++) {
81
+ const raw = lines[i] ?? "";
82
+ if (!inMermaid) {
83
+ if (RE_MERMAID_OPEN.test(raw)) {
84
+ inMermaid = true;
85
+ isEr = false;
86
+ firstKeywordSeen = false;
87
+ }
88
+ continue;
89
+ }
90
+ // in_mermaid == true
91
+ if (RE_FENCE_CLOSE.test(raw)) {
92
+ inMermaid = false;
93
+ isEr = false;
94
+ firstKeywordSeen = false;
95
+ // If we exit mid-entity, drop it silently — malformed block.
96
+ inEntity = false;
97
+ entityName = null;
98
+ continue;
99
+ }
100
+ const stripped = raw.trim();
101
+ if (!firstKeywordSeen && stripped !== "" && !RE_COMMENT.test(raw)) {
102
+ firstKeywordSeen = true;
103
+ isEr = stripped.toLowerCase().startsWith("erdiagram");
104
+ }
105
+ if (!isEr)
106
+ continue;
107
+ if (inEntity) {
108
+ if (stripped.startsWith("}")) {
109
+ if (entityName !== null) {
110
+ const slug = entitySlug(entityName);
111
+ if (!seenInFile.has(slug)) {
112
+ seenInFile.add(slug);
113
+ out.push({
114
+ name: entityName,
115
+ domainId: dm.domain_id,
116
+ sourceDomainModelId: dm.id,
117
+ columnCount: entityColumns,
118
+ });
119
+ }
120
+ }
121
+ inEntity = false;
122
+ entityName = null;
123
+ entityColumns = 0;
124
+ continue;
125
+ }
126
+ if (RE_COMMENT.test(raw))
127
+ continue;
128
+ if (stripped)
129
+ entityColumns++;
130
+ continue;
131
+ }
132
+ // Not in an entity block — look for an opener.
133
+ if (RE_COMMENT.test(raw))
134
+ continue;
135
+ if (RE_REL_LINE.test(raw))
136
+ continue;
137
+ const m = RE_ENTITY_OPEN.exec(raw);
138
+ if (m) {
139
+ const ident = m[1] ?? "";
140
+ if (MERMAID_KEYWORDS.has(ident.toLowerCase()))
141
+ continue;
142
+ entityName = ident;
143
+ inEntity = true;
144
+ entityColumns = 0;
145
+ }
146
+ }
147
+ // Defensive: if a block ended without closing an entity, log it once.
148
+ if (inEntity && entityName !== null) {
149
+ findings.add("convention", `entities-mermaid: ${dm.doc_path}: unclosed entity block for "${entityName}" — discarded`);
150
+ }
151
+ return out;
152
+ }
153
+ function resolveGlossaryTermBySlug(entityName, knownGlossaryIds) {
154
+ const slug = entitySlug(entityName);
155
+ if (!slug)
156
+ return "";
157
+ // Glossary ids follow {owning_domain_id}-{term_slug} or {slug} shape.
158
+ // Suffix-match keeps cross-domain ids resolvable while avoiding random
159
+ // substring collisions.
160
+ for (const id of knownGlossaryIds) {
161
+ if (id === slug || id.endsWith(`-${slug}`))
162
+ return id;
163
+ }
164
+ return ""; // Most data-model entities have no glossary term; no orphan finding.
165
+ }
166
+ //# sourceMappingURL=entities-mermaid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities-mermaid.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/entities-mermaid.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function entitySlug(s: string): string;
2
+ //# sourceMappingURL=entity-slug.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-slug.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/entity-slug.ts"],"names":[],"mappings":"AA0BA,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAO5C"}
@@ -0,0 +1,34 @@
1
+ // Entity-aware slug helper used by the data-model-entity walkers
2
+ // (entities-manifest, entities-mermaid, service-entity-tables) per ADR 0159 §4.6.
3
+ //
4
+ // Differs from the base `slugify` in events / capabilities / contracts: adds
5
+ // an ALLCAPS-then-Pascal split rule so naming-style variation across
6
+ // UPPER_SNAKE_CASE Mermaid authoring and PascalCase data-store-table
7
+ // authoring resolves to a single canonical slug.
8
+ //
9
+ // Examples:
10
+ // entitySlug("OBUConfigurationTemplate") → "obu-configuration-template"
11
+ // entitySlug("OBU_CONFIGURATION_TEMPLATE") → "obu-configuration-template"
12
+ // entitySlug("Vehicle") → "vehicle"
13
+ // entitySlug("APIKeyRotationRecord") → "api-key-rotation-record"
14
+ // entitySlug("customer") → "customer" (lowercase Mermaid)
15
+ // entitySlug("accountFeatures") → "account-features"
16
+ //
17
+ // Phase Pre finding (research/adr-0159-prototypes/PHASE-PRE-SYNTHESIS.md):
18
+ // without the ALLCAPS-then-Pascal rule, the Data Store Mapping table form
19
+ // (`OBUConfigurationTemplate`) never resolves to the Mermaid form
20
+ // (`OBU_CONFIGURATION_TEMPLATE`), breaking ~50% of expected service_entity
21
+ // edges in Adopter A.
22
+ //
23
+ // Kept local to the entity walkers to avoid affecting events / contracts /
24
+ // capability id generation. Promote to a shared module only if a fourth
25
+ // walker needs it (per ADR 0159 §4.6 deferred decision).
26
+ export function entitySlug(s) {
27
+ return s
28
+ .replace(/([A-Z]+)([A-Z][a-z])/g, "$1-$2")
29
+ .replace(/([a-z0-9])([A-Z])/g, "$1-$2")
30
+ .toLowerCase()
31
+ .replace(/[^a-z0-9]+/g, "-")
32
+ .replace(/^-+|-+$/g, "");
33
+ }
34
+ //# sourceMappingURL=entity-slug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-slug.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/entity-slug.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,kFAAkF;AAClF,EAAE;AACF,6EAA6E;AAC7E,qEAAqE;AACrE,qEAAqE;AACrE,iDAAiD;AACjD,EAAE;AACF,YAAY;AACZ,4EAA4E;AAC5E,4EAA4E;AAC5E,yDAAyD;AACzD,yEAAyE;AACzE,8EAA8E;AAC9E,kEAAkE;AAClE,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,kEAAkE;AAClE,2EAA2E;AAC3E,sBAAsB;AACtB,EAAE;AACF,2EAA2E;AAC3E,wEAAwE;AACxE,yDAAyD;AAEzD,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,OAAO,CAAC;SACL,OAAO,CAAC,uBAAuB,EAAE,OAAO,CAAC;SACzC,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,8 +1,11 @@
1
1
  import type { CatalogueRow } from "../csv-writer.js";
2
2
  import type { FindingsLog } from "../findings.js";
3
+ import type { Profile } from "../manifest-loader.js";
3
4
  export interface GlossaryXrefInputs {
4
5
  readonly sddPath: string;
5
6
  readonly findings: FindingsLog;
7
+ /** Profile of the SDD; the walker emits 0 rows for non-platform profiles per ADR 0158 §amendment. */
8
+ readonly profile: Profile;
6
9
  /** From the glossary builder: `<domain>:<term>` (lower-case term) → glossary_items.id. */
7
10
  readonly idByDomainTerm: ReadonlyMap<string, string>;
8
11
  /** Term name (case-insensitive) → set of (domain, id) for resolving raw term names. */
@@ -1 +1 @@
1
- {"version":3,"file":"glossary-xref.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/glossary-xref.ts"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,0FAA0F;IAC1F,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,uFAAuF;IACvF,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC5F,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,YAAY,EAAE,CAAC;CACzC;AAWD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC,CAgU7B"}
1
+ {"version":3,"file":"glossary-xref.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/glossary-xref.ts"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,qGAAqG;IACrG,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,uFAAuF;IACvF,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC5F,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,YAAY,EAAE,CAAC;CACzC;AAWD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC,CAuU7B"}
@@ -42,6 +42,12 @@ import { join } from "node:path";
42
42
  import { parse as parseYaml } from "yaml";
43
43
  const MANIFEST_REL_PATH = join("docs", "platform", "reference", "glossary-alignment-manifest.yaml");
44
44
  export async function buildGlossaryXref(inputs) {
45
+ // Profile gate per ADR 0158 §amendment: the manifest is platform-owned;
46
+ // sibling SDDs that syndicate it for documentation accessibility should
47
+ // not re-emit rows. Mirrors the entities-manifest profile gate.
48
+ if (inputs.profile !== "platform-profile") {
49
+ return { glossaryXref: [], entityGlossary: [] };
50
+ }
45
51
  const path = join(inputs.sddPath, MANIFEST_REL_PATH);
46
52
  let text;
47
53
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"glossary-xref.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/glossary-xref.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glossary-xref.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/glossary-xref.ts"],"names":[],"mappings":"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"}
@@ -78,4 +78,13 @@ export { buildSystemExternalDependency } from "./system-external-dependency.js";
78
78
  export type { SystemExternalDependencyInputs } from "./system-external-dependency.js";
79
79
  export { buildPersonaC4System } from "./persona-c4system.js";
80
80
  export type { PersonaC4SystemInputs } from "./persona-c4system.js";
81
+ export { entitySlug } from "./entity-slug.js";
82
+ export { buildEntitiesFromManifest } from "./entities-manifest.js";
83
+ export type { EntitiesManifestInputs } from "./entities-manifest.js";
84
+ export { buildEntitiesFromMermaid } from "./entities-mermaid.js";
85
+ export type { EntitiesMermaidInputs, DomainModelInput, } from "./entities-mermaid.js";
86
+ export { buildServiceEntityFromTables } from "./service-entity-tables.js";
87
+ export type { ServiceEntityTablesInputs } from "./service-entity-tables.js";
88
+ export { buildC4ContainerEntity, buildC4SystemEntity, } from "./c4-entity-rollups.js";
89
+ export type { C4ContainerEntityInputs, C4SystemEntityInputs, } from "./c4-entity-rollups.js";
81
90
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/index.ts"],"names":[],"mappings":"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"}
@@ -42,4 +42,9 @@ export { buildProductPlatformDependencies } from "./product-platform-dependencie
42
42
  export { buildC4ExternalSystems } from "./c4-external-systems.js";
43
43
  export { buildSystemExternalDependency } from "./system-external-dependency.js";
44
44
  export { buildPersonaC4System } from "./persona-c4system.js";
45
+ export { entitySlug } from "./entity-slug.js";
46
+ export { buildEntitiesFromManifest } from "./entities-manifest.js";
47
+ export { buildEntitiesFromMermaid } from "./entities-mermaid.js";
48
+ export { buildServiceEntityFromTables } from "./service-entity-tables.js";
49
+ export { buildC4ContainerEntity, buildC4SystemEntity, } from "./c4-entity-rollups.js";
45
50
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAKzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAK3D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAKhD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM1C,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAK3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAEtF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAEtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAKzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAK3D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAKhD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM1C,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAK3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAEtF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAEtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAKjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,EACL,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { CatalogueRow } from "../csv-writer.js";
2
+ import type { FindingsLog } from "../findings.js";
3
+ import type { DomainModelInput } from "./entities-mermaid.js";
4
+ export interface ServiceEntityTablesInputs {
5
+ readonly sddPath: string;
6
+ readonly findings: FindingsLog;
7
+ readonly domainModels: readonly DomainModelInput[];
8
+ /** From the entities builder: (domain, entitySlug(name)) → entities.id. */
9
+ readonly entityIdByDomainSlug: ReadonlyMap<string, string>;
10
+ /** All entity ids, for cross-domain fallback lookup. Key = entitySlug(name); value = first matching entities.id. */
11
+ readonly entityIdBySlug: ReadonlyMap<string, string>;
12
+ /** From the services builder. */
13
+ readonly services: readonly CatalogueRow[];
14
+ readonly knownServiceIds: ReadonlySet<string>;
15
+ }
16
+ export declare function buildServiceEntityFromTables(inputs: ServiceEntityTablesInputs): Promise<CatalogueRow[]>;
17
+ //# sourceMappingURL=service-entity-tables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-entity-tables.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/service-entity-tables.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAM9D,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACnD,2EAA2E;IAC3E,QAAQ,CAAC,oBAAoB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3D,oHAAoH;IACpH,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC/C;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAqHzB"}
@@ -0,0 +1,212 @@
1
+ // Primary reverse-method walker for the service_entity edge catalogue per
2
+ // ADR 0159 §4.5. Reads per-domain `## Data Store Mapping` markdown tables in
3
+ // `docs/domains/{domain}/architecture/data-model.mermaid.md` files.
4
+ //
5
+ // Phase Pre findings (research/adr-0159-prototypes/connect-data-store-mapping-table-variations.md):
6
+ // - Two heading variants: `## Data Store Mapping` and `## Data Store Inventory`
7
+ // (the latter is store-centric — different schema, no Entity column — and
8
+ // gets skipped with a convention finding).
9
+ // - Three column-shape variants: standard (Entity | Store | Schema/Collection
10
+ // | Owning Service | PPT/Notes), developer's first col = `Entity / Artefact`,
11
+ // and vehicle's lack of `Owning Service` column (skipped).
12
+ // - Compound owning-service cells split on ` / ` — emit one edge per part.
13
+ // - Trailing `(annotation)` on entity texts stripped before slug-lookup.
14
+ // - Cross-domain entity references in tables resolve against entities.csv
15
+ // from any domain (not just the table's own domain) — same-domain first.
16
+ //
17
+ // Service-name resolution rules (ADR 0159 §4.7):
18
+ // 1. Try alias-map exact match (case-insensitive on display name).
19
+ // 2. Try entitySlug(display_name) ⋈ entitySlug(services.name).
20
+ // 3. Try entitySlug(display_name) ⋈ last_segment(services.id).
21
+ // 4. Fire [finding] orphan; skip edge.
22
+ import { readFile } from "node:fs/promises";
23
+ import { join } from "node:path";
24
+ import { parse as parseYaml } from "yaml";
25
+ import { entitySlug } from "./entity-slug.js";
26
+ const RE_DATA_STORE_HEADING = /^##\s+Data Store\s+(Mapping|Inventory)\s*$/i;
27
+ const ALIAS_REL_PATH = join("docs", "platform", "reference", "service-name-aliases.yaml");
28
+ export async function buildServiceEntityFromTables(inputs) {
29
+ const aliasMap = await loadAliasMap(inputs.sddPath, inputs.findings);
30
+ // Pre-compute service lookups.
31
+ const serviceIdBySlugName = new Map();
32
+ const serviceIdByTrailSegment = new Map();
33
+ for (const s of inputs.services) {
34
+ const id = String(s["id"]);
35
+ const name = String(s["name"] ?? "");
36
+ if (name)
37
+ serviceIdBySlugName.set(entitySlug(name), id);
38
+ const lastSeg = id.split("-").pop() ?? "";
39
+ if (lastSeg && !serviceIdByTrailSegment.has(lastSeg)) {
40
+ serviceIdByTrailSegment.set(lastSeg, id);
41
+ }
42
+ }
43
+ const rowsByPk = new Map();
44
+ for (const dm of inputs.domainModels) {
45
+ if (!dm.doc_path.endsWith(".mermaid.md"))
46
+ continue;
47
+ const fullPath = dm.doc_path.startsWith("/")
48
+ ? dm.doc_path
49
+ : join(inputs.sddPath, dm.doc_path);
50
+ let text;
51
+ try {
52
+ text = await readFile(fullPath, "utf-8");
53
+ }
54
+ catch (err) {
55
+ if (err.code === "ENOENT")
56
+ continue;
57
+ throw err;
58
+ }
59
+ const lines = text.split(/\r?\n/);
60
+ const headingIdx = lines.findIndex((l) => RE_DATA_STORE_HEADING.test(l));
61
+ if (headingIdx === -1)
62
+ continue;
63
+ const tableLines = collectTableLines(lines, headingIdx + 1);
64
+ if (tableLines === null || tableLines.length < 2) {
65
+ inputs.findings.add("convention", `service-entity-tables: ${dm.doc_path}: Data Store heading present but no markdown table follows — skipped`);
66
+ continue;
67
+ }
68
+ const headers = splitRow(tableLines[0]);
69
+ let entityColIdx = -1;
70
+ let serviceColIdx = -1;
71
+ for (let i = 0; i < headers.length; i++) {
72
+ const h = headers[i].toLowerCase();
73
+ if (entityColIdx === -1 && (h === "entity" || h.startsWith("entity"))) {
74
+ entityColIdx = i;
75
+ }
76
+ if (serviceColIdx === -1 && h.includes("owning service")) {
77
+ serviceColIdx = i;
78
+ }
79
+ }
80
+ if (entityColIdx === -1 || serviceColIdx === -1) {
81
+ inputs.findings.add("convention", `service-entity-tables: ${dm.doc_path}: Data Store table missing Entity or Owning Service column (headers: ${headers.join(" | ")}) — skipped`);
82
+ continue;
83
+ }
84
+ // Skip the |---|---| separator row (lineLine[1]); data rows start at index 2.
85
+ for (let i = 2; i < tableLines.length; i++) {
86
+ const cells = splitRow(tableLines[i]);
87
+ if (cells.length <= Math.max(entityColIdx, serviceColIdx))
88
+ continue;
89
+ const entityText = cells[entityColIdx].trim();
90
+ const serviceText = cells[serviceColIdx].trim();
91
+ if (!entityText || !serviceText)
92
+ continue;
93
+ // Strip trailing parenthetical annotation: "Role (fleet)" → "Role".
94
+ const entityNorm = entityText.replace(/\s*\([^)]+\)\s*$/, "").trim();
95
+ const entSlug = entitySlug(entityNorm);
96
+ let entityId = inputs.entityIdByDomainSlug.get(`${dm.domain_id}|${entSlug}`);
97
+ if (entityId === undefined) {
98
+ entityId = inputs.entityIdBySlug.get(entSlug);
99
+ }
100
+ if (entityId === undefined) {
101
+ inputs.findings.add("orphan", `service-entity-tables: ${dm.doc_path}: entity "${entityText}" doesn't resolve to an entities.csv row — edge skipped`);
102
+ continue;
103
+ }
104
+ // Compound owning-service: split on " / ".
105
+ const serviceParts = serviceText
106
+ .split(/\s+\/\s+/)
107
+ .map((s) => s.trim())
108
+ .filter((s) => s.length > 0);
109
+ for (const sp of serviceParts) {
110
+ const serviceId = resolveService(sp, aliasMap, serviceIdBySlugName, serviceIdByTrailSegment, inputs.knownServiceIds);
111
+ if (serviceId === undefined) {
112
+ inputs.findings.add("orphan", `service-entity-tables: ${dm.doc_path}: owning-service "${sp}" doesn't resolve to a services.csv row — edge skipped`);
113
+ continue;
114
+ }
115
+ const pk = `${serviceId}__${entityId}__owns`;
116
+ if (rowsByPk.has(pk))
117
+ continue;
118
+ rowsByPk.set(pk, {
119
+ id: pk,
120
+ service_id: serviceId,
121
+ entity_id: entityId,
122
+ relation: "owns",
123
+ evidence_path: dm.doc_path,
124
+ source_sdd_id: "",
125
+ });
126
+ }
127
+ }
128
+ }
129
+ return [...rowsByPk.values()];
130
+ }
131
+ async function loadAliasMap(sddPath, findings) {
132
+ const empty = { byDisplayLower: new Map() };
133
+ const path = join(sddPath, ALIAS_REL_PATH);
134
+ let text;
135
+ try {
136
+ text = await readFile(path, "utf-8");
137
+ }
138
+ catch (err) {
139
+ if (err.code === "ENOENT")
140
+ return empty;
141
+ throw err;
142
+ }
143
+ let raw;
144
+ try {
145
+ raw = parseYaml(text);
146
+ }
147
+ catch (err) {
148
+ findings.add("convention", `${ALIAS_REL_PATH}: failed to parse YAML — ${err.message}`);
149
+ return empty;
150
+ }
151
+ if (!raw || typeof raw !== "object")
152
+ return empty;
153
+ const obj = raw;
154
+ const aliases = obj["aliases"];
155
+ if (!Array.isArray(aliases))
156
+ return empty;
157
+ const map = new Map();
158
+ for (const a of aliases) {
159
+ if (!a || typeof a !== "object")
160
+ continue;
161
+ const e = a;
162
+ const display = String(e["display"] ?? "").trim();
163
+ const canonical = String(e["canonical"] ?? "").trim();
164
+ if (display && canonical)
165
+ map.set(display.toLowerCase(), canonical);
166
+ }
167
+ return { byDisplayLower: map };
168
+ }
169
+ function resolveService(display, alias, serviceIdBySlugName, serviceIdByTrailSegment, knownServiceIds) {
170
+ // 1. Alias map exact (case-insensitive).
171
+ const aliased = alias.byDisplayLower.get(display.toLowerCase());
172
+ if (aliased && knownServiceIds.has(aliased))
173
+ return aliased;
174
+ // 2. Slug-of-name match.
175
+ const slug = entitySlug(display);
176
+ if (!slug)
177
+ return undefined;
178
+ const bySlugName = serviceIdBySlugName.get(slug);
179
+ if (bySlugName && knownServiceIds.has(bySlugName))
180
+ return bySlugName;
181
+ // 3. Trailing-id-segment match.
182
+ const byTrail = serviceIdByTrailSegment.get(slug);
183
+ if (byTrail && knownServiceIds.has(byTrail))
184
+ return byTrail;
185
+ return undefined;
186
+ }
187
+ function splitRow(line) {
188
+ // Strip leading/trailing `|`, split on `|`, trim cells.
189
+ const trimmed = line.trim();
190
+ const parts = trimmed.split("|");
191
+ // Drop the empty cells from leading/trailing `|`.
192
+ return parts.slice(1, parts.length - 1).map((c) => c.trim());
193
+ }
194
+ function collectTableLines(lines, startIdx) {
195
+ let i = startIdx;
196
+ while (i < lines.length) {
197
+ const l = lines[i] ?? "";
198
+ if (l.startsWith("## "))
199
+ return null;
200
+ if (l.trimStart().startsWith("|")) {
201
+ const out = [];
202
+ while (i < lines.length && lines[i].trimStart().startsWith("|")) {
203
+ out.push(lines[i]);
204
+ i++;
205
+ }
206
+ return out;
207
+ }
208
+ i++;
209
+ }
210
+ return null;
211
+ }
212
+ //# sourceMappingURL=service-entity-tables.js.map