star-magic-program 0.3.1__tar.gz → 0.5.0__tar.gz

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 (32) hide show
  1. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/CHANGELOG.md +38 -0
  2. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/CITATION.cff +1 -1
  3. {star_magic_program-0.3.1/star_magic_program.egg-info → star_magic_program-0.5.0}/PKG-INFO +16 -9
  4. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/README.md +14 -7
  5. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/SESSION_LOG.md +39 -0
  6. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/WHITEPAPER_INDEX.md +7 -7
  7. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/pyproject.toml +2 -2
  8. {star_magic_program-0.3.1 → star_magic_program-0.5.0/star_magic_program.egg-info}/PKG-INFO +16 -9
  9. star_magic_program-0.5.0/uqff_calculator.py +351 -0
  10. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/uqff_fidelity_tests.py +63 -1
  11. star_magic_program-0.3.1/uqff_calculator.py +0 -146
  12. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/COMMERCIAL.md +0 -0
  13. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/LICENSE +0 -0
  14. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/LICENSE-AGPL-3.0.txt +0 -0
  15. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/LICENSE-MIT-INITIAL.txt +0 -0
  16. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/NOTICE +0 -0
  17. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/UNIFIED_REGISTRY_FALSIFIABILITY.md +0 -0
  18. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/UNIFIED_REGISTRY_PROGRAM_PLAN.md +0 -0
  19. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/UNIFIED_REGISTRY_RESULTS_TABLE.md +0 -0
  20. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/UNIFIED_REGISTRY_SCHEMA.md +0 -0
  21. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/UNIFIED_REGISTRY_STATUS_REPORT.md +0 -0
  22. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/UNIFIED_REGISTRY_VERSION.txt +0 -0
  23. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/_BUILD_LOG.md +0 -0
  24. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/registry_generator.py +0 -0
  25. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/setup.cfg +0 -0
  26. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/star_magic_program.egg-info/SOURCES.txt +0 -0
  27. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/star_magic_program.egg-info/dependency_links.txt +0 -0
  28. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/star_magic_program.egg-info/top_level.txt +0 -0
  29. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/uqff_registry_graph.py +0 -0
  30. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/uqff_registry_primitives.py +0 -0
  31. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/uqff_registry_status.py +0 -0
  32. {star_magic_program-0.3.1 → star_magic_program-0.5.0}/uqff_registry_xgeo.py +0 -0
@@ -7,6 +7,44 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
8
  ---
9
9
 
10
+ ## [0.5.0] — 2026-07-29 — BAND 1 CONTINUES: PAPER_004..PAPER_006
11
+
12
+ ### Added
13
+ - **PAPER_004 dispatch** (GW170817 chirp): paper's own explicit (1-f_TRZ)
14
+ composition — corpus-internal confirmation of primitive form. OPEN_RULING Q-005.
15
+ - **PAPER_005 dispatch** (BBH energy retention): F = (1-F_TRZ)^2 = 0.81
16
+ EXACT, string deactivated for BBH; P/tau/E scale consistently. OPEN_RULING Q-006.
17
+ - **PAPER_006 dispatch** (multi-messenger): c_GW = c preserved, kilonova
18
+ unmodified, detection volume 27x shrink. Clean.
19
+ - Gate Block 9 extended: 83 assertions total, 0 failures.
20
+ - Registry pantheon: 20 rows, 28 edges, 6 citation ledgers.
21
+
22
+ ### Changed
23
+ - Version 0.4.0 → 0.5.0; badges fidelity_gate 83/0, public_surfaces 6.
24
+ - WHITEPAPER_INDEX: 004/005 → ⚠, 006 → ✓.
25
+
26
+ ---
27
+
28
+ ## [0.4.0] — 2026-07-28 — BAND 1 CONTINUES: PAPER_002 + PAPER_003
29
+
30
+ ### Added
31
+ - **PAPER_002 dispatch** (GW190425 Mass Gap): A_SCm(B) threshold function,
32
+ 5-scenario field table, mass-gap classification P(BH)=0.51. OPEN_RULING.
33
+ - **PAPER_003 dispatch** (GW150914 BBH): universal 0.333 chain, 3.0x
34
+ apparent-distance bias, phase-lag anchor. OPEN_RULING.
35
+ - **RULINGS_QUEUE Q-001..Q-004** — gate-discovered paper-internal
36
+ inconsistencies (F_UQFF headline vs chain; B_crit units T vs G;
37
+ scenario table reproduction; phase-lag formula evaluation).
38
+ - Gate Block 9 extended: 68 assertions total, 0 failures.
39
+ - Registry pantheon: UNIFIED_REGISTRY 10 rows, GRAPH 18 edges,
40
+ CORPUS_CITATIONS 3 ledgers.
41
+
42
+ ### Changed
43
+ - Version 0.3.1 → 0.4.0; badges fidelity_gate 68/0, public_surfaces 3.
44
+ - WHITEPAPER_INDEX: PAPER_002/003 → ⚠ OPEN_RULING.
45
+
46
+ ---
47
+
10
48
  ## [0.3.0] — 2026-07-28 — WIRING CAMPAIGN START
11
49
 
12
50
  ### Added
@@ -3,7 +3,7 @@ message: "If you use Star-Magic-Program (UQFF systematic rebuild) in your resear
3
3
  type: software
4
4
  title: "Star-Magic-Program: UQFF Systematic Rebuild"
5
5
  abbreviation: "UQFF"
6
- version: "0.3.1"
6
+ version: "0.5.0"
7
7
  date-released: "2026-07-28"
8
8
  authors:
9
9
  - family-names: "Murphy"
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: star-magic-program
3
- Version: 0.3.1
4
- Summary: UQFF Star-Magic-Program v0.3.1 (README refresh for campaign state; content = v0.3.0): wiring campaign charter (CLAUDE.md) + ship.ps1 + RULINGS_QUEUE + first wired dispatch PAPER_001 (GW170817 damping: D_total composed from F_TRZ/D_GW_EROSION/B_CRIT registry primitives, 0.10 pct honest residual vs 1/3 primitive identity per PAPER_2154). Registry pantheon live: +4 rows, +7 graph edges, +1 citation row. Gate 55 assertions green. Sequential wiring continues PAPER_002+.
3
+ Version: 0.5.0
4
+ Summary: UQFF Star-Magic-Program v0.5.0: PAPER_004..006 wired (GW170817 chirp - papers own (1-f_TRZ) composition confirms primitive form; BBH energy retention F=(1-F_TRZ)^2=0.81 EXACT; multi-messenger c_GW=c preserved, 27x detection-volume shrink). Rulings Q-005/Q-006 added (6 total). Wired 6/2255, gate 83/0. Registry 20 rows / 28 edges / 6 citation ledgers. Campaign per CLAUDE.md.
5
5
  Author-email: "Daniel T. Murphy" <daniel.murphy00@enrgyone.com>
6
6
  License: AGPL-3.0-or-later OR LicenseRef-StarMagic-Commercial
7
7
  Project-URL: Homepage, https://github.com/Daniel8Murphy0007/Star-Magic-Program
