universal-physics-tensor 0.46.0 → 0.47.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/README.md +61 -43
  2. package/dist/atlas/diffusion/bridges-closure.d.ts.map +1 -1
  3. package/dist/atlas/diffusion/bridges-closure.js +34 -8
  4. package/dist/atlas/diffusion/bridges-closure.js.map +1 -1
  5. package/dist/atlas/oscillators/bridges-exact.d.ts.map +1 -1
  6. package/dist/atlas/oscillators/bridges-exact.js +6 -3
  7. package/dist/atlas/oscillators/bridges-exact.js.map +1 -1
  8. package/dist/atlas/oscillators/bridges-limits.d.ts.map +1 -1
  9. package/dist/atlas/oscillators/bridges-limits.js +13 -1
  10. package/dist/atlas/oscillators/bridges-limits.js.map +1 -1
  11. package/dist/atlas/types.d.ts +18 -1
  12. package/dist/atlas/types.d.ts.map +1 -1
  13. package/dist/atlas/types.js.map +1 -1
  14. package/dist/atlas/waves/bridges-closure.d.ts.map +1 -1
  15. package/dist/atlas/waves/bridges-closure.js +7 -4
  16. package/dist/atlas/waves/bridges-closure.js.map +1 -1
  17. package/dist/atlas/waves/bridges.d.ts.map +1 -1
  18. package/dist/atlas/waves/bridges.js +2 -1
  19. package/dist/atlas/waves/bridges.js.map +1 -1
  20. package/dist/bridges/be51-lensing-confrontation.d.ts.map +1 -1
  21. package/dist/bridges/be51-lensing-confrontation.js +5 -3
  22. package/dist/bridges/be51-lensing-confrontation.js.map +1 -1
  23. package/dist/bridges/be52-mercury-confrontation.d.ts.map +1 -1
  24. package/dist/bridges/be52-mercury-confrontation.js +4 -1
  25. package/dist/bridges/be52-mercury-confrontation.js.map +1 -1
  26. package/dist/bridges/bridge-equations.d.ts +1 -2
  27. package/dist/bridges/bridge-equations.d.ts.map +1 -1
  28. package/dist/bridges/bridge-equations.js +1 -2
  29. package/dist/bridges/bridge-equations.js.map +1 -1
  30. package/dist/bridges/confrontations.d.ts.map +1 -1
  31. package/dist/bridges/confrontations.js +7 -0
  32. package/dist/bridges/confrontations.js.map +1 -1
  33. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +2 -45
  34. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -1
  35. package/dist/bridges/equations/be-35-conformal-bootstrap.js +2 -74
  36. package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -1
  37. package/dist/bridges/index.js +1 -1
  38. package/dist/bridges/index.js.map +1 -1
  39. package/dist/bridges/observations/types.d.ts +14 -0
  40. package/dist/bridges/observations/types.d.ts.map +1 -1
  41. package/dist/bridges/observations/types.js.map +1 -1
  42. package/dist/cli/commands/confront.d.ts.map +1 -1
  43. package/dist/cli/commands/confront.js +8 -1
  44. package/dist/cli/commands/confront.js.map +1 -1
  45. package/dist/cli/commands/derive.d.ts.map +1 -1
  46. package/dist/cli/commands/derive.js +40 -9
  47. package/dist/cli/commands/derive.js.map +1 -1
  48. package/dist/cli/commands/discover.d.ts.map +1 -1
  49. package/dist/cli/commands/discover.js +46 -27
  50. package/dist/cli/commands/discover.js.map +1 -1
  51. package/dist/cli/commands/evaluate.d.ts.map +1 -1
  52. package/dist/cli/commands/evaluate.js +2 -1
  53. package/dist/cli/commands/evaluate.js.map +1 -1
  54. package/dist/cli/commands/explain.d.ts.map +1 -1
  55. package/dist/cli/commands/explain.js +19 -6
  56. package/dist/cli/commands/explain.js.map +1 -1
  57. package/dist/cli/commands/map.d.ts.map +1 -1
  58. package/dist/cli/commands/map.js +46 -20
  59. package/dist/cli/commands/map.js.map +1 -1
  60. package/dist/cli/commands/path.d.ts.map +1 -1
  61. package/dist/cli/commands/path.js +90 -7
  62. package/dist/cli/commands/path.js.map +1 -1
  63. package/dist/cli/commands/probe.d.ts.map +1 -1
  64. package/dist/cli/commands/probe.js +59 -2
  65. package/dist/cli/commands/probe.js.map +1 -1
  66. package/dist/cli/commands/regime.d.ts +27 -0
  67. package/dist/cli/commands/regime.d.ts.map +1 -1
  68. package/dist/cli/commands/regime.js +57 -3
  69. package/dist/cli/commands/regime.js.map +1 -1
  70. package/dist/cli/errors.d.ts +13 -1
  71. package/dist/cli/errors.d.ts.map +1 -1
  72. package/dist/cli/errors.js +13 -1
  73. package/dist/cli/errors.js.map +1 -1
  74. package/dist/cli/main.d.ts.map +1 -1
  75. package/dist/cli/main.js +10 -5
  76. package/dist/cli/main.js.map +1 -1
  77. package/dist/cli-api.d.ts +5 -1
  78. package/dist/cli-api.d.ts.map +1 -1
  79. package/dist/cli-api.js +5 -1
  80. package/dist/cli-api.js.map +1 -1
  81. package/dist/composition/canonical-compare.d.ts +77 -0
  82. package/dist/composition/canonical-compare.d.ts.map +1 -0
  83. package/dist/composition/canonical-compare.js +309 -0
  84. package/dist/composition/canonical-compare.js.map +1 -0
  85. package/dist/composition/canonical-prefactors.d.ts +32 -0
  86. package/dist/composition/canonical-prefactors.d.ts.map +1 -0
  87. package/dist/composition/canonical-prefactors.js +80 -0
  88. package/dist/composition/canonical-prefactors.js.map +1 -0
  89. package/dist/composition/discovery.d.ts +20 -3
  90. package/dist/composition/discovery.d.ts.map +1 -1
  91. package/dist/composition/discovery.js +30 -4
  92. package/dist/composition/discovery.js.map +1 -1
  93. package/dist/composition/explain.d.ts +9 -1
  94. package/dist/composition/explain.d.ts.map +1 -1
  95. package/dist/composition/explain.js +34 -8
  96. package/dist/composition/explain.js.map +1 -1
  97. package/dist/composition/grounding.d.ts.map +1 -1
  98. package/dist/composition/grounding.js +6 -1
  99. package/dist/composition/grounding.js.map +1 -1
  100. package/dist/composition/probe/corpus.d.ts +12 -0
  101. package/dist/composition/probe/corpus.d.ts.map +1 -1
  102. package/dist/composition/probe/corpus.js +100 -0
  103. package/dist/composition/probe/corpus.js.map +1 -1
  104. package/dist/composition/probe/generator.d.ts +14 -0
  105. package/dist/composition/probe/generator.d.ts.map +1 -1
  106. package/dist/composition/probe/generator.js +24 -2
  107. package/dist/composition/probe/generator.js.map +1 -1
  108. package/dist/composition/probe/pipeline.d.ts +5 -0
  109. package/dist/composition/probe/pipeline.d.ts.map +1 -1
  110. package/dist/composition/probe/pipeline.js +20 -3
  111. package/dist/composition/probe/pipeline.js.map +1 -1
  112. package/dist/composition/probe/report.d.ts.map +1 -1
  113. package/dist/composition/probe/report.js +2 -0
  114. package/dist/composition/probe/report.js.map +1 -1
  115. package/dist/composition/user-equation.d.ts +8 -6
  116. package/dist/composition/user-equation.d.ts.map +1 -1
  117. package/dist/composition/user-equation.js +44 -29
  118. package/dist/composition/user-equation.js.map +1 -1
  119. package/dist/core/constants.d.ts +13 -0
  120. package/dist/core/constants.d.ts.map +1 -1
  121. package/dist/core/constants.js +13 -0
  122. package/dist/core/constants.js.map +1 -1
  123. package/dist/diff/bridge-gradient.d.ts +1 -1
  124. package/dist/diff/bridge-gradient.js +1 -1
  125. package/package.json +45 -3
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/evaluate.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAiF/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
1
+ {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/evaluate.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAkF/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
@@ -5,7 +5,8 @@ import { CliError } from '../errors.js';
5
5
  const FLAGS = [{ name: '--json', valueStyle: 'none' }];
6
6
  const HELP = `upt evaluate <be-NN> key=value ...
7
7
  Numerically evaluate a closed-form / spacetime bridge (BE-51/52/55..65).
8
- e.g. upt evaluate be-63 mu_e=2 → Chandrasekhar mass ≈ 1.44 M_⊙
8
+ e.g. upt evaluate be-63 mu_e=2 → Chandrasekhar mass ≈ 1.456 M_⊙
9
+ (ideal degenerate gas, with m_u and M_⊙ = 1.989e30 kg)
9
10
  upt evaluate be-55 C=1 → quantum Hall R_H = von Klitzing constant
10
11
  With no bridge id, lists the evaluable bridges and their input keys.`;
11
12
  function parseInputs(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../../src/cli/commands/evaluate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../../src/cli/commands/evaluate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/explain.ts"],"names":[],"mappings":"AAeA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAkI/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
1
+ {"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/explain.ts"],"names":[],"mappings":"AAeA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAiJ/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
@@ -1,15 +1,16 @@
1
1
  import { registerCommand } from '../command.js';
2
2
  import { resolveGraph } from '../graphs.js';
3
3
  import { emitJson } from '../output.js';
4
- import { UsageError } from '../errors.js';
4
+ import { UsageError, CliError } from '../errors.js';
5
5
  const FLAGS = [
6
6
  { name: '--source', valueStyle: 'attached' },
7
7
  { name: '--json', valueStyle: 'none' },
8
8
  ];
9
- const HELP = `upt explain <quantity> [name=value | name] ...
10
- Explain how the graph determines a quantity: the identifiability
11
- verdict, recovered value, derivation chains, and whether the inputs
12
- are dimensionally sufficient.
9
+ const HELP = `upt explain <quantity> [name=value | name] ...
10
+ Explain how the graph determines a quantity: the identifiability
11
+ verdict, recovered value, derivation chains, and whether the inputs
12
+ are dimensionally sufficient. A name that is not a quantity of the
13
+ graph is reported NOT COVERED, with near names, and exits 1.
13
14
  e.g. upt explain hawking-temperature mass=1.989e30`;
14
15
  /**
15
16
  * Two modes, never mixed: bare names (structural analysis) OR name=value
@@ -89,8 +90,20 @@ async function run(ctx) {
89
90
  return 0;
90
91
  }
91
92
  const { graph, source } = resolveGraph(api, args.flags);
93
+ // A name that is not a quantity of this graph is NOT COVERED (persona finding
94
+ // C4). It used to get the same "no derivation path" answer as a real quantity
95
+ // the inputs cannot reach, and exit 0. Underscores resolve like hyphens.
96
+ const names = new Set(graph.flatMap((e) => [e.target.name, ...e.sources.map((s) => s.name)]));
97
+ const resolvedTarget = api.resolveToCatalogName(target, names);
98
+ if (resolvedTarget === null) {
99
+ const near = api.suggestQuantities(target, names, 5);
100
+ throw new CliError(`upt explain: '${target}' is not a quantity in the ${source} graph: NOT COVERED.` +
101
+ (near.length > 0
102
+ ? ` did you mean: ${near.join(', ')}?`
103
+ : ' `upt canonical` and `upt map` list the vocabulary.'));
104
+ }
92
105
  const known = parseKnown(rest);
93
- const x = api.explainQuantity(graph, target, known);
106
+ const x = api.explainQuantity(graph, resolvedTarget, known);
94
107
  if (args.flags.has('json')) {
95
108
  emitJson({ command: 'explain', source, result: x }, ctx.write);
96
109
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"explain.js","sourceRoot":"","sources":["../../../src/cli/commands/explain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"explain.js","sourceRoot":"","sources":["../../../src/cli/commands/explain.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/map.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AA+Y/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/map.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AA6a/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
@@ -16,7 +16,7 @@ import { writeFileSync } from 'node:fs';
16
16
  import { registerCommand } from '../command.js';
17
17
  import { resolveGraph } from '../graphs.js';
18
18
  import { emitJson } from '../output.js';
19
- import { UsageError, CliError } from '../errors.js';
19
+ import { UsageError, CliError, EXIT_CHECK_FAILED } from '../errors.js';
20
20
  import { parseDiscoveryOpts } from './_discovery-opts.js';
21
21
  const FLAGS = [
22
22
  { name: '--source', valueStyle: 'attached' },
@@ -131,21 +131,35 @@ async function analyzeEquation(api, equation, graph) {
131
131
  for (const q of [...e.sources, e.target])
132
132
  catalogDims.set(q.name, q.dim);
133
133
  }
134
- return api.analyzeUserEquation(equation, catalogDims);
134
+ const user = await api.analyzeUserEquation(equation, catalogDims);
135
+ // Dimensions cannot see a prefactor: compare with the canonical equation the
136
+ // user's one restates, when the registry holds one (persona finding L2).
137
+ const comparisons = user.parseError ? [] : await api.compareUserEquation(equation, catalogDims);
138
+ return { user, comparisons };
135
139
  }
136
140
  // Print the dimensional verdict, where the equation landed, and any hints.
137
141
  // `out` is ctx.out (text mode → stdout) or ctx.err (visual → stderr).
138
- function printEquationReport(api, model, user, out) {
142
+ function printEquationReport(api, model, user, out, comparisons = []) {
139
143
  out('');
140
144
  if (user.consistent === true) {
141
145
  out(` ✓ dimensionally consistent: ${api.format(user.rhsDimension)}`);
142
146
  }
147
+ else if (user.consistent === false && (user.hints ?? []).length > 0) {
148
+ // An unknown name is checked as a dimensionless placeholder, so this mismatch is not a real
149
+ // check and does not fail the command (exit 0). Say so on the line itself (persona finding N3).
150
+ const names = user.hints.map((h) => `'${h.name}'`).join(', ');
151
+ out(` · UNKNOWN: RHS is ${api.format(user.rhsDimension)} but the target is ${api.format(user.targetDimension)}; ` +
152
+ `the mismatch involves the unresolved placeholder${user.hints.length > 1 ? 's' : ''} ${names} ` +
153
+ `(taken as dimensionless), so it is not a failed check`);
154
+ }
143
155
  else if (user.consistent === false) {
144
156
  out(` ⚠ dimensional MISMATCH: RHS is ${api.format(user.rhsDimension)} but the target is ${api.format(user.targetDimension)}`);
145
157
  }
146
158
  else if (user.rhsDimension) {
147
159
  out(` · RHS dimension: ${api.format(user.rhsDimension)} (target not in the catalog, so no comparison)`);
148
160
  }
161
+ for (const line of api.describeComparisons(comparisons))
162
+ out(` ${line}`);
149
163
  const L = api.equationLanding(model, 'user-equation');
150
164
  if (L.isolated) {
151
165
  out(' ⚠ your equation is ISOLATED — it shares no quantity with this graph.');
@@ -214,6 +228,7 @@ async function run(ctx) {
214
228
  }
215
229
  // --equation injects a user-supplied "TARGET = EXPR" as a 'user' junction.
216
230
  let user = null;
231
+ let comparisons = [];
217
232
  const equationValues = args.flags.get('equation');
218
233
  const equation = equationValues && equationValues.length > 0 ? equationValues[equationValues.length - 1] : null;
219
234
  if (equation != null) {
@@ -221,7 +236,7 @@ async function run(ctx) {
221
236
  throw new UsageError('upt: --equation requires "TARGET = EXPR"');
222
237
  }
223
238
  try {
224
- user = await analyzeEquation(api, equation, graph); // throws UserEquationError on malformed structure
239
+ ({ user, comparisons } = await analyzeEquation(api, equation, graph)); // throws UserEquationError on malformed structure
225
240
  }
226
241
  catch (e) {
227
242
  throw new UsageError('upt: ' + (e && e.message ? e.message : String(e)));
@@ -230,6 +245,15 @@ async function run(ctx) {
230
245
  throw new UsageError('upt: ' + user.parseError); // dimensionally malformed RHS
231
246
  }
232
247
  }
248
+ // A user equation whose dimension mismatches, or that differs from its
249
+ // canonical equation, is a failed check: exit 3 (persona finding F2). A
250
+ // mismatch counts only when every name resolved: an unknown name is checked
251
+ // as a dimensionless placeholder, so its "mismatch" is not a real check.
252
+ const exitCode = user !== null &&
253
+ ((user.consistent === false && (user.hints ?? []).length === 0) ||
254
+ comparisons.some((c) => c.kind === 'factor' || c.kind === 'form'))
255
+ ? EXIT_CHECK_FAILED
256
+ : 0;
233
257
  const overlay = (extra) => [
234
258
  // Ranked from the UNFILTERED graph: the proposal set is a property of the
235
259
  // whole catalog, and the model then judges each overlay junction under the
@@ -258,6 +282,7 @@ async function run(ctx) {
258
282
  rhsDimension: user.rhsDimension,
259
283
  targetDimension: user.targetDimension,
260
284
  hints: user.hints,
285
+ canonicalComparisons: comparisons,
261
286
  };
262
287
  }
263
288
  emitJson({
@@ -270,7 +295,7 @@ async function run(ctx) {
270
295
  ...(user ? { landing, userEquation } : {}),
271
296
  },
272
297
  }, write);
273
- return 0;
298
+ return exitCode;
274
299
  }
275
300
  if (fmt === 'mermaid' || fmt === 'dot' || fmt === 'svg') {
276
301
  const extraJunctions = overlay(user ? [user.junction] : []);
@@ -316,8 +341,8 @@ async function run(ctx) {
316
341
  if (model.filterLegend !== null)
317
342
  err(`upt: ${model.filterLegend}`);
318
343
  if (user)
319
- printEquationReport(api, model, user, err);
320
- return 0;
344
+ printEquationReport(api, model, user, err, comparisons);
345
+ return exitCode;
321
346
  }
322
347
  if (fmt !== 'text') {
323
348
  throw new CliError(`upt: unknown --format='${fmt}' (expected: text | mermaid | dot | svg)`);
@@ -342,9 +367,20 @@ Poster index — statements and the derivations between them [source: ${label}]
342
367
  if (user) {
343
368
  out(`
344
369
  Your equation: ${user.junction.label}`);
345
- printEquationReport(api, model, user, out);
370
+ printEquationReport(api, model, user, out, comparisons);
346
371
  }
347
- return 0;
372
+ return exitCode;
373
+ }
374
+ // --equation: the verdict on the user's equation is the answer asked for, so it
375
+ // comes BEFORE the linkage map, not after ~45 lines of it (persona finding N4).
376
+ if (user) {
377
+ const model = api.buildVizModel(fullGraph, {
378
+ title: `UPT physics map — ${label}`,
379
+ extraJunctions: overlay([user.junction]),
380
+ ...filterOpts,
381
+ });
382
+ out(`\nYour equation: ${user.junction.label}`);
383
+ printEquationReport(api, model, user, out, comparisons);
348
384
  }
349
385
  const m = api.linkageMap(graph);
350
386
  const mix = (s) => Object.entries(s)
@@ -363,17 +399,7 @@ Your equation: ${user.junction.label}`);
363
399
  out(` ○ isolated (${m.isolated.length}) — share no quantity with any other edge:`);
364
400
  out(` ${m.isolated.join(', ')}`);
365
401
  out('\n (a structural map — shared-quantity connectivity, NOT a credibility signal)');
366
- // --equation: where does the user's equation land in this graph?
367
- if (user) {
368
- const model = api.buildVizModel(fullGraph, {
369
- title: `UPT physics map — ${label}`,
370
- extraJunctions: overlay([user.junction]),
371
- ...filterOpts,
372
- });
373
- out(`\nYour equation: ${user.junction.label}`);
374
- printEquationReport(api, model, user, out);
375
- }
376
- return 0;
402
+ return exitCode;
377
403
  }
