@memoarchitect/tools 0.15.2 → 0.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 (62) hide show
  1. package/README.md +1 -1
  2. package/package.json +2 -2
  3. package/packages/tools/lib/commands/dev.d.ts.map +1 -1
  4. package/packages/tools/lib/commands/dev.js +4 -0
  5. package/packages/tools/lib/commands/dev.js.map +1 -1
  6. package/packages/tools/lib/commands/validate.d.ts.map +1 -1
  7. package/packages/tools/lib/commands/validate.js +2 -16
  8. package/packages/tools/lib/commands/validate.js.map +1 -1
  9. package/packages/tools/lib/model/complete-model.d.ts.map +1 -1
  10. package/packages/tools/lib/model/complete-model.js +59 -14
  11. package/packages/tools/lib/model/complete-model.js.map +1 -1
  12. package/packages/tools/lib/model/id-rebase.d.ts +6 -1
  13. package/packages/tools/lib/model/id-rebase.d.ts.map +1 -1
  14. package/packages/tools/lib/model/id-rebase.js +71 -36
  15. package/packages/tools/lib/model/id-rebase.js.map +1 -1
  16. package/packages/tools/lib/model/identity-registry.d.ts +26 -0
  17. package/packages/tools/lib/model/identity-registry.d.ts.map +1 -1
  18. package/packages/tools/lib/model/identity-registry.js +55 -4
  19. package/packages/tools/lib/model/identity-registry.js.map +1 -1
  20. package/packages/tools/lib/model/semantic.d.ts +72 -0
  21. package/packages/tools/lib/model/semantic.d.ts.map +1 -1
  22. package/packages/tools/lib/model/semantic.js.map +1 -1
  23. package/packages/tools/lib/model/short-id.d.ts +11 -0
  24. package/packages/tools/lib/model/short-id.d.ts.map +1 -1
  25. package/packages/tools/lib/model/short-id.js +33 -0
  26. package/packages/tools/lib/model/short-id.js.map +1 -1
  27. package/packages/tools/lib/model/view-deriver.d.ts +8 -1
  28. package/packages/tools/lib/model/view-deriver.d.ts.map +1 -1
  29. package/packages/tools/lib/model/view-deriver.js +45 -0
  30. package/packages/tools/lib/model/view-deriver.js.map +1 -1
  31. package/packages/tools/lib/operations/project-snapshot.d.ts.map +1 -1
  32. package/packages/tools/lib/operations/project-snapshot.js +3 -18
  33. package/packages/tools/lib/operations/project-snapshot.js.map +1 -1
  34. package/packages/tools/lib/protocol/messages.d.ts +56 -3
  35. package/packages/tools/lib/protocol/messages.d.ts.map +1 -1
  36. package/packages/tools/lib/server/axis-query.d.ts +9 -0
  37. package/packages/tools/lib/server/axis-query.d.ts.map +1 -0
  38. package/packages/tools/lib/server/axis-query.js +47 -0
  39. package/packages/tools/lib/server/axis-query.js.map +1 -0
  40. package/packages/tools/lib/server/dev-server.d.ts.map +1 -1
  41. package/packages/tools/lib/server/dev-server.js +46 -9
  42. package/packages/tools/lib/server/dev-server.js.map +1 -1
  43. package/packages/tools/lib/server/mutation-domain.d.ts.map +1 -1
  44. package/packages/tools/lib/server/mutation-domain.js +4 -0
  45. package/packages/tools/lib/server/mutation-domain.js.map +1 -1
  46. package/packages/tools/lib/server/user-preferences.d.ts.map +1 -1
  47. package/packages/tools/lib/server/user-preferences.js +11 -2
  48. package/packages/tools/lib/server/user-preferences.js.map +1 -1
  49. package/packages/tools/lib/server/view-writer.d.ts +25 -2
  50. package/packages/tools/lib/server/view-writer.d.ts.map +1 -1
  51. package/packages/tools/lib/server/view-writer.js +231 -27
  52. package/packages/tools/lib/server/view-writer.js.map +1 -1
  53. package/packages/tools/lib/stage2/build-from-api.js +3 -1
  54. package/packages/tools/lib/stage2/build-from-api.js.map +1 -1
  55. package/packages/tools/lib/toolchain/providers/syside-python.d.ts.map +1 -1
  56. package/packages/tools/lib/toolchain/providers/syside-python.js +3 -0
  57. package/packages/tools/lib/toolchain/providers/syside-python.js.map +1 -1
  58. package/packages/tools/lib/toolchain/providers/syside.d.ts +12 -2
  59. package/packages/tools/lib/toolchain/providers/syside.d.ts.map +1 -1
  60. package/packages/tools/lib/toolchain/providers/syside.js +20 -6
  61. package/packages/tools/lib/toolchain/providers/syside.js.map +1 -1
  62. package/packages/tools/python/memo_stage1_syside.py +40 -10
