feat(explain): supply Explanation.Verdict from the operational path, or say it was not computed - #55
Merged
Merged
Conversation
…or say it was not computed Explanation.Verdict was nil-only. It is now supplied from the production recommendation path's readout (recommend.Verdicts) rather than by re-running decision.Evaluate here — a second evaluation can diverge from the verdict operations actually reached, which is a fabricated audit trail. Where the path reached none, the payload says so as a first-class VerdictOrigin state: thin is not absent. Also closes the §6.1 gap where a subject with no stored evidence exited 0 with a 200 payload that grounded none of its claims. Grounding state is now explicit. BuildExplain now errors on a decision.Verdict whose Action is not one of the three, and on Verdict and RecVerdict both being supplied. Both in-repo call sites pass nil, so today's blast radius is zero. Goldens are unmodified and pass unregenerated; BuildExplain's signature is unchanged. Co-authored-by: kording <74226694+kording@users.noreply.github.com>
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.
Explanation.Verdict was nil-only. It is now supplied from the production
recommendation path's readout (recommend.Verdicts) rather than by re-running
decision.Evaluate here — a second evaluation can diverge from the verdict
operations actually reached, which is a fabricated audit trail. Where the path
reached none, the payload says so as a first-class VerdictOrigin state: thin is
not absent.
Also closes the §6.1 gap where a subject with no stored evidence exited 0 with a
200 payload that grounded none of its claims. Grounding state is now explicit.
BuildExplain now errors on a decision.Verdict whose Action is not one of the
three, and on Verdict and RecVerdict both being supplied. Both in-repo call
sites pass nil, so today's blast radius is zero. Goldens are unmodified and pass
unregenerated; BuildExplain's signature is unchanged.