378
404
  export const command = {
379
405
  name: 'map',
@@ -1 +1 @@
1
- {"version":3,"file":"map.js","sourceRoot":"","sources":["../../../src/cli/commands/map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../../src/cli/commands/map.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/path.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AA2K/E,eAAO,MAAM,OAAO,EAAE,OAAsE,CAAC"}
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/path.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAiQ/E,eAAO,MAAM,OAAO,EAAE,OAAsE,CAAC"}
@@ -1,16 +1,17 @@
1
1
  import { registerCommand } from '../command.js';
2
- import { CliError } from '../errors.js';
2
+ import { CliError, EXIT_CHECK_FAILED } from '../errors.js';
3
3
  import { emitJson } from '../output.js';
4
- import { parseAt } from './regime.js';
4
+ import { parseAt, resolveAtPoint, showInequality } from './regime.js';
5
5
  const FLAGS = [
6
6
  { name: '--at', valueStyle: 'either', repeatable: true },
7
7
  { name: '--json', valueStyle: 'none' },
8
8
  ];
9
9
  const HELP = `upt path <from> <to> [--at group=value ...] [--json]
10
10
  The chain of bridges from one model to another, the relation the chain
11
- composes to, the composed (K, delta) with the norm it holds in, and
12
- whether every horizon on the path still holds at --at (pass t=<time>
13
- plus the horizon's parameters, e.g. --at theta0=0.2 T0=1 t=10).
11
+ composes to, the composed (K, delta) with the norm it holds in,
12
+ whether every bridge's REGIME holds at --at (the bound is claimed only
13
+ inside it), and whether every horizon still holds (pass t=<time> plus
14
+ the parameters, e.g. --at theta0=0.2 T0=1 t=10).
14
15
  When the composition table declines to compose the relations, the path
15
16
  carries NO bound: the command prints 'no composite claim' and exits 0.
16
17
  That refusal is the answer, and no number is invented in its place.
@@ -80,6 +81,59 @@ async function run(ctx) {
80
81
  holds: t === undefined ? null : b.bound.horizonHolds(t, point),
81
82
  }));
82
83
  const allHold = horizons.every((h) => h.holds === true);
84
+ // The same --at resolution as `upt regime`: group spellings, and groups derived
85
+ // from their parameters. Unknown keys are not reported here, because horizon
86
+ // parameters such as T0 and t are legitimate --at keys on a path.
87
+ const { values: resolved } = resolveAtPoint(point, bridges.map((b) => b.regime));
88
+ const regimes = bridges.map((b) => {
89
+ const check = api.regimeHolds(b.regime, resolved);
90
+ return {
91
+ bridgeId: b.id,
92
+ ok: check.ok,
93
+ violated: check.violated.map(showInequality),
94
+ unchecked: check.unchecked.map(showInequality),
95
+ };
96
+ });
97
+ const allRegimesHold = regimes.some((r) => r.ok === false)
98
+ ? false
99
+ : regimes.some((r) => r.ok === 'unknown')
100
+ ? 'unknown'
101
+ : true;
102
+ // The bound AT the --at point (persona finding L9). Printed only when it is
103
+ // PROVEN: every regime holds, every step has a closed-form deltaAt (the exact
104
+ // error), and every value is finite. It is composed by the same rule as the
105
+ // domain supremum, by substituting each step's point value for its delta.
106
+ let pointBound = null;
107
+ let pointBoundReason = null;
108
+ if (result.kind === 'bound' && Object.keys(point).length > 0) {
109
+ const steps = bridges.filter((b) => b.bound !== undefined);
110
+ const numerical = steps.find((b) => b.bound.deltaAtBasis !== 'closed-form');
111
+ if (allRegimesHold !== true) {
112
+ pointBoundReason = 'a regime on the path is violated or unchecked';
113
+ }
114
+ else if (steps.length === 0) {
115
+ pointBoundReason = 'no step carries a bound';
116
+ }
117
+ else if (numerical !== undefined) {
118
+ pointBoundReason =
119
+ numerical.bound.deltaAt === undefined
120
+ ? `${numerical.id} states no point bound`
121
+ : `${numerical.id}'s point bound is numerically supported, not proven`;
122
+ }
123
+ else {
124
+ const atPoint = bridges.map((b) => b.bound === undefined ? b : { ...b, bound: { ...b.bound, delta: b.bound.deltaAt(point) } });
125
+ const composed = atPoint.every((b) => b.bound === undefined || Number.isFinite(b.bound.delta))
126
+ ? api.boundPath(atPoint)
127
+ : null;
128
+ if (composed !== null && composed.kind === 'bound')
129
+ pointBound = composed.bound;
130
+ else
131
+ pointBoundReason = 'a parameter the point bound needs was not supplied';
132
+ }
133
+ }
134
+ // A violated regime or horizon is a failed check: exit 3 (persona finding F2).
135
+ // UNKNOWN, where a coordinate or t was not supplied, is not a failure.
136
+ const exitCode = allRegimesHold === false || (t !== undefined && !allHold) ? EXIT_CHECK_FAILED : 0;
83
137
  if (wantJson) {
84
138
  emitJson({
85
139
  command: 'path',
@@ -98,12 +152,16 @@ async function run(ctx) {
98
152
  terminal: result.terminal,
99
153
  }
100
154
  : { kind: 'no-claim', reason: result.reason, detail: result.detail, phrase: NO_COMPOSITE_PHRASE }),
155
+ regimes,
156
+ allRegimesHold,
157
+ pointBound,
158
+ ...(pointBoundReason !== null ? { pointBoundReason } : {}),
101
159
  horizons,
102
160
  horizonsEvaluated: t !== undefined,
103
161
  allHorizonsHold: t === undefined ? null : allHold,
104
162
  },
105
163
  }, ctx.write);
