star-magic-program 0.401.0__tar.gz → 0.403.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 (143) hide show
  1. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/CHANGELOG.md +97 -0
  2. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/CITATION.cff +3 -3
  3. {star_magic_program-0.401.0/star_magic_program.egg-info → star_magic_program-0.403.0}/PKG-INFO +9 -8
  4. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/README.md +6 -6
  5. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/SESSION_LOG.md +113 -0
  6. star_magic_program-0.403.0/UNIFIED_REGISTRY_VERSION.txt +1 -0
  7. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_XGEO_QUEUE.csv +2 -0
  8. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_XGEO_ROUTES.csv +2 -0
  9. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/WHITEPAPER_INDEX.md +1 -1
  10. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/_BUILD_LOG.md +9 -0
  11. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/pyproject.toml +24 -3
  12. {star_magic_program-0.401.0 → star_magic_program-0.403.0/star_magic_program.egg-info}/PKG-INFO +9 -8
  13. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/star_magic_program.egg-info/SOURCES.txt +26 -0
  14. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/star_magic_program.egg-info/requires.txt +1 -0
  15. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_calculator.py +1 -1
  16. star_magic_program-0.403.0/uqff_downhole_simulator/BENCH_TEST_PROTOCOL.md +97 -0
  17. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/README.md +379 -0
  18. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/__init__.py +15 -1
  19. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/__main__.py +113 -5
  20. star_magic_program-0.403.0/uqff_downhole_simulator/acceptance_tests.py +449 -0
  21. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/acex_lomonosov_age_depth_model.provenance.json +23 -0
  22. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/acex_lomonosov_age_depth_model.txt +28 -0
  23. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/chicxulub_m0077a_pwave_velocity.provenance.json +23 -0
  24. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/chicxulub_m0077a_pwave_velocity.txt +735 -0
  25. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/dsdp_504b_physical_properties.provenance.json +24 -0
  26. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/dsdp_504b_physical_properties.txt +82 -0
  27. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/dsdp_504b_sound_velocity.provenance.json +21 -0
  28. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/dsdp_504b_sound_velocity.txt +81 -0
  29. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/nankai_megasplay_shear_strength.provenance.json +26 -0
  30. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/nankai_megasplay_shear_strength.txt +42 -0
  31. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_1027b_thermal_conductivity.provenance.json +21 -0
  32. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_1027b_thermal_conductivity.txt +52 -0
  33. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_1165b_thermal_conductivity.provenance.json +22 -0
  34. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_1165b_thermal_conductivity.txt +102 -0
  35. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_1274a_mantle_peridotite_mad.provenance.json +27 -0
  36. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_1274a_mantle_peridotite_mad.txt +44 -0
  37. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_504b_dike_elastic_moduli.provenance.json +27 -0
  38. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_504b_dike_elastic_moduli.txt +85 -0
  39. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_735b_gabbro_elastic_moduli.provenance.json +28 -0
  40. star_magic_program-0.403.0/uqff_downhole_simulator/catalog/odp_735b_gabbro_elastic_moduli.txt +127 -0
  41. star_magic_program-0.403.0/uqff_downhole_simulator/uqff_bench.py +141 -0
  42. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_downhole_engine.py +115 -8
  43. star_magic_program-0.403.0/uqff_downhole_simulator/uqff_gamma.py +173 -0
  44. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_modbus.py +8 -0
  45. star_magic_program-0.403.0/uqff_downhole_simulator/uqff_operator_app.py +439 -0
  46. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_ports.py +9 -2
  47. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_profile_catalog.py +7 -4
  48. star_magic_program-0.403.0/uqff_downhole_simulator/uqff_well_assembler.py +350 -0
  49. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_fidelity_tests.py +599 -5
  50. star_magic_program-0.401.0/UNIFIED_REGISTRY_VERSION.txt +0 -1
  51. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/AUDIT_500_PAPER_REPORT.md +0 -0
  52. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/COMMERCIAL.md +0 -0
  53. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/LICENSE +0 -0
  54. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/LICENSE-AGPL-3.0.txt +0 -0
  55. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/LICENSE-MIT-INITIAL.txt +0 -0
  56. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/NOTICE +0 -0
  57. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_ANCHORS.csv +0 -0
  58. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_EXACT_IDENTITIES.csv +0 -0
  59. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_FALSIFIABILITY.md +0 -0
  60. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_OPEN_ITEMS.csv +0 -0
  61. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_PARADOX_CENSUS.csv +0 -0
  62. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_PREDICTIONS.csv +0 -0
  63. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_PROGRAM_PLAN.md +0 -0
  64. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_RESIDUALS.csv +0 -0
  65. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_RESULTS_TABLE.md +0 -0
  66. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_SCHEMA.md +0 -0
  67. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_STATUS_REPORT.md +0 -0
  68. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_XGEO_CONFIRMATIONS.csv +0 -0
  69. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/UNIFIED_REGISTRY_XGEO_EXTRACTED.csv +0 -0
  70. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/notebooks/00_quickstart.ipynb +0 -0
  71. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/reference/COMPLETE_UQFF_EQUATIONS_REFERENCE.pdf +0 -0
  72. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/reference/Star-Magic_manuscript_v5.pdf +0 -0
  73. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/reference/UQFF_VALIDATION_SYNC_AUDIT.pdf +0 -0
  74. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/reference/uqff_production_arxiv.pdf +0 -0
  75. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/registry_generator.py +0 -0
  76. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/setup.cfg +0 -0
  77. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/star_magic_program.egg-info/dependency_links.txt +0 -0
  78. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/star_magic_program.egg-info/top_level.txt +0 -0
  79. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_backbone_locks.py +0 -0
  80. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_derived_constants.py +0 -0
  81. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_derived_functions.py +0 -0
  82. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/agassiz77_canada_temperature.csv +0 -0
  83. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/agassiz77_canada_temperature.provenance.json +0 -0
  84. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/collingwood_1_28_ks_complete.las +0 -0
  85. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/collingwood_1_28_ks_complete.provenance.json +0 -0
  86. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/gisp2_greenland_temperature.csv +0 -0
  87. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/gisp2_greenland_temperature.provenance.json +0 -0
  88. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/iodp_u1324_pore_pressure.provenance.json +0 -0
  89. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/iodp_u1324_pore_pressure.txt +0 -0
  90. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/kennetcook_2_p129_excerpt.las +0 -0
  91. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/kennetcook_2_p129_excerpt.provenance.json +0 -0
  92. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_bhgm_density.dat +0 -0
  93. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_bhgm_density.provenance.json +0 -0
  94. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_hlog246_temperature.dat +0 -0
  95. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_hlog246_temperature.provenance.json +0 -0
  96. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_rockmech_compress.dat +0 -0
  97. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_rockmech_compress.provenance.json +0 -0
  98. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_tvd_0_9080_excerpt.dat +0 -0
  99. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_hb_tvd_0_9080_excerpt.provenance.json +0 -0
  100. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_vb_rockmech_compress.dat +0 -0
  101. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_vb_rockmech_compress.provenance.json +0 -0
  102. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_vb_vlog251_temperature.dat +0 -0
  103. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/ktb_vb_vlog251_temperature.provenance.json +0 -0
  104. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/l06_06_nl_survey.csv +0 -0
  105. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/l06_06_nl_survey.provenance.json +0 -0
  106. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/l07_01_nl_excerpt.las +0 -0
  107. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/l07_01_nl_excerpt.provenance.json +0 -0
  108. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/odp_1027c_cork_temperature.provenance.json +0 -0
  109. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/odp_1027c_cork_temperature.txt +0 -0
  110. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/odp_504b_leg137_borehole_fluids.provenance.json +0 -0
  111. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/odp_504b_leg137_borehole_fluids.txt +0 -0
  112. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/scorpio_e1_sa_excerpt.las +0 -0
  113. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/scorpio_e1_sa_excerpt.provenance.json +0 -0
  114. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/university_6_17_no1_tx_excerpt.las +0 -0
  115. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/university_6_17_no1_tx_excerpt.provenance.json +0 -0
  116. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/volve_15_9_19_sr_excerpt.las +0 -0
  117. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/volve_15_9_19_sr_excerpt.provenance.json +0 -0
  118. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/volve_15_9_19a_core_excerpt.csv +0 -0
  119. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/volve_15_9_19a_core_excerpt.provenance.json +0 -0
  120. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/volve_f12_f14_production_excerpt.csv +0 -0
  121. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/catalog/volve_f12_f14_production_excerpt.provenance.json +0 -0
  122. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/example_register_map.json +0 -0
  123. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/matplotlib_demo.py +0 -0
  124. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/qt6_downhole_app.py +0 -0
  125. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/sample_well_profile.csv +0 -0
  126. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_case_study.py +0 -0
  127. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_deviation.py +0 -0
  128. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_follower.py +0 -0
  129. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_gauge_specs.py +0 -0
  130. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_quartz_hpht_extension.py +0 -0
  131. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_reconciler.py +0 -0
  132. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_service_life.py +0 -0
  133. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_telemetry.py +0 -0
  134. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_downhole_simulator/uqff_tool_library.py +0 -0
  135. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_fubii_variants.py +0 -0
  136. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_material_landmarks.py +0 -0
  137. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_ngc_catalog.py +0 -0
  138. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_primitive_identities.py +0 -0
  139. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_registry_graph.py +0 -0
  140. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_registry_primitives.py +0 -0
  141. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_registry_status.py +0 -0
  142. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_registry_xgeo.py +0 -0
  143. {star_magic_program-0.401.0 → star_magic_program-0.403.0}/uqff_session_closures.py +0 -0
