cbcffb4a

By: ValentinHirschi <valentin.hirschi@gmail.com>

preserve zero residues when localizing integrated UV

A selected threshold can be absent from the reduced cograph even when its
integrated UV coefficient is nonzero. Preserve this projection as zero on
the allowed cut-order keys before entering the nonempty direct-3D lane.

Add a focused regression for both raised orders of an absent threshold.
The existing physical single-orientation GL638 reproducer is unchanged.

Validation: formatting/check and clippy pass; the physical GL638 nextest
regression passes with profile test_gammaloop (167.339 s), and the focused
typed-zero regression passes (0.437 s).

UV goal: fix GL638 integrated-UV generation while retaining the direct 3D
local-UV route required for orientation localization, on both the current
IR-safe branch and codex/raised_energy_cff_wip_optimized_phase_fix.

User clarification (verbatim):
Ah no sorry you need to keep using the 3D route for local UVCT, as you need orientation localization. But I’ve asked you now to fix it (both here and in the ..._phase_fix branch), so it should be fine.
gammaloop-checkgammaloop-clippygammaloop-docgammaloop-fmtgammaloop-guppy-workspace-graphgammaloop-nextest-binaries-clinnetgammaloop-nextest-binaries-coregammaloop-nextest-binaries-integrationgammaloop-nextest-binaries-linnetgammaloop-nextest-binaries-python-apigammaloop-nextest-binaries-spensogammaloop-nextest-binaries-vakintlinnest-wasmconfiguredeploy:nix-ci-passedclinnetdevShellfullcargoArtifactsci-workspace-graph-jsonclinnetclinnet-clicrate-deps-gammaloop-workspace-hackcrate-deps-gammalooprscrate-deps-three-dimensional-repscrate-test-binaries-clinnetcrate-test-binaries-gammaloop-apicrate-test-binaries-gammaloop-integration-testscrate-test-binaries-gammaloop-tracing-filtercrate-test-binaries-gammaloop-tracing-filter-macroscrate-test-binaries-gammalooprscrate-test-binaries-idensocrate-test-binaries-kurvstcrate-test-binaries-linnestcrate-test-binaries-linnetcrate-test-binaries-linnet-pycrate-test-binaries-python-api-gammaloop-integration-testscrate-test-binaries-spensocrate-test-binaries-spenso-hep-libcrate-test-binaries-spenso-macroscrate-test-binaries-symbolica-utilscrate-test-binaries-three-dimensional-repscrate-test-binaries-vakintcrate-test-dependencies-clinnetcrate-test-dependencies-gammaloop-apicrate-test-dependencies-gammaloop-integration-testscrate-test-dependencies-gammaloop-tracing-filtercrate-test-dependencies-gammaloop-tracing-filter-macroscrate-test-dependencies-gammalooprscrate-test-dependencies-idensocrate-test-dependencies-kurvstcrate-test-dependencies-linnestcrate-test-dependencies-linnet-pycrate-test-dependencies-python-api-gammaloop-integration-testscrate-test-dependencies-spensocrate-test-dependencies-spenso-hep-libcrate-test-dependencies-symbolica-utilscrate-test-dependencies-three-dimensional-repscrate-test-dependencies-vakintcrate-three-dimensional-repsgammaloopgammaloop-python-modulegammaloopApiPackageArtifactslinnest-wasmlinnestWasmCargoArtifactsnix-ci-check-gammaloop-doctestnix-ci-check-gammaloop-nextest-clinnetnix-ci-check-gammaloop-nextest-corenix-ci-check-gammaloop-nextest-integrationnix-ci-check-gammaloop-nextest-linnetnix-ci-check-gammaloop-nextest-python-apinix-ci-check-gammaloop-nextest-spensonix-ci-check-gammaloop-nextest-vakintnix-ci-passedx86_64-linuxtest:nix-ci-check-gammaloop-doctesttest:nix-ci-check-gammaloop-nextest-clinnettest:nix-ci-check-gammaloop-nextest-coretest:nix-ci-check-gammaloop-nextest-integrationtest:nix-ci-check-gammaloop-nextest-linnettest:nix-ci-check-gammaloop-nextest-python-apitest:nix-ci-check-gammaloop-nextest-spensotest:nix-ci-check-gammaloop-nextest-vakint