106
- return 0;
164
+ return exitCode;
107
165
  }
108
166
  out(`\nupt path ${from} → ${to}`);
109
167
  out(` ${bridges.length} bridge(s):`);
@@ -116,6 +174,13 @@ async function run(ctx) {
116
174
  out(` norm: ${result.norm ?? '(none stated — the claim is the vacuous identity)'}`);
117
175
  if (result.terminal)
118
176
  out(' terminal: the last step states no Lipschitz constant; the claim ends there');
177
+ if (pointBound !== null) {
178
+ out(` bound at this point: K = ${pointBound.K} · delta = ${pointBound.delta} (closed-form: the exact error; ` +
179
+ "the composed bound above is the supremum over the bridge's domain)");
180
+ }
181
+ else if (pointBoundReason !== null) {
182
+ out(` bound at this point: none — ${pointBoundReason}`);
183
+ }
119
184
  }
120
185
  else {
121
186
  out(` composite relation: ${NO_COMPOSITE_PHRASE}`);
@@ -123,6 +188,24 @@ async function run(ctx) {
123
188
  out(` ${result.detail}`);
124
189
  }
125
190
  out('');
191
+ if (allRegimesHold === false) {
192
+ out(' regimes at --at: VIOLATED — no bound on this path is claimed at this point');
193
+ }
194
+ else if (allRegimesHold === 'unknown') {
195
+ out(' regimes at --at: UNKNOWN (a coordinate was not supplied); an unchecked regime is not a passing one');
196
+ }
197
+ else if (bridges.every((b) => b.regime.inequalities.length === 0)) {
198
+ out(' regimes: VACUOUS — no bridge on this path states an inequality; nothing was checked');
199
+ }
200
+ else {
201
+ out(' regimes at --at: all hold');
202
+ }
203
+ for (const r of regimes) {
204
+ if (r.ok === false)
205
+ out(` ${r.bridgeId}: VIOLATED — ${r.violated.join('; ')}`);
206
+ else if (r.ok === 'unknown')
207
+ out(` ${r.bridgeId}: unknown — unchecked: ${r.unchecked.join('; ')}`);
208
+ }
126
209
  if (horizons.length === 0) {
127
210
  out(' horizons: none on this path (no step carries a bound)');
128
211
  }
@@ -138,7 +221,7 @@ async function run(ctx) {
138
221
  }
139
222
  }
