universal-physics-tensor 0.24.0 → 0.25.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.
package/README.md CHANGED
@@ -61,12 +61,13 @@ npm run upt -- audit # derive the bridges
61
61
  npm run upt -- predict # empty regime cells as link hypotheses
62
62
  npm run upt -- discover # vet link candidates (merge/unlock/consistency)
63
63
  npm run upt -- discover --source=canonical # run the funnel on standard physics ALONE (no bridges)
64
- npm run upt -- discover --derive # surface machine-derived identity consequences (unreleased; --max-orders / --anchor flags available)
64
+ npm run upt -- discover --derive # surface machine-derived identity consequences (--max-orders / --anchor flags available)
65
65
  npm run upt -- connectors # which isolated bridges can connect to the core
66
66
  npm run upt -- coverage # audit each bridge's empirical grounding
67
67
  npm run upt -- canonical # the standard-physics L-layer registry (answer key)
68
68
  npm run upt -- recover # validate bridges against standard physics
69
69
  npm run upt -- symbolic --simplify # compose + fold bridges' SYMBOLIC forms (MathTS simplify)
70
+ npm run upt -- map --source=both --format=mermaid # VISUAL map of the graph (Mermaid; also --format=dot|svg, --proposed, --out=PATH)
70
71
  # ...and YOUR OWN equations:
71
72
  npm run upt -- eval "hbar*c^3/(8*pi*G*M*k_B)" hbar=1.054571817e-34 c=299792458 G=6.6743e-11 M=1.989e30 k_B=1.380649e-23
72
73
  npm run upt -- derive period:time length:length gravity:acceleration --formula "2*pi*sqrt(length/gravity)"
@@ -85,7 +86,8 @@ and a built-in, dependency-free parser otherwise — transparently, via a
85
86
 
86
87
  See [`cli/README.md`](cli/README.md) for the full CLI reference — every command
87
88
  and alias, the `--source=catalog|canonical|both` flag, input syntax, exit codes,
88
- and troubleshooting.
89
+ and troubleshooting. [`docs/architecture/PHYSICS_MAP.md`](docs/architecture/PHYSICS_MAP.md)
90
+ shows the rendered map (`upt map --format=mermaid|dot|svg`).
89
91
 
90
92
  ## Installation
91
93
 