@@ -34,11 +34,11 @@ Dynamic: license-file
34
34
  [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg)](https://pypi.org/project/star-magic-program/)
35
35
  [![Documentation Status](https://readthedocs.org/projects/star-magic-program/badge/?version=latest)](https://star-magic-program.readthedocs.io/en/latest/?badge=latest)
36
36
  [![License: AGPL-3.0 + Commercial](https://img.shields.io/badge/License-AGPL--3.0%20%2B%20Commercial-blue.svg)](LICENSE)
37
- [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-55%2F0-brightgreen)](uqff_fidelity_tests.py)
38
- [![Public surfaces](https://img.shields.io/badge/public_surfaces-1-blue)](uqff_calculator.py)
37
+ [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-83%2F0-brightgreen)](uqff_fidelity_tests.py)
38
+ [![Public surfaces](https://img.shields.io/badge/public_surfaces-6-blue)](uqff_calculator.py)
39
39
  [![Whitepapers](https://img.shields.io/badge/whitepapers-2255-orange)](whitepapers/)
40
40
 
41
- **UQFF systematic rebuild — v0.3.0 wiring campaign started**
41
+ **UQFF systematic rebuild — v0.5.0 wiring campaign live**
42
42
  Author: Daniel T. Murphy · Star-Magic Research Program
43
43
  License: AGPL-3.0-or-later OR Commercial
44
44
 
@@ -77,7 +77,7 @@ Mizuno, Rossi).
77
77
  Full framework physics lives in the whitepaper corpus — the physics is the
78
78
  whitepapers; the calculator computes what the whitepapers derive.
79
79
 
80
- ## What is currently shipped (v0.3.0)
80
+ ## What is currently shipped (v0.5.0)
81
81
 
82
82
  ### Wiring campaign — LIVE (see `CLAUDE.md` charter)
83
83
 
@@ -85,11 +85,16 @@ Sequential wiring of all 2,255 whitepapers, starting at PAPER_001.
85
85
  Authorized 2026-07-28: autonomous band sessions, ship per session via
86
86
  `ship.ps1`, full stop at PAPER_500 for manual review.
87
87
 
88
- **Wired so far: 1 / 2,255**
88
+ **Wired so far: 6 / 2,255** (2 ✓ · 4 ⚠ OPEN_RULING · 6 rulings queued)
89
89
 
90
90
  | Paper | Content | Key result |
91
91
  |---|---|---|
92
92
  | PAPER_001 | GW170817 UQFF Damping Analysis | D_total = 0.333 composed from F_TRZ/D_GW_EROSION/B_CRIT; 0.10% residual vs 1/3 primitive identity (PAPER_2154) |
93
+ | PAPER_002 | GW190425 Mass Gap Interpretation | A_SCm(B)=exp[-(B/B_crit)^2] threshold fn; P(BH)=51% for m1=2.52 Msun; Q-001/2/3 queued |
94
+ | PAPER_003 | GW150914 UQFF vs LIGO Strain | universal BBH 0.333 chain; 3.0x apparent-distance bias (Hubble impact); Q-004 queued |
95
+ | PAPER_004 | GW170817 Chirp Phase Evolution | paper's own (1-f_TRZ) composition confirms primitive form; Q-005 queued |
96
+ | PAPER_005 | BBH Merger Energy Retention | F = (1-F_TRZ)^2 = 0.81 EXACT; 99% mass retention; Q-006 queued |
97
+ | PAPER_006 | GW170817 Multi-Messenger | c_GW = c preserved; kilonova unmodified; detection volume 27x shrink |
93
98
 
94
99
  ### Corpus (2,419 files)
95
100
  - `whitepapers/` — 2,255 `.md` files + 1 `.bak` — physics source of truth
@@ -100,7 +105,7 @@ Authorized 2026-07-28: autonomous band sessions, ship per session via
100
105
  v5.86.0 UNIFIED_REGISTRY R5 baseline). **Registry-clean.**
101
106
  - `uqff_calculator.py` — `DISPATCH` grows one paper at a time;
102
107
  `calc(paper_id, dataset)` public interface.
103
- - `uqff_fidelity_tests.py` — 9-block gate (55 assertions), locking every
108
+ - `uqff_fidelity_tests.py` — 9-block gate (83 assertions), locking every
104
109
  primitive identity + every wired paper's stated values. Runs on every ship.
105
110
 
106
111
  ### Registry pantheon (live, grows per band)
@@ -124,7 +129,9 @@ Authorized 2026-07-28: autonomous band sessions, ship per session via
124
129
  |---|---|---|
125
130
  | v0.1.0 | Scaffold + registry primitives baseline | 0 |
126
131
  | v0.2.0 | Corpus (2,419 files) + registry scaffolds | 0 |
127
- | **v0.3.0** ← current | Charter + campaign start | 1 |
132
+ | v0.3.0/v0.3.1 | Charter + campaign start | 1 |
133
+ | v0.4.0 | Band 1: PAPER_002+003 | 3 |
134
+ | **v0.5.0** ← current | Band 1: PAPER_004..006 | 6 |
128
135
  | v0.4.0+ | One band per session (~20-80 papers each) | growing |
129
136
  | PAPER_500 milestone | FULL STOP — Daniel's manual review | 500 |
130
137
  | v1.0.0 | Full whitepaper coverage | 2,255 |
@@ -4,11 +4,11 @@
4
4
  [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg)](https://pypi.org/project/star-magic-program/)
5
5
  [![Documentation Status](https://readthedocs.org/projects/star-magic-program/badge/?version=latest)](https://star-magic-program.readthedocs.io/en/latest/?badge=latest)
6
6
  [![License: AGPL-3.0 + Commercial](https://img.shields.io/badge/License-AGPL--3.0%20%2B%20Commercial-blue.svg)](LICENSE)
7
- [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-55%2F0-brightgreen)](uqff_fidelity_tests.py)
8
- [![Public surfaces](https://img.shields.io/badge/public_surfaces-1-blue)](uqff_calculator.py)
7
+ [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-83%2F0-brightgreen)](uqff_fidelity_tests.py)
8
+ [![Public surfaces](https://img.shields.io/badge/public_surfaces-6-blue)](uqff_calculator.py)
9
9
  [![Whitepapers](https://img.shields.io/badge/whitepapers-2255-orange)](whitepapers/)
10
10
 
11
- **UQFF systematic rebuild — v0.3.0 wiring campaign started**
11
+ **UQFF systematic rebuild — v0.5.0 wiring campaign live**
12
12
  Author: Daniel T. Murphy · Star-Magic Research Program
13
13
  License: AGPL-3.0-or-later OR Commercial
14
14
 
@@ -47,7 +47,7 @@ Mizuno, Rossi).
47
47
  Full framework physics lives in the whitepaper corpus — the physics is the
48
48
  whitepapers; the calculator computes what the whitepapers derive.
49
49
 
50
- ## What is currently shipped (v0.3.0)
50
+ ## What is currently shipped (v0.5.0)
51
51
 
52
52
  ### Wiring campaign — LIVE (see `CLAUDE.md` charter)
53
53
 
@@ -55,11 +55,16 @@ Sequential wiring of all 2,255 whitepapers, starting at PAPER_001.
55
55
  Authorized 2026-07-28: autonomous band sessions, ship per session via
56
56
  `ship.ps1`, full stop at PAPER_500 for manual review.
57
57
 
58
- **Wired so far: 1 / 2,255**
58
+ **Wired so far: 6 / 2,255** (2 ✓ · 4 ⚠ OPEN_RULING · 6 rulings queued)
59
59
 
60
60
  | Paper | Content | Key result |
61
61
  |---|---|---|
62
62
  | PAPER_001 | GW170817 UQFF Damping Analysis | D_total = 0.333 composed from F_TRZ/D_GW_EROSION/B_CRIT; 0.10% residual vs 1/3 primitive identity (PAPER_2154) |
63
+ | PAPER_002 | GW190425 Mass Gap Interpretation | A_SCm(B)=exp[-(B/B_crit)^2] threshold fn; P(BH)=51% for m1=2.52 Msun; Q-001/2/3 queued |
64
+ | PAPER_003 | GW150914 UQFF vs LIGO Strain | universal BBH 0.333 chain; 3.0x apparent-distance bias (Hubble impact); Q-004 queued |
65
+ | PAPER_004 | GW170817 Chirp Phase Evolution | paper's own (1-f_TRZ) composition confirms primitive form; Q-005 queued |
66
+ | PAPER_005 | BBH Merger Energy Retention | F = (1-F_TRZ)^2 = 0.81 EXACT; 99% mass retention; Q-006 queued |
67
+ | PAPER_006 | GW170817 Multi-Messenger | c_GW = c preserved; kilonova unmodified; detection volume 27x shrink |
63
68
 
64
69
  ### Corpus (2,419 files)
65
70
  - `whitepapers/` — 2,255 `.md` files + 1 `.bak` — physics source of truth
@@ -70,7 +75,7 @@ Authorized 2026-07-28: autonomous band sessions, ship per session via
70
75
  v5.86.0 UNIFIED_REGISTRY R5 baseline). **Registry-clean.**
71
76
  - `uqff_calculator.py` — `DISPATCH` grows one paper at a time;
72
77
  `calc(paper_id, dataset)` public interface.
73
- - `uqff_fidelity_tests.py` — 9-block gate (55 assertions), locking every
78
+ - `uqff_fidelity_tests.py` — 9-block gate (83 assertions), locking every
74
79
  primitive identity + every wired paper's stated values. Runs on every ship.
75
80
 
76
81
  ### Registry pantheon (live, grows per band)
@@ -94,7 +99,9 @@ Authorized 2026-07-28: autonomous band sessions, ship per session via
94
99
  |---|---|---|
95
100
  | v0.1.0 | Scaffold + registry primitives baseline | 0 |
96
101
  | v0.2.0 | Corpus (2,419 files) + registry scaffolds | 0 |
97
- | **v0.3.0** ← current | Charter + campaign start | 1 |
102
+ | v0.3.0/v0.3.1 | Charter + campaign start | 1 |
103
+ | v0.4.0 | Band 1: PAPER_002+003 | 3 |
104
+ | **v0.5.0** ← current | Band 1: PAPER_004..006 | 6 |
98
105
  | v0.4.0+ | One band per session (~20-80 papers each) | growing |
99
106
  | PAPER_500 milestone | FULL STOP — Daniel's manual review | 500 |
100
107
  | v1.0.0 | Full whitepaper coverage | 2,255 |
@@ -331,3 +331,42 @@ Band 1 continues: PAPER_002-020 (GW family template). Ship per session.
331
331
 
332
332
  ---
333
333
 
334
+
335
+ ## 2026-07-28 — v0.4.0 — BAND 1 CONTINUES (PAPER_002 + PAPER_003)
336
+
337
+ ### What shipped
338
+
339
+ - PAPER_002 GW190425 wired (⚠ OPEN_RULING): A_SCm(B)=exp[-(B/B_crit)^2]
340
+ threshold function + 5 field scenarios + mass-gap P(NS)/P(BH) classification.
341
+ - PAPER_003 GW150914 wired (⚠ OPEN_RULING): universal BBH 0.333 chain
342
+ (composed from F_TRZ), 3.0x apparent-distance bias, phase-lag anchor.
343
+ - 4 rulings queued: Q-001 (F_UQFF 0.5297 vs chain 0.333), Q-002 (B_crit
344
+ T vs G), Q-003 (scenario table irreproducible from stated formula),
345
+ Q-004 (phase-lag formula evaluates 17.53 not 0.126).
346
+ - Gate: 68 assertions, 0 failures. The gate CAUGHT all four inconsistencies —
347
+ the self-rectification mechanism is working exactly as designed.
348
+ - Registry: 10 rows, 18 edges, 3 citation ledgers.
349
+
350
+ ### Campaign state at v0.4.0 ship
351
+
352
+ Wired 3/2,255 (PAPER_001 ✓, PAPER_002 ⚠, PAPER_003 ⚠).
353
+
354
+ ---
355
+
356
+ ## 2026-07-29 — v0.5.0 — BAND 1 CONTINUES (PAPER_004..006)
357
+
358
+ ### What shipped: PAPER_004, PAPER_005, PAPER_006
359
+
360
+ - PAPER_004 (⚠ Q-005): paper's own formula writes (1-f_TRZ) explicitly —
361
+ corpus confirmation of the primitive composition used since PAPER_001.
362
+ - PAPER_005 (⚠ Q-006): BBH variant chain F = (1-F_TRZ)^2 = 0.81 EXACT
363
+ (string deactivated); every numerical result in the paper reproduces.
364
+ - PAPER_006 (✓ clean): multi-messenger consistency; c_GW = c preserved;
365
+ detection-volume 27x shrink prediction.
366
+
367
+ ### Campaign state
368
+
369
+ Wired 6/2,255 (001 ✓, 002-005 ⚠, 006 ✓). Gate 83/0. Rulings Q-001..Q-006.
370
+ Next paper: PAPER_008 (007 absent from corpus).
371
+
372
+ ---
@@ -11,9 +11,9 @@
11
11
  ## Summary
12
12
 
13
13
  - **Total papers:** 2255
14
- - **Wired:** 1
14
+ - **Wired:** 6 (2 ✓, 4 ⚠ OPEN_RULING)
15
15
  - **OPEN targets:** 0
16
- - **Not yet touched:** 2254
16
+ - **Not yet touched:** 2249
17
17
 
18
18
  ---
19
19
 
@@ -23,11 +23,11 @@
23
23
  |---|---|---|
24
24
  | ⬜ | COMPLETE_UQFF_EQUATIONS_REFERENCE | (no PAPER_N prefix) |
25
25
  | ✓ | PAPER_001 | GW170817 UQFF Damping Analysis |
26
- | ⬜ | PAPER_002 | GW190425 Mass Gap Interpretation |
27
- | ⬜ | PAPER_003 | GW150914 UQFF vs LIGO Strain |
28
- | ⬜ | PAPER_004 | GW170817 BNS Chirp Phase Evolution |
29
- | ⬜ | PAPER_005 | BH Merger Energy Retention UQFF |
30
- | ⬜ | PAPER_006 | GW170817 Multi Messenger Full Inspiral |
26
+ | ⚠ | PAPER_002 | GW190425 Mass Gap Interpretation |
27
+ | ⚠ | PAPER_003 | GW150914 UQFF vs LIGO Strain |
28
+ | ⚠ | PAPER_004 | GW170817 BNS Chirp Phase Evolution |
29
+ | ⚠ | PAPER_005 | BH Merger Energy Retention UQFF |
30
+ | ✓ | PAPER_006 | GW170817 Multi Messenger Full Inspiral |
31
31
  | ⬜ | PAPER_007 | Tidal Deformability Constraints BNS UQFF |
32
32
  | ⬜ | PAPER_008 | UQFF Waveform Phase Evolution Template Mismatch |
33
33
  | ⬜ | PAPER_008b | Full Inspiral Waveform UQFF |
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "star-magic-program"
7
- version = "0.3.1"
8
- description = "UQFF Star-Magic-Program v0.3.1 (README refresh for campaign state; content = v0.3.0): wiring campaign charter (CLAUDE.md) + ship.ps1 + RULINGS_QUEUE + first wired dispatch PAPER_001 (GW170817 damping: D_total composed from F_TRZ/D_GW_EROSION/B_CRIT registry primitives, 0.10 pct honest residual vs 1/3 primitive identity per PAPER_2154). Registry pantheon live: +4 rows, +7 graph edges, +1 citation row. Gate 55 assertions green. Sequential wiring continues PAPER_002+."
7
+ version = "0.5.0"
8
+ description = "UQFF Star-Magic-Program v0.5.0: PAPER_004..006 wired (GW170817 chirp - papers own (1-f_TRZ) composition confirms primitive form; BBH energy retention F=(1-F_TRZ)^2=0.81 EXACT; multi-messenger c_GW=c preserved, 27x detection-volume shrink). Rulings Q-005/Q-006 added (6 total). Wired 6/2255, gate 83/0. Registry 20 rows / 28 edges / 6 citation ledgers. Campaign per CLAUDE.md."
9
9
  readme = "README.md"
10
10
  authors = [
11
11
  { name = "Daniel T. Murphy", email = "daniel.murphy00@enrgyone.com" }
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: star-magic-program
3
- Version: 0.3.1
4
- Summary: UQFF Star-Magic-Program v0.3.1 (README refresh for campaign state; content = v0.3.0): wiring campaign charter (CLAUDE.md) + ship.ps1 + RULINGS_QUEUE + first wired dispatch PAPER_001 (GW170817 damping: D_total composed from F_TRZ/D_GW_EROSION/B_CRIT registry primitives, 0.10 pct honest residual vs 1/3 primitive identity per PAPER_2154). Registry pantheon live: +4 rows, +7 graph edges, +1 citation row. Gate 55 assertions green. Sequential wiring continues PAPER_002+.
3
+ Version: 0.5.0
4
+ Summary: UQFF Star-Magic-Program v0.5.0: PAPER_004..006 wired (GW170817 chirp - papers own (1-f_TRZ) composition confirms primitive form; BBH energy retention F=(1-F_TRZ)^2=0.81 EXACT; multi-messenger c_GW=c preserved, 27x detection-volume shrink). Rulings Q-005/Q-006 added (6 total). Wired 6/2255, gate 83/0. Registry 20 rows / 28 edges / 6 citation ledgers. Campaign per CLAUDE.md.
5
5
  Author-email: "Daniel T. Murphy" <daniel.murphy00@enrgyone.com>
6
6
  License: AGPL-3.0-or-later OR LicenseRef-StarMagic-Commercial
7
7
  Project-URL: Homepage, https://github.com/Daniel8Murphy0007/Star-Magic-Program
@@ -34,11 +34,11 @@ Dynamic: license-file
34
34
  [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg)](https://pypi.org/project/star-magic-program/)
35
35
  [![Documentation Status](https://readthedocs.org/projects/star-magic-program/badge/?version=latest)](https://star-magic-program.readthedocs.io/en/latest/?badge=latest)
36
36
  [![License: AGPL-3.0 + Commercial](https://img.shields.io/badge/License-AGPL--3.0%20%2B%20Commercial-blue.svg)](LICENSE)
37
- [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-55%2F0-brightgreen)](uqff_fidelity_tests.py)
38
- [![Public surfaces](https://img.shields.io/badge/public_surfaces-1-blue)](uqff_calculator.py)
37
+ [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-83%2F0-brightgreen)](uqff_fidelity_tests.py)
38
+ [![Public surfaces](https://img.shields.io/badge/public_surfaces-6-blue)](uqff_calculator.py)
39
39
  [![Whitepapers](https://img.shields.io/badge/whitepapers-2255-orange)](whitepapers/)
40
40
 
41
- **UQFF systematic rebuild — v0.3.0 wiring campaign started**
41
+ **UQFF systematic rebuild — v0.5.0 wiring campaign live**
42
42
  Author: Daniel T. Murphy · Star-Magic Research Program
43
43
  License: AGPL-3.0-or-later OR Commercial
44
44
 
@@ -77,7 +77,7 @@ Mizuno, Rossi).
77
77
  Full framework physics lives in the whitepaper corpus — the physics is the
78
78
  whitepapers; the calculator computes what the whitepapers derive.
79
79
 
80
- ## What is currently shipped (v0.3.0)
80
+ ## What is currently shipped (v0.5.0)
81
81
 
82
82
  ### Wiring campaign — LIVE (see `CLAUDE.md` charter)
83
83
 
@@ -85,11 +85,16 @@ Sequential wiring of all 2,255 whitepapers, starting at PAPER_001.
85
85
  Authorized 2026-07-28: autonomous band sessions, ship per session via
86
86
  `ship.ps1`, full stop at PAPER_500 for manual review.
87
87
 
88
- **Wired so far: 1 / 2,255**
88
+ **Wired so far: 6 / 2,255** (2 ✓ · 4 ⚠ OPEN_RULING · 6 rulings queued)
89
89
 
90
90
  | Paper | Content | Key result |
91
91
  |---|---|---|
92
92
  | PAPER_001 | GW170817 UQFF Damping Analysis | D_total = 0.333 composed from F_TRZ/D_GW_EROSION/B_CRIT; 0.10% residual vs 1/3 primitive identity (PAPER_2154) |
93
+ | PAPER_002 | GW190425 Mass Gap Interpretation | A_SCm(B)=exp[-(B/B_crit)^2] threshold fn; P(BH)=51% for m1=2.52 Msun; Q-001/2/3 queued |
94
+ | PAPER_003 | GW150914 UQFF vs LIGO Strain | universal BBH 0.333 chain; 3.0x apparent-distance bias (Hubble impact); Q-004 queued |
95
+ | PAPER_004 | GW170817 Chirp Phase Evolution | paper's own (1-f_TRZ) composition confirms primitive form; Q-005 queued |
96
+ | PAPER_005 | BBH Merger Energy Retention | F = (1-F_TRZ)^2 = 0.81 EXACT; 99% mass retention; Q-006 queued |
97
+ | PAPER_006 | GW170817 Multi-Messenger | c_GW = c preserved; kilonova unmodified; detection volume 27x shrink |
93
98
 
94
99
  ### Corpus (2,419 files)
95
100
  - `whitepapers/` — 2,255 `.md` files + 1 `.bak` — physics source of truth
@@ -100,7 +105,7 @@ Authorized 2026-07-28: autonomous band sessions, ship per session via
100
105
  v5.86.0 UNIFIED_REGISTRY R5 baseline). **Registry-clean.**
101
106
  - `uqff_calculator.py` — `DISPATCH` grows one paper at a time;
102
107
  `calc(paper_id, dataset)` public interface.
103
- - `uqff_fidelity_tests.py` — 9-block gate (55 assertions), locking every
108
+ - `uqff_fidelity_tests.py` — 9-block gate (83 assertions), locking every
104
109
  primitive identity + every wired paper's stated values. Runs on every ship.
105
110
 
106
111
  ### Registry pantheon (live, grows per band)
@@ -124,7 +129,9 @@ Authorized 2026-07-28: autonomous band sessions, ship per session via
124
129
  |---|---|---|
125
130
  | v0.1.0 | Scaffold + registry primitives baseline | 0 |
126
131
  | v0.2.0 | Corpus (2,419 files) + registry scaffolds | 0 |
127
- | **v0.3.0** ← current | Charter + campaign start | 1 |
132
+ | v0.3.0/v0.3.1 | Charter + campaign start | 1 |
133
+ | v0.4.0 | Band 1: PAPER_002+003 | 3 |
134
+ | **v0.5.0** ← current | Band 1: PAPER_004..006 | 6 |
128
135
  | v0.4.0+ | One band per session (~20-80 papers each) | growing |
129
136
  | PAPER_500 milestone | FULL STOP — Daniel's manual review | 500 |
130
137
  | v1.0.0 | Full whitepaper coverage | 2,255 |
@@ -0,0 +1,351 @@
1
+ """uqff_calculator — Star-Magic-Program v6-style calculator, rebuilt from whitepaper truth.
2
+
3
+ DESIGN RULES (locked, non-negotiable):
4
+ 1. Line 1 imports from uqff_registry_primitives. Every canonical value flows
5
+ from there. Never inline a numeric literal that duplicates a registry entry.
6
+ 2. Every public surface takes signature (paper_id, dataset) and returns
7
+ {'value': X, 'formula': str, 'source': 'PAPER_N', 'residual_pct': r}.
8
+ 3. Every surface is 5-30 lines, extracted directly from a whitepaper.
9
+ 4. If a whitepaper has no closed form, mark as OPEN — do not substitute a
10
+ classical/SM formula (Rule 4 doctrine).
11
+ 5. This file is grown ONE paper at a time. Read whitepaper → wire dispatch →
12
+ verify residual → advance to next.
13
+
14
+ STATE at v0.1.0 (2026-07-28): scaffold only. Dispatch table is empty; the wiring
15
+ campaign starts from PAPER_001 in the first content ship (v0.2.0+).
16
+ """
17
+ from uqff_registry_primitives import (
18
+ # Locked primitives
19
+ D_PHYS, D_CRIT, N_CH, SO_5, A_5, D_BSFG,
20
+ RHO_SCM, BETA_I, F_TRZ, SSQ, S_26, OMEGA_SCM_HZ,
21
+ PHI_RES_COUNTING, PHI_RES_RESONANCE,
22
+ # Derivative primitives
23
+ K_MEX, KAPPA_PER_DAY, Q_PHONON, D_GW_EROSION,
24
+ # Composed vacuum
25
+ RHO_UA, LAMBDA_VAC, K_SPRING,
26
+ # Kernel constants
27
+ G_UQFF, G_OBSERVED, C_UQFF_DERIVED, C_OBSERVED, MU_0,
28
+ K_B_UQFF, H_UQFF_S629, HBAR_UQFF_S629, H_PLANCK_UQFF,
29
+ L_PLANCK_UQFF, L_PLANCK_OBSERVED, PLANCK_LENGTH_M,
30
+ PLANCK_MASS_KG, PLANCK_TIME_S,
31
+ # Cosmology
32
+ MPC_TO_M, H0_KM_PER_S_PER_MPC, H0_GRID, H0_OBSERVED_LOCAL,
33
+ LAMBDA_SIMPLE, B_CRIT, T_SCM_K,
34
+ AGE_UNIVERSE_SECONDS, RHO_CRITICAL_KG_PER_M3, RHO_LAMBDA_ENERGY_J_PER_M3,
35
+ OMEGA_LAMBDA_UQFF, HUBBLE_TILT_1_12,
36
+ # Observed
37
+ M_SUN_OBSERVED, R_SUN_OBSERVED,
38
+ # Structural landmarks
39
+ A5_OVER_DPHYS, K2_OVER_Q_ROCKY, FRAME_CADENCE_62,
40
+ COMPOSED_INTEGER_44, AETHER_COUPLING_11, DG_COMPOSED_INTEGER,
41
+ VCK_KERNEL, TILT_PRODUCT_1_12, ALPHA_INVERSE_UQFF, ALPHA_FINE_STRUCTURE,
42
+ DM_FRACTION_SOMBRERO,
43
+ HALVING_D_PHYS, HALVING_D_BSFG, HALVING_SO_5, HALVING_D_CRIT,
44
+ # Blackbody
45
+ WIEN_DISPLACEMENT_B_M_K, STEFAN_BOLTZMANN_SIGMA,
46
+ # Millennium
47
+ HODGE_IDENTITY, POINCARE_7_12, P_VS_NP_BOUND, NAVIER_STOKES_ENSTROPHY_CAP,
48
+ YANG_MILLS_MASS_GAP_GEV, RIEMANN_ZERO_T_10000, BSD_CREMONA_37A1,
49
+ BH_INFO_PAGE_CURVE,
50
+ # Particle physics
51
+ ALPHA_S_M_Z, JARLSKOG_CP_INVARIANT, N_EFF_NEUTRINO, LAMBDA_H_HIGGS_QUARTIC,
52
+ M_W_GEV, M_Z_GEV, M_TOP_GEV, M_HIGGS_GEV,
53
+ M_BOTTOM_GEV, M_CHARM_GEV, M_TAU_GEV, M_MUON_GEV,
54
+ M_STRANGE_GEV, M_ELECTRON_GEV,
55
+ CKM_LAMBDA, CKM_A, CKM_RHOBAR, CKM_ETABAR,
56
+ G_MINUS_2_MUON_ANOMALY, SIN_SQUARED_2_THETA_13,
57
+ DELTA_M2_21_EV2, DELTA_M2_32_EV2,
58
+ )
59
+
60
+ VERSION = "0.5.0"
61
+
62
+ # =============================================================================
63
+ # DISPATCH TABLE — grown one whitepaper at a time.
64
+ # Every entry maps 'PAPER_N' -> a callable (dataset) -> {value, formula, ...}
65
+ # =============================================================================
66
+ DISPATCH = {}
67
+
68
+
69
+ def _register(paper_id):
70
+ """Decorator: registers a paper's calculator surface into DISPATCH."""
71
+ def _wrap(fn):
72
+ DISPATCH[paper_id] = fn
73
+ return fn
74
+ return _wrap
75
+
76
+
77
+ def calc(paper_id, dataset=None):
78
+ """Primary public interface. Look up a paper's dispatch and evaluate it."""
79
+ if paper_id not in DISPATCH:
80
+ return {
81
+ 'value': None,
82
+ 'formula': None,
83
+ 'source': paper_id,
84
+ 'residual_pct': None,
85
+ 'status': 'OPEN_NOT_YET_WIRED',
86
+ }
87
+ return DISPATCH[paper_id](dataset or {})
88
+
89
+
90
+ def list_wired():
91
+ """Return sorted list of PAPER_Ns currently wired."""
92
+ return sorted(DISPATCH.keys(), key=lambda p: int(p.split('_')[1]))
93
+
94
+
95
+ def wired_count():
96
+ """Return count of wired papers."""
97
+ return len(DISPATCH)
98
+
99
+
100
+ # =============================================================================
101
+ # PAPER_N DISPATCHES — sequential wiring campaign from PAPER_001 (see CLAUDE.md)
102
+ # =============================================================================
103
+
104
+
105
+ @_register('PAPER_001')
106
+ def _paper_001(dataset):
107
+ """GW170817 UQFF Damping Analysis (Session 1).
108
+
109
+ BNS merger strain damping: D_total = D_Aether*D_SCm*D_TRZ*D_String.
110
+ Headline 66.7% reduction later canonized as D_GW_EROSION = D_phys/D_BSFG
111
+ = 2/3 EXACT (PAPER_2154 5th primitive-reduction landmark); paper chain
112
+ (0.9*0.37 = 0.333) sits 0.10% from the primitive identity 1/3.
113
+ """
114
+ B_NS = 1.0e4 # T — typical NS field, paper Table 3.1
115
+ D_aether = 1.0 # negligible aether coupling at 40 Mpc
116
+ D_scm = 1.0 # B_NS/B_CRIT = 2.27e-10 << 1
117
+ D_trz = 1.0 - F_TRZ # 0.9 EXACT (topological resonance zone)
118
+ D_string = 0.37 # paper-stated string-sector factor
119
+ D_total = D_aether * D_scm * D_trz * D_string # 0.333
120
+ h_gr = 5.4176e-22 # LIGO GR peak strain anchor (paper §3.3)
121
+ snr_gr = 32.4 # GR SNR anchor (paper §3.4)
122
+ d_primitive = 1.0 - D_GW_EROSION # 1/3 EXACT per PAPER_2154
123
+ return {
124
+ 'value': {
125
+ 'D_aether': D_aether,
126
+ 'D_scm': D_scm,
127
+ 'D_trz': D_trz,
128
+ 'D_string': D_string,
129
+ 'D_total': D_total,
130
+ 'D_total_primitive_identity': d_primitive,
131
+ 'h_gr_strain': h_gr,
132
+ 'h_uqff_strain': D_total * h_gr, # 1.8041e-22
133
+ 'snr_gr': snr_gr,
134
+ 'snr_uqff': D_total * snr_gr, # 10.79
135
+ 'mismatch': 1.0 - D_total, # 0.667
136
+ 'B_NS_over_B_crit': B_NS / B_CRIT, # 2.27e-10
137
+ 'chirp_mass_msun': 1.188, # LIGO O2 anchor
138
+ 'total_mass_msun': 2.73, # LIGO O2 anchor
139
+ 'distance_mpc': 40.0, # NGC 4993 anchor
140
+ 'grb_delay_s': 1.74, # GRB 170817A anchor
141
+ },
142
+ 'formula': ('D_total = D_Aether*D_SCm*(1-F_TRZ)*D_String; '
143
+ 'h_UQFF = D_total*h_GR; mismatch ~ D_GW_EROSION (PAPER_2154)'),
144
+ 'source': 'PAPER_001',
145
+ 'residual_pct': abs(D_total - d_primitive) / d_primitive * 100.0, # 0.10%
146
+ }
147
+
148
+
149
+ @_register('PAPER_002')
150
+ def _paper_002(dataset):
151
+ """GW190425 Mass Gap Interpretation (Session 0).
152
+
153
+ Heaviest known BNS (3.64 Msun); m1 = 2.52 Msun overlaps the 2.5-5 Msun
154
+ mass gap. SCm suppression is a threshold phenomenon:
155
+ A_SCm(B) = exp[-(B/B_crit)^2], complete only at B >~ 1e15 G.
156
+ OPEN_RULING Q-001: paper states F_UQFF = 0.5297 but its own chain
157
+ 1*A_SCm*0.9*0.37 = 0.333; 0.5297 ~ 1-0.47 matches the S225 phonon 47%
158
+ suppression instead. Wired best-candidate: paper-stated headline values.
159
+ """
160
+ import math as _m
161
+ B_crit_G = 4.4e13 # G here (PAPER_001 used T) — OPEN_RULING Q-002
162
+
163
+ def a_scm(B_gauss):
164
+ return _m.exp(-((B_gauss / B_crit_G) ** 2))
165
+
166
+ scenarios = { # paper sec 4 five-field-scenario table
167
+ 'normal_pulsar_1e8G': a_scm(1.0e8),
168
+ 'high_b_pulsar_6.95e9G': a_scm(6.95e9),
169
+ 'magnetar_4.83e11G': a_scm(4.83e11),
170
+ 'extreme_magnetar_3.36e13G': a_scm(3.36e13), # 0.998871 paper
171
+ 'hyper_magnetar_1e15G': a_scm(1.0e15), # 0.0 paper
172
+ }
173
+ F_uqff = 0.5297 # paper-stated headline (OPEN_RULING Q-001)
174
+ h_gr = 1.702e-23 # GR peak strain anchor (paper sec 3)
175
+ return {
176
+ 'value': {
177
+ 'F_uqff': F_uqff,
178
+ 'amplitude_reduction_pct': (1.0 - F_uqff) * 100.0, # 47.0
179
+ 'h_gr_strain': h_gr,
180
+ 'h_uqff_strain': 1.067e-23, # paper sec 3
181
+ 'snr_observed': 12.9,
182
+ 'snr_uqff': 3.6,
183
+ 'A_scm_scenarios': scenarios,
184
+ 'p_ns': 0.49, # paper sec 5
185
+ 'p_bh': 0.51,
186
+ 'bh_factor': 0.6217,
187
+ 'ns_factor_mean': 0.5836,
188
+ 'chirp_mass_msun': 1.44, # LIGO anchor
189
+ 'm1_msun': 2.52, # mass-gap component
190
+ 'm2_msun': 1.12,
191
+ 'total_mass_msun': 3.64,
192
+ 'distance_mpc': 159.0,
193
+ },
194
+ 'formula': ('F = A_aether*A_SCm(B)*A_TRZ*A_string; '
195
+ 'A_SCm(B) = exp[-(B/B_crit)^2]'),
196
+ 'source': 'PAPER_002',
197
+ 'residual_pct': None, # pending Q-001 ruling
198
+ 'status': 'OPEN_RULING',
199
+ }
200
+
201
+
202
+ @_register('PAPER_003')
203
+ def _paper_003(dataset):
204
+ """GW150914 UQFF vs LIGO Strain Comparison (Session 0).
205
+
206
+ First BBH detection. Same universal 0.333 chain as PAPER_001 (no magnetic
207
+ suppression for BBH). New observables: 3x apparent-distance bias (direct
208
+ Hubble-inference impact) and propagation phase lag.
209
+ OPEN_RULING Q-004: stated phase-lag formula kappa*D*f*SSq evaluates to
210
+ 17.53 with the given numbers, not the paper's 0.126 rad.
211
+ """
212
+ D_aether = 1.0
213
+ D_scm = 1.0 # BBH: no B-field, no SCm suppression
214
+ D_trz = 1.0 - F_TRZ # 0.9 EXACT
215
+ D_string = 0.37
216
+ D_total = D_aether * D_scm * D_trz * D_string # 0.333 universal BBH
217
+ h_gr_peak = 1.2499e-21 # semi-analytic GR peak (paper sec 3.1)
218
+ d_true_mpc = 410.0 # LIGO anchor
219
+ return {
220
+ 'value': {
221
+ 'D_total': D_total,
222
+ 'h_gr_peak': h_gr_peak,
223
+ 'h_uqff_peak': D_total * h_gr_peak, # 4.1622e-22
224
+ 'snr_gr': 24.0,
225
+ 'snr_uqff': D_total * 24.0, # 8.0
226
+ 'distance_true_mpc': d_true_mpc,
227
+ 'distance_apparent_mpc': d_true_mpc / D_total, # 1231 Mpc
228
+ 'distance_bias_factor': 1.0 / D_total, # 3.0x
229
+ 'phase_lag_rad': 0.126, # paper-stated (Q-004)
230
+ 'ripple_amplitude_pct': 1.0, # paper sec 4
231
+ 'm1_msun': 36.0, # LIGO anchor
232
+ 'm2_msun': 29.0,
233
+ 'total_mass_msun': 65.0,
234
+ 'chirp_mass_msun': 28.3,
235
+ },
236
+ 'formula': ('D_total = 1*1*(1-F_TRZ)*0.37 (universal BBH); '
237
+ 'D_apparent = D_true/D_total; phase lag kappa*D*f*SSq (Q-004)'),
238
+ 'source': 'PAPER_003',
239
+ 'residual_pct': abs(D_total - (1.0 - D_GW_EROSION)) / (1.0 - D_GW_EROSION) * 100.0,
240
+ 'status': 'OPEN_RULING',
241
+ }
242
+
243
+
244
+ @_register('PAPER_004')
245
+ def _paper_004(dataset):
246
+ """GW170817 BNS Chirp Phase Evolution — GR vs UQFF (Session 0).
247
+
248
+ 35-300 Hz chirp window (0.2 s, 200 samples). The paper's own formula
249
+ explicitly writes h_UQFF = D_aether*D_SCm*(1-f_TRZ)*D_string*h_GR —
250
+ corpus-internal confirmation of the (1-F_TRZ) primitive composition.
251
+ Q-005: paper's stated h_UQFF,peak 9.4332e-23 differs ~1% from
252
+ 0.333*2.8051e-22 = 9.341e-23 (arithmetic slip).
253
+ """
254
+ D_total = 1.0 * 1.0 * (1.0 - F_TRZ) * 0.37 # 0.333 (paper's own form)
255
+ h_gr_peak = 2.8051e-22 # PN chirp formula at ~300 Hz (paper sec 2)
256
+ h_obs = 1.0e-22 # LIGO observed strain anchor
257
+ return {
258
+ 'value': {
259
+ 'D_total': D_total,
260
+ 'h_gr_peak': h_gr_peak,
261
+ 'h_uqff_peak_computed': D_total * h_gr_peak, # 9.341e-23
262
+ 'h_uqff_peak_paper': 9.4332e-23, # stated (Q-005)
263
+ 'strain_reduction_pct': (1.0 - D_total) * 100.0, # 66.7 (paper says 66.4)
264
+ 'gr_residual_vs_obs_pct': 5.0, # paper sec 2
265
+ 'uqff_mismatch_vs_obs_pct': 66.7, # paper sec 4
266
+ 'chirp_mass_msun': 1.188,
267
+ 'distance_mpc': 40.0,
268
+ 'freq_range_hz': (35.0, 300.0),
269
+ 'chirp_duration_s': 0.2,
270
+ 'n_samples': 200,
271
+ },
272
+ 'formula': ('h_UQFF = D_aether*D_SCm*(1-f_TRZ)*D_string*h_GR '
273
+ '(paper sec 3 — explicit (1-f_TRZ) composition)'),
274
+ 'source': 'PAPER_004',
275
+ 'residual_pct': abs(D_total * h_gr_peak - 9.4332e-23) / 9.4332e-23 * 100.0,
276
+ 'status': 'OPEN_RULING',
277
+ }
278
+
279
+
280
+ @_register('PAPER_005')
281
+ def _paper_005(dataset):
282
+ """BH Merger Energy Retention (Session 0). GW150914-like BBH 36+29 Msun.
283
+
284
+ BBH chain variant: string DEACTIVATED (1.0), B-factor 0.9, TRZ 0.9 →
285
+ combined 0.81 = (1-F_TRZ)^2 primitive composition. Power/energy/timescale
286
+ all consistently scale by 0.81 (P ratio 0.8100, tau ratio 1/0.81 = 1.2346,
287
+ E ratio 0.810). Q-006: sec 2 states F_combined = 0.903 with P = F^2*P_GR
288
+ (0.815), inconsistent with the 0.81 used throughout.
289
+ """
290
+ F_combined = (1.0 - F_TRZ) ** 2 # 0.81 EXACT — B-factor * TRZ
291
+ P_gw_gr = 8.9451e-11 # W, paper sec 2
292
+ tau_gr_yr = 9.4417e11
293
+ E_rad_gr_msun = 0.8031
294
+ M_tot = 65.0
295
+ return {
296
+ 'value': {
297
+ 'F_combined': F_combined, # 0.81
298
+ 'P_gw_gr_w': P_gw_gr,
299
+ 'P_gw_uqff_w': F_combined * P_gw_gr, # 7.2455e-11
300
+ 'power_reduction_pct': (1.0 - F_combined) * 100, # 19.0
301
+ 'tau_gr_yr': tau_gr_yr,
302
+ 'tau_uqff_yr': tau_gr_yr / F_combined, # 1.1656e12
303
+ 'tau_extension_factor': 1.0 / F_combined, # 1.2346
304
+ 'E_rad_gr_msun': E_rad_gr_msun,
305
+ 'E_rad_uqff_msun': F_combined * E_rad_gr_msun, # 0.6505
306
+ 'remnant_gr_msun': M_tot - E_rad_gr_msun, # 64.197
307
+ 'remnant_uqff_msun': M_tot - F_combined * E_rad_gr_msun, # 64.350
308
+ 'mass_retention_uqff_pct': (M_tot - F_combined * E_rad_gr_msun) / M_tot * 100,
309
+ 'm1_msun': 36.0, 'm2_msun': 29.0, 'distance_mpc': 410.0,
310
+ },
311
+ 'formula': ('F_combined = (1-F_TRZ)^2 = 0.81 (string deactivated for BBH); '
312
+ 'P/tau/E all scale by 0.81 (Q-006: sec-2 states 0.903)'),
313
+ 'source': 'PAPER_005',
314
+ 'residual_pct': abs(F_combined * P_gw_gr - 7.2455e-11) / 7.2455e-11 * 100.0,
315
+ 'status': 'OPEN_RULING',
316
+ }
317
+
318
+
319
+ @_register('PAPER_006')
320
+ def _paper_006(dataset):
321
+ """Multi-Messenger GW170817 — Kilonova + UQFF Predictions (Session 0).
322
+
323
+ Full-inspiral simulation (3,677 cycles, 23-300 Hz, 100 s) + per-messenger
324
+ UQFF predictions. Consistent with PAPER_001's chain (no new
325
+ inconsistencies): amplitude-only modification, GW speed preserved,
326
+ EM sector unmodified. Detection volume shrinks by 1/D_total^3 ~ 27x.
327
+ """
328
+ D_total = 1.0 * 1.0 * (1.0 - F_TRZ) * 0.37 # 0.333 (same as PAPER_001)
329
+ h_gr = 5.4176e-22
330
+ return {
331
+ 'value': {
332
+ 'D_total': D_total,
333
+ 'h_uqff_strain': D_total * h_gr, # 1.8041e-22
334
+ 'snr_gr': 32.4,
335
+ 'snr_uqff': D_total * 32.4, # 10.8
336
+ 'gw_speed_constraint': 3e-15, # |dc/c| preserved by UQFF
337
+ 'grb_delay_s': 1.74, # unmodified by UQFF
338
+ 'kilonova_ejecta_msun': (0.04, 0.05), # unmodified by UQFF
339
+ 'total_cycles': 3677, # full inspiral sim
340
+ 'max_phase_lag_rad': 2310.8, # 367.8 cycles
341
+ 'max_phase_lag_cycles': 367.8,
342
+ 'detection_volume_shrink': 1.0 / D_total**3, # ~27x
343
+ 'B_ns_t': 1.0e4,
344
+ 'chirp_mass_msun': 1.188,
345
+ 'distance_mpc': 40.0,
346
+ },
347
+ 'formula': ('h_UQFF = D_total*h_GR (amplitude-only; c_GW = c preserved); '
348
+ 'V_detect scales 1/D_total^3 ~ 27x shrink'),
349
+ 'source': 'PAPER_006',
350
+ 'residual_pct': abs(D_total - (1.0 - D_GW_EROSION)) / (1.0 - D_GW_EROSION) * 100.0,
351
+ }
@@ -98,7 +98,7 @@ assert_that(abs(P.N_EFF_NEUTRINO - n_eff_expected) < 1e-15,
98
98
  # =============================================================================
99
99
  # BLOCK 7 — CALCULATOR SCAFFOLD INTEGRITY
100
100
  # =============================================================================
101
- assert_that(C.VERSION == "0.3.1", "uqff_calculator.VERSION = 0.3.1")
101
+ assert_that(C.VERSION == "0.5.0", "uqff_calculator.VERSION = 0.5.0")
102
102
  assert_that(isinstance(C.DISPATCH, dict), "DISPATCH is a dict")
103
103
  assert_that(C.wired_count() >= 0, "wired_count is queryable (>= 0)")
104
104
  assert_that(callable(C.calc), "calc is callable")
@@ -143,6 +143,68 @@ assert_that(abs(_r001['B_NS_over_B_crit'] - 2.27e-10) < 0.01e-10,
143
143
  "PAPER_001: B_NS/B_crit = 2.27e-10 (negligible SCm damping)")
144
144
  assert_that(C.wired_count() >= 1, "wired_count >= 1 (campaign started)")
145
145
 
146
+ _r002 = C.calc('PAPER_002')['value']
147
+ assert_that(abs(_r002['F_uqff'] - 0.5297) < 1e-12,
148
+ "PAPER_002: F_UQFF = 0.5297 (paper headline; Q-001 OPEN)")
149
+ assert_that(abs(_r002['amplitude_reduction_pct'] - 47.03) < 0.05,
150
+ "PAPER_002: 47.0% amplitude reduction")
151
+ assert_that(abs(_r002['A_scm_scenarios']['extreme_magnetar_3.36e13G'] - 0.5581) < 5e-4,
152
+ "PAPER_002: extreme magnetar A_SCm = 0.558 COMPUTED from stated formula "
153
+ "(paper's table says 0.998871, back-solves to B_crit=1e15 G — Q-003 OPEN)")
154
+ assert_that(_r002['A_scm_scenarios']['hyper_magnetar_1e15G'] < 1e-200,
155
+ "PAPER_002: hyper-magnetar A_SCm -> 0 (complete suppression)")
156
+ assert_that(_r002['A_scm_scenarios']['normal_pulsar_1e8G'] > 0.999999999,
157
+ "PAPER_002: normal pulsar A_SCm = 1.0 (B << B_crit)")
158
+ assert_that(abs(_r002['p_ns'] + _r002['p_bh'] - 1.0) < 1e-12,
159
+ "PAPER_002: P(NS) + P(BH) = 1")
160
+ assert_that(C.wired_count() >= 2, "wired_count >= 2")
161
+
162
+ _r003 = C.calc('PAPER_003')['value']
163
+ assert_that(abs(_r003['D_total'] - 0.333) < 1e-12,
164
+ "PAPER_003: D_total = 0.333 (universal BBH chain, same as PAPER_001)")
165
+ assert_that(abs(_r003['h_uqff_peak'] - 4.1622e-22) < 1e-25,
166
+ "PAPER_003: h_UQFF peak = 4.1622e-22")
167
+ assert_that(abs(_r003['snr_uqff'] - 8.0) < 0.01,
168
+ "PAPER_003: SNR_UQFF = 8.0 (at detection threshold)")
169
+ assert_that(abs(_r003['distance_apparent_mpc'] - 1231.0) < 1.0,
170
+ "PAPER_003: apparent distance 1231 Mpc (3x bias vs true 410)")
171
+ assert_that(abs(_r003['distance_bias_factor'] - 3.003) < 0.01,
172
+ "PAPER_003: distance bias factor 3.0x")
173
+ assert_that(C.wired_count() >= 3, "wired_count >= 3")
174
+
175
+ _r004 = C.calc('PAPER_004')['value']
176
+ assert_that(abs(_r004['D_total'] - 0.333) < 1e-12,
177
+ "PAPER_004: D_total = 0.333 via paper's own (1-f_TRZ) composition")
178
+ assert_that(abs(_r004['h_uqff_peak_computed'] - 9.341e-23) < 5e-26,
179
+ "PAPER_004: computed h_UQFF = 9.341e-23 (paper states 9.4332e-23, ~1% slip - Q-005)")
180
+ assert_that(abs(_r004['strain_reduction_pct'] - 66.7) < 0.05,
181
+ "PAPER_004: 66.7% strain reduction (paper abstract says 66.4 - Q-005)")
182
+ assert_that(C.wired_count() >= 4, "wired_count >= 4")
183
+
184
+ _r005 = C.calc('PAPER_005')['value']
185
+ assert_that(abs(_r005['F_combined'] - 0.81) < 1e-15,
186
+ "PAPER_005: F_combined = (1-F_TRZ)^2 = 0.81 EXACT (string deactivated BBH)")
187
+ assert_that(abs(_r005['P_gw_uqff_w'] - 7.2455e-11) / 7.2455e-11 < 0.001,
188
+ "PAPER_005: P_GW_UQFF = 7.2455e-11 W (19% reduction)")
189
+ assert_that(abs(_r005['tau_uqff_yr'] - 1.1656e12) / 1.1656e12 < 0.001,
190
+ "PAPER_005: tau_UQFF = 1.1656e12 yr (1.23x extension)")
191
+ assert_that(abs(_r005['E_rad_uqff_msun'] - 0.6505) < 0.001,
192
+ "PAPER_005: E_radiated = 0.6505 Msun (mass retention)")
193
+ assert_that(C.wired_count() >= 5, "wired_count >= 5")
194
+
195
+ _r006 = C.calc('PAPER_006')['value']
196
+ assert_that(abs(_r006['D_total'] - 0.333) < 1e-12,
197
+ "PAPER_006: D_total = 0.333 (consistent with PAPER_001)")
198
+ assert_that(abs(_r006['h_uqff_strain'] - 1.8041e-22) < 1e-25,
199
+ "PAPER_006: h_UQFF = 1.8041e-22 (multi-messenger consistency)")
200
+ assert_that(abs(_r006['snr_uqff'] - 10.8) < 0.02,
201
+ "PAPER_006: SNR_UQFF = 10.8")
202
+ assert_that(abs(_r006['detection_volume_shrink'] - 27.1) < 0.2,
203
+ "PAPER_006: detection volume shrinks ~27x (1/0.333^3)")
204
+ assert_that(_r006['gw_speed_constraint'] == 3e-15,
205
+ "PAPER_006: |dc/c| < 3e-15 preserved (amplitude-only modification)")
206
+ assert_that(C.wired_count() >= 6, "wired_count >= 6")
207
+
146
208
  # =============================================================================
147
209
  # REPORT
148
210
  # =============================================================================
@@ -1,146 +0,0 @@
1
- """uqff_calculator — Star-Magic-Program v6-style calculator, rebuilt from whitepaper truth.
2
-
3
- DESIGN RULES (locked, non-negotiable):
4
- 1. Line 1 imports from uqff_registry_primitives. Every canonical value flows
5
- from there. Never inline a numeric literal that duplicates a registry entry.
6
- 2. Every public surface takes signature (paper_id, dataset) and returns
7
- {'value': X, 'formula': str, 'source': 'PAPER_N', 'residual_pct': r}.
8
- 3. Every surface is 5-30 lines, extracted directly from a whitepaper.
9
- 4. If a whitepaper has no closed form, mark as OPEN — do not substitute a
10
- classical/SM formula (Rule 4 doctrine).
11
- 5. This file is grown ONE paper at a time. Read whitepaper → wire dispatch →
12
- verify residual → advance to next.
13
-
14
- STATE at v0.1.0 (2026-07-28): scaffold only. Dispatch table is empty; the wiring
15
- campaign starts from PAPER_001 in the first content ship (v0.2.0+).
16
- """
17
- from uqff_registry_primitives import (
18
- # Locked primitives
19
- D_PHYS, D_CRIT, N_CH, SO_5, A_5, D_BSFG,
20
- RHO_SCM, BETA_I, F_TRZ, SSQ, S_26, OMEGA_SCM_HZ,
21
- PHI_RES_COUNTING, PHI_RES_RESONANCE,
22
- # Derivative primitives
23
- K_MEX, KAPPA_PER_DAY, Q_PHONON, D_GW_EROSION,
24
- # Composed vacuum
25
- RHO_UA, LAMBDA_VAC, K_SPRING,
26
- # Kernel constants
27
- G_UQFF, G_OBSERVED, C_UQFF_DERIVED, C_OBSERVED, MU_0,
28
- K_B_UQFF, H_UQFF_S629, HBAR_UQFF_S629, H_PLANCK_UQFF,
29
- L_PLANCK_UQFF, L_PLANCK_OBSERVED, PLANCK_LENGTH_M,
30
- PLANCK_MASS_KG, PLANCK_TIME_S,
31
- # Cosmology
32
- MPC_TO_M, H0_KM_PER_S_PER_MPC, H0_GRID, H0_OBSERVED_LOCAL,
33
- LAMBDA_SIMPLE, B_CRIT, T_SCM_K,
34
- AGE_UNIVERSE_SECONDS, RHO_CRITICAL_KG_PER_M3, RHO_LAMBDA_ENERGY_J_PER_M3,
35
- OMEGA_LAMBDA_UQFF, HUBBLE_TILT_1_12,
36
- # Observed
37
- M_SUN_OBSERVED, R_SUN_OBSERVED,
38
- # Structural landmarks
39
- A5_OVER_DPHYS, K2_OVER_Q_ROCKY, FRAME_CADENCE_62,
40
- COMPOSED_INTEGER_44, AETHER_COUPLING_11, DG_COMPOSED_INTEGER,
41
- VCK_KERNEL, TILT_PRODUCT_1_12, ALPHA_INVERSE_UQFF, ALPHA_FINE_STRUCTURE,
42
- DM_FRACTION_SOMBRERO,
43
- HALVING_D_PHYS, HALVING_D_BSFG, HALVING_SO_5, HALVING_D_CRIT,
44
- # Blackbody
45
- WIEN_DISPLACEMENT_B_M_K, STEFAN_BOLTZMANN_SIGMA,
46
- # Millennium
47
- HODGE_IDENTITY, POINCARE_7_12, P_VS_NP_BOUND, NAVIER_STOKES_ENSTROPHY_CAP,
48
- YANG_MILLS_MASS_GAP_GEV, RIEMANN_ZERO_T_10000, BSD_CREMONA_37A1,
49
- BH_INFO_PAGE_CURVE,
50
- # Particle physics
51
- ALPHA_S_M_Z, JARLSKOG_CP_INVARIANT, N_EFF_NEUTRINO, LAMBDA_H_HIGGS_QUARTIC,
52
- M_W_GEV, M_Z_GEV, M_TOP_GEV, M_HIGGS_GEV,
53
- M_BOTTOM_GEV, M_CHARM_GEV, M_TAU_GEV, M_MUON_GEV,
54
- M_STRANGE_GEV, M_ELECTRON_GEV,
55
- CKM_LAMBDA, CKM_A, CKM_RHOBAR, CKM_ETABAR,
56
- G_MINUS_2_MUON_ANOMALY, SIN_SQUARED_2_THETA_13,
57
- DELTA_M2_21_EV2, DELTA_M2_32_EV2,
58
- )
59
-
60
- VERSION = "0.3.1"
61
-
62
- # =============================================================================
63
- # DISPATCH TABLE — grown one whitepaper at a time.
64
- # Every entry maps 'PAPER_N' -> a callable (dataset) -> {value, formula, ...}
65
- # =============================================================================
66
- DISPATCH = {}
67
-
68
-
69
- def _register(paper_id):
70
- """Decorator: registers a paper's calculator surface into DISPATCH."""
71
- def _wrap(fn):
72
- DISPATCH[paper_id] = fn
73
- return fn
74
- return _wrap
75
-
76
-
77
- def calc(paper_id, dataset=None):
78
- """Primary public interface. Look up a paper's dispatch and evaluate it."""
79
- if paper_id not in DISPATCH:
80
- return {
81
- 'value': None,
82
- 'formula': None,
83
- 'source': paper_id,
84
- 'residual_pct': None,
85
- 'status': 'OPEN_NOT_YET_WIRED',
86
- }
87
- return DISPATCH[paper_id](dataset or {})
88
-
89
-
90
- def list_wired():
91
- """Return sorted list of PAPER_Ns currently wired."""
92
- return sorted(DISPATCH.keys(), key=lambda p: int(p.split('_')[1]))
93
-
94
-
95
- def wired_count():
96
- """Return count of wired papers."""
97
- return len(DISPATCH)
98
-
99
-
100
- # =============================================================================
101
- # PAPER_N DISPATCHES — sequential wiring campaign from PAPER_001 (see CLAUDE.md)
102
- # =============================================================================
103
-
104
-
105
- @_register('PAPER_001')
106
- def _paper_001(dataset):
107
- """GW170817 UQFF Damping Analysis (Session 1).
108
-
109
- BNS merger strain damping: D_total = D_Aether*D_SCm*D_TRZ*D_String.
110
- Headline 66.7% reduction later canonized as D_GW_EROSION = D_phys/D_BSFG
111
- = 2/3 EXACT (PAPER_2154 5th primitive-reduction landmark); paper chain
112
- (0.9*0.37 = 0.333) sits 0.10% from the primitive identity 1/3.
113
- """
114
- B_NS = 1.0e4 # T — typical NS field, paper Table 3.1
115
- D_aether = 1.0 # negligible aether coupling at 40 Mpc
116
- D_scm = 1.0 # B_NS/B_CRIT = 2.27e-10 << 1
117
- D_trz = 1.0 - F_TRZ # 0.9 EXACT (topological resonance zone)
118
- D_string = 0.37 # paper-stated string-sector factor
119
- D_total = D_aether * D_scm * D_trz * D_string # 0.333
120
- h_gr = 5.4176e-22 # LIGO GR peak strain anchor (paper §3.3)
121
- snr_gr = 32.4 # GR SNR anchor (paper §3.4)
122
- d_primitive = 1.0 - D_GW_EROSION # 1/3 EXACT per PAPER_2154
123
- return {
124
- 'value': {
125
- 'D_aether': D_aether,
126
- 'D_scm': D_scm,
127
- 'D_trz': D_trz,
128
- 'D_string': D_string,
129
- 'D_total': D_total,
130
- 'D_total_primitive_identity': d_primitive,
131
- 'h_gr_strain': h_gr,
132
- 'h_uqff_strain': D_total * h_gr, # 1.8041e-22
133
- 'snr_gr': snr_gr,
134
- 'snr_uqff': D_total * snr_gr, # 10.79
135
- 'mismatch': 1.0 - D_total, # 0.667
136
- 'B_NS_over_B_crit': B_NS / B_CRIT, # 2.27e-10
137
- 'chirp_mass_msun': 1.188, # LIGO O2 anchor
138
- 'total_mass_msun': 2.73, # LIGO O2 anchor
139
- 'distance_mpc': 40.0, # NGC 4993 anchor
140
- 'grb_delay_s': 1.74, # GRB 170817A anchor
141
- },
142
- 'formula': ('D_total = D_Aether*D_SCm*(1-F_TRZ)*D_String; '
143
- 'h_UQFF = D_total*h_GR; mismatch ~ D_GW_EROSION (PAPER_2154)'),
144
- 'source': 'PAPER_001',
145
- 'residual_pct': abs(D_total - d_primitive) / d_primitive * 100.0, # 0.10%
146
- }