140
223
  out(` (${EPISTEMICS})`);
141
- return 0;
224
+ return exitCode;
142
225
  }
143
226
  export const command = { name: 'path', aliases: [], flags: FLAGS, help: HELP, run };
144
227
  registerCommand(command);
@@ -1 +1 @@
1
- {"version":3,"file":"path.js","sourceRoot":"","sources":["../../../src/cli/commands/path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path.js","sourceRoot":"","sources":["../../../src/cli/commands/path.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"probe.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/probe.ts"],"names":[],"mappings":"AAQA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AAgP/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
1
+ {"version":3,"file":"probe.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/probe.ts"],"names":[],"mappings":"AAQA,OAAO,EAAmB,KAAK,OAAO,EAAmB,MAAM,eAAe,CAAC;AA+S/E,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC"}
@@ -37,7 +37,38 @@ const HELP = `upt probe <scan|show|run|candidates|falsify|rank|design|reproduce>
37
37
  --budget-ms=N wall-clock cap (default 5000)
38
38
  --holdout-tol=X relative holdout RMSE cap (default 0.15)
39
39
  --worker=PATH optional NDJSON worker (spawned as node PATH)
40
- --json machine envelope`;
40
+ --json machine envelope
41
+
42
+ PROBLEM FILE (--problem=FILE, JSON)
43
+ target {"name", "dim"}: the observable to explain. "dim" is a named
44
+ dimension (time, length, mass, acceleration, ...) or explicit
45
+ L^a.M^b.T^c (e.g. "L^3.M^-1.T^-2").
46
+ governing [{"name", "dim"}, ...]: the candidate inputs.
47
+ exploratory {"observable", "rows": [{name: value, ...}, ...]}: the fit data.
48
+ holdout the same shape: the locked data the fit must also pass. A row
49
+ that also appears in exploratory is refused as a leak.
50
+ gap optional {"id", "kind", "summary"}. "id" must start with "fg-".
51
+ "kind" is one of prediction-residual, relation-link,
52
+ regime-transition, parameter-tension, assumption-conflict,
53
+ missing-operator, unexplained-observation (default),
54
+ model-disagreement, causal-mechanism, other.
55
+ role optional on a dataset: exploratory-fit (default for
56
+ exploratory), validation-holdout (default for holdout),
57
+ external-replication, falsification-only.
58
+ observationsPath optional: a separate JSON file with the datasets.
59
+ A dimensionless governing variable is written with "dim": "dimensionless".
60
+ Minimal example (small-angle pendulum):
61
+ {
62
+ "target": {"name": "period", "dim": "time"},
63
+ "governing": [{"name": "length", "dim": "length"},
64
+ {"name": "gravity", "dim": "acceleration"}],
65
+ "exploratory": {"observable": "period", "rows": [
66
+ {"length": 1, "gravity": 9.81, "period": 2.006},
67
+ {"length": 2, "gravity": 9.81, "period": 2.837},
68
+ {"length": 0.5, "gravity": 1.62, "period": 3.491}]},
69
+ "holdout": {"observable": "period", "rows": [
70
+ {"length": 1.5, "gravity": 3.71, "period": 3.995}]}
71
+ }`;
41
72
  const EPISTEMICS = '⚠ experimental Product B. Not a discovery claim. `upt discover` is the identification funnel.';
42
73
  function isSubverb(s) {
43
74
  return SUBVERBS.includes(s);
@@ -206,7 +237,9 @@ async function run(ctx) {
206
237
  status: r.record.status,
207
238
  })),
208
239
  wording: result.wording,
209
- ...(sub === 'falsify' ? { falsifications: result.falsifications } : {}),
240
+ ...(sub === 'falsify'
241
+ ? { falsifications: result.falsifications, notFalsified: notFalsified(result) }
242
+ : {}),
210
243
  },
211
244
  }, ctx.write);
212
245
  return 0;
@@ -218,11 +251,35 @@ async function run(ctx) {
218
251
  for (const rec of fal.records)
219
252
  out(` ${rec.battery}: ${rec.outcome} — ${rec.detail}`);
220
253
  }
254
+ // Every candidate is accounted for (persona finding C5): one without
255
+ // batteries used to be passed over in silence.
256
+ for (const n of notFalsified(result)) {
257
+ out(`\n falsify ${n.id}: no batteries run — status ${n.status}: ${n.reason}`);
258
+ }
221
259
  }
222
260
  return 0;
223
261
  }
224
262
  throw new UsageError(`upt probe: unhandled subverb '${sub}'`);
225
263
  }
264
+ /** Why the falsification batteries did not run for a candidate, by its final status. */
265
+ const NOT_FALSIFIED_REASON = {
266
+ 'equivalent-known': 'batteries run only for candidates that are not equivalent to a known corpus relation',
267
+ rejected: 'the candidate was rejected before falsification',
268
+ 'insufficient-evidence': 'there were no holdout observations to test it on',
269
+ 'empirically-fit': 'the candidate did not pass its holdout',
270
+ 'structurally-valid': 'the candidate was not fit to data',
271
+ generated: 'the candidate was not validated',
272
+ };
273
+ /** The candidates the batteries did not run for, with the reason. */
274
+ function notFalsified(result) {
275
+ return result.candidates
276
+ .filter((c) => !(c.id in result.falsifications))
277
+ .map((c) => ({
278
+ id: c.id,
279
+ status: c.status,
280
+ reason: NOT_FALSIFIED_REASON[c.status] ?? 'the batteries did not run for this status',
281
+ }));
282
+ }
226
283
  export const command = {
227
284
  name: 'probe',
228
285
  aliases: [],