@@ -244,31 +246,35 @@ delivered a measured **5-6× RK4 geodesic-integrator speedup** (see [CHANGELOG](
244
246
 
245
247
  ## Development Status
246
248
 
247
- **Current version:** v0.24.0 on npm
249
+ **Current version:** v0.25.0 on npm
248
250
  ([`universal-physics-tensor`](https://www.npmjs.com/package/universal-physics-tensor),
249
251
  published 2026-06-19) — building on the **v0.8.0 → v0.23.0** rollup arc (composition
250
252
  graph + GW170817 / BE-23 data confrontations + catalog adjudication, Part-IX
251
253
  Phase C/D, the full catalog→graph migration, the bridge-inference +
252
254
  symbolic-composition tooling, the G-9 geometrized-units adapters, the
253
255
  distributional/variational grammar primitives, the AST bridge-gradient path, and
254
- the **canonical-equation L-layer** with bridge↔canonical linkage). v0.24.0 adds
256
+ the **canonical-equation L-layer** with bridge↔canonical linkage). v0.24.0 added
255
257
  the **identity-consequence surfacer** (`upt discover --derive` → machine-derived
256
258
  candidate relations, held out of the catalog pending §XXVII-B review; see
257
259
  [Part-XI](docs/specification/Part-XI-Proposed-Equations.md)), **canonical-only
258
260
  discovery** (`--source=catalog|canonical|both`), canonical-graph quality fixes
259
261
  (magnitude-gate sourcing, variable-name unification, the declared
260
262
  compton↔de-Broglie link), and architecture refactors (the `tensor↔cell` runtime
261
- cycle removed; the `numerical→bridges` upward dependency dropped).
263
+ cycle removed; the `numerical→bridges` upward dependency dropped). v0.25.0 adds
264
+ **physics-map visualization** — `upt map --format=mermaid|dot|svg` renders the
265
+ graph (quantities = nodes, equations = junctions) from live data; SVG via the
266
+ optional `@viz-js/viz` peer (see
267
+ [`docs/architecture/PHYSICS_MAP.md`](docs/architecture/PHYSICS_MAP.md)).
262
268
 
263
269
  | Metric | Value |
264
270
  |---|---|
265
271
  | Bridge catalog | **44** (IDs 11-54) — 8 established · 33 speculative · 3 highly-speculative · 0 invalid; membership-adjudicated **36 bridges · 5 not-a-bridge · 3 contested**; **41-edge composition graph** (full migration, 131 centralized quantity nodes) with a bridge-inference suite — **identifiability classifier**, **retrodiction harness**, **Buckingham-π enumerator**, unified by an **`explainQuantity`** entry point, plus (v0.12) the candidate-vetting **discovery loop**, regime-prediction map, empirical-coverage audit, and **symbolic composition** (the Observable contract + MathTS simplification) |
266
- | Test suite | **2841** passing (4 skipped, 1 todo; incl. property-based algebra tests) across 277 files — gated by CI |
272
+ | Test suite | **2874** passing (4 skipped, 1 todo; incl. property-based algebra tests) across 280 files — gated by CI |
267
273
  | `tsc --noEmit` | clean (src + strict `tsc -p tsconfig.tests.json`) |
268
274
  | GR validation anchors | BE-52 Mercury perihelion relErr 1.8×10⁻⁷ · BE-37 Shapiro delay relErr ~2×10⁻⁸ |
269
275
  | First derived relation | E_min(M) = ℏc³ln2/(8πGM) from BE-42 ∘ BE-16, relErr ≤ 10⁻¹² (pre-registered CT-1) |
270
276
  | First data confrontation | GW170817 → BE-36: recomputed bounds +6.5×10⁻¹⁶ / −3.1×10⁻¹⁵ vs published +7×10⁻¹⁶ / −3×10⁻¹⁵ |
271
- | Core capability | Dimensional AST validator (23 node kinds; valence-homogeneity + symbolic-exponent grammar, v0.13; distributional/variational primitives, v0.14) · curvature + Einstein-field-equation layers · GL4 symplectic geodesic integrator · composition graph (`composeEdges` + symbolic `composeSymbolic`) · geometrized-units adapters (G-9 increment 1, v0.13) · canonical-equation **L-layer** + bridge↔canonical linkage / F4 guard (v0.22) · **identity-consequence surfacer** (`upt discover --derive`, unreleased) |
277
+ | Core capability | Dimensional AST validator (23 node kinds; valence-homogeneity + symbolic-exponent grammar, v0.13; distributional/variational primitives, v0.14) · curvature + Einstein-field-equation layers · GL4 symplectic geodesic integrator · composition graph (`composeEdges` + symbolic `composeSymbolic`) · geometrized-units adapters (G-9 increment 1, v0.13) · canonical-equation **L-layer** + bridge↔canonical linkage / F4 guard (v0.22) · **identity-consequence surfacer** (`upt discover --derive`, v0.24) · **physics-map visualization** (`upt map --format=mermaid\|dot\|svg`) |
272
278
 
273
279
  Release history lives in the **[CHANGELOG](CHANGELOG.md)** — from the v0.1.0
274
280
  catalog-closure milestone (40/40 AST encodings via the Wave A→Z encoding arc,
package/bin/upt.mjs CHANGED
@@ -13,6 +13,7 @@
13
13
  */
14
14
  import { fileURLToPath, pathToFileURL } from 'node:url';
15
15
  import { dirname, join } from 'node:path';
16
+ import { writeFileSync } from 'node:fs';
16
17
 
17
18
  const here = dirname(fileURLToPath(import.meta.url));
18
19
  // Return a file:// URL, not a bare path: Node's ESM dynamic import() rejects
@@ -40,7 +41,8 @@ try {
40
41
  }
41
42
 
42
43
  const { explainQuantity, CATALOG_GRAPH, CANONICAL_GRAPH, M_SUN_KG, composeSymbolic,
43
- be42Edge, be16Edge, lawSchwarzschildRadius, be42ViaRsEdge, format } = api;
44
+ be42Edge, be16Edge, lawSchwarzschildRadius, be42ViaRsEdge, format,
45
+ buildVizModel, renderDotToSvg } = api;
44
46
  const { bridgePriority, attemptDerivation, dimensionalFreedom, dimensionallyDetermines, buckinghamPi, linkageMap, proposeLinkCandidates, proposeOrphanConnectors } = { ...analysis, ...api };
45
47
  const { getFormulaParser, getFormulaParserKind, getFormulaDimensionChecker } = formulaReg;
46
48
  const { parseDimensionSpec } = dimSpecMod;
@@ -95,10 +97,18 @@ Usage:
95
97
  re-derive as a recognized monomial (with the prefactor recovered),
96
98
  which are decoys, which are dimensionally open.
97
99
 
98
- upt map [--source=catalog|canonical|both]
100
+ upt map [--source=catalog|canonical|both] [--format=text|mermaid|dot|svg]
101
+ [--proposed] [--out=PATH]
99
102
  Map how the equations LINK: connected components (clusters) of the
100
103
  graph by shared quantities, the anchored core, the link hubs, and
101
104
  the isolated tail.
105
+ --format=mermaid|dot|svg emits the VISUAL map (quantities = nodes,
106
+ equations = junctions colored by status, one subgraph per component).
107
+ text (default) is the unchanged linkage printout. svg renders the dot
108
+ layout via the optional @viz-js/viz peer (npm i @viz-js/viz; or pipe
109
+ dot through "dot -Tsvg"). --proposed overlays the unadjudicated
110
+ identity-consequence relations (gray dashed). --out writes to a file
111
+ (default stdout).
102
112
 
103
113
  upt candidates [--source=catalog|canonical|both]
104
114
  Propose candidate cross-cluster links (quantities of the same
@@ -361,8 +371,64 @@ async function derive(args) {
361
371
  }
362
372
 
363
373
  // ── map (how the equations link) ──────────────────────────────────────────
364
- function mapCmd(args) {
374
+ // Convert the derived identity-consequence proposals into viz junctions
375
+ // (gray-dashed, status 'proposed'). The library never imports proposed-bridges;
376
+ // the CLI does the conversion, keeping the epistemic firewall intact.
377
+ function proposedJunctions(graph, args) {
378
+ const ranked = rankDiscoveries(graph, parseDiscoveryOpts(args));
379
+ return deriveProposedBridges(ranked).map((p) => ({
380
+ id: p.id,
381
+ label: p.id,
382
+ status: 'proposed',
383
+ sources: (p.governing || []).map((g) => g.name),
384
+ target: p.target.name,
385
+ }));
386
+ }
387
+
388
+ async function mapCmd(args) {
365
389
  const { graph, label } = resolveGraph(args);
390
+
391
+ // --format=mermaid|dot|svg emits the visual map; default (text) is unchanged.
392
+ const a = args || [];
393
+ const fmtFlag = a.find((x) => x.startsWith('--format='));
394
+ const fmt = fmtFlag ? fmtFlag.slice('--format='.length) : 'text';
395
+ if (fmt === 'mermaid' || fmt === 'dot' || fmt === 'svg') {
396
+ const extraJunctions = a.includes('--proposed') ? proposedJunctions(graph, args) : [];
397
+ const model = buildVizModel(graph, {
398
+ title: `UPT physics map — ${label}`,
399
+ extraJunctions,
400
+ });
401
+ // svg is the dot layout rendered by the optional @viz-js/viz peer.
402
+ let src;
403
+ if (fmt === 'svg') {
404
+ try {
405
+ src = await renderDotToSvg(model.toDot());
406
+ } catch (err) {
407
+ console.error(err && err.message ? err.message : String(err));
408
+ process.exit(1);
409
+ }
410
+ } else {
411
+ src = fmt === 'mermaid' ? model.toMermaid() : model.toDot();
412
+ }
413
+ const outFlag = a.find((x) => x.startsWith('--out='));
414
+ if (outFlag) {
415
+ const path = outFlag.slice('--out='.length);
416
+ if (!path) {
417
+ console.error('upt: --out= requires a non-empty PATH');
418
+ process.exit(1);
419
+ }
420
+ writeFileSync(path, src);
421
+ console.error(`upt: wrote ${fmt} (${model.junctions.length} junctions, ${model.clusters.length} clusters) to ${path}`);
422
+ } else {
423
+ process.stdout.write(src);
424
+ }
425
+ return;
426
+ }
427
+ if (fmt !== 'text') {
428
+ console.error(`upt: unknown --format='${fmt}' (expected: text | mermaid | dot | svg)`);
429
+ process.exit(1);
430
+ }
431
+
366
432
  const m = linkageMap(graph);
367
433
  const mix = (s) => Object.entries(s).map(([k, v]) => `${v} ${k}`).join(', ');
368
434
  console.log(`\nLinkage map — how the equations connect via shared quantities [source: ${label}]`);
@@ -662,7 +728,7 @@ switch (cmd) {
662
728
  case 'explain': explain(rest[0], rest.slice(1)); break;
663
729
  case 'priority': case 'prioritize': case 'triage': priority(); break;
664
730
  case 'audit': audit(); break;
665
- case 'map': case 'linkage': mapCmd(rest); break;
731
+ case 'map': case 'linkage': await mapCmd(rest); break;
666
732
  case 'candidates': case 'propose': candidatesCmd(rest); break;
667
733
  case 'predict': case 'predictions': predictCmd(); break;
668
734
  case 'discover': case 'discovery': discoverCmd(rest); break;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * SVG rendering for the physics map — render Graphviz DOT source to an SVG
3
+ * string via the optional **`@viz-js/viz`** peer (the real Graphviz compiled to
4
+ * WebAssembly: same `dot` output, in-process, no native binary, no subprocess).
5
+ *
6
+ * Kept separate from `graph-viz.ts` so that module stays pure, synchronous, and
7
+ * dependency-free (text only). The optional-renderer concern — a lazy dynamic
8
+ * import with graceful fallback, mirroring `numerical/formula-registry.ts`'s
9
+ * MathTS-peer pattern — lives here.
10
+ *
11
+ * @module composition/graph-viz-svg
12
+ */
13
+ /**
14
+ * Thrown by {@link renderDotToSvg} when the optional `@viz-js/viz` peer is not
15
+ * installed. The message names the install command and the no-install
16
+ * alternative.
17
+ *
18
+ * @public
19
+ */
20
+ export declare class SvgRendererUnavailableError extends Error {
21
+ constructor(message?: string);
22
+ }
23
+ /**
24
+ * Render Graphviz DOT source (e.g. {@link buildVizModel}'s `toDot()`) to an SVG
25
+ * document string. Lazy-loads the optional `@viz-js/viz` peer.
26
+ *
27
+ * @throws {SvgRendererUnavailableError} if the peer is not installed.
28
+ * @public
29
+ */
30
+ export declare function renderDotToSvg(dot: string): Promise<string>;
31
+ //# sourceMappingURL=graph-viz-svg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-viz-svg.d.ts","sourceRoot":"","sources":["../../src/composition/graph-viz-svg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;;GAMG;AACH,qBAAa,2BAA4B,SAAQ,KAAK;gBAElD,OAAO,SAC8B;CAKxC;AASD;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASjE"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * SVG rendering for the physics map — render Graphviz DOT source to an SVG
3
+ * string via the optional **`@viz-js/viz`** peer (the real Graphviz compiled to
4
+ * WebAssembly: same `dot` output, in-process, no native binary, no subprocess).
5
+ *
6
+ * Kept separate from `graph-viz.ts` so that module stays pure, synchronous, and
7
+ * dependency-free (text only). The optional-renderer concern — a lazy dynamic
8
+ * import with graceful fallback, mirroring `numerical/formula-registry.ts`'s
9
+ * MathTS-peer pattern — lives here.
10
+ *
11
+ * @module composition/graph-viz-svg
12
+ */
13
+ /**
14
+ * Thrown by {@link renderDotToSvg} when the optional `@viz-js/viz` peer is not
15
+ * installed. The message names the install command and the no-install
16
+ * alternative.
17
+ *
18
+ * @public
19
+ */
20
+ export class SvgRendererUnavailableError extends Error {
21
+ constructor(message = 'SVG rendering needs the optional renderer: npm i @viz-js/viz ' +
22
+ '(or use --format=dot | dot -Tsvg)') {
23
+ super(message);
24
+ this.name = 'SvgRendererUnavailableError';
25
+ }
26
+ }
27
+ /**
28
+ * Render Graphviz DOT source (e.g. {@link buildVizModel}'s `toDot()`) to an SVG
29
+ * document string. Lazy-loads the optional `@viz-js/viz` peer.
30
+ *
31
+ * @throws {SvgRendererUnavailableError} if the peer is not installed.
32
+ * @public
33
+ */
34
+ export async function renderDotToSvg(dot) {
35
+ let viz;
36
+ try {
37
+ viz = (await import('@viz-js/viz'));
38
+ }
39
+ catch {
40
+ throw new SvgRendererUnavailableError();
41
+ }
42
+ const renderer = await viz.instance();
43
+ return renderer.renderString(dot, { format: 'svg' });
44
+ }
45
+ //# sourceMappingURL=graph-viz-svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-viz-svg.js","sourceRoot":"","sources":["../../src/composition/graph-viz-svg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;;GAMG;AACH,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IACpD,YACE,OAAO,GAAG,+DAA+D;QACvE,mCAAmC;QAErC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF;AASD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAW;IAC9C,IAAI,GAAc,CAAC;IACnB,IAAI,CAAC;QACH,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,CAAyB,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,2BAA2B,EAAE,CAAC;IAC1C,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;IACtC,OAAO,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AACvD,CAAC"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Physics-map visualization — turn the composition hypergraph into Mermaid and
3
+ * Graphviz-DOT **source text**.
4
+ *
5
+ * The graph is bipartite in the drawing: round nodes are *quantities*
6
+ * (`mass`, `temperature`, …) and box nodes are *equations* — laws, bridges, or
7
+ * proposed relations — each an n-ary junction (its source quantities point in,
8
+ * its target points out). This makes "equations as junctions" literal and draws
9
+ * n-ary edges faithfully (a single Mermaid/DOT edge can only connect two nodes).
10
+ *
11
+ * The model computes its own connected components over the junctions — so a
12
+ * `--proposed` overlay participates in the clustering — and groups each component
13
+ * into its own subgraph so the genuinely disjointed map stays legible. For the
14
+ * pure-`BridgeEdge` case the component count matches the authoritative
15
+ * {@link linkageMap} (pinned by a drift-guard test).
16
+ *
17
+ * Pure string production: no file I/O (the CLI is the only file-touching layer).
18
+ *
19
+ * @module composition/graph-viz
20
+ */
21
+ import type { BridgeEdge } from './edge.js';
22
+ /**
23
+ * Epistemic status of a junction — drives node colour/shape. Bridges carry
24
+ * their catalog confidence; `law` is a diagonal/established-physics edge;
25
+ * `proposed` is a machine-derived, unadjudicated relation (rendered quarantined).
26
+ *
27
+ * @public
28
+ */
29
+ export type VizStatus = 'law' | 'established' | 'speculative' | 'highly-speculative' | 'proposed';
30
+ /**
31
+ * A normalized equation junction: n source quantities → 1 target. The render
32
+ * model's unit of "equation", decoupled from both `BridgeEdge` and the internal
33
+ * `ProposedBridge` type (the CLI converts each into this shape).
34
+ *
35
+ * @public
36
+ */
37
+ export interface VizJunction {
38
+ /** Graph id, e.g. `'be-42'` or `'IC-…'`. */
39
+ readonly id: string;
40
+ /** Short human label. */
41
+ readonly label: string;
42
+ readonly status: VizStatus;
43
+ /** Source quantity names. */
44
+ readonly sources: readonly string[];
45
+ /** Target quantity name. */
46
+ readonly target: string;
47
+ }
48
+ /**
49
+ * One connected component of the bipartite graph.
50
+ *
51
+ * @public
52
+ */
53
+ export interface VizCluster {
54
+ /** Junction ids in this component. */
55
+ readonly junctionIds: readonly string[];
56
+ /** Distinct (canonical) quantity names touched by this component. */
57
+ readonly quantities: readonly string[];
58
+ /** Number of junctions (the cluster "size", matching `linkageMap`). */
59
+ readonly size: number;
60
+ /** Contains a `law`/`established` junction (anchored to known physics). */
61
+ readonly anchored: boolean;
62
+ }
63
+ /**
64
+ * Options for {@link buildVizModel}.
65
+ *
66
+ * @public
67
+ */
68
+ export interface VizOptions {
69
+ /** Diagram title (used as the graph label). */
70
+ readonly title?: string;
71
+ /** Already-normalized extra junctions to overlay (e.g. proposed relations). */
72
+ readonly extraJunctions?: readonly VizJunction[];
73
+ }
74
+ /**
75
+ * The render model: normalized junctions, their connected components, and the
76
+ * two serializers.
77
+ *
78
+ * @public
79
+ */
80
+ export interface VizModel {
81
+ readonly junctions: readonly VizJunction[];
82
+ readonly clusters: readonly VizCluster[];
83
+ toMermaid(): string;
84
+ toDot(): string;
85
+ }
86
+ /** Map a `BridgeEdge` to a `VizJunction` (raw quantity names).
87
+ *
88
+ * The display label is the compact catalog id (`BE-<n>`) when the edge is
89
+ * catalog-backed, else the edge's own label — a *map* reads better with short
90
+ * junction names; the full formula stays in the catalog. */
91
+ export declare function edgeToJunction(edge: BridgeEdge): VizJunction;
92
+ /**
93
+ * Build the bipartite, clustered render model from a graph (+ optional overlay).
94
+ * Quantity names are canonicalized via `QUANTITY_IDENTIFICATIONS` so the
95
+ * clustering matches the authoritative {@link linkageMap}.
96
+ *
97
+ * @public
98
+ */
99
+ export declare function buildVizModel(edges: readonly BridgeEdge[], opts?: VizOptions): VizModel;
100
+ //# sourceMappingURL=graph-viz.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-viz.d.ts","sourceRoot":"","sources":["../../src/composition/graph-viz.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,GACjB,KAAK,GACL,aAAa,GACb,aAAa,GACb,oBAAoB,GACpB,UAAU,CAAC;AAEf;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,6BAA6B;IAC7B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,4BAA4B;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,sCAAsC;IACtC,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,qEAAqE;IACrE,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CAClD;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,SAAS,UAAU,EAAE,CAAC;IACzC,SAAS,IAAI,MAAM,CAAC;IACpB,KAAK,IAAI,MAAM,CAAC;CACjB;AAaD;;;;4DAI4D;AAC5D,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,CAS5D;AAqND;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,IAAI,GAAE,UAAe,GACpB,QAAQ,CA6BV"}
@@ -0,0 +1,254 @@
1
+ /**
2
+ * Physics-map visualization — turn the composition hypergraph into Mermaid and
3
+ * Graphviz-DOT **source text**.
4
+ *
5
+ * The graph is bipartite in the drawing: round nodes are *quantities*
6
+ * (`mass`, `temperature`, …) and box nodes are *equations* — laws, bridges, or
7
+ * proposed relations — each an n-ary junction (its source quantities point in,
8
+ * its target points out). This makes "equations as junctions" literal and draws
9
+ * n-ary edges faithfully (a single Mermaid/DOT edge can only connect two nodes).
10
+ *
11
+ * The model computes its own connected components over the junctions — so a
12
+ * `--proposed` overlay participates in the clustering — and groups each component
13
+ * into its own subgraph so the genuinely disjointed map stays legible. For the
14
+ * pure-`BridgeEdge` case the component count matches the authoritative
15
+ * {@link linkageMap} (pinned by a drift-guard test).
16
+ *
17
+ * Pure string production: no file I/O (the CLI is the only file-touching layer).
18
+ *
19
+ * @module composition/graph-viz
20
+ */
21
+ import { QUANTITY_IDENTIFICATIONS } from './compose.js';
22
+ /** Fill colour + dashed flag per status. Tweak here to restyle the whole map. */
23
+ const STATUS_STYLE = {
24
+ law: { fill: '#cfe3f7', stroke: '#3a6ea5', dashed: false }, // textbook law — blue
25
+ established: { fill: '#cde7d3', stroke: '#3f8f5b', dashed: false }, // solid bridge — green
26
+ speculative: { fill: '#fdebc8', stroke: '#c9881b', dashed: false }, // amber
27
+ 'highly-speculative': { fill: '#f5c6c6', stroke: '#c0392b', dashed: false }, // red
28
+ proposed: { fill: '#e6e6e6', stroke: '#888888', dashed: true }, // unadjudicated — grey dashed
29
+ };
30
+ /** Map a `BridgeEdge` to a `VizJunction` (raw quantity names).
31
+ *
32
+ * The display label is the compact catalog id (`BE-<n>`) when the edge is
33
+ * catalog-backed, else the edge's own label — a *map* reads better with short
34
+ * junction names; the full formula stays in the catalog. */
35
+ export function edgeToJunction(edge) {
36
+ const status = edge.kind === 'law' ? 'law' : edge.confidence;
37
+ return {
38
+ id: edge.id,
39
+ label: edge.beId != null ? `BE-${edge.beId}` : edge.label,
40
+ status,
41
+ sources: edge.sources.map((s) => s.name),
42
+ target: edge.target.name,
43
+ };
44
+ }
45
+ /** Quantity-name canonicalizer from `QUANTITY_IDENTIFICATIONS` (matches `linkageMap`). */
46
+ function makeCanon() {
47
+ const alias = new Map(QUANTITY_IDENTIFICATIONS.map((id) => [id.from, id.to]));
48
+ return (n) => alias.get(n) ?? n;
49
+ }
50
+ /** Distinct canonical quantity names of a junction (sources ∪ target). */
51
+ function quantitiesOf(j) {
52
+ return [...new Set([...j.sources, j.target])];
53
+ }
54
+ /** Union-find component grouping of junctions sharing a (canonical) quantity. */
55
+ function componentsOf(junctions) {
56
+ const parent = junctions.map((_, i) => i);
57
+ const find = (x) => parent[x] === x ? x : (parent[x] = find(parent[x]));
58
+ const union = (a, b) => {
59
+ parent[find(a)] = find(b);
60
+ };
61
+ const qToJunctions = new Map();
62
+ junctions.forEach((j, i) => {
63
+ for (const qty of quantitiesOf(j)) {
64
+ const arr = qToJunctions.get(qty) ?? [];
65
+ arr.push(i);
66
+ qToJunctions.set(qty, arr);
67
+ }
68
+ });
69
+ for (const idxs of qToJunctions.values()) {
70
+ for (let k = 1; k < idxs.length; k++)
71
+ union(idxs[0], idxs[k]);
72
+ }
73
+ const groups = new Map();
74
+ junctions.forEach((_, i) => {
75
+ const r = find(i);
76
+ const arr = groups.get(r) ?? [];
77
+ arr.push(i);
78
+ groups.set(r, arr);
79
+ });
80
+ const clusters = [...groups.values()].map((idxs) => {
81
+ const js = idxs.map((i) => junctions[i]);
82
+ const quantities = [...new Set(js.flatMap(quantitiesOf))].sort();
83
+ return {
84
+ junctionIds: js.map((j) => j.id),
85
+ quantities,
86
+ size: js.length,
87
+ anchored: js.some((j) => j.status === 'law' || j.status === 'established'),
88
+ };
89
+ });
90
+ // Deterministic: largest first, then by first junction id.
91
+ clusters.sort((a, b) => b.size - a.size || a.junctionIds[0].localeCompare(b.junctionIds[0]));
92
+ return clusters;
93
+ }
94
+ /** A stable, collision-free id factory mapping arbitrary keys to safe ids. */
95
+ function idFactory(prefix) {
96
+ const seen = new Map();
97
+ const used = new Set();
98
+ return (key) => {
99
+ const cached = seen.get(key);
100
+ if (cached)
101
+ return cached;
102
+ const base = `${prefix}_${key.replace(/[^A-Za-z0-9]/g, '_')}`;
103
+ let id = base;
104
+ let n = 1;
105
+ while (used.has(id))
106
+ id = `${base}_${n++}`;
107
+ used.add(id);
108
+ seen.set(key, id);
109
+ return id;
110
+ };
111
+ }
112
+ /** Escape a label for Mermaid `["…"]` — XML-entity-encode the characters that
113
+ * break the quoted form or are read as entities (`&`, `"`, `<`, `>`). */
114
+ const mmLabel = (s) => s
115
+ .replace(/&/g, '&amp;')
116
+ .replace(/"/g, '&quot;')
117
+ .replace(/</g, '&lt;')
118
+ .replace(/>/g, '&gt;');
119
+ /** Escape a label for a DOT double-quoted string. */
120
+ const dotLabel = (s) => s.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
121
+ const STATUSES_IN_ORDER = [
122
+ 'law',
123
+ 'established',
124
+ 'speculative',
125
+ 'highly-speculative',
126
+ 'proposed',
127
+ ];
128
+ /**
129
+ * Drive a format-specific cluster renderer over the standard layout, identical
130
+ * for both emitters: multi-junction components first (each its own subgraph,
131
+ * keyed `0`,`1`,…, labelled `anchored cluster (n)` / `cluster (n)`), then a
132
+ * single `iso` subgraph collecting all singletons. The callback owns all
133
+ * per-format string production; this owns only the traversal and labelling.
134
+ */
135
+ function forEachClusterGroup(clusters, renderCluster) {
136
+ const multi = clusters.filter((c) => c.size > 1);
137
+ const singletons = clusters.filter((c) => c.size === 1);
138
+ multi.forEach((c, i) => renderCluster(`${c.anchored ? 'anchored ' : ''}cluster (${c.size})`, c.junctionIds, String(i)));
139
+ if (singletons.length) {
140
+ renderCluster(`isolated (${singletons.length})`, singletons.flatMap((c) => c.junctionIds), 'iso');
141
+ }
142
+ }
143
+ function emitMermaid(clusters, byId, title) {
144
+ const qid = idFactory('q');
145
+ const jid = idFactory('j');
146
+ const usedStatuses = new Set();
147
+ const out = [`flowchart LR`, `%% ${title}`];
148
+ const renderCluster = (label, junctionIds, key) => {
149
+ out.push(` subgraph cl_${key}["${mmLabel(label)}"]`);
150
+ out.push(` direction LR`);
151
+ const declared = new Set();
152
+ const declareQ = (name) => {
153
+ const id = qid(name);
154
+ if (!declared.has(id)) {
155
+ out.push(` ${id}(["${mmLabel(name)}"]):::qty`);
156
+ declared.add(id);
157
+ }
158
+ return id;
159
+ };
160
+ for (const id of junctionIds) {
161
+ const j = byId.get(id);
162
+ usedStatuses.add(j.status);
163
+ const jId = jid(j.id);
164
+ out.push(` ${jId}["${mmLabel(j.label)}"]:::${j.status}`);
165
+ for (const s of j.sources)
166
+ out.push(` ${declareQ(s)} --> ${jId}`);
167
+ out.push(` ${jId} --> ${declareQ(j.target)}`);
168
+ }
169
+ out.push(` end`);
170
+ };
171
+ forEachClusterGroup(clusters, renderCluster);
172
+ for (const st of STATUSES_IN_ORDER) {
173
+ if (!usedStatuses.has(st))
174
+ continue;
175
+ const { fill, stroke, dashed } = STATUS_STYLE[st];
176
+ out.push(` classDef ${st} fill:${fill},stroke:${stroke}${dashed ? ',stroke-dasharray:4 3' : ''}`);
177
+ }
178
+ out.push(` classDef qty fill:#ffffff,stroke:#999999`);
179
+ return out.join('\n') + '\n';
180
+ }
181
+ function emitDot(clusters, byId, title) {
182
+ const qid = idFactory('q');
183
+ const jid = idFactory('j');
184
+ const out = [
185
+ `digraph PhysicsMap {`,
186
+ ` label="${dotLabel(title)}";`,
187
+ ` rankdir=LR;`,
188
+ ` node [fontname="Helvetica"];`,
189
+ ];
190
+ const renderCluster = (label, junctionIds, key) => {
191
+ out.push(` subgraph cluster_${key} {`);
192
+ out.push(` label="${dotLabel(label)}";`);
193
+ const declared = new Set();
194
+ const declareQ = (name) => {
195
+ const id = qid(name);
196
+ if (!declared.has(id)) {
197
+ out.push(` ${id} [shape=ellipse,label="${dotLabel(name)}"];`);
198
+ declared.add(id);
199
+ }
200
+ return id;
201
+ };
202
+ for (const id of junctionIds) {
203
+ const j = byId.get(id);
204
+ const jId = jid(j.id);
205
+ const { fill, stroke, dashed } = STATUS_STYLE[j.status];
206
+ const style = dashed ? 'filled,dashed' : 'filled';
207
+ out.push(` ${jId} [shape=box,style="${style}",fillcolor="${fill}",color="${stroke}",label="${dotLabel(j.label)}"];`);
208
+ for (const s of j.sources)
209
+ out.push(` ${declareQ(s)} -> ${jId};`);
210
+ out.push(` ${jId} -> ${declareQ(j.target)};`);
211
+ }
212
+ out.push(` }`);
213
+ };
214
+ forEachClusterGroup(clusters, renderCluster);
215
+ out.push(`}`);
216
+ return out.join('\n') + '\n';
217
+ }
218
+ /**
219
+ * Build the bipartite, clustered render model from a graph (+ optional overlay).
220
+ * Quantity names are canonicalized via `QUANTITY_IDENTIFICATIONS` so the
221
+ * clustering matches the authoritative {@link linkageMap}.
222
+ *
223
+ * @public
224
+ */
225
+ export function buildVizModel(edges, opts = {}) {
226
+ const canon = makeCanon();
227
+ const normalize = (j) => ({
228
+ ...j,
229
+ sources: j.sources.map(canon),
230
+ target: canon(j.target),
231
+ });
232
+ const junctions = [
233
+ ...edges.map((e) => normalize(edgeToJunction(e))),
234
+ ...(opts.extraJunctions ?? []).map(normalize),
235
+ ];
236
+ // A duplicate junction id (e.g. a proposed overlay colliding with an edge id)
237
+ // would silently drop one from the rendered output — make it a loud error.
238
+ const byId = new Map();
239
+ for (const j of junctions) {
240
+ if (byId.has(j.id)) {
241
+ throw new Error(`buildVizModel: duplicate junction id '${j.id}'`);
242
+ }
243
+ byId.set(j.id, j);
244
+ }
245
+ const clusters = componentsOf(junctions);
246
+ const title = opts.title ?? 'UPT physics map';
247
+ return {
248
+ junctions,
249
+ clusters,
250
+ toMermaid: () => emitMermaid(clusters, byId, title),
251
+ toDot: () => emitDot(clusters, byId, title),
252
+ };
253
+ }
254
+ //# sourceMappingURL=graph-viz.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-viz.js","sourceRoot":"","sources":["../../src/composition/graph-viz.ts"],"names":[],"mappings":"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"}
@@ -35,4 +35,7 @@ export { explainQuantity } from './explain.js';
35
35
  export type { Observable, ComposeSymbolicOptions } from './compose-symbolic.js';
36
36
  export { composeSymbolic, SymbolicCompositionError } from './compose-symbolic.js';
37
37
  export { SymbolicEvalError } from './expr-eval.js';
38
+ export type { VizStatus, VizJunction, VizCluster, VizOptions, VizModel, } from './graph-viz.js';
39
+ export { buildVizModel, edgeToJunction } from './graph-viz.js';
40
+ export { renderDotToSvg, SvgRendererUnavailableError } from './graph-viz-svg.js';
38
41
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,GACb,MAAM,WAAW,CAAC;AAEnB,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,YAAY,EACZ,aAAa,EACb,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,sBAAsB,EACtB,QAAQ,GACT,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,cAAc,GACf,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE7D,YAAY,EACV,qBAAqB,EACrB,cAAc,EACd,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"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"}
@@ -25,4 +25,6 @@ export { retrodict, retrodictNode } from './retrodiction.js';
25
25
  export { explainQuantity } from './explain.js';
26
26
  export { composeSymbolic, SymbolicCompositionError } from './compose-symbolic.js';
27
27
  export { SymbolicEvalError } from './expr-eval.js';
28
+ export { buildVizModel, edgeToJunction } from './graph-viz.js';
29
+ export { renderDotToSvg, SvgRendererUnavailableError } from './graph-viz-svg.js';
28
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,GACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,YAAY,EACZ,aAAa,EACb,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,sBAAsB,EACtB,QAAQ,GACT,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAOxD,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,cAAc,GACf,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAO7D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composition/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,GACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,YAAY,EACZ,aAAa,EACb,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,sBAAsB,EACtB,QAAQ,GACT,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAOxD,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,cAAc,GACf,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAO7D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AASnD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -86,6 +86,9 @@ export { explainQuantity } from './composition/index.js';
86
86
  export type { DerivationExplanation, ExplainOptions, QuantityExplanation, } from './composition/index.js';
87
87
  export { composeSymbolic, SymbolicCompositionError, SymbolicEvalError } from './composition/index.js';
88
88
  export type { Observable, ComposeSymbolicOptions } from './composition/index.js';
89
+ export { buildVizModel, edgeToJunction } from './composition/index.js';
90
+ export type { VizStatus, VizJunction, VizCluster, VizOptions, VizModel, } from './composition/index.js';
91
+ export { renderDotToSvg, SvgRendererUnavailableError } from './composition/index.js';
89
92
  export { confrontBE36WithUncertainty } from './bridges/be36-gw170817-confrontation.js';
90
93
  export type { BE36ConfrontationWithUncertainty } from './bridges/be36-gw170817-confrontation.js';
91
94
  export { buckinghamPi, dimensionallyDetermines, RationalizationError, } from './dimensional/buckingham.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -145,6 +145,12 @@ export { explainQuantity } from './composition/index.js';
145
145
  // bridges' symbolic ExprNode forms (not just numeric closures), dimensionally
146
146
  // validated and numerically evaluable.
147
147
  export { composeSymbolic, SymbolicCompositionError, SymbolicEvalError } from './composition/index.js';
148
+ // Physics-map visualization — render the bipartite, clustered hypergraph
149
+ // (quantities = nodes, equations = junctions) as Mermaid / Graphviz-DOT source.
150
+ export { buildVizModel, edgeToJunction } from './composition/index.js';
151
+ // SVG rendering via the optional @viz-js/viz peer (separate module so the
152
+ // graph-viz model stays pure/synchronous/dependency-free).
153
+ export { renderDotToSvg, SvgRendererUnavailableError } from './composition/index.js';
148
154
  export { confrontBE36WithUncertainty } from './bridges/be36-gw170817-confrontation.js';
149
155
  // Buckingham-π enumerator (the principled primitive for the exactly-
150
156
  // determined case — build target 1 of the bridge-inference epistemics
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "universal-physics-tensor",
3
- "version": "0.24.0",
3
+ "version": "0.25.0",
4
4
  "description": "Computational framework for exploring unified physics through tensor formalism",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -64,7 +64,7 @@
64
64
  },
65
65
  "repository": {
66
66
  "type": "git",
67
- "url": "https://github.com/danielsimonjr/universal-physics-tensor.git"
67
+ "url": "git+https://github.com/danielsimonjr/universal-physics-tensor.git"
68
68
  },
69
69
  "bugs": {
70
70
  "url": "https://github.com/danielsimonjr/universal-physics-tensor/issues"
@@ -86,6 +86,7 @@
86
86
  "@danielsimonjr/mathts-parallel": "^0.2.1",
87
87
  "@danielsimonjr/mathts-tensor": "^0.1.1",
88
88
  "@danielsimonjr/mathts-wasm": "^0.1.3",
89
- "@danielsimonjr/mathts-workerpool": "^0.2.0"
89
+ "@danielsimonjr/mathts-workerpool": "^0.2.0",
90
+ "@viz-js/viz": "^3.28.0"
90
91
  }
91
92
  }