@primmel/primmel 1.20.0 → 1.21.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 (136) hide show
  1. package/dist/index.d.ts +2 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +7 -3
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/check-rules.d.ts +1 -1
  6. package/dist/src/check-rules.d.ts.map +1 -1
  7. package/dist/src/check-rules.js +36 -15
  8. package/dist/src/check-rules.js.map +1 -1
  9. package/dist/src/check.d.ts +4 -0
  10. package/dist/src/check.d.ts.map +1 -1
  11. package/dist/src/check.js +428 -137
  12. package/dist/src/check.js.map +1 -1
  13. package/dist/src/export/cddal.d.ts +25 -0
  14. package/dist/src/export/cddal.d.ts.map +1 -0
  15. package/dist/src/export/cddal.js +213 -0
  16. package/dist/src/export/cddal.js.map +1 -0
  17. package/dist/src/export/retrieval.d.ts +147 -6
  18. package/dist/src/export/retrieval.d.ts.map +1 -1
  19. package/dist/src/export/retrieval.js +254 -25
  20. package/dist/src/export/retrieval.js.map +1 -1
  21. package/dist/src/export/unitsdb.d.ts +19 -0
  22. package/dist/src/export/unitsdb.d.ts.map +1 -0
  23. package/dist/src/export/unitsdb.js +82 -0
  24. package/dist/src/export/unitsdb.js.map +1 -0
  25. package/dist/src/export/yaml-lite.d.ts +13 -0
  26. package/dist/src/export/yaml-lite.d.ts.map +1 -0
  27. package/dist/src/export/yaml-lite.js +219 -0
  28. package/dist/src/export/yaml-lite.js.map +1 -0
  29. package/dist/src/instance-resolution.d.ts +19 -0
  30. package/dist/src/instance-resolution.d.ts.map +1 -1
  31. package/dist/src/instance-resolution.js +87 -1
  32. package/dist/src/instance-resolution.js.map +1 -1
  33. package/dist/src/model-diff.d.ts.map +1 -1
  34. package/dist/src/model-diff.js +0 -5
  35. package/dist/src/model-diff.js.map +1 -1
  36. package/dist/src/runtime.d.ts +143 -0
  37. package/dist/src/runtime.d.ts.map +1 -0
  38. package/dist/src/runtime.js +648 -0
  39. package/dist/src/runtime.js.map +1 -0
  40. package/dist/src/ser-des/config/artifact.d.ts.map +1 -1
  41. package/dist/src/ser-des/config/artifact.js +6 -0
  42. package/dist/src/ser-des/config/artifact.js.map +1 -1
  43. package/dist/src/ser-des/config/attestation.d.ts +5 -0
  44. package/dist/src/ser-des/config/attestation.d.ts.map +1 -0
  45. package/dist/src/ser-des/config/attestation.js +143 -0
  46. package/dist/src/ser-des/config/attestation.js.map +1 -0
  47. package/dist/src/ser-des/config/data.d.ts.map +1 -1
  48. package/dist/src/ser-des/config/data.js +98 -0
  49. package/dist/src/ser-des/config/data.js.map +1 -1
  50. package/dist/src/ser-des/config/documentModule.js +5 -5
  51. package/dist/src/ser-des/config/documentModule.js.map +1 -1
  52. package/dist/src/ser-des/config/index.d.ts +8 -0
  53. package/dist/src/ser-des/config/index.d.ts.map +1 -1
  54. package/dist/src/ser-des/config/index.js +22 -49
  55. package/dist/src/ser-des/config/index.js.map +1 -1
  56. package/dist/src/ser-des/config/instance.d.ts.map +1 -1
  57. package/dist/src/ser-des/config/instance.js +24 -0
  58. package/dist/src/ser-des/config/instance.js.map +1 -1
  59. package/dist/src/ser-des/config/process.d.ts.map +1 -1
  60. package/dist/src/ser-des/config/process.js +8 -0
  61. package/dist/src/ser-des/config/process.js.map +1 -1
  62. package/dist/src/ser-des/config/processSequence.d.ts +19 -0
  63. package/dist/src/ser-des/config/processSequence.d.ts.map +1 -0
  64. package/dist/src/ser-des/config/processSequence.js +77 -0
  65. package/dist/src/ser-des/config/processSequence.js.map +1 -0
  66. package/dist/src/ser-des/config/quantity.d.ts +4 -1
  67. package/dist/src/ser-des/config/quantity.d.ts.map +1 -1
  68. package/dist/src/ser-des/config/quantity.js +63 -1
  69. package/dist/src/ser-des/config/quantity.js.map +1 -1
  70. package/dist/src/ser-des/config/subject.d.ts.map +1 -1
  71. package/dist/src/ser-des/config/subject.js +14 -0
  72. package/dist/src/ser-des/config/subject.js.map +1 -1
  73. package/dist/src/ser-des/index.d.ts +4 -1
  74. package/dist/src/ser-des/index.d.ts.map +1 -1
  75. package/dist/src/ser-des/index.js +3 -1
  76. package/dist/src/ser-des/index.js.map +1 -1
  77. package/dist/src/ser-des/package.d.ts.map +1 -1
  78. package/dist/src/ser-des/package.js +9 -7
  79. package/dist/src/ser-des/package.js.map +1 -1
  80. package/dist/src/ser-des/parse.d.ts +24 -0
  81. package/dist/src/ser-des/parse.d.ts.map +1 -1
  82. package/dist/src/ser-des/parse.js +69 -33
  83. package/dist/src/ser-des/parse.js.map +1 -1
  84. package/dist/src/ser-des/shape-front-end.d.ts +8 -0
  85. package/dist/src/ser-des/shape-front-end.d.ts.map +1 -0
  86. package/dist/src/ser-des/shape-front-end.js +215 -0
  87. package/dist/src/ser-des/shape-front-end.js.map +1 -0
  88. package/dist/src/ser-des/types.d.ts +4 -10
  89. package/dist/src/ser-des/types.d.ts.map +1 -1
  90. package/dist/src/types/Artifact.d.ts +7 -0
  91. package/dist/src/types/Artifact.d.ts.map +1 -1
  92. package/dist/src/types/Attestation.d.ts +60 -0
  93. package/dist/src/types/Attestation.d.ts.map +1 -0
  94. package/dist/src/types/Attestation.js +20 -0
  95. package/dist/src/types/Attestation.js.map +1 -0
  96. package/dist/src/types/DocumentModule.d.ts +1 -1
  97. package/dist/src/types/DocumentModule.d.ts.map +1 -1
  98. package/dist/src/types/Instance.d.ts +6 -2
  99. package/dist/src/types/Instance.d.ts.map +1 -1
  100. package/dist/src/types/ProcessModel.d.ts +0 -11
  101. package/dist/src/types/ProcessModel.d.ts.map +1 -1
  102. package/dist/src/types/ProcessModel.js +2 -28
  103. package/dist/src/types/ProcessModel.js.map +1 -1
  104. package/dist/src/types/Quantity.d.ts +22 -0
  105. package/dist/src/types/Quantity.d.ts.map +1 -1
  106. package/dist/src/types/Standard.d.ts +2 -13
  107. package/dist/src/types/Standard.d.ts.map +1 -1
  108. package/dist/src/types/Subject.d.ts +14 -0
  109. package/dist/src/types/Subject.d.ts.map +1 -1
  110. package/dist/src/types/data.d.ts +13 -0
  111. package/dist/src/types/data.d.ts.map +1 -1
  112. package/dist/src/types/process.d.ts +8 -0
  113. package/dist/src/types/process.d.ts.map +1 -1
  114. package/dist-browser/index.mjs +1746 -1829
  115. package/dist-cli/primmel.mjs +1630 -845
  116. package/package.json +15 -3
  117. package/dist/src/ser-des/config/processModel.d.ts +0 -13
  118. package/dist/src/ser-des/config/processModel.d.ts.map +0 -1
  119. package/dist/src/ser-des/config/processModel.js +0 -163
  120. package/dist/src/ser-des/config/processModel.js.map +0 -1
  121. package/dist/src/ser-des/config/storyline.d.ts +0 -7
  122. package/dist/src/ser-des/config/storyline.d.ts.map +0 -1
  123. package/dist/src/ser-des/config/storyline.js +0 -264
  124. package/dist/src/ser-des/config/storyline.js.map +0 -1
  125. package/dist/src/ser-des/config/workflowConfig.d.ts +0 -5
  126. package/dist/src/ser-des/config/workflowConfig.d.ts.map +0 -1
  127. package/dist/src/ser-des/config/workflowConfig.js +0 -129
  128. package/dist/src/ser-des/config/workflowConfig.js.map +0 -1
  129. package/dist/src/ser-des/config/workflowStage.d.ts +0 -5
  130. package/dist/src/ser-des/config/workflowStage.d.ts.map +0 -1
  131. package/dist/src/ser-des/config/workflowStage.js +0 -96
  132. package/dist/src/ser-des/config/workflowStage.js.map +0 -1
  133. package/dist/src/types/Storyline.d.ts +0 -62
  134. package/dist/src/types/Storyline.d.ts.map +0 -1
  135. package/dist/src/types/Storyline.js +0 -51
  136. package/dist/src/types/Storyline.js.map +0 -1
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadUnitsDb = loadUnitsDb;
4
+ exports.unitsDbEntryFor = unitsDbEntryFor;
5
+ /**
6
+ * The UnitsDB binding (TODO.openapi/03 sibling; github oimlsmart/unitsdb):
7
+ * the deployment points UNITSDB_DIR at a unitsdb checkout and the export
8
+ * enriches condition-set entries with the DB's own semantics — the
9
+ * UnitsML identifier and the measurement SCALE of the entry's unit.
10
+ *
11
+ * The scale is the semantic the consumer needs: a `continuous_interval`
12
+ * unit (degree Celsius) compares by DIFFERENCES with an affine relation
13
+ * to its SI coherent unit; a `continuous_ratio` unit (volt, V/m, the
14
+ * percent ratio) compares by FACTOR. The numeric constants (the 273.15
15
+ * offset) stay with the package register — the DB names the scale, the
16
+ * register owns the number.
17
+ */
18
+ const node_fs_1 = require("node:fs");
19
+ const node_path_1 = require("node:path");
20
+ function loadUnitsDb(dir) {
21
+ if (!dir) {
22
+ return null;
23
+ }
24
+ try {
25
+ const entries = [];
26
+ // unitsdb ships YAML; the loader reads the pre-converted JSON the
27
+ // checkout generates (units.json), never a YAML dependency
28
+ const jsonPath = (0, node_path_1.join)(dir, 'units.json');
29
+ if (!(0, node_fs_1.existsSync)(jsonPath)) {
30
+ return null;
31
+ }
32
+ const parsed = JSON.parse((0, node_fs_1.readFileSync)(jsonPath, 'utf8')).units;
33
+ if (!Array.isArray(parsed)) {
34
+ return null;
35
+ }
36
+ for (const u of parsed) {
37
+ const identifiers = (u.identifiers ?? []);
38
+ const unitsml = identifiers.find(i => i.type === 'unitsml')?.id;
39
+ if (!unitsml) {
40
+ continue;
41
+ }
42
+ const nist = identifiers.find(i => i.type === 'nist')?.id;
43
+ const scale = u.scale_reference?.id;
44
+ const symbols = (u.symbols ?? [])
45
+ .map(s => String(s.ascii ?? s.id))
46
+ .filter(Boolean);
47
+ const entry = {
48
+ unitsml,
49
+ ...(nist ? { nist } : {}),
50
+ ...(scale ? { scale } : {}),
51
+ symbols,
52
+ };
53
+ entries.push(entry);
54
+ }
55
+ const bySymbol = new Map();
56
+ const byUnitsml = new Map();
57
+ // the DB writes products with negative exponents (V*m^-1); the
58
+ // slash spelling (V/m) indexes alongside, so register symbols match
59
+ const spellings = (s) => [
60
+ s,
61
+ s.replace(/\*([a-zA-ZμΩ°]+)\^-1\b/g, '/$1'),
62
+ ];
63
+ for (const e of entries) {
64
+ byUnitsml.set(e.unitsml, e);
65
+ for (const s of e.symbols) {
66
+ for (const sp of spellings(s)) {
67
+ bySymbol.set(sp, e);
68
+ }
69
+ }
70
+ }
71
+ return { bySymbol, byUnitsml };
72
+ }
73
+ catch {
74
+ return null;
75
+ }
76
+ }
77
+ /** The DB entry for a condition-set entry's unit: matched by the
78
+ * register's symbol (degC, %, V/m) against the DB's ascii symbols. */
79
+ function unitsDbEntryFor(db, unit) {
80
+ return db?.bySymbol.get(unit) ?? null;
81
+ }
82
+ //# sourceMappingURL=unitsdb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unitsdb.js","sourceRoot":"","sources":["../../../src/export/unitsdb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Parse one raw authored block (the requirement's `acceptance_criteria`
3
+ * above all) into the JSON value `yaml.safe_load` would produce — or
4
+ * `undefined` when the text is not a mapping of the subset (free text,
5
+ * a keyword-form block), signalling the caller to keep the raw string.
6
+ *
7
+ * The kernel keeps the block `trim()`-ed, which dedents the FIRST line
8
+ * to column 0 while its siblings keep the file indentation. The walk
9
+ * therefore tries the plausible base indents — the head line's own and
10
+ * its siblings' — and takes the first that consumes the whole block.
11
+ */
12
+ export declare function parseYamlBlock(text: string): Record<string, unknown> | undefined;
13
+ //# sourceMappingURL=yaml-lite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yaml-lite.d.ts","sourceRoot":"","sources":["../../../src/export/yaml-lite.ts"],"names":[],"mappings":"AAoMA;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,GACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CA8BrC"}
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+ // ─────────────────────────────────────────────────────────────────────
3
+ // The YAML-subset block reader (primmel/primmel-ts#84): the raw blocks
4
+ // the kernel keeps verbatim — a requirement's `acceptance_criteria`
5
+ // block above all — are YAML, migrated into the `.prl` source 1:1 and
6
+ // re-parsed consumer-side ever since. This reader is the upstream half
7
+ // of that retirement: the block mappings, block sequences, and flow
8
+ // scalars the migrated packages actually use, nothing more (no anchors,
9
+ // no flow collections, no multi-line plain scalars, no comments — a
10
+ // block carrying any of those walks off the subset and the caller keeps
11
+ // the raw string). The fidelity target is `yaml.safe_load` on the real
12
+ // corpus blocks, pinned by test.
13
+ // ─────────────────────────────────────────────────────────────────────
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.parseYamlBlock = parseYamlBlock;
16
+ const NUMERIC = /^[-+]?(\d+\.?\d*|\.\d+)([eE][-+]?\d+)?$/;
17
+ /**
18
+ * The plain-scalar resolutions the subset makes: null, the booleans,
19
+ * the decimal numbers; every other token stays a string (quoted forms
20
+ * unquote first). Deliberately narrower than YAML 1.1 (no dates, no
21
+ * sexagesimals, no yes/no booleans) — none appear in the migrated
22
+ * blocks, and a string where PyYAML sees a date round-trips honestly
23
+ * where the reverse would not.
24
+ */
25
+ function parseScalar(raw) {
26
+ const s = raw.trim();
27
+ if (s === '' || s === '~' || s === 'null' || s === 'Null' || s === 'NULL') {
28
+ return null;
29
+ }
30
+ if (s === 'true' || s === 'True' || s === 'TRUE') {
31
+ return true;
32
+ }
33
+ if (s === 'false' || s === 'False' || s === 'FALSE') {
34
+ return false;
35
+ }
36
+ if (NUMERIC.test(s)) {
37
+ return Number(s);
38
+ }
39
+ if (s[0] === '"' || s[0] === "'") {
40
+ return unquote(s, s[0]);
41
+ }
42
+ return s;
43
+ }
44
+ /** A quoted scalar: double-quoted escapes, single-quoted doubling. */
45
+ function unquote(s, q) {
46
+ if (s.length < 2 || s[s.length - 1] !== q) {
47
+ return s;
48
+ }
49
+ const body = s.slice(1, -1);
50
+ if (q === "'") {
51
+ return body.replace(/''/g, "'");
52
+ }
53
+ let out = '';
54
+ for (let i = 0; i < body.length; i++) {
55
+ const c = body[i];
56
+ if (c !== '\\' || i === body.length - 1) {
57
+ out += c;
58
+ continue;
59
+ }
60
+ const e = body[++i];
61
+ if (e === 'n') {
62
+ out += '\n';
63
+ }
64
+ else if (e === 't') {
65
+ out += '\t';
66
+ }
67
+ else if (e === 'r') {
68
+ out += '\r';
69
+ }
70
+ else if (e === '0') {
71
+ out += '\0';
72
+ }
73
+ else if (e === '\\' || e === '"') {
74
+ out += e;
75
+ }
76
+ else {
77
+ out += '\\' + e;
78
+ }
79
+ }
80
+ return out;
81
+ }
82
+ /** The `key:` head of a mapping line — null when the line has none. */
83
+ function splitKey(text) {
84
+ const colon = text.indexOf(':');
85
+ if (colon <= 0) {
86
+ return null;
87
+ }
88
+ const key = text.slice(0, colon);
89
+ if (/[\s"']/.test(key)) {
90
+ return null;
91
+ }
92
+ return [key, text.slice(colon + 1)];
93
+ }
94
+ /**
95
+ * Parse the block-mapping/sequence subset at `indent`; returns the
96
+ * index the walk stopped at. `lines` mutates in one place: a
97
+ * `- key: …` sequence item rewrites itself to its content at the
98
+ * item's inner indent, so the walk below sees a normal line.
99
+ */
100
+ function parseValue(lines, i, indent) {
101
+ if (i >= lines.length) {
102
+ return [i, null];
103
+ }
104
+ const t = lines[i].text;
105
+ if (t === '-' || t.startsWith('- ')) {
106
+ return parseSequence(lines, i, indent);
107
+ }
108
+ return parseMapping(lines, i, indent);
109
+ }
110
+ function parseSequence(lines, i, indent) {
111
+ const out = [];
112
+ while (i < lines.length &&
113
+ lines[i].indent === indent &&
114
+ (lines[i].text === '-' || lines[i].text.startsWith('- '))) {
115
+ const content = lines[i].text === '-' ? '' : lines[i].text.slice(2).trim();
116
+ if (content === '') {
117
+ i++;
118
+ const next = i < lines.length ? lines[i].indent : -1;
119
+ if (next > indent) {
120
+ const [end, value] = parseValue(lines, i, next);
121
+ out.push(value);
122
+ i = end;
123
+ }
124
+ else {
125
+ out.push(null);
126
+ }
127
+ continue;
128
+ }
129
+ const nested = content === '-' || content.startsWith('- ');
130
+ if (nested || splitKey(content) !== null) {
131
+ // The item head becomes a normal line at the inner indent (the
132
+ // `- ` marker's width); the walk consumes the item's body.
133
+ lines[i] = { indent: indent + 2, text: content };
134
+ const [end, value] = nested
135
+ ? parseSequence(lines, i, indent + 2)
136
+ : parseMapping(lines, i, indent + 2);
137
+ out.push(value);
138
+ i = end;
139
+ }
140
+ else {
141
+ out.push(parseScalar(content));
142
+ i++;
143
+ }
144
+ }
145
+ return [i, out];
146
+ }
147
+ function parseMapping(lines, i, indent) {
148
+ const map = {};
149
+ while (i < lines.length) {
150
+ const line = lines[i];
151
+ if (line.indent !== indent ||
152
+ line.text === '-' ||
153
+ line.text.startsWith('- ')) {
154
+ break;
155
+ }
156
+ const kv = splitKey(line.text);
157
+ if (!kv) {
158
+ break;
159
+ }
160
+ const [key, rest] = kv;
161
+ i++;
162
+ if (rest.trim() === '') {
163
+ const next = i < lines.length ? lines[i].indent : -1;
164
+ if (next > indent) {
165
+ const [end, value] = parseValue(lines, i, next);
166
+ map[key] = value;
167
+ i = end;
168
+ }
169
+ else {
170
+ map[key] = null;
171
+ }
172
+ }
173
+ else {
174
+ map[key] = parseScalar(rest);
175
+ }
176
+ }
177
+ return [i, map];
178
+ }
179
+ /**
180
+ * Parse one raw authored block (the requirement's `acceptance_criteria`
181
+ * above all) into the JSON value `yaml.safe_load` would produce — or
182
+ * `undefined` when the text is not a mapping of the subset (free text,
183
+ * a keyword-form block), signalling the caller to keep the raw string.
184
+ *
185
+ * The kernel keeps the block `trim()`-ed, which dedents the FIRST line
186
+ * to column 0 while its siblings keep the file indentation. The walk
187
+ * therefore tries the plausible base indents — the head line's own and
188
+ * its siblings' — and takes the first that consumes the whole block.
189
+ */
190
+ function parseYamlBlock(text) {
191
+ const scanned = [];
192
+ for (const raw of text.split('\n')) {
193
+ if (raw.trim() === '') {
194
+ continue;
195
+ }
196
+ scanned.push({
197
+ indent: raw.length - raw.trimStart().length,
198
+ text: raw.trim(),
199
+ });
200
+ }
201
+ if (scanned.length === 0 || splitKey(scanned[0].text) === null) {
202
+ return undefined;
203
+ }
204
+ const bases = new Set([
205
+ scanned[0].indent,
206
+ scanned[1]?.indent ?? scanned[0].indent,
207
+ ]);
208
+ for (const base of bases) {
209
+ // The candidate base may sit BELOW the dedented head line's column
210
+ // — the head rides virtually at the base for that walk.
211
+ const lines = scanned.map(l => l === scanned[0] && l.indent < base ? { indent: base, text: l.text } : l);
212
+ const [end, map] = parseMapping(lines, 0, base);
213
+ if (end === lines.length && Object.keys(map).length > 0) {
214
+ return map;
215
+ }
216
+ }
217
+ return undefined;
218
+ }
219
+ //# sourceMappingURL=yaml-lite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yaml-lite.js","sourceRoot":"","sources":["../../../src/export/yaml-lite.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,25 @@ export interface InstancePath {
29
29
  * consumed by the app, not by this resolver.
30
30
  */
31
31
  export declare function parseInstancePath(path: string): InstancePath;
32
+ /**
33
+ * The PROTOTYPE HOP (the power-type discipline, definition side): a
34
+ * class whose `extends` names an INSTANCE specializes that individual.
35
+ * Following the class plane's extends links terminates at the prototype
36
+ * instance — the individual whose exhibited values the class's
37
+ * instances inherit. Class-to-class links are followed transitively;
38
+ * a dangling or cyclic chain yields null (the linter's C155/C156 own
39
+ * those findings).
40
+ */
41
+ export declare function classPrototype(standard: Standard, classId: string): Instance | null;
42
+ /**
43
+ * The mixed delegation graph (the C155 cycle rule's substrate): for
44
+ * every instance, its continuation under the delegation law — the
45
+ * upward subject-chain link, else the `of` target when it names an
46
+ * instance, else the PROTOTYPE reached through an `of`-named class's
47
+ * extends chain. One edge per instance; a cycle over these edges would
48
+ * make the walk non-terminating.
49
+ */
50
+ export declare function delegationSuccessors(standard: Standard): Map<string, string>;
32
51
  /**
33
52
  * The upward walk from one instance: [start, …, family]. At each node the
34
53
  * next link is `model ?? group ?? family` (a sample links only its model;
@@ -1 +1 @@
1
- {"version":3,"file":"instance-resolution.d.ts","sourceRoot":"","sources":["../../src/instance-resolution.ts"],"names":[],"mappings":"AAoDA,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAC7B,kBAAkB,GAAG,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAEtE;kEACkE;AAClE,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;gBAEvB,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM;CAKvD;AAED,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,gBAAgB,GAAG,cAAc,CAAC;AAE5E,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAKD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAoB5D;AAaD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,GACjB,QAAQ,EAAE,CA8BZ;AASD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,aAAa,GAAG,MAAM,CAiDxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,GACjB,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAkB5B;AAED;2BAC2B;AAC3B,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,GACjB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYrB"}
1
+ {"version":3,"file":"instance-resolution.d.ts","sourceRoot":"","sources":["../../src/instance-resolution.ts"],"names":[],"mappings":"AAoDA,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAC7B,kBAAkB,GAAG,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAEtE;kEACkE;AAClE,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;gBAEvB,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM;CAKvD;AAED,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,gBAAgB,GAAG,cAAc,CAAC;AAE5E,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAKD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAoB5D;AAaD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,GACd,QAAQ,GAAG,IAAI,CAkBjB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAsB5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,GACjB,QAAQ,EAAE,CA0DZ;AASD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GACX,aAAa,GAAG,MAAM,CAiDxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,GACjB,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAkB5B;AAED;2BAC2B;AAC3B,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,GACjB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYrB"}
@@ -53,6 +53,8 @@
53
53
  Object.defineProperty(exports, "__esModule", { value: true });
54
54
  exports.InstanceResolutionError = void 0;
55
55
  exports.parseInstancePath = parseInstancePath;
56
+ exports.classPrototype = classPrototype;
57
+ exports.delegationSuccessors = delegationSuccessors;
56
58
  exports.instanceChain = instanceChain;
57
59
  exports.resolveInstanceValue = resolveInstanceValue;
58
60
  exports.resolveInstanceAttributes = resolveInstanceAttributes;
@@ -101,6 +103,65 @@ function attributeScope(standard, attrId) {
101
103
  return ((standard.attributeDefinitions ?? []).find(a => a.id === attrId)?.scope ??
102
104
  '');
103
105
  }
106
+ /**
107
+ * The PROTOTYPE HOP (the power-type discipline, definition side): a
108
+ * class whose `extends` names an INSTANCE specializes that individual.
109
+ * Following the class plane's extends links terminates at the prototype
110
+ * instance — the individual whose exhibited values the class's
111
+ * instances inherit. Class-to-class links are followed transitively;
112
+ * a dangling or cyclic chain yields null (the linter's C155/C156 own
113
+ * those findings).
114
+ */
115
+ function classPrototype(standard, classId) {
116
+ const classes = new Map((standard.dataclasses ?? []).map(c => [c.id, c]));
117
+ const instances = new Map((standard.instances ?? []).map(i => [i.id, i]));
118
+ const seen = new Set([classId]);
119
+ let cur = classes.get(classId);
120
+ while (cur && cur.extends) {
121
+ const target = cur.extends;
122
+ if (seen.has(target)) {
123
+ return null;
124
+ }
125
+ seen.add(target);
126
+ const inst = instances.get(target);
127
+ if (inst) {
128
+ return inst;
129
+ }
130
+ cur = classes.get(target);
131
+ }
132
+ return null;
133
+ }
134
+ /**
135
+ * The mixed delegation graph (the C155 cycle rule's substrate): for
136
+ * every instance, its continuation under the delegation law — the
137
+ * upward subject-chain link, else the `of` target when it names an
138
+ * instance, else the PROTOTYPE reached through an `of`-named class's
139
+ * extends chain. One edge per instance; a cycle over these edges would
140
+ * make the walk non-terminating.
141
+ */
142
+ function delegationSuccessors(standard) {
143
+ const out = new Map();
144
+ for (const inst of standard.instances ?? []) {
145
+ const upward = inst.model || inst.group || inst.family;
146
+ if (upward) {
147
+ out.set(inst.id, upward);
148
+ continue;
149
+ }
150
+ if (!inst.of) {
151
+ continue;
152
+ }
153
+ const direct = (standard.instances ?? []).find(i => i.id === inst.of);
154
+ if (direct) {
155
+ out.set(inst.id, direct.id);
156
+ continue;
157
+ }
158
+ const prototype = classPrototype(standard, inst.of);
159
+ if (prototype) {
160
+ out.set(inst.id, prototype.id);
161
+ }
162
+ }
163
+ return out;
164
+ }
104
165
  /**
105
166
  * The upward walk from one instance: [start, …, family]. At each node the
106
167
  * next link is `model ?? group ?? family` (a sample links only its model;
@@ -117,9 +178,34 @@ function instanceChain(standard, instanceId) {
117
178
  }
118
179
  const chain = [start];
119
180
  const visited = new Set([start.id]);
181
+ const byId = new Map((standard.instances ?? []).map(i => [i.id, i]));
120
182
  let current = start;
121
183
  for (;;) {
122
- const nextId = current.model || current.group || current.family;
184
+ // The power-type discipline: with no upward subject-chain link, an
185
+ // instance whose `of` names another instance continues the walk
186
+ // through it (every instance can serve as the definition of further
187
+ // instantiation — the C155 coherence rule keeps the two spellings
188
+ // from mixing on one instance).
189
+ const ofTarget = !current.model && !current.group && !current.family && current.of
190
+ ? byId.get(current.of)
191
+ : undefined;
192
+ // The PROTOTYPE HOP: when the `of` names a CLASS whose extends
193
+ // names an instance, the walk continues through that individual —
194
+ // the class's instances inherit the prototype's exhibited values
195
+ // (class defaults stay outside the delegation walk, as they always
196
+ // were; the walk reads exhibited values only).
197
+ const prototype = ofTarget === undefined &&
198
+ !current.model &&
199
+ !current.group &&
200
+ !current.family &&
201
+ current.of
202
+ ? classPrototype(standard, current.of)
203
+ : undefined;
204
+ const nextId = current.model ||
205
+ current.group ||
206
+ current.family ||
207
+ ofTarget?.id ||
208
+ prototype?.id;
123
209
  if (!nextId) {
124
210
  return chain;
125
211
  }
@@ -1 +1 @@
1
- {"version":3,"file":"instance-resolution.js","sourceRoot":"","sources":["../../src/instance-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance-resolution.js","sourceRoot":"","sources":["../../src/instance-resolution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model-diff.d.ts","sourceRoot":"","sources":["../../src/model-diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-diff.d.ts","sourceRoot":"","sources":["../../src/model-diff.ts"],"names":[],"mappings":"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"}
@@ -124,10 +124,8 @@ exports.TIER_BY_FIELD = {
124
124
  certificateTemplates: 'secondary',
125
125
  // The certification workflow step register (smart TODO.roadmap/40
126
126
  // batch 3) — operational wiring, tertiary.
127
- workflowConfigs: 'tertiary',
128
127
  // The named pipeline stages (smart TODO.roadmap/40 batch 5) —
129
128
  // operational wiring, tertiary.
130
- workflowStages: 'tertiary',
131
129
  // The verification pathways (smart TODO.roadmap/40 batch 3) —
132
130
  // operational wiring, tertiary.
133
131
  verificationPathways: 'tertiary',
@@ -167,7 +165,6 @@ exports.TIER_BY_FIELD = {
167
165
  // Process models (smart TODO.roadmap/40 batch 2) are tertiary beside
168
166
  // processes: the pipeline sequence/registers are the abstract-process
169
167
  // model's file-level furniture.
170
- processModels: 'tertiary',
171
168
  // Document modules (smart TODO.roadmap/40 batch 2) are tertiary beside
172
169
  // processes: the module is the pipeline's document-level furniture.
173
170
  documentModules: 'tertiary',
@@ -193,8 +190,6 @@ exports.TIER_BY_FIELD = {
193
190
  // the model.
194
191
  informativeAnnexes: 'cross-cutting',
195
192
  partAnnexes: 'cross-cutting',
196
- demoWorlds: 'tertiary',
197
- storylines: 'tertiary',
198
193
  // Invariants (smart gap-close E9) are cross-cutting beside notes: the
199
194
  // typed replacement for the note-family encoding — doctrine about the
200
195
  // model, not machinery inside it (the enforcement claims point at the