@@ -7,6 +7,103 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
8
  ---
9
9
 
10
+ ## v0.403.0 — 2026-08-27 — THE PRODUCT SHIP
11
+
12
+ The independent evaluation's finish sequence, **executed** (`uqff_downhole_simulator` v1.41.0–v1.48.0):
13
+
14
+ **Finish sequence (1–5) = FINISHED OFFLINE PRODUCT, by the evaluation's own criterion:**
15
+
16
+ - **v1.41** Modbus unified — registry entry IS the real client; disciplined
17
+ minimal refusal; static source discloses the runtime upgrade.
18
+ - **v1.42** The well assembler — WellAssembly per site family; strict
19
+ measured-coverage lookups; overburden from the site's own density;
20
+ engine bridge with Rule-7 method labels.
21
+ - **v1.43** Measured wells as engine defaults — `run --well ktb_hb` on the
22
+ 1994 log; Volve F-12 measured downhole P as the reconciler live leg
23
+ (drawdown → UNEXPLAINED_TREND: not drift).
24
+ - **v1.44** The operator surface — headless gate-tested OperatorSession +
25
+ Qt6 view; rating check BLOCKS the run on measured conditions; permanent
26
+ citations pane (suppression labeled DERIVED_HYBRID in the UI).
27
+ - **v1.45** The acceptance suite — in-package product gate (`accept`),
28
+ grown to 55 checks; independence from the physics corpus enforced by
29
+ construction (subprocess + static verification).
30
+
31
+ **Field tier:**
32
+
33
+ - **v1.46** (6a) Gamma/lithology from the catalogue's own curves — six
34
+ gamma-bearing entries under unit discipline; KTB pilot 80 intervals;
35
+ Volve sand/shale split; every number labeled.
36
+ - **v1.47** (6b) Mixed toolstrings — honest per-station legs; aggregates
37
+ over twin stations only; rating check inside the engine constructor.
38
+ - **v1.48** (8) Bench-test protocol — BENCH_TEST_PROTOCOL.md in-package;
39
+ falsifiable R = 1.0324 both directions; four-verdict analysis
40
+ self-verified as SIMULATION_SELF_TEST.
41
+
42
+ Mid-arc audit (Daniel): twin track verified by measurement at every layer;
43
+ three small gaps found and fixed in-arc (gui extra + matplotlib,
44
+ LAS-ingest button, twin-leg drift tab). Remaining: step 7 only (one live
45
+ site path — needs a real host + cited register map).
46
+
47
+ Gate 5,904 → 5,924, 0 failures. Acceptance 55/55. 23-file pass.
48
+
49
+ **REMANUFACTURED 2026-08-27 (same version; tag preserved, PyPI never
50
+ received the first push):** CI failed on all runners at the FINISH-SEQ 2
51
+ pin — `AttributeError: numpy has no attribute 'trapz'` (numpy ≥ 2.0
52
+ removed the alias; CI resolves newer numpy than the authoring sandbox's
53
+ proxy-pinned 2.2.6, which still carried it — every local repro was green
54
+ for exactly that reason). Fix: the assembler's overburden integral now
55
+ prefers `np.trapezoid` with a 1.x fallback; a portability-guard pin bans
56
+ direct `np.trapz` from the assembler and canonizes the standing rule
57
+ (local dependency versions are NOT the ship's — removed-alias sweeps are
58
+ ship prep). Also found in the same audit: the tracked
59
+ `star_magic_program-0.402.0/` sdist staging tree (129 stale files left
60
+ by a failed in-repo build on the mounted FS, committed by `add -A` at
61
+ v0.402.0) — `.gitignore` now blocks `star_magic_program-*/`; Daniel
62
+ removes the tree with `git rm -r star_magic_program-0.402.0` on Windows.
63
+ Acceptance A2's stochastic band widened; the gate's acceptance-subprocess
64
+ pin now embeds subprocess stderr in its failure message. Gate 5,925/0.
65
+
66
+ ---
67
+ ## v0.402.0 — 2026-08-27 — THE POLE-TO-POLE SHIP
68
+
69
+ The downhole catalogue grows **TWENTY → THIRTY entries** across ten
70
+ packages (`uqff_downhole_simulator` v1.31.0–v1.40.0), every entry a
71
+ COMPLETE public dataset transcribed verbatim with provenance sidecar:
72
+
73
+ - **21** ODP 1027B thermal conductivity — THE HEAT-FLOW CLOSURE:
74
+ q = k·dT/dz ≈ 130 mW/m² computed live from two same-site entries.
75
+ - **22** DSDP 504B physical properties (1979) — WBD = φρw+(1−φ)ρg
76
+ closes on all 61 rows: the lab audited 47 years later.
77
+ - **23** ODP 1165B thermal conductivity — ANTARCTICA (region 13); the
78
+ replicate audit catches a dropped-digit typo IN the source archive.
79
+ - **24** ODP 111-504B dike elastic moduli — four identities re-derived
80
+ (Vp/Vs, Poisson, G=ρVs², K=ρ(Vp²−4/3Vs²)); two archive quirks pinned.
81
+ - **25** DSDP 69-504B sound velocity — 504B = FOUR-dataset family; the
82
+ cross-entry join computes live basalt impedance (13.9–18.5 ×10⁶).
83
+ - **26** Nankai megasplay shear strength — region 14, kind 18, first
84
+ Chikyu data; Ikari et al.'s stability conclusion re-derived (FS
85
+ 2.38–15.31, all stable); Exp-prefix source typo detected.
86
+ - **27** ODP 735B gabbro elastic moduli — SW Indian Ridge (region 15);
87
+ the OCEANIC-CRUST LADDER completes; five audits incl. modal-sum.
88
+ - **28** ODP 1274A mantle peridotite MAD — Mid-Atlantic Ridge (region
89
+ 16); THE LADDER GOES BELOW THE CRUST; five-identity lock (max dev
90
+ 0.0016 g/cm³); grain densities carry the serpentinization deficit.
91
+ - **29** Chicxulub M0077A P-wave — region 17, the K-Pg peak ring; 717
92
+ rows, none reaching 5,400 m/s (the deficit IS the shock damage); the
93
+ dataset checksums its own transcription (Depth = Top + midpoint/100).
94
+ - **30** ACEX Lomonosov age-depth model — region 18 at 87.89°N (235 km
95
+ from the North Pole), kind 19 (first time axis); the 26.2-Myr hiatus
96
+ as a duplicate-depth pair; all six sedimentation rates re-derived.
97
+
98
+ Reader growth: `read_pangaea_txt` gained a no-depth ordinal-index
99
+ fallback (label-indexed tables); all prior entries regression-verified.
100
+ Ship pin measures the arc's claim: latitude span between catalogue
101
+ endpoints, computed live from in-file coordinates, exceeds 152°.
102
+
103
+ **THIRTY entries / EIGHTEEN regions / NINETEEN kinds.**
104
+ Gate 5,884 → 5,906, 0 failures. 23-file pass.
105
+
106
+ ---
10
107
  ## v0.401.0 — 2026-08-25 — THE INCORPORATION SHIP
11
108
 
12
109
  **ENRGYONE, Inc. is founded, and its papers enter the repository.** Six
@@ -3,8 +3,8 @@ 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.401.0"
7
- date-released: "2026-08-25"
6
+ version: "0.403.0"
7
+ date-released: "2026-08-27"
8
8
  authors:
9
9
  - family-names: "Murphy"
10
10
  given-names: "Daniel T."
@@ -53,7 +53,7 @@ preferred-citation:
53
53
  - family-names: "Murphy"
54
54
  given-names: "Daniel T."
55
55
  year: 2026
56
- version: "0.401.0"
56
+ version: "0.403.0"
57
57
  url: "https://github.com/Daniel8Murphy0007/Star-Magic-Program"
58
58
  notes: >-
