Skip to content

Prove guarded Boolean conversion and byte copying - #3849

Open
joshlf wants to merge 1 commit into
Glga77guruqohhu34sv7kfiu3slnotqyvfrom
Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y
Open

joshlf wants to merge 1 commit into
Glga77guruqohhu34sv7kfiu3slnotqyvfrom
Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y

Conversation

@joshlf

@joshlf joshlf commented Oct 9, 2026 •

Copy link
Copy Markdown
Member

Exercise the registered unsafe boundaries with small extracted Rust
callers. Check the raw byte before producing a Bool, accepting exactly 0
and 1. Check destination capacity before copying a prefix, and prove the
complete updated slice, preserved suffix and unchanged rejection.

Interpret invalid Boolean production and oversized copying as forbidden
execution using Aeneas's undef tag. Both total and partial contracts must
reject it, including when a caller discards the value or later diverges.
Check complete primitive definitions and mutation controls, rather than
only their successful branches.

The union and pointer implementations remain reviewed, source-bound
interpretations. The proofs establish the callers' guards and value
behavior under those interpretations and valid-reference premises.

Authored by an AI agent acting on joshlf's behalf.


Latest Update: v26 — Compare vs v25

📚 Full Patch History

Links show the diff between the row version and the column version.

Version v25 v24 v23 v22 v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v26 v25 v24 v23 v22 v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v25 v24 v23 v22 v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v24 v23 v22 v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v23 v22 v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v22 v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v21 v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v20 v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v19 v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v18 v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v17 v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v16 v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v15 v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v14 v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v13 v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v12 v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v11 v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v10 v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v8 v7 v6 v5 v4 v3 v2 v1 Base
v7 v6 v5 v4 v3 v2 v1 Base
v6 v5 v4 v3 v2 v1 Base
v5 v4 v3 v2 v1 Base
v4 v3 v2 v1 Base
v3 v2 v1 Base
v2 v1 Base
v1 Base
⬇️ Download this PR

Branch

git fetch origin refs/heads/Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y && git checkout -b pr-Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y FETCH_HEAD

Checkout

git fetch origin refs/heads/Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y && git checkout FETCH_HEAD

Cherry Pick

git fetch origin refs/heads/Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y && git cherry-pick FETCH_HEAD

Pull

git pull origin refs/heads/Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y

Stacked PRs enabled by GHerrit.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-09T00:12:42.483618Z a900b14 PR opened
🔒 Security Review ✅ Completed 2026-10-09T00:12:37.263387Z a900b14 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@codecov-commenter

codecov-commenter commented Oct 9, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 11 lines in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (Glga77guruqohhu34sv7kfiu3slnotqyv@716ef6d). Learn more about missing BASE report.

Files with missing lines Patch % Lines
zerocopy/src/util/safety_checks/mod.rs 0.00% 11 Missing ⚠️
Additional details and impacted files
@@                         Coverage Diff                          @@
##             Glga77guruqohhu34sv7kfiu3slnotqyv    #3849   +/-   ##
====================================================================
  Coverage                                     ?   61.12%           
====================================================================
  Files                                        ?       21           
  Lines                                        ?     3738           
  Branches                                     ?        0           
====================================================================
  Hits                                         ?     2285           
  Misses                                       ?     1453           
  Partials                                     ?        0           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@joshlf
joshlf force-pushed the Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y branch from a900b14 to d5d6e40 Compare October 9, 2026 02:21
@joshlf
joshlf force-pushed the Glga77guruqohhu34sv7kfiu3slnotqyv branch from 5123181 to c678614 Compare October 14, 2026 03:39
@joshlf
joshlf force-pushed the Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y branch from e60358f to ed9a0c5 Compare October 14, 2026 18:32
@joshlf
joshlf force-pushed the Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y branch from ed9a0c5 to 7560425 Compare October 14, 2026 21:43
@joshlf
joshlf force-pushed the Glga77guruqohhu34sv7kfiu3slnotqyv branch from 3c4fe9b to 556d864 Compare October 14, 2026 21:43
@joshlf
joshlf force-pushed the Glga77guruqohhu34sv7kfiu3slnotqyv branch from 556d864 to 5345d5d Compare October 15, 2026 00:40
@joshlf
joshlf force-pushed the Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y branch from 7560425 to 1499978 Compare October 15, 2026 00:40
Exercise the registered unsafe boundaries with small extracted Rust
callers. Check the raw byte before producing a Bool, accepting exactly 0
and 1. Check destination capacity before copying a prefix, and prove the
complete updated slice, preserved suffix and unchanged rejection.

Interpret invalid Boolean production and oversized copying as forbidden
execution using Aeneas's undef tag. Both total and partial contracts must
reject it, including when a caller discards the value or later diverges.
Check complete primitive definitions and mutation controls, rather than
only their successful branches.

The union and pointer implementations remain reviewed, source-bound
interpretations. The proofs establish the callers' guards and value
behavior under those interpretations and valid-reference premises.

Agent-authored-by: AI agent acting on joshlf's behalf
gherrit-pr-id: Gsfnevxtkkrjpqabfdz42n6ncfeyaul7y

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants