Conversation
There was a problem hiding this comment.
🟡 Changes recommended
There are correctness/import-safety issues (e.g., eager matplotlib import in lfm.viz.gravity_recovery and a protocol signature mismatch in Backend.step_complex) that should be fixed before approval.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Publishes a large tranche of previously-local LFM emergence work, expanding the library with new analysis/experiment modules (e.g., stencil-consistent Poisson solves, operational force-harness policy, macroscopic LIMIT-02 bodies, R1 light packet helpers) plus visualization utilities and extensive regression tests to lock in the new behavior.
Changes:
- Add new physics/analysis modules (stencils, mode projections, coarse-graining, macroscopic LIMIT-02, frame/topology audits) and new experiment utilities (charge coupling, orbit integration, improved dispersion inversion).
- Extend core configuration/backend interfaces (precision selection, dx scaling, optional Noether-current stencil) and expose new public APIs via package
__init__modules. - Add broad pytest coverage across foundations/analysis/experiment layers and bump packaging metadata.
File summaries
| File | Description |
|---|---|
| tests/validation/test_string_tension.py | Add timeout marker for slow validation test |
| tests/test_unified_force_harness.py | Regression tests for unified-force evidence policy |
| tests/test_support_removal.py | Test support-removal continuation solver |
| tests/test_substrate_emergence.py | Tests for substrate emergence observables |
| tests/test_stencils.py | Extend stencil operator tests (grad/laplacian eigenvalues) |
| tests/test_stationary_branch.py | Test stationary-branch point solver |
| tests/test_skyrme_topology.py | Topology/Skyrme hedgehog tests |
| tests/test_simulation.py | Add tests for boundary masks + checkpoint continuation |
| tests/test_r6_unified_live.py | Tests for R6 weak normalization |
| tests/test_r5_unified_live.py | Tests for R5 face-square completion |
| tests/test_r5_u1_static.py | Tests for static U(1) Gauss solver |
| tests/test_r4_quantum_color.py | Tests for R4 quantum color diagnostics |
| tests/test_r4_gauge_spectrum.py | Spectral tests for compact-link gauge spectrum |
| tests/test_r4_color_static.py | Tests for static color Gauss/relaxation helpers |
| tests/test_r3_link_frame.py | Tests for unpromoted R3 link-frame prototype |
| tests/test_prepared_scalar_pair.py | Tests for prepared scalar-pair installer/helpers |
| tests/test_poincare.py | Poincaré-emergence diagnostic tests |
| tests/test_particle_kinematics.py | Tests for particle kinematics readouts |
| tests/test_parsimonious_four_force.py | Tests for parsimonious four-force (P4F) module |
| tests/test_p4f_dw_force_harness_adapter.py | Adapter tests for external force-harness runner |
| tests/test_operational_force_harness_entrypoints.py | Entry-point regression tests for operational harness |
| tests/test_mode_analysis.py | Tests for mode projections + leapfrog branch split |
| tests/test_local_phase_clock.py | Tests for local phase-clock map support |
| tests/test_limit02_orbit.py | LIMIT-02 macroscopic orbit tests |
| tests/test_gradient_spectroscopy.py | Tests for gradient spectroscopy pipeline |
| tests/test_frame_links.py | Tests for frame-link provenance algebra |
| tests/test_frame_completion.py | Tests for frame-completion algebra and response |
| tests/test_frame_candidates.py | Tests for candidate screening ledger |
| tests/test_fields.py | Tests for new 19pt Poisson/equilibrate + R1 light helpers |
| tests/test_exact_leapfrog_dispersion.py | Tests for exact leapfrog dispersion inversion |
| tests/test_emergence.py | Tests for emergence observables invariances |
| tests/test_collective_spectrum.py | Collective-mode spectrum audits |
| tests/test_collective_geometry.py | Operational collective geometry tests |
| tests/test_coarse_graining.py | Tests for Fourier blocking diagnostics |
| tests/test_clock_link.py | Tests for clock-link candidate diagnostics |
| tests/test_clock_link_live.py | Live clock-link dynamics tests |
| tests/test_charge_current.py | U(1) charge-current exactness tests |
| tests/test_charge_coupling.py | Tests for charge-coupled LFM experiment |
| tests/test_cartesian_noether_solver.py | Tests for cartesian fixed-charge Noether solver |
| tests/test_analysis.py | Tests for localized weighted centroid tracker |
| pyproject.toml | Version bump + extras/pytest configuration |
| lfm/viz/poincare.py | New Poincaré audit publication plots |
| lfm/viz/gravity_recovery.py | New gravity-recovery plotting utilities |
| lfm/viz/init.py | Export new viz entry points |
| lfm/validation/init.py | Export unified-force validation policy types |
| lfm/topology/init.py | Export topology/skyrme public API |
| lfm/sweep.py | Add sweep runner for custom initializer/observer cases |
| lfm/particles/prepared.py | Add prepared scalar-mode composition helpers |
| lfm/particles/init.py | Export new particle/noether/stationary APIs |
| lfm/foundations/r6_unified_live.py | Add experimental R6 action (weak normalization) |
| lfm/foundations/r5_u1_static.py | Add static U(1) Gauss-minimum solver |
| lfm/foundations/r4_gauge_spectrum.py | Add compact-link Fourier/spectrum audits |
| lfm/fields/macroscopic.py | Add macroscopic LIMIT-02 body profiles + sampling |
| lfm/fields/light.py | Add R1 light packet + leapfrog step helpers |
| lfm/fields/equilibrium.py | Add 19pt-consistent Poisson/equilibrium helpers; preserve dtype |
| lfm/fields/init.py | Export new fields/light/macroscopic APIs |
| lfm/experiment/dispersion.py | Use exact leapfrog inversion for dispersion |
| lfm/experiment/collision.py | Minor cleanup in eigenvalue assignment |
| lfm/experiment/init.py | Export new experiment modules (charge coupling, orbits) |
| lfm/core/chi_potentials.py | Add experiment-only chi potential force laws |
| lfm/core/backends/remote_backend.py | Clarify remote backend is not Simulation protocol backend |
| lfm/core/backends/protocol.py | Extend backend protocol surface (dtype, gravity recovery, etc.) |
| lfm/core/backends/init.py | Add precision selection in backend factory |
| lfm/core/init.py | Re-export stencil operators in core package |
| lfm/constants.py | Add SI bridge constants for lensing metrics |
| lfm/config.py | Add precision, dx, chi floor toggle, and experimental enums |
| lfm/analysis/tracker.py | Add localized weighted centroid tracker |
| lfm/analysis/modes.py | Add periodic + leapfrog mode projection helpers |
| lfm/analysis/metric.py | Add SI Schwarzschild radius + OP-05 deflection integration |
| lfm/analysis/frame_links.py | Add frame-link comparison and loop mismatch energy |
| lfm/analysis/frame_completion.py | Add frame completion operator/response algebra |
| lfm/analysis/frame_candidates.py | Add frame candidate screening ledger |
| lfm/analysis/coarse_graining.py | Add local Fourier blocking diagnostics |
| CHANGELOG.md | Add changelog entry for new helper set |
| .pre-commit-config.yaml | Update mypy mirror version |
Review details
- Files reviewed: 63/123 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| sa_fields_in: object | None = None, | ||
| sa_fields_out: object | None = None, | ||
| sa_gamma: float = 0.1, | ||
| sa_d: float = 4.9, | ||
| dt: float = 0.02, | ||
| *, |
Publishes the accumulated 11-commit LFM emergence lineage that was present locally but absent from the protected main branch. The final commit adds a standalone coupled GOV-01/GOV-02 Hamiltonian energy-exchange example. Validation: Python syntax check passed; example CLI help passed; high-confidence secret scan passed.