Repository navigation
Preserve typed numerical failures in native tree evaluation - #21
Open
huashengshao wants to merge 1 commit into
Open
huashengshao wants to merge 1 commit into
huashengshao wants to merge 1 commit into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Finite physical inputs can overflow during native wavefunction construction, coefficient evaluation or the coherent norm. Those failures previously became generic evaluation messages, preventing consumers from requesting reconstruction in a wider scalar.
This change adds
RusticolErrorKind::NonFiniteResultand preserves it through the native runtime'sExecutionError, including FeynKit's typed wavefunction failure and lane context. Nonfinite computed outputs use that category; malformed supplied components and physical-domain errors stay separate. No error-message matching, value clipping or precision promotion is introduced.The regression exercises finite-input wavefunction overflow, coefficient and norm overflow, fresh 113-bit reconstruction from original decimal inputs, malformed supplied components and reuse after failure. All 84 native unit tests pass on both the standalone pinned dependency family (9cdc2949) and the ROULETTE consumer family (e93c3c73), with Python and external compilers absent from PATH. The consumer adapter passes 11 checks, including double overflow followed by reconstruction from the original exact parameter at 113 bits, direct input/output range failures and continued evaluation after failure. Independent source review approved the category propagation and input/output distinction.
Stacked on
codex/native-hermitian-tree-normat 34e9c6d (PR20).