59
59
  Cite both the software and the relevant whitepapers by PAPER_N
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: star-magic-program
3
- Version: 0.401.0
4
- Summary: Star-Magic UQFF calculator v0.401.0: THE INCORPORATION SHIP. 2,253 dispatches (2,308 keys), gate 5,884/0. ENRGYONE, Inc. founding documents enter the repository as six fidelity-verified PDFs (pdf/): Articles of Incorporation, Bylaws, Commercial License Confirmation, IP Dual-License Explanation, IP License & Sublicense Agreement (ACHILLES), and NDA - the corporate stack behind the AGPL-3.0 + Commercial dual license. Downhole catalogue unchanged at 20 entries / 13 kinds. Next: PAPER_2258.
3
+ Version: 0.403.0
4
+ Summary: Star-Magic UQFF calculator v0.403.0: THE PRODUCT SHIP. 2,253 dispatches (2,308 keys), gate 5,924/0. The downhole simulator completes the adopted independent-evaluation plan (v1.41-v1.48): finish sequence 1-5 - modbus unified, well assembler, measured wells as engine defaults, operator surface, in-package 55-check acceptance suite = FINISHED OFFLINE PRODUCT; field tier 6a gamma/lithology from catalogue curves, 6b mixed toolstrings + in-engine rating block, 8 bench-test protocol. Next: PAPER_2258.
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,21 +34,22 @@ Provides-Extra: modbus
34
34
  Requires-Dist: pymodbus>=3.15; extra == "modbus"
35
35
  Provides-Extra: gui
36
36
  Requires-Dist: PyQt6; extra == "gui"
37
+ Requires-Dist: matplotlib; extra == "gui"
37
38
  Dynamic: license-file
38
39
 
39
40
  # Star-Magic-Program
40
41
 
