Repository navigation
Conversation
Collaborator
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.
Fixes #1503.
The existing runtime-argument guard omitted
verdict. Thusbend good.bend --verdict bad.bendreportedALL PROOFS CHECKand exited 0: onlygood.bendwas verified and the second pathname was silently ignored. This is not a claim that the kernel certified the bad proof; the invocation is invalid for this single-file mode.Include
verdictin the existing guard. Keep ordinary run arguments, the--separator, help actions, unknown-option handling, and all verifier/mismatch diagnostics unchanged. Multi-file verification is not added.Permanent regression: after a kernel corpus worker has obtained an actually accepted proof, invoke that same file with an extra program argument and require exit 1. This reuses the worker's real proof/kernel context, so a missing kernel cannot make an unexercised argument check appear to pass. One check per accepted shard, not one per definition or corpus file. The parent propagates nonzero worker exits so an assertion failure is not classified as an ordinary proof rejection.
Verification:
bun gates/repo.ts: 54 / 54.bend2directory.{1n == 1n : Nat}accepted;{1n == 2n : Nat}rejected; a trailing bad-proof pathname rejected after this fix.gates/safe_node.tswith both proof files: it fails against unchanged upstream because the extra argument is accepted, and passes against the fixed CLI while retaining the false-proof rejection.--, literal option-like arguments, a separator with no following argument, valid/invalid proofs, ordinary IO.args (including Unicode, an empty string and escaped--verdict), and existing check-only/mutually-exclusive-mode behavior.The distributed mini-cluster
gates/safe.tscorpus was not run here; its actual worker and new assertion were run locally with the real Linux BendTT kernel. Protectedbend2/bend.ts,GUIDE.md,CHANGELOG.md, kernel semantics and cap policy were not changed.