@@ -22,60 +22,95 @@
22
22
  // comes from the lines the branch added or changed when the caller has them (`added`, from a diff
23
23
  // against the target); without that, the last occurrences in a file are taken to be the branch's.
24
24
  // ─────────────────────────────────────────────────────────────────────────────
25
- import { parseShortId } from './short-id.js';
26
- /** Renumber the branch's new short ids that collide with the target's. */
25
+ import { parseShortId, parseUsageShortId } from './short-id.js';
26
+ /** A short id as a family and a number (`SYS-7`), or as a definition's id and a usage number (`SYS-7:2`). */
27
+ function parseAnyShortId(shortId) {
28
+ if (!shortId)
29
+ return null;
30
+ const usage = parseUsageShortId(shortId);
31
+ if (usage)
32
+ return { prefix: usage.base, seq: usage.seq, sep: ':' };
33
+ const family = parseShortId(shortId);
34
+ return family ? { ...family, sep: '-' } : null;
35
+ }
36
+ /**
37
+ * Renumber the branch's new short ids that collide with the target's.
38
+ *
39
+ * A usage's id is built on its definition's (`SYS-7:2`), so the definitions are repaired first and a usage
40
+ * of one that was renumbered follows it, then the usages are numbered within their definition.
41
+ */
27
42
  export function rebaseRegistry(target, branch) {
28
43
  const highWater = new Map();
29
44
  const take = (shortId) => {
30
- const parsed = shortId ? parseShortId(shortId) : null;
45
+ const parsed = parseAnyShortId(shortId);
31
46
  if (parsed)
32
47
  highWater.set(parsed.prefix, Math.max(highWater.get(parsed.prefix) ?? 0, parsed.seq));
33
48
  };
34
- for (const entry of Object.values(target))
49
+ // A retired number is as taken as a live one.
50
+ for (const entry of Object.values(target)) {
35
51
  take(entry.shortId);
52
+ for (const retired of entry.retired ?? [])
53
+ take(retired);
54
+ }
36
55
  const targetHigh = new Map(highWater);
37
56
  for (const [key, entry] of Object.entries(branch))
38
- if (key in target)
57
+ if (key in target) {
39
58
  take(entry.shortId);
59
+ for (const retired of entry.retired ?? [])
60
+ take(retired);
61
+ }
40
62
  const registry = {};
41
63
  const changes = [];
42
- const fresh = Object.keys(branch).filter(key => !(key in target)).sort((a, b) => {
43
- const pa = parseShortId(branch[a].shortId ?? '');
44
- const pb = parseShortId(branch[b].shortId ?? '');
45
- return (pa?.seq ?? 0) - (pb?.seq ?? 0) || a.localeCompare(b);
46
- });
47
64
  for (const [key, entry] of Object.entries(branch))
48
65
  if (key in target)
49
66
  registry[key] = target[key] ?? entry;
50
- // Keep the branch's own ids that do not collide, so the new numbers stay clear of them.
51
- // Two new elements with one number above the target's mark are two sibling branches' work merged
52
- // into this one: nothing in the target says which came first, so the first in key order keeps it.
53
- const colliding = new Set();
54
- const kept = new Set();
55
- for (const key of fresh) {
56
- const shortId = branch[key].shortId;
57
- const parsed = shortId ? parseShortId(shortId) : null;
58
- if (parsed && (parsed.seq <= (targetHigh.get(parsed.prefix) ?? 0) || kept.has(shortId)))
59
- colliding.add(key);
60
- else {
61
- take(shortId);
62
- if (shortId)
63
- kept.add(shortId);
67
+ const isUsage = (key) => Boolean(branch[key].shortId && parseUsageShortId(branch[key].shortId));
68
+ const fresh = Object.keys(branch).filter(key => !(key in target));
69
+ const sorted = (keys, entries) => [...keys].sort((a, b) => (parseAnyShortId(entries[a].shortId)?.seq ?? 0) - (parseAnyShortId(entries[b].shortId)?.seq ?? 0) || a.localeCompare(b));
70
+ const repair = (keys, entries) => {
71
+ // Keep the branch's own ids that do not collide, so the new numbers stay clear of them.
72
+ // Two new elements with one number above the target's mark are two sibling branches' work merged
73
+ // into this one: nothing in the target says which came first, so the first in key order keeps it.
74
+ const colliding = new Set();
75
+ const kept = new Set();
76
+ for (const key of sorted(keys, entries)) {
77
+ const shortId = entries[key].shortId;
78
+ const parsed = parseAnyShortId(shortId);
79
+ if (parsed && (parsed.seq <= (targetHigh.get(parsed.prefix) ?? 0) || kept.has(shortId)))
80
+ colliding.add(key);
81
+ else {
82
+ take(shortId);
83
+ if (shortId)
84
+ kept.add(shortId);
85
+ }
64
86
  }
65
- }
66
- for (const key of fresh) {
67
- const entry = branch[key];
68
- const parsed = entry.shortId ? parseShortId(entry.shortId) : null;
69
- if (!colliding.has(key) || !parsed) {
70
- registry[key] = entry;
71
- continue;
87
+ for (const key of sorted(keys, entries)) {
88
+ const entry = entries[key];
89
+ const parsed = parseAnyShortId(entry.shortId);
90
+ if (!colliding.has(key) || !parsed) {
91
+ registry[key] = entry;
92
+ continue;
93
+ }
94
+ const next = (highWater.get(parsed.prefix) ?? 0) + 1;
95
+ highWater.set(parsed.prefix, next);
96
+ const to = `${parsed.prefix}${parsed.sep}${next}`;
97
+ registry[key] = { ...entry, shortId: to };
98
+ changes.push({ where: key, from: entry.shortId, to });
72
99
  }
73
- const next = (highWater.get(parsed.prefix) ?? 0) + 1;
74
- highWater.set(parsed.prefix, next);
75
- const to = `${parsed.prefix}-${next}`;
76
- registry[key] = { ...entry, shortId: to };
77
- changes.push({ where: key, from: entry.shortId, to });
100
+ };
101
+ repair(fresh.filter(key => !isUsage(key)), branch);
102
+ // A usage follows its definition if the definition was renumbered.
103
+ const renamed = new Map(changes.map(change => [change.from, change.to]));
104
+ const usageKeys = fresh.filter(isUsage);
105
+ const usages = {};
106
+ for (const key of usageKeys) {
107
+ const parsed = parseAnyShortId(branch[key].shortId);
108
+ const base = renamed.get(parsed.prefix);
109
+ if (base)
110
+ changes.push({ where: key, from: branch[key].shortId, to: `${base}:${parsed.seq}` });
111
+ usages[key] = base ? { ...branch[key], shortId: `${base}:${parsed.seq}` } : branch[key];
78
112
  }
113
+ repair(usageKeys, usages);
79
114
  return { registry, changes };
80
115
  }
81
116
  /** `providedId = "X"` literals in a source text: the id, and where its quoted text starts and ends. */
@@ -1 +1 @@
1
- {"version":3,"file":"id-rebase.js","sourceRoot":"","sources":["../../src/model/id-rebase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"id-rebase.js","sourceRoot":"","sources":["../../src/model/id-rebase.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,12 @@ export declare const IDENTITY_FILENAME = "memo.identity.yaml";
3
3
  export interface ElementIdentity {
4
4
  shortId?: string;
5
5
  uuid?: string;
6
+ /**
7
+ * Short ids this element held and no longer does (a usage that was `SYS-20` and is now `SYS-7:1`).
8
+ * They stay in the ledger so their numbers stay retired: a number once handed out is never handed out
9
+ * again, whichever element it was on.
10
+ */
11
+ retired?: string[];
6
12
  }
7
13
  /** `package::name` → identity. */
8
14
  export type IdentityRegistry = Record<string, ElementIdentity>;
@@ -49,6 +55,26 @@ export declare function readIdentityRegistry(projectRoot: string): IdentityRegis
49
55
  * make the file unsafe.
50
56
  */
51
57
  export declare function writeIdentityRegistry(projectRoot: string, assigned: IdentityRegistry, prior?: IdentityRegistry): void;
58
+ /**
59
+ * Record the identities a build assigned, and return the registry as it now stands (the next build's
60
+ * prior). Called by every command that builds a model and accepts it, so a project written against an
61
+ * older version is brought up to date by the first build under the new one: the ids it now computes are
62
+ * recorded, and the ones they replace are retired. Nothing is written when the file already says the
63
+ * same, which keeps a rebuild from touching the file a watcher is watching.
64
+ */
65
+ export declare function persistIdentities(projectRoot: string, elements: Iterable<{
66
+ id: string;
67
+ package?: string;
68
+ shortId?: string;
69
+ uuid?: string;
70
+ provenance?: {
71
+ declaration: {
72
+ origin?: string;
73
+ };
74
+ };
75
+ }>, prior?: IdentityRegistry): IdentityRegistry;
76
+ /** `entry`, plus every short id `before` held that `entry` does not: those numbers are retired. */
77
+ export declare function withRetired(entry: ElementIdentity, before: ElementIdentity | undefined): ElementIdentity;
52
78
  /** Serialize to the same hand-written YAML subset the lockfile uses. */
53
79
  export declare function serializeIdentityRegistry(registry: IdentityRegistry): string;
54
80
  /** Parse the registry (hand-written for the simple two-field format). */
@@ -1 +1 @@
1
- {"version":3,"file":"identity-registry.d.ts","sourceRoot":"","sources":["../../src/model/identity-registry.ts"],"names":[],"mappings":"AAoCA,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AAEtD,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,kCAAkC;AAClC,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAE/D;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC5B,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9D,eAAe,GAAG,SAAS,CAK7B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAI1E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,GAAE,gBAAqB,GAC7B,IAAI,CAGN;AAED,wEAAwE;AACxE,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAe5E;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAmBvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,gBAAgB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAM7E"}
1
+ {"version":3,"file":"identity-registry.d.ts","sourceRoot":"","sources":["../../src/model/identity-registry.ts"],"names":[],"mappings":"AAoCA,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AAEtD,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,kCAAkC;AAClC,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAE/D;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC5B,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9D,eAAe,GAAG,SAAS,CAK7B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAI1E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,GAAE,gBAAqB,GAC7B,IAAI,CAMN;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,QAAQ,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE;QAAE,WAAW,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,CAAC,EACxI,KAAK,GAAE,gBAAqB,GAC7B,gBAAgB,CAiBlB;AAED,mGAAmG;AACnG,wBAAgB,WAAW,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,GAAG,SAAS,GAAG,eAAe,CAMxG;AAED,wEAAwE;AACxE,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAgB5E;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAoBvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,gBAAgB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ7E"}
@@ -83,9 +83,52 @@ export function readIdentityRegistry(projectRoot) {
83
83
  * make the file unsafe.
84
84
  */
85
85
  export function writeIdentityRegistry(projectRoot, assigned, prior = {}) {
86
- const merged = { ...prior, ...assigned };
86
+ const merged = { ...prior };
87
+ for (const [key, entry] of Object.entries(assigned)) {
88
+ merged[key] = withRetired(entry, prior[key]);
89
+ }
87
90
  writeFileSync(join(projectRoot, IDENTITY_FILENAME), serializeIdentityRegistry(merged));
88
91
  }
92
+ /**
93
+ * Record the identities a build assigned, and return the registry as it now stands (the next build's
94
+ * prior). Called by every command that builds a model and accepts it, so a project written against an
95
+ * older version is brought up to date by the first build under the new one: the ids it now computes are
96
+ * recorded, and the ones they replace are retired. Nothing is written when the file already says the
97
+ * same, which keeps a rebuild from touching the file a watcher is watching.
98
+ */
99
+ export function persistIdentities(projectRoot, elements, prior = {}) {
100
+ const merged = { ...prior };
101
+ for (const el of elements) {
102
+ if (!el.shortId && !el.uuid)
103
+ continue;
104
+ // Another package owns a dependency's identities; this model's registry does not hold them.
105
+ if (el.provenance?.declaration.origin === 'dependency')
106
+ continue;
107
+ const key = identityKey(el);
108
+ merged[key] = withRetired({ shortId: el.shortId, uuid: el.uuid }, prior[key]);
109
+ }
110
+ const path = join(projectRoot, IDENTITY_FILENAME);
111
+ const text = serializeIdentityRegistry(merged);
112
+ try {
113
+ if (!existsSync(path) || readFileSync(path, 'utf-8') !== text)
114
+ writeFileSync(path, text);
115
+ }
116
+ catch {
117
+ // A read-only checkout still builds; it just cannot record identities. A degraded mode, not a failure.
118
+ }
119
+ return merged;
120
+ }
121
+ /** `entry`, plus every short id `before` held that `entry` does not: those numbers are retired. */
122
+ export function withRetired(entry, before) {
123
+ if (!before)
124
+ return entry;
125
+ const retired = new Set([...(before.retired ?? []), ...(entry.retired ?? [])]);
126
+ if (before.shortId && before.shortId !== entry.shortId)
127
+ retired.add(before.shortId);
128
+ if (entry.shortId)
129
+ retired.delete(entry.shortId);
130
+ return retired.size > 0 ? { ...entry, retired: [...retired].sort() } : entry;
131
+ }
89
132
  /** Serialize to the same hand-written YAML subset the lockfile uses. */
90
133
  export function serializeIdentityRegistry(registry) {
91
134
  let out = `# ${IDENTITY_FILENAME} — element identity registry (auto-generated)\n`;
@@ -96,13 +139,15 @@ export function serializeIdentityRegistry(registry) {
96
139
  out += `elements:\n`;
97
140
  for (const key of Object.keys(registry).sort()) {
98
141
  const entry = registry[key];
99
- if (!entry?.shortId && !entry?.uuid)
142
+ if (!entry?.shortId && !entry?.uuid && !entry?.retired?.length)
100
143
  continue;
101
144
  out += ` "${key}":\n`;
102
145
  if (entry.shortId)
103
146
  out += ` shortId: "${entry.shortId}"\n`;
104
147
  if (entry.uuid)
105
148
  out += ` uuid: "${entry.uuid}"\n`;
149
+ if (entry.retired?.length)
150
+ out += ` retired: "${entry.retired.join(',')}"\n`;
106
151
  }
107
152
  return out;
108
153
  }
@@ -120,9 +165,12 @@ export function parseIdentityRegistry(content) {
120
165
  registry[current] = {};
121
166
  continue;
122
167
  }
123
- const fieldMatch = line.match(/^ {4}(shortId|uuid): "(.*)"$/);
168
+ const fieldMatch = line.match(/^ {4}(shortId|uuid|retired): "(.*)"$/);
124
169
  if (fieldMatch && current) {
125
- registry[current][fieldMatch[1]] = fieldMatch[2];
170
+ if (fieldMatch[1] === 'retired')
171
+ registry[current].retired = fieldMatch[2].split(',').filter(Boolean);
172
+ else
173
+ registry[current][fieldMatch[1]] = fieldMatch[2];
126
174
  }
127
175
  }
128
176
  return registry;
@@ -145,6 +193,9 @@ export function priorShortIds(registry) {
145
193
  for (const [key, entry] of Object.entries(registry)) {
146
194
  if (entry.shortId)
147
195
  out.set(key, entry.shortId);
196
+ // A retired number matches no element, and raises the family's high-water mark like a deleted one.
197
+ for (const retired of entry.retired ?? [])
198
+ out.set(`${key}\0retired\0${retired}`, retired);
148
199
  }
149
200
  return out;
150
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"identity-registry.js","sourceRoot":"","sources":["../../src/model/identity-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identity-registry.js","sourceRoot":"","sources":["../../src/model/identity-registry.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,14 @@ export interface MemoElement {
68
68
  shortName?: string;
69
69
  /** Stable short ID for deep-linking, e.g. "SW-REQ-4291" (set by builder) */
70
70
  shortId?: string;
71
+ /**
72
+ * The id a reader sees and quotes, decided at compile time so no client chooses one: the authored
73
+ * `providedId` when there is one, else the short id. A usage typed by a project definition reads as
74
+ * that definition's id plus its own number (`EXT-AFR-06:1`).
75
+ */
76
+ displayId?: string;
77
+ /** The family of `shortId` (`SYS` for `SYS-7:1`), for grouping and addresses. */
78
+ idFamily?: string;
71
79
  /** Stable technical UUID assigned during compilation; never used as a display label. */
72
80
  uuid?: string;
73
81
  /** Human-readable name (from 'attribute redefines name = ...' or id) */
@@ -305,6 +313,63 @@ export interface ViewpointDTO {
305
313
  explorerOrder?: number;
306
314
  supportedDiagramTypes?: string[];
307
315
  }
316
+ /**
317
+ * One axis of a matrix view: the elements it lists.
318
+ *
319
+ * Hand-picked elements and a query are a union. A query is kept as its text and
320
+ * evaluated when the matrix opens; the ids it matched are never stored.
321
+ */
322
+ export interface MatrixAxisDTO {
323
+ /** The text of a `memo-query` block. */
324
+ query?: string;
325
+ /** Hand-picked elements, by qualified name. */
326
+ elementIds?: string[];
327
+ }
328
+ /** A named group of rows in a dependency matrix. */
329
+ export interface MatrixGroupDTO {
330
+ name: string;
331
+ groupedBy: 'owningPackage' | 'memoQuery' | 'clusterResult';
332
+ /** A package qualified name, or the text of a memo-query; absent for a cluster result. */
333
+ expression?: string;
334
+ }
335
+ /**
336
+ * What a matrix view (`MemoTraceabilityMatrixView`, `MemoDependencyMatrixView`)
337
+ * declares. The traceability screen reads `rowAxis` and `columnAxis`; the
338
+ * dependency screen reads `axis` and the options after it.
339
+ */
340
+ export interface MatrixDefinitionDTO {
341
+ /**
342
+ * The system or system of systems the matrix is about, as a workspace root (the element id of its
343
+ * definition). Its queries run in that workspace, and the matrix shows that workspace's model.
344
+ */
345
+ system?: string;
346
+ rowAxis?: MatrixAxisDTO;
347
+ columnAxis?: MatrixAxisDTO;
348
+ axis?: MatrixAxisDTO;
349
+ linkTypes?: string[];
350
+ dependencyTypes?: string[];
351
+ containmentTypes?: string[];
352
+ symmetric?: boolean;
353
+ ordering?: 'natural' | 'kind' | 'partition' | 'cluster';
354
+ groups?: MatrixGroupDTO[];
355
+ criticalElements?: MatrixAxisDTO;
356
+ }
357
+ /** One matched element, enough to recognise it in a preview. */
358
+ export interface AxisPreviewRow {
359
+ id: string;
360
+ name: string;
361
+ kind: string;
362
+ package?: string;
363
+ }
364
+ export interface AxisQueryResult {
365
+ /** Set when the query could not be run; nothing else is meaningful then. */
366
+ error?: string;
367
+ count: number;
368
+ /** Every matched id, present only when there are no more than the limit. */
369
+ ids?: string[];
370
+ /** The first few matches, in the order the query returned them. */
371
+ preview: AxisPreviewRow[];
372
+ }
308
373
  /** Diagram definition (serializable for WebSocket transport) */
309
374
  export interface DiagramDTO {
310
375
  id: string;
@@ -333,6 +398,13 @@ export interface DiagramDTO {
333
398
  * distinct from the union its viewpoint accumulates.
334
399
  */
335
400
  elementKinds?: string[];
401
+ /**
402
+ * The `view def` the view is typed by, as the model names it. A screen that
403
+ * manages one definition lists the views that carry it.
404
+ */
405
+ viewDefinition?: string;
406
+ /** What a matrix view declares; absent on every other view. */
407
+ matrix?: MatrixDefinitionDTO;
336
408
  /** SysML source containing the view definition (project-relative). */
337
409
  sourceFile?: string;
338
410
  /** SysML package that owns the view; independent of source-file location. */
@@ -1 +1 @@
1
- {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/model/semantic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/model/semantic.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"semantic.js","sourceRoot":"","sources":["../../src/model/semantic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic.js","sourceRoot":"","sources":["../../src/model/semantic.ts"],"names":[],"mappings":"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"}
@@ -50,4 +50,15 @@ export declare function parseShortId(shortId: string): {
50
50
  prefix: string;
51
51
  seq: number;
52
52
  } | null;
53
+ /** A usage's id is its definition's short id and a number of its own: `SYS-7:1`. */
54
+ export declare function parseUsageShortId(shortId: string): {
55
+ base: string;
56
+ seq: number;
57
+ } | null;
58
+ /**
59
+ * Number the usages of each definition: `usagesByBase` maps a definition's short id to the ids of the
60
+ * elements typed by it. Monotonic, like `assignSequentialShortIds`: a recorded number is kept, a
61
+ * newcomer takes the next one above the highest ever handed out under that definition.
62
+ */
63
+ export declare function assignUsageShortIds(usagesByBase: ReadonlyMap<string, string[]>, prior: ReadonlyMap<string, string>): Map<string, string>;
53
64
  //# sourceMappingURL=short-id.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"short-id.d.ts","sourceRoot":"","sources":["../../src/model/short-id.ts"],"names":[],"mappings":"AAqGA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED,2GAA2G;AAC3G,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAG3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,EACpB,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7D,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CA+BrB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIpF"}
1
+ {"version":3,"file":"short-id.d.ts","sourceRoot":"","sources":["../../src/model/short-id.ts"],"names":[],"mappings":"AAqGA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED,2GAA2G;AAC3G,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAG3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,EACpB,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7D,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CA+BrB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIpF;AAED,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAGvF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAC/B,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAC3C,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAoBrB"}
@@ -188,4 +188,37 @@ export function parseShortId(shortId) {
188
188
  return null;
189
189
  return { prefix: match[1], seq: parseInt(match[2], 10) };
190
190
  }
191
+ /** A usage's id is its definition's short id and a number of its own: `SYS-7:1`. */
192
+ export function parseUsageShortId(shortId) {
193
+ const match = shortId.match(/^(.+):(\d+)$/);
194
+ return match ? { base: match[1], seq: parseInt(match[2], 10) } : null;
195
+ }
196
+ /**
197
+ * Number the usages of each definition: `usagesByBase` maps a definition's short id to the ids of the
198
+ * elements typed by it. Monotonic, like `assignSequentialShortIds`: a recorded number is kept, a
199
+ * newcomer takes the next one above the highest ever handed out under that definition.
200
+ */
201
+ export function assignUsageShortIds(usagesByBase, prior) {
202
+ const out = new Map();
203
+ for (const [base, ids] of usagesByBase) {
204
+ let highWater = 0;
205
+ const carried = new Map();
206
+ for (const [id, shortId] of prior) {
207
+ const parsed = parseUsageShortId(shortId);
208
+ if (!parsed || parsed.base !== base)
209
+ continue;
210
+ highWater = Math.max(highWater, parsed.seq);
211
+ carried.set(id, shortId);
212
+ }
213
+ for (const id of ids) {
214
+ const existing = carried.get(id);
215
+ if (existing)
216
+ out.set(id, existing);
217
+ }
218
+ for (const id of ids.filter(candidate => !out.has(candidate)).sort((a, b) => a.localeCompare(b))) {
219
+ out.set(id, `${base}:${++highWater}`);
220
+ }
221
+ }
222
+ return out;
223
+ }
191
224
  //# sourceMappingURL=short-id.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"short-id.js","sourceRoot":"","sources":["../../src/model/short-id.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"short-id.js","sourceRoot":"","sources":["../../src/model/short-id.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { MemoModel, MemoElement, ViewpointDTO, DiagramDTO } from './semantic.js';
1
+ import type { MemoModel, MemoElement, ViewpointDTO, DiagramDTO, MatrixDefinitionDTO, MatrixGroupDTO } from './semantic.js';
2
2
  import type { KindRegistry } from './kind-registry.js';
3
3
  /**
4
4
  * Resolve every `expose` path declared on a view to the element ids it
@@ -13,6 +13,13 @@ export interface DerivedViews {
13
13
  viewpoints: ViewpointDTO[];
14
14
  diagrams: DiagramDTO[];
15
15
  }
16
+ /**
17
+ * What a matrix view declares, read from the attributes the builder flattened
18
+ * off its `part :>> rowAxis { … }` redefinitions (`rowAxis.query`, `axis.includeElementIds`)
19
+ * and its own attributes. Absent when the view declares none of them, so every
20
+ * other view keeps a DTO without a `matrix`.
21
+ */
22
+ export declare function readMatrixDefinition(attributes: Record<string, string>, groups?: MatrixGroupDTO[]): MatrixDefinitionDTO | undefined;
16
23
  /**
17
24
  * Derive viewpoint and diagram DTOs from view elements modelled in SysML.
18
25
  * Views are grouped by their `viewpointDefinition` binding. The binding and
@@ -1 +1 @@
1
- {"version":3,"file":"view-deriver.d.ts","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAqHvD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAW9E;AAkID,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,SAAS,EAChB,YAAY,CAAC,EAAE,YAAY,GAC5B,MAAM,EAAE,CAkCV;AAuHD,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,YAAY,CAuL5F;AAED,qGAAqG;AACrG,wBAAgB,cAAc,CAAC,UAAU,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,EAAE,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC7B,UAAU,EAAE,SAAS,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM;AACjD,6FAA6F;AAC7F,SAAS,GAAE,SAAS,WAAW,EAAO,GACvC,YAAY,EAAE,CAQhB;AAED,uGAAuG;AACvG,MAAM,WAAW,WAAW;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB"}
1
+ {"version":3,"file":"view-deriver.d.ts","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAiB,mBAAmB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1I,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAqHvD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAW9E;AAkID,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,SAAS,EAChB,YAAY,CAAC,EAAE,YAAY,GAC5B,MAAM,EAAE,CAkCV;AAuHD,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;CAC1B;AAMD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAE,cAAc,EAAO,GAAG,mBAAmB,GAAG,SAAS,CAmBvI;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,YAAY,CAuM5F;AAED,qGAAqG;AACrG,wBAAgB,cAAc,CAAC,UAAU,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,EAAE,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC7B,UAAU,EAAE,SAAS,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM;AACjD,6FAA6F;AAC7F,SAAS,GAAE,SAAS,WAAW,EAAO,GACvC,YAAY,EAAE,CAQhB;AAED,uGAAuG;AACvG,MAAM,WAAW,WAAW;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB"}