41
- [![PyPI version](https://img.shields.io/pypi/v/star-magic-program.svg?cacheBust=0.401.0)](https://pypi.org/project/star-magic-program/)
42
- [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg?cacheBust=0.401.0)](https://pypi.org/project/star-magic-program/)
42
+ [![PyPI version](https://img.shields.io/pypi/v/star-magic-program.svg?cacheBust=0.403.0)](https://pypi.org/project/star-magic-program/)
43
+ [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg?cacheBust=0.403.0)](https://pypi.org/project/star-magic-program/)
43
44
  [![Documentation Status](https://readthedocs.org/projects/star-magic-program/badge/?version=latest)](https://star-magic-program.readthedocs.io/en/latest/?badge=latest)
44
45
  [![License: AGPL-3.0 + Commercial](https://img.shields.io/badge/License-AGPL--3.0%20%2B%20Commercial-blue.svg)](LICENSE)
45
- [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-5884%2F0-brightgreen)](uqff_fidelity_tests.py)
46
+ [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-5925%2F0-brightgreen)](uqff_fidelity_tests.py)
46
47
  [![Public surfaces](https://img.shields.io/badge/public_surfaces-2308-blue)](uqff_calculator.py)
47
48
  [![Whitepapers](https://img.shields.io/badge/whitepapers-2292-orange)](whitepapers/)
48
49
 
49
- **UQFF systematic rebuild — v0.401.0 complete-compile campaign live**
50
+ **UQFF systematic rebuild — v0.403.0 complete-compile campaign live**
50
51
 
51
- **This release (v0.401.0): THE INCORPORATION SHIP — ENRGYONE, INC. IS FOUNDED, AND ITS PAPERS ENTER THE REPOSITORY.** Six corporate documents, converted one-by-one from Daniel's source .docx via LibreOffice headless and **fidelity-verified before deposit** (word-count equality, head/tail identity, per-paragraph presence, table content checked cell-by-cell), now live in `pdf/`: the **Articles of Incorporation** (Ohio for-profit under ORC Chapter 1701; 1,000 shares of common stock; a purpose clause spanning UQFF physics engineering, AI software, hardware tooling, mathematical modeling, and AI-interactive sub-surface simulation technologies); the **Bylaws** (owners-control amendments, offices, the director slate); the **Commercial License Confirmation Letter** (the Technology Co-Owners' exclusive commercial grant to ENRGYONE, Inc.); the **IP Dual License Explanation** (AGPL-3.0 vs commercial, with the license-decision table); the **IP License & Sublicense Agreement** (ENRGYONE → ACHILLES, Inc., Texas — effective 31 July 2026); and the **NDA / Confidentiality Agreement** closing the stack. The set is internally coherent — one effective date, one officer/director roster, each document citing its predecessors — and is the corporate counterpart of this repository's AGPL-3.0 + Commercial dual license (`LICENSE` / `COMMERCIAL.md`): incorporation → governance → co-owners' grant → license doctrine → sublicense → confidentiality. The gate pins the six PDFs' presence and canonizes the standing rule that legal text gets the same verbatim discipline as well data. No code or catalogue changes: the downhole catalogue stands at TWENTY entries / TWELVE regions / THIRTEEN kinds, package v1.30.0. **Totals: 2,253 wired (2,308 DISPATCH keys) / gate 5,884 green / 4,180 defs. Next paper: PAPER_2258.**
52
+ **This release (v0.403.0): THE PRODUCT SHIP — THE INDEPENDENT EVALUATION'S FINISH SEQUENCE, EXECUTED.** An independent component-inventory and gap analysis of the v1.30.0 simulator (supplied 2026-08-27, verified claim-by-claim against the code, adopted verbatim as the standing plan) drew the line: after steps 1–5 it is a finished offline product. Eight package versions later (`uqff_downhole_simulator` v1.41.0–v1.48.0), the line is crossed and machine-verified. **The finish sequence:** (1) Modbus unified — the registry entry IS the real pymodbus client, refusal disciplined and minimal (refuses ONLY when host/register map are missing, naming which), the static source now disclosing what the runtime does; (2) the **well assembler** un-strands the catalogue — one WellAssembly per site family (KTB-HB, Site 1027, U1324, 504B), strict measured-coverage lookups that refuse rather than clamp, overburden integrated from the site's own density; (3) **measured wells are the engine defaults** — `run --well ktb_hb` simulates on the 1994 German deep-hole log, and the catalogued Volve F-12 measured downhole pressure becomes the reconciler's live leg, its −1,096 psi/yr drawdown classified UNEXPLAINED_TREND (reservoir physics correctly refused as gauge drift); (4) the **operator surface** — a headless, fully gate-tested OperatorSession under a Qt6 view: well picker, toolstring builder whose rating check BLOCKS the run against measured conditions (the 1994 KTB log is hotter than the 177 °C tool class at depth — no contrived kick needed), live P/T + twin-leg drift tabs, undervalued-stream alerts, and a citations pane that never disappears; (5) the **in-package acceptance suite** — `python -m uqff_downhole_simulator accept`, 55 checks across nine sections, independence from the physics corpus enforced by construction (the fidelity gate runs it as a subprocess AND statically verifies the module never references the calculator or any paper). **The field tier opens:** (6a) **lithology from the catalogue's own gamma curves** — six entries qualify under unit-disciplined detection (the catalogue's own trap cases pinned: KTB GRAV/mGals is gravimetry), the KTB pilot's 1,082-point log yielding 80 alternating intervals and Volve SR the textbook sand/shale split, every number labeled (INDUSTRY_STANDARD / STATISTICAL_PICKS / CONVENTION / no invented detector); (6b) **mixed toolstrings** — per-station tool models with honest legs (twin / reference-only / labeled class envelope / refused-but-still-streaming-well-P/T), aggregates computed over twin stations only with counts disclosed, and the rating check enforced INSIDE the engine constructor; (8) the **bench-test protocol** — BENCH_TEST_PROTOCOL.md ships in-package with the falsifiable prediction (paired GEOQ-class gauges, drift ratio R = 1.0324 at unity trims, ≥90 days honoring the reconciler's own 18-day floor), both-outcome labeling rules (confirmation → MEASURED_ON_BENCH with the full record attached; refutation → DERIVED_HYBRID with the refutation on record; no silent trim retuning), and `uqff_bench.py`'s four-verdict analysis self-verified on synthetic legs in output labeled SIMULATION_SELF_TEST — arithmetic verified, physics honestly unclaimed. **Remaining: step 7 only** — one live site path, blocked on what no code can supply (a real host and a cited register map from a real site). DERIVED_HYBRID stayed DERIVED_HYBRID throughout; U_i stays loaded-but-unused pending the Rule-10 derivation path; the twin solution track was audited by measurement at every layer mid-arc at Daniel's direction, and three small gaps that audit found were fixed in-arc, not deferred. **Totals: 2,253 wired (2,308 DISPATCH keys) / gate 5,925 green / 4,180 defs / acceptance 55 green. Next paper: PAPER_2258.**
52
53
 
53
54
  Author: Daniel T. Murphy · Star-Magic Research Program
54
55
  License: AGPL-3.0-or-later OR Commercial
@@ -106,7 +107,7 @@ Mizuno, Rossi).
106
107
  Full framework physics lives in the whitepaper corpus — the physics is the
107
108
  whitepapers; the calculator computes what the whitepapers derive.
108
109
 
109
- ## What is currently shipped (v0.401.0)
110
+ ## What is currently shipped (v0.403.0)
110
111
 
111
112
  ### Wiring campaign — LIVE (see `CLAUDE.md` charter)
112
113
 
@@ -1,16 +1,16 @@
1
1
  # Star-Magic-Program
2
2
 
3
- [![PyPI version](https://img.shields.io/pypi/v/star-magic-program.svg?cacheBust=0.401.0)](https://pypi.org/project/star-magic-program/)
4
- [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg?cacheBust=0.401.0)](https://pypi.org/project/star-magic-program/)
3
+ [![PyPI version](https://img.shields.io/pypi/v/star-magic-program.svg?cacheBust=0.403.0)](https://pypi.org/project/star-magic-program/)
4
+ [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg?cacheBust=0.403.0)](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-5884%2F0-brightgreen)](uqff_fidelity_tests.py)
7
+ [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-5925%2F0-brightgreen)](uqff_fidelity_tests.py)
8
8
  [![Public surfaces](https://img.shields.io/badge/public_surfaces-2308-blue)](uqff_calculator.py)
9
9
  [![Whitepapers](https://img.shields.io/badge/whitepapers-2292-orange)](whitepapers/)
10
10
 
11
- **UQFF systematic rebuild — v0.401.0 complete-compile campaign live**
11
+ **UQFF systematic rebuild — v0.403.0 complete-compile campaign live**
12
12
 
13
- **This release (v0.401.0): THE INCORPORATION SHIP — ENRGYONE, INC. IS FOUNDED, AND ITS PAPERS ENTER THE REPOSITORY.** Six corporate documents, converted one-by-one from Daniel's source .docx via LibreOffice headless and **fidelity-verified before deposit** (word-count equality, head/tail identity, per-paragraph presence, table content checked cell-by-cell), now live in `pdf/`: the **Articles of Incorporation** (Ohio for-profit under ORC Chapter 1701; 1,000 shares of common stock; a purpose clause spanning UQFF physics engineering, AI software, hardware tooling, mathematical modeling, and AI-interactive sub-surface simulation technologies); the **Bylaws** (owners-control amendments, offices, the director slate); the **Commercial License Confirmation Letter** (the Technology Co-Owners' exclusive commercial grant to ENRGYONE, Inc.); the **IP Dual License Explanation** (AGPL-3.0 vs commercial, with the license-decision table); the **IP License & Sublicense Agreement** (ENRGYONE → ACHILLES, Inc., Texas — effective 31 July 2026); and the **NDA / Confidentiality Agreement** closing the stack. The set is internally coherent — one effective date, one officer/director roster, each document citing its predecessors — and is the corporate counterpart of this repository's AGPL-3.0 + Commercial dual license (`LICENSE` / `COMMERCIAL.md`): incorporation → governance → co-owners' grant → license doctrine → sublicense → confidentiality. The gate pins the six PDFs' presence and canonizes the standing rule that legal text gets the same verbatim discipline as well data. No code or catalogue changes: the downhole catalogue stands at TWENTY entries / TWELVE regions / THIRTEEN kinds, package v1.30.0. **Totals: 2,253 wired (2,308 DISPATCH keys) / gate 5,884 green / 4,180 defs. Next paper: PAPER_2258.**
13
+ **This release (v0.403.0): THE PRODUCT SHIP — THE INDEPENDENT EVALUATION'S FINISH SEQUENCE, EXECUTED.** An independent component-inventory and gap analysis of the v1.30.0 simulator (supplied 2026-08-27, verified claim-by-claim against the code, adopted verbatim as the standing plan) drew the line: after steps 1–5 it is a finished offline product. Eight package versions later (`uqff_downhole_simulator` v1.41.0–v1.48.0), the line is crossed and machine-verified. **The finish sequence:** (1) Modbus unified — the registry entry IS the real pymodbus client, refusal disciplined and minimal (refuses ONLY when host/register map are missing, naming which), the static source now disclosing what the runtime does; (2) the **well assembler** un-strands the catalogue — one WellAssembly per site family (KTB-HB, Site 1027, U1324, 504B), strict measured-coverage lookups that refuse rather than clamp, overburden integrated from the site's own density; (3) **measured wells are the engine defaults** — `run --well ktb_hb` simulates on the 1994 German deep-hole log, and the catalogued Volve F-12 measured downhole pressure becomes the reconciler's live leg, its −1,096 psi/yr drawdown classified UNEXPLAINED_TREND (reservoir physics correctly refused as gauge drift); (4) the **operator surface** — a headless, fully gate-tested OperatorSession under a Qt6 view: well picker, toolstring builder whose rating check BLOCKS the run against measured conditions (the 1994 KTB log is hotter than the 177 °C tool class at depth — no contrived kick needed), live P/T + twin-leg drift tabs, undervalued-stream alerts, and a citations pane that never disappears; (5) the **in-package acceptance suite** — `python -m uqff_downhole_simulator accept`, 55 checks across nine sections, independence from the physics corpus enforced by construction (the fidelity gate runs it as a subprocess AND statically verifies the module never references the calculator or any paper). **The field tier opens:** (6a) **lithology from the catalogue's own gamma curves** — six entries qualify under unit-disciplined detection (the catalogue's own trap cases pinned: KTB GRAV/mGals is gravimetry), the KTB pilot's 1,082-point log yielding 80 alternating intervals and Volve SR the textbook sand/shale split, every number labeled (INDUSTRY_STANDARD / STATISTICAL_PICKS / CONVENTION / no invented detector); (6b) **mixed toolstrings** — per-station tool models with honest legs (twin / reference-only / labeled class envelope / refused-but-still-streaming-well-P/T), aggregates computed over twin stations only with counts disclosed, and the rating check enforced INSIDE the engine constructor; (8) the **bench-test protocol** — BENCH_TEST_PROTOCOL.md ships in-package with the falsifiable prediction (paired GEOQ-class gauges, drift ratio R = 1.0324 at unity trims, ≥90 days honoring the reconciler's own 18-day floor), both-outcome labeling rules (confirmation → MEASURED_ON_BENCH with the full record attached; refutation → DERIVED_HYBRID with the refutation on record; no silent trim retuning), and `uqff_bench.py`'s four-verdict analysis self-verified on synthetic legs in output labeled SIMULATION_SELF_TEST — arithmetic verified, physics honestly unclaimed. **Remaining: step 7 only** — one live site path, blocked on what no code can supply (a real host and a cited register map from a real site). DERIVED_HYBRID stayed DERIVED_HYBRID throughout; U_i stays loaded-but-unused pending the Rule-10 derivation path; the twin solution track was audited by measurement at every layer mid-arc at Daniel's direction, and three small gaps that audit found were fixed in-arc, not deferred. **Totals: 2,253 wired (2,308 DISPATCH keys) / gate 5,925 green / 4,180 defs / acceptance 55 green. Next paper: PAPER_2258.**
14
14
 
15
15
  Author: Daniel T. Murphy · Star-Magic Research Program
16
16
  License: AGPL-3.0-or-later OR Commercial
@@ -68,7 +68,7 @@ Mizuno, Rossi).
68
68
  Full framework physics lives in the whitepaper corpus — the physics is the
69
69
  whitepapers; the calculator computes what the whitepapers derive.
70
70
 
71
- ## What is currently shipped (v0.401.0)
71
+ ## What is currently shipped (v0.403.0)
72
72
 
73
73
  ### Wiring campaign — LIVE (see `CLAUDE.md` charter)
74
74
 
@@ -12045,3 +12045,116 @@ rule); README release/campaign/shipped rewrite + badges; CHANGELOG +
12045
12045
  _BUILD_LOG + SHIP_MESSAGE + RULINGS trail; 11 INCORPORATION_ARC trail
12046
12046
  rows. Gate 5,882 → 5,884, 0 failures. Zero code/catalogue changes.
12047
12047
  Awaiting Daniel: `.\ship.ps1` (clear .git/index.lock first).
12048
+
12049
+ ## Entry 274 — 2026-08-26/27 — v0.402.0 THE POLE-TO-POLE SHIP (downhole v1.31–v1.40, entries 21–30)
12050
+
12051
+ Ten catalogue entries wired one-at-a-time on Daniel's standing order
12052
+ ("well #21" … "well #30"), each fetched COMPLETE from PANGAEA's
12053
+ textfile route, transcribed verbatim, sidecarred, and gate-pinned with
12054
+ live re-derivations:
12055
+
12056
+ 21 heat-flow closure (q=k·dT/dz=130 mW/m² from entries 20×21);
12057
+ 22 WBD identity all-61-rows (1979 lab audited live); 23 Antarctica +
12058
+ replicate audit that caught a SOURCE-archive dropped digit (0.016→1.016);
12059
+ 24 dike elastics four-identity audit + two archive quirks; 25 the 504B
12060
+ cross-entry impedance join (60/63 rows, Z=13.9–18.5e6) making 504B a
12061
+ four-dataset family; 26 Nankai (Chikyu; slope-stability FS 2.38–15.31
12062
+ re-derived; 315/316 label typo detected); 27 735B gabbros (ladder
12063
+ completes; modal-mineralogy sums audit); 28 mantle peridotite
12064
+ (five-identity lock 0.0016 g/cm³; serpentinization in the grain
12065
+ densities); 29 Chicxulub peak ring (717 rows, self-checksumming
12066
+ transcription, shock-damage deficit); 30 ACEX age model at 87.89°N
12067
+ (hiatus as duplicate-depth pair; six rates re-derived hiatus-aware).
12068
+
12069
+ Reader: read_pangaea_txt ordinal-index fallback (entries 24/27);
12070
+ regression-verified against all prior .txt entries. Route notes:
12071
+ bundle DOIs don't export textfile (children do); JANUS MAD series is
12072
+ leg-ordered (1274A found in three probes); sequential-DOI reasoning
12073
+ found 504B sound velocity first-probe.
12074
+
12075
+ Ship prep: version sync 0.402.0 across pyproject (desc 476 chars) /
12076
+ calculator / gate / CITATION ×2 (date 2026-08-27) / registry version;
12077
+ SHIP GUARD marker INCORPORATION_ARC→POLE_TO_POLE_ARC (+ GAPS id
12078
+ pole_to_pole_arc_rule7); +2 ship pins (measured latitude span >152°
12079
+ between ACEX 87.89N and 1165B −64.38S + arc standing record); README
12080
+ release paragraph rewritten + badges (fidelity 5906, cacheBust ×2);
12081
+ CHANGELOG + _BUILD_LOG + SHIP_MESSAGE + RULINGS trail; 10 POLE_TO_POLE_ARC
12082
+ trail rows + WHITEPAPER_INDEX ship note. Gate 5,904 → 5,906, 0 failures.
12083
+ Awaiting Daniel: `.\ship.ps1` (clear .git/index.lock first).
12084
+
12085
+ ## Entry 275 — 2026-08-27 — v0.403.0 THE PRODUCT SHIP (downhole v1.41–v1.48: the finish sequence)
12086
+
12087
+ Daniel supplied an independent evaluation of the v1.30.0 simulator and
12088
+ ruled "I want to follow the plan if it looks right." Verified
12089
+ claim-by-claim against the code (all four spot-checks held; two stale
12090
+ catalogue counts corrected), adopted verbatim, executed step-by-step on
12091
+ GO-cadence:
12092
+
12093
+ 1 (v1.41) modbus unification — split was already unified AT RUNTIME (the
12094
+ evaluator's static read could not see it); fixed both real halves:
12095
+ source-honesty disclosure + disciplined config refusal. 2 (v1.42) well
12096
+ assembler — catalogue un-stranded; strict coverage; KTB overburden 190.9
12097
+ MPa under 253-MPa UCS. 3 (v1.43) measured defaults — demo_config +
12098
+ CLI --well/wells; production_live_stream (bar→psi labeled; 9-day stuck
12099
+ fault survives; station MD caller-supplied); Volve drawdown −1,096 psi/yr
12100
+ = UNEXPLAINED_TREND. 4 (v1.44) operator surface — headless session fully
12101
+ gate-tested + thin Qt view; blocking rating check demonstrated on REAL
12102
+ data (KTB window 184 C > 177 C tool class); ServiceLifeSimulator API
12103
+ mismatch found+fixed. 5 (v1.45) acceptance suite — in-package, grown to
12104
+ 55 checks; independence by construction; caught its own docstring
12105
+ violating the static check, a case-study --well gap, and its own A2
12106
+ string-luck flakiness. 6a (v1.46) gamma — unit-disciplined (trap cases
12107
+ GRAV/Density-grain pinned); KTB 80 intervals; labels everywhere.
12108
+ 6b (v1.47) mixed toolstrings — honest legs; in-engine rating block;
12109
+ first demo steered to the CORK column by the product's own rules.
12110
+ 8 (v1.48) bench protocol + four-verdict analysis (selftest R=1.0263
12111
+ ±0.0118 CONFIRMS; refute/span/SNR paths earned; SIMULATION_SELF_TEST
12112
+ self-labeled).
12113
+
12114
+ Mid-arc audit (Daniel's three questions): twin track verified by
12115
+ measurement at every layer; UQFF-catalogue coordination honestly
12116
+ inventoried (composition evaluated at measured conditions + envelope
12117
+ confronted with field data; no derivation-match yet — step 8 territory by
12118
+ design); sweep found 3 real gaps (gui extra, LAS button, drift tab),
12119
+ fixed in-arc; two sweep greps were substring false-positives, re-verified
12120
+ before certifying.
12121
+
12122
+ Ship prep: version sync 0.403.0 (desc 500 chars) across pyproject /
12123
+ calculator / gate / CITATION ×2 / registry version; SHIP GUARD marker
12124
+ POLE_TO_POLE_ARC→PRODUCT_ARC (+ GAPS id product_arc_rule7); +2 ship pins
12125
+ (live product-surface census + standing record); README release
12126
+ paragraph + campaign/shipped lines + badges; CHANGELOG + _BUILD_LOG +
12127
+ SHIP_MESSAGE + RULINGS trail; 10 PRODUCT_ARC trail rows + WHITEPAPER_INDEX
12128
+ note. Gate 5,922 → 5,924, 0 failures. Remaining: step 7 only (site
12129
+ details). Awaiting Daniel: `.\ship.ps1` (clear .git/index.lock first).
12130
+
12131
+ ## Entry 276 — 2026-08-27 — v0.403.0 REMANUFACTURE (numpy-2 trapz + stale staging tree)
12132
+
12133
+ CI failure diagnosed from Daniel's log screenshots: fidelity-gate (3.12)
12134
+ died at gate line 13695 (FINISH-SEQ 2 pin) -> uqff_well_assembler.py:136
12135
+ `np.trapz` -> AttributeError: numpy >= 2.0 removed the alias. Root cause
12136
+ of the blind-repro failure: the sandbox's proxy-pinned numpy 2.2.6 STILL
12137
+ carries trapz, so every local reproduction (build under setuptools 82/84,
12138
+ pip install ., gate without pymodbus/matplotlib, 36 s green) passed while
12139
+ every CI runner failed. Fix: module-level _TRAPEZOID = np.trapezoid with
12140
+ 1.x fallback; overburden call switched; PORTABILITY GUARD 2 pin bans
12141
+ np.trapz in the assembler and re-runs the 190.9-MPa KTB integral on the
12142
+ current interpreter's numpy. STANDING RULE canonized: local dependency
12143
+ versions are NOT the ship's dependency versions - removed-alias sweeps
12144
+ (trapz/in1d/alltrue/product/row_stack/NaN: repo-wide sweep found exactly
12145
+ the one hit) are part of ship prep.
12146
+
12147
+ Same audit found Daniel's 'stale files': the TRACKED
12148
+ star_magic_program-0.402.0/ sdist staging tree (129 files, ~5 MB - the
12149
+ failed in-repo v0.402-prep build could not delete its staging dir on the
12150
+ mounted FS and add -A committed it; it rode through v0.402.0's green CI
12151
+ as dead weight). Sandbox cannot delete it (same mount permission);
12152
+ .gitignore now carries star_magic_program-*/; Daniel removes it on
12153
+ Windows: git rm -r star_magic_program-0.402.0. Hardening kept from the
12154
+ diagnosis pass: acceptance A2 stochastic band widened, acceptance-
12155
+ subprocess pin embeds stderr tail + timeout.
12156
+
12157
+ Per Daniel: tag v0.403.0 NOT burned (PyPI never received it) - same
12158
+ version remanufactured. Gate 5,924 -> 5,925, 0 failures; acceptance
12159
+ 55/55; sdist/wheel rebuilt clean. Daniel: delete the stale tree, commit,
12160
+ re-tag v0.403.0 (move tag to the new commit), push.
@@ -0,0 +1 @@
1
+ v0.403.0
@@ -1728,3 +1728,5 @@ CATALOGUE_ARC,n/a,n/a,NOT_APPLICABLE,application real-data catalogue single-geom
1728
1728
  DEEPDATA_ARC,n/a,n/a,NOT_APPLICABLE,application real-data catalogue single-geometry,v0.399.0
1729
1729
  TWENTYWELLS_ARC,n/a,n/a,NOT_APPLICABLE,application real-data catalogue single-geometry,v0.400.0
1730
1730
  INCORPORATION_ARC,n/a,n/a,NOT_APPLICABLE,corporate record ship - no physics content,v0.401.0
1731
+ POLE_TO_POLE_ARC,n/a,n/a,NOT_APPLICABLE,real-data catalogue ship - no cross-geometry content,v0.402.0
1732
+ PRODUCT_ARC,n/a,n/a,NOT_APPLICABLE,product-engineering ship - no cross-geometry content,v0.403.0
@@ -1729,3 +1729,5 @@ CATALOGUE_ARC,n/a,XGEO_NOT_REQUIRED,none,v0.398.0
1729
1729
  DEEPDATA_ARC,n/a,XGEO_NOT_REQUIRED,none,v0.399.0
1730
1730
  TWENTYWELLS_ARC,n/a,XGEO_NOT_REQUIRED,none,v0.400.0
1731
1731
  INCORPORATION_ARC,n/a,XGEO_NOT_REQUIRED,none,v0.401.0
1732
+ POLE_TO_POLE_ARC,n/a,XGEO_NOT_REQUIRED,none,v0.402.0
1733
+ PRODUCT_ARC,n/a,XGEO_NOT_REQUIRED,none,v0.403.0
@@ -99,7 +99,7 @@ Every previously non-numeric key now carries a canonical PAPER number (2179-2212
99
99
  | 2233 | PAPER_1203b |
100
100
 
101
101
  - **Verification arc 2026-08-16 (v0.387.0):** paradox-corpus audit ZERO recalcs; grammar dragnet 110 family sites; origin term verified; AP text layer EXHAUSTED (458 docs). Runnable queue empty — remaining items Daniel-owned.
102
- - **Distinct wired papers: 2,253 (+55 canonical alias numbers 2179-2233; 2,308 DISPATCH keys). PAPER_2257 two-stream architecture landmark, 2026-08-24; v0.398.0 CATALOGUE SHIP (downhole v1.14-v1.20, ten real-data entries), 2026-08-25; v0.399.0 DEEP DATA SHIP (v1.21-v1.25, entries 11-15, KTB suite + live overburden integral), 2026-08-25; v0.400.0 TWENTY WELLS SHIP (v1.26-v1.30, entries 16-20, quantity ledger closed), 2026-08-25; v0.401.0 INCORPORATION SHIP (six ENRGYONE founding PDFs in pdf/), 2026-08-25.** = `wired_count()` = `len(DISPATCH)` (live at band 2121-2130, 2026-08-16; earlier eras' 1,417 figure superseded).
102
+ - **Distinct wired papers: 2,253 (+55 canonical alias numbers 2179-2233; 2,308 DISPATCH keys). PAPER_2257 two-stream architecture landmark, 2026-08-24; v0.398.0 CATALOGUE SHIP (downhole v1.14-v1.20, ten real-data entries), 2026-08-25; v0.399.0 DEEP DATA SHIP (v1.21-v1.25, entries 11-15, KTB suite + live overburden integral), 2026-08-25; v0.400.0 TWENTY WELLS SHIP (v1.26-v1.30, entries 16-20, quantity ledger closed), 2026-08-25; v0.401.0 INCORPORATION SHIP (six ENRGYONE founding PDFs in pdf/), 2026-08-25; v0.402.0 POLE-TO-POLE SHIP (v1.31-v1.40, entries 21-30: heat-flow closure, 504B four-dataset family + impedance join, crust ladder complete to mantle, Chicxulub, ACEX at 87.89N - thirty entries pole to pole, latitude span >152 deg measured live), 2026-08-27; v0.403.0 PRODUCT SHIP (v1.41-v1.48: evaluation finish sequence 1-5 executed = finished offline product + field tier 6a/6b/8; acceptance suite 55 checks in-package; step 7 alone remains, site-blocked), 2026-08-27.** = `wired_count()` = `len(DISPATCH)` (live at band 2121-2130, 2026-08-16; earlier eras' 1,417 figure superseded).
103
103
  - **Index table file-row marks:** **934 ✓ CLEAN**, **245 ⚠ OPEN_RULING**, **1076 ⬜** not-touched (934 + 245 + 1076 = 2255 ✓). Wired file-rows (934 + 245 = 1,179) sit below `wired_count()` = 1,417 because variant files share a base dispatch.
104
104
  - **ORPHAN-PHYSICS (v0.367.1 audit):** no paper numbers are missing, but 71 non-numbered `.md` files in the predecessor hold **6,615 equation blocks** outside the corpus. Queued as Q-ORPHAN-PHYSICS.
105
105
  - **OPEN targets:** 0
@@ -324,3 +324,12 @@ THE TWENTY WELLS SHIP: downhole v1.26-v1.30 — catalogue 15→20 entries / 12 r
324
324
 
325
325
  ## v0.401.0 — 2026-08-25
326
326
  THE INCORPORATION SHIP: six ENRGYONE, Inc. founding documents (Articles, Bylaws, Commercial License Letter, Dual-License Explanation, ACHILLES Sublicense, NDA) converted via LibreOffice headless, fidelity-verified word-for-word, deposited in pdf/. The corporate stack behind the AGPL-3.0 + Commercial dual license. No code changes. Gate 5,884/0. 23-file pass verified.
327
+
328
+ ## v0.402.0 — 2026-08-27
329
+ THE POLE-TO-POLE SHIP: downhole v1.31-v1.40 — catalogue 20→30 entries / 18 regions / 19 kinds. Heat-flow closure computed live; 504B four-dataset family + cross-entry impedance join; Antarctica/Nankai/SW-Indian/Mid-Atlantic/Chicxulub/central-Arctic join; crust ladder complete seafloor-mud→mantle; ACEX age model = first time axis; two source-archive typos and two archival row-slips detected and disclosed, never repaired. Ship pin measures the latitude span (>152 deg) live. Gate 5,906/0. 23-file pass verified.
330
+
331
+ ## v0.403.0 — 2026-08-27
332
+ THE PRODUCT SHIP: downhole v1.41-v1.48 — the independent evaluation's finish sequence executed 1-5 (modbus unified, well assembler, measured-well engine defaults, operator surface, 55-check in-package acceptance suite) = FINISHED OFFLINE PRODUCT by the evaluation's own criterion; field tier 6a gamma/lithology, 6b mixed toolstrings + in-engine rating block, 8 bench-test protocol with four-verdict self-labeled analysis. Remaining: step 7 only (site details). Gate 5,924/0. Acceptance 55/55. 23-file pass verified.
333
+
334
+ ## v0.403.0-remanufacture — 2026-08-27
335
+ CI red on all runners: numpy>=2.0 removed np.trapz; assembler overburden now uses np.trapezoid (1.x fallback); PORTABILITY GUARD 2 pin + standing removed-alias-sweep rule. Stale TRACKED sdist staging tree star_magic_program-0.402.0/ identified (mounted-FS delete block; gitignored; Daniel removes on Windows). Same version per Daniel (tag preserved; PyPI untouched). Gate 5,925/0. Acceptance 55/55.
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "star-magic-program"
7
- version = "0.401.0"
8
- description = "Star-Magic UQFF calculator v0.401.0: THE INCORPORATION SHIP. 2,253 dispatches (2,308 keys), gate 5,884/0. ENRGYONE, Inc. founding documents enter the repository as six fidelity-verified PDFs (pdf/): Articles of Incorporation, Bylaws, Commercial License Confirmation, IP Dual-License Explanation, IP License & Sublicense Agreement (ACHILLES), and NDA - the corporate stack behind the AGPL-3.0 + Commercial dual license. Downhole catalogue unchanged at 20 entries / 13 kinds. Next: PAPER_2258."
7
+ version = "0.403.0"
8
+ description = "Star-Magic UQFF calculator v0.403.0: THE PRODUCT SHIP. 2,253 dispatches (2,308 keys), gate 5,924/0. The downhole simulator completes the adopted independent-evaluation plan (v1.41-v1.48): finish sequence 1-5 - modbus unified, well assembler, measured wells as engine defaults, operator surface, in-package 55-check acceptance suite = FINISHED OFFLINE PRODUCT; field tier 6a gamma/lithology from catalogue curves, 6b mixed toolstrings + in-engine rating block, 8 bench-test protocol. Next: PAPER_2258."
9
9
  readme = "README.md"
10
10
  authors = [
11
11
  { name = "Daniel T. Murphy", email = "daniel.murphy00@enrgyone.com" }
@@ -54,7 +54,7 @@ Issues = "https://github.com/Daniel8Murphy0007/Star-Magic-Program/issues"
54
54
 
55
55
  [project.optional-dependencies]
56
56
  modbus = ["pymodbus>=3.15"]
57
- gui = ["PyQt6"]
57
+ gui = ["PyQt6", "matplotlib"]
58
58
 
59
59
  [tool.setuptools]
60
60
  packages = ["uqff_downhole_simulator"]
@@ -145,5 +145,26 @@ py-modules = ["uqff_session_closures", "uqff_fubii_variants", "uqff_ngc_catalog"
145
145
  "uqff_downhole_simulator/catalog/iodp_u1324_pore_pressure.provenance.json",
146
146
  "uqff_downhole_simulator/catalog/odp_1027c_cork_temperature.txt",
147
147
  "uqff_downhole_simulator/catalog/odp_1027c_cork_temperature.provenance.json",
148
+ "uqff_downhole_simulator/catalog/odp_1027b_thermal_conductivity.txt",
149
+ "uqff_downhole_simulator/catalog/odp_1027b_thermal_conductivity.provenance.json",
150
+ "uqff_downhole_simulator/catalog/dsdp_504b_physical_properties.txt",
151
+ "uqff_downhole_simulator/catalog/dsdp_504b_physical_properties.provenance.json",
152
+ "uqff_downhole_simulator/catalog/odp_1165b_thermal_conductivity.txt",
153
+ "uqff_downhole_simulator/catalog/odp_1165b_thermal_conductivity.provenance.json",
154
+ "uqff_downhole_simulator/catalog/odp_504b_dike_elastic_moduli.txt",
155
+ "uqff_downhole_simulator/catalog/odp_504b_dike_elastic_moduli.provenance.json",
156
+ "uqff_downhole_simulator/catalog/dsdp_504b_sound_velocity.txt",
157
+ "uqff_downhole_simulator/catalog/dsdp_504b_sound_velocity.provenance.json",
158
+ "uqff_downhole_simulator/catalog/nankai_megasplay_shear_strength.txt",
159
+ "uqff_downhole_simulator/catalog/nankai_megasplay_shear_strength.provenance.json",
160
+ "uqff_downhole_simulator/catalog/odp_735b_gabbro_elastic_moduli.txt",
161
+ "uqff_downhole_simulator/catalog/odp_735b_gabbro_elastic_moduli.provenance.json",
162
+ "uqff_downhole_simulator/catalog/odp_1274a_mantle_peridotite_mad.txt",
163
+ "uqff_downhole_simulator/catalog/odp_1274a_mantle_peridotite_mad.provenance.json",
164
+ "uqff_downhole_simulator/catalog/chicxulub_m0077a_pwave_velocity.txt",
165
+ "uqff_downhole_simulator/catalog/chicxulub_m0077a_pwave_velocity.provenance.json",
166
+ "uqff_downhole_simulator/BENCH_TEST_PROTOCOL.md",
167
+ "uqff_downhole_simulator/catalog/acex_lomonosov_age_depth_model.txt",
168
+ "uqff_downhole_simulator/catalog/acex_lomonosov_age_depth_model.provenance.json",
148
169
  "uqff_downhole_simulator/catalog/volve_15_9_19a_core_excerpt.provenance.json",
149
170
  ]
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: star-magic-program
3
- Version: 0.401.0
4
- Summary: Star-Magic UQFF calculator v0.401.0: THE INCORPORATION SHIP. 2,253 dispatches (2,308 keys), gate 5,884/0. ENRGYONE, Inc. founding documents enter the repository as six fidelity-verified PDFs (pdf/): Articles of Incorporation, Bylaws, Commercial License Confirmation, IP Dual-License Explanation, IP License & Sublicense Agreement (ACHILLES), and NDA - the corporate stack behind the AGPL-3.0 + Commercial dual license. Downhole catalogue unchanged at 20 entries / 13 kinds. Next: PAPER_2258.
3
+ Version: 0.403.0
4
+ Summary: Star-Magic UQFF calculator v0.403.0: THE PRODUCT SHIP. 2,253 dispatches (2,308 keys), gate 5,924/0. The downhole simulator completes the adopted independent-evaluation plan (v1.41-v1.48): finish sequence 1-5 - modbus unified, well assembler, measured wells as engine defaults, operator surface, in-package 55-check acceptance suite = FINISHED OFFLINE PRODUCT; field tier 6a gamma/lithology from catalogue curves, 6b mixed toolstrings + in-engine rating block, 8 bench-test protocol. Next: PAPER_2258.
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,21 +34,22 @@ Provides-Extra: modbus
34
34
  Requires-Dist: pymodbus>=3.15; extra == "modbus"
35
35
  Provides-Extra: gui
36
36
  Requires-Dist: PyQt6; extra == "gui"
37
+ Requires-Dist: matplotlib; extra == "gui"
37
38
  Dynamic: license-file
38
39
 
39
40
  # Star-Magic-Program
40
41
 
41
- [![PyPI version](https://img.shields.io/pypi/v/star-magic-program.svg?cacheBust=0.401.0)](https://pypi.org/project/star-magic-program/)
42
- [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg?cacheBust=0.401.0)](https://pypi.org/project/star-magic-program/)
42
+ [![PyPI version](https://img.shields.io/pypi/v/star-magic-program.svg?cacheBust=0.403.0)](https://pypi.org/project/star-magic-program/)
43
+ [![Python versions](https://img.shields.io/pypi/pyversions/star-magic-program.svg?cacheBust=0.403.0)](https://pypi.org/project/star-magic-program/)
43
44
  [![Documentation Status](https://readthedocs.org/projects/star-magic-program/badge/?version=latest)](https://star-magic-program.readthedocs.io/en/latest/?badge=latest)
44
45
  [![License: AGPL-3.0 + Commercial](https://img.shields.io/badge/License-AGPL--3.0%20%2B%20Commercial-blue.svg)](LICENSE)
45
- [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-5884%2F0-brightgreen)](uqff_fidelity_tests.py)
46
+ [![Fidelity gate](https://img.shields.io/badge/fidelity_gate-5925%2F0-brightgreen)](uqff_fidelity_tests.py)
46
47
  [![Public surfaces](https://img.shields.io/badge/public_surfaces-2308-blue)](uqff_calculator.py)
47
48
  [![Whitepapers](https://img.shields.io/badge/whitepapers-2292-orange)](whitepapers/)
48
49
 
49
- **UQFF systematic rebuild — v0.401.0 complete-compile campaign live**
50
+ **UQFF systematic rebuild — v0.403.0 complete-compile campaign live**
50
51
 
51
- **This release (v0.401.0): THE INCORPORATION SHIP — ENRGYONE, INC. IS FOUNDED, AND ITS PAPERS ENTER THE REPOSITORY.** Six corporate documents, converted one-by-one from Daniel's source .docx via LibreOffice headless and **fidelity-verified before deposit** (word-count equality, head/tail identity, per-paragraph presence, table content checked cell-by-cell), now live in `pdf/`: the **Articles of Incorporation** (Ohio for-profit under ORC Chapter 1701; 1,000 shares of common stock; a purpose clause spanning UQFF physics engineering, AI software, hardware tooling, mathematical modeling, and AI-interactive sub-surface simulation technologies); the **Bylaws** (owners-control amendments, offices, the director slate); the **Commercial License Confirmation Letter** (the Technology Co-Owners' exclusive commercial grant to ENRGYONE, Inc.); the **IP Dual License Explanation** (AGPL-3.0 vs commercial, with the license-decision table); the **IP License & Sublicense Agreement** (ENRGYONE → ACHILLES, Inc., Texas — effective 31 July 2026); and the **NDA / Confidentiality Agreement** closing the stack. The set is internally coherent — one effective date, one officer/director roster, each document citing its predecessors — and is the corporate counterpart of this repository's AGPL-3.0 + Commercial dual license (`LICENSE` / `COMMERCIAL.md`): incorporation → governance → co-owners' grant → license doctrine → sublicense → confidentiality. The gate pins the six PDFs' presence and canonizes the standing rule that legal text gets the same verbatim discipline as well data. No code or catalogue changes: the downhole catalogue stands at TWENTY entries / TWELVE regions / THIRTEEN kinds, package v1.30.0. **Totals: 2,253 wired (2,308 DISPATCH keys) / gate 5,884 green / 4,180 defs. Next paper: PAPER_2258.**
52
+ **This release (v0.403.0): THE PRODUCT SHIP — THE INDEPENDENT EVALUATION'S FINISH SEQUENCE, EXECUTED.** An independent component-inventory and gap analysis of the v1.30.0 simulator (supplied 2026-08-27, verified claim-by-claim against the code, adopted verbatim as the standing plan) drew the line: after steps 1–5 it is a finished offline product. Eight package versions later (`uqff_downhole_simulator` v1.41.0–v1.48.0), the line is crossed and machine-verified. **The finish sequence:** (1) Modbus unified — the registry entry IS the real pymodbus client, refusal disciplined and minimal (refuses ONLY when host/register map are missing, naming which), the static source now disclosing what the runtime does; (2) the **well assembler** un-strands the catalogue — one WellAssembly per site family (KTB-HB, Site 1027, U1324, 504B), strict measured-coverage lookups that refuse rather than clamp, overburden integrated from the site's own density; (3) **measured wells are the engine defaults** — `run --well ktb_hb` simulates on the 1994 German deep-hole log, and the catalogued Volve F-12 measured downhole pressure becomes the reconciler's live leg, its −1,096 psi/yr drawdown classified UNEXPLAINED_TREND (reservoir physics correctly refused as gauge drift); (4) the **operator surface** — a headless, fully gate-tested OperatorSession under a Qt6 view: well picker, toolstring builder whose rating check BLOCKS the run against measured conditions (the 1994 KTB log is hotter than the 177 °C tool class at depth — no contrived kick needed), live P/T + twin-leg drift tabs, undervalued-stream alerts, and a citations pane that never disappears; (5) the **in-package acceptance suite** — `python -m uqff_downhole_simulator accept`, 55 checks across nine sections, independence from the physics corpus enforced by construction (the fidelity gate runs it as a subprocess AND statically verifies the module never references the calculator or any paper). **The field tier opens:** (6a) **lithology from the catalogue's own gamma curves** — six entries qualify under unit-disciplined detection (the catalogue's own trap cases pinned: KTB GRAV/mGals is gravimetry), the KTB pilot's 1,082-point log yielding 80 alternating intervals and Volve SR the textbook sand/shale split, every number labeled (INDUSTRY_STANDARD / STATISTICAL_PICKS / CONVENTION / no invented detector); (6b) **mixed toolstrings** — per-station tool models with honest legs (twin / reference-only / labeled class envelope / refused-but-still-streaming-well-P/T), aggregates computed over twin stations only with counts disclosed, and the rating check enforced INSIDE the engine constructor; (8) the **bench-test protocol** — BENCH_TEST_PROTOCOL.md ships in-package with the falsifiable prediction (paired GEOQ-class gauges, drift ratio R = 1.0324 at unity trims, ≥90 days honoring the reconciler's own 18-day floor), both-outcome labeling rules (confirmation → MEASURED_ON_BENCH with the full record attached; refutation → DERIVED_HYBRID with the refutation on record; no silent trim retuning), and `uqff_bench.py`'s four-verdict analysis self-verified on synthetic legs in output labeled SIMULATION_SELF_TEST — arithmetic verified, physics honestly unclaimed. **Remaining: step 7 only** — one live site path, blocked on what no code can supply (a real host and a cited register map from a real site). DERIVED_HYBRID stayed DERIVED_HYBRID throughout; U_i stays loaded-but-unused pending the Rule-10 derivation path; the twin solution track was audited by measurement at every layer mid-arc at Daniel's direction, and three small gaps that audit found were fixed in-arc, not deferred. **Totals: 2,253 wired (2,308 DISPATCH keys) / gate 5,925 green / 4,180 defs / acceptance 55 green. Next paper: PAPER_2258.**
52
53
 
53
54
  Author: Daniel T. Murphy · Star-Magic Research Program
54
55
  License: AGPL-3.0-or-later OR Commercial
@@ -106,7 +107,7 @@ Mizuno, Rossi).
106
107
  Full framework physics lives in the whitepaper corpus — the physics is the
107
108
  whitepapers; the calculator computes what the whitepapers derive.
108
109
 
109
- ## What is currently shipped (v0.401.0)
110
+ ## What is currently shipped (v0.403.0)
110
111
 
111
112
  ### Wiring campaign — LIVE (see `CLAUDE.md` charter)
112
113
 
@@ -52,19 +52,24 @@ star_magic_program.egg-info/SOURCES.txt
52
52
  star_magic_program.egg-info/dependency_links.txt
53
53
  star_magic_program.egg-info/requires.txt
54
54
  star_magic_program.egg-info/top_level.txt
55
+ uqff_downhole_simulator/BENCH_TEST_PROTOCOL.md
55
56
  uqff_downhole_simulator/README.md
56
57
  uqff_downhole_simulator/__init__.py
57
58
  uqff_downhole_simulator/__main__.py
59
+ uqff_downhole_simulator/acceptance_tests.py
58
60
  uqff_downhole_simulator/example_register_map.json
59
61
  uqff_downhole_simulator/matplotlib_demo.py
60
62
  uqff_downhole_simulator/qt6_downhole_app.py
61
63
  uqff_downhole_simulator/sample_well_profile.csv
64
+ uqff_downhole_simulator/uqff_bench.py
62
65
  uqff_downhole_simulator/uqff_case_study.py
63
66
  uqff_downhole_simulator/uqff_deviation.py
64
67
  uqff_downhole_simulator/uqff_downhole_engine.py
65
68
  uqff_downhole_simulator/uqff_follower.py
69
+ uqff_downhole_simulator/uqff_gamma.py
66
70
  uqff_downhole_simulator/uqff_gauge_specs.py
67
71
  uqff_downhole_simulator/uqff_modbus.py
72
+ uqff_downhole_simulator/uqff_operator_app.py
68
73
  uqff_downhole_simulator/uqff_ports.py
69
74
  uqff_downhole_simulator/uqff_profile_catalog.py
70
75
  uqff_downhole_simulator/uqff_quartz_hpht_extension.py
@@ -72,10 +77,19 @@ uqff_downhole_simulator/uqff_reconciler.py
72
77
  uqff_downhole_simulator/uqff_service_life.py
73
78
  uqff_downhole_simulator/uqff_telemetry.py
74
79
  uqff_downhole_simulator/uqff_tool_library.py
80
+ uqff_downhole_simulator/uqff_well_assembler.py
81
+ uqff_downhole_simulator/catalog/acex_lomonosov_age_depth_model.provenance.json
82
+ uqff_downhole_simulator/catalog/acex_lomonosov_age_depth_model.txt
75
83
  uqff_downhole_simulator/catalog/agassiz77_canada_temperature.csv
76
84
  uqff_downhole_simulator/catalog/agassiz77_canada_temperature.provenance.json
85
+ uqff_downhole_simulator/catalog/chicxulub_m0077a_pwave_velocity.provenance.json
86
+ uqff_downhole_simulator/catalog/chicxulub_m0077a_pwave_velocity.txt
77
87
  uqff_downhole_simulator/catalog/collingwood_1_28_ks_complete.las
78
88
  uqff_downhole_simulator/catalog/collingwood_1_28_ks_complete.provenance.json
89
+ uqff_downhole_simulator/catalog/dsdp_504b_physical_properties.provenance.json
90
+ uqff_downhole_simulator/catalog/dsdp_504b_physical_properties.txt
91
+ uqff_downhole_simulator/catalog/dsdp_504b_sound_velocity.provenance.json
92
+ uqff_downhole_simulator/catalog/dsdp_504b_sound_velocity.txt
79
93
  uqff_downhole_simulator/catalog/gisp2_greenland_temperature.csv
80
94
  uqff_downhole_simulator/catalog/gisp2_greenland_temperature.provenance.json
81
95
  uqff_downhole_simulator/catalog/iodp_u1324_pore_pressure.provenance.json
@@ -98,10 +112,22 @@ uqff_downhole_simulator/catalog/l06_06_nl_survey.csv
98
112
  uqff_downhole_simulator/catalog/l06_06_nl_survey.provenance.json
99
113
  uqff_downhole_simulator/catalog/l07_01_nl_excerpt.las
100
114
  uqff_downhole_simulator/catalog/l07_01_nl_excerpt.provenance.json
115
+ uqff_downhole_simulator/catalog/nankai_megasplay_shear_strength.provenance.json
116
+ uqff_downhole_simulator/catalog/nankai_megasplay_shear_strength.txt
117
+ uqff_downhole_simulator/catalog/odp_1027b_thermal_conductivity.provenance.json
118
+ uqff_downhole_simulator/catalog/odp_1027b_thermal_conductivity.txt
101
119
  uqff_downhole_simulator/catalog/odp_1027c_cork_temperature.provenance.json
102
120
  uqff_downhole_simulator/catalog/odp_1027c_cork_temperature.txt
121
+ uqff_downhole_simulator/catalog/odp_1165b_thermal_conductivity.provenance.json
122
+ uqff_downhole_simulator/catalog/odp_1165b_thermal_conductivity.txt
123
+ uqff_downhole_simulator/catalog/odp_1274a_mantle_peridotite_mad.provenance.json
124
+ uqff_downhole_simulator/catalog/odp_1274a_mantle_peridotite_mad.txt
125
+ uqff_downhole_simulator/catalog/odp_504b_dike_elastic_moduli.provenance.json
126
+ uqff_downhole_simulator/catalog/odp_504b_dike_elastic_moduli.txt
103
127
  uqff_downhole_simulator/catalog/odp_504b_leg137_borehole_fluids.provenance.json
104
128
  uqff_downhole_simulator/catalog/odp_504b_leg137_borehole_fluids.txt
129
+ uqff_downhole_simulator/catalog/odp_735b_gabbro_elastic_moduli.provenance.json
130
+ uqff_downhole_simulator/catalog/odp_735b_gabbro_elastic_moduli.txt
105
131
  uqff_downhole_simulator/catalog/scorpio_e1_sa_excerpt.las
106
132
  uqff_downhole_simulator/catalog/scorpio_e1_sa_excerpt.provenance.json
107
133
  uqff_downhole_simulator/catalog/university_6_17_no1_tx_excerpt.las
@@ -5,6 +5,7 @@ scipy>=1.10
5
5
 
6
6
  [gui]
7
7
  PyQt6
8
+ matplotlib
8
9
 
9
10
  [modbus]
10
11
  pymodbus>=3.15