-
Notifications
You must be signed in to change notification settings - Fork 11
Prove VSTS non-interference lemma #729
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
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
…ending_mutation_request_not_from_controller_on_vrs_objects
…eserves_suffix_inequality
Collaborator
|
"Shield" is just a nickname. We should call it the non-interference lemma (you don't need to rename the file or lemma). |
marshtompsxd
reviewed
Jan 5, 2026
Collaborator
Author
Good catch, though I want a cooler name for it :3 |
marshtompsxd
reviewed
Jan 5, 2026
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.
This PR adds and proves VSTS non-interference lemma (
lemma_no_interference) with a few assumptions to be proved in following PRs:vsts_guaranteeno_interfering_request_between_vstsAdditional helper lemmas
And 2 helper lemmas needs to be proved in the future:
generated_name_has_vsts_prefix_implies_generate_name_field_has_vsts_prefixvsts_name_non_eq_implies_no_pvc_name_matchMaybe @NikhilSDate can help on them and 2 assumptions above
These predicates are added and already proved for the shield lemma:
cluster.no_pending_request_to_api_server_from_non_controllersseq_unequal_preserved_by_add_prefixChange in VSTS rely conditions
Updated a few wrong and missing assimptions there
Change in VSTS spec
-to fix Stricter checking/validation of statefulset pvcs kubernetes/kubernetes#41153Change in cluster state machine
Cluster API Server state machine is updated to
req.owner_refto make sure it's a controller owner for GetThenUpdate and GetThenDelete requestsMinor changes
no_pending_mutation_request_not_from_controller_on_vrs_objectsas it's replaced bycluster.no_pending_request_to_api_server_from_non_controllersgenerate_nameto begenerated_name