Repository navigation
Match marshal wrapper audit and conversion contracts - #9483
Conversation
Emit read-side audit events after argument and file preflight checks, convert allow_code through truth testing, and preserve dump write results. Restore the canonical marshal audit test through update_lib. Assisted-by: OpenAI Codex: model version unavailable
|
Caution Review failedThe pull request is closed. Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
📦 Library DependenciesThe following Lib/ modules were modified. Here are their dependencies: [x] test: cpython/Lib/test/test_sys.py (TODO: 4) dependencies: dependent tests: (249 tests)
Legend:
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Summary
marshal.loadswith an immutable copy of the complete input, andmarshal.loadwith no arguments. Preserve hook exceptions and decode the original buffer after hooks return without holding its borrow during callbacks.load'sread(0)bytes preflight and error priority; retain its returned object through decoding.allow_codeconsistently across all four wrappers and return the result offile.writefromdump.test_audit.AuditTest.test_marshalusingscripts/update_lib migrate, preserving every other test adaptation.Source comparison: pinned CPython
read_object,marshal_load_impl,marshal_loads_impl, andmarshal_dump_impl, plus the Clinic argument converters. This does not change the serializer's reference-sharing policy or #9450's external code provenance validation.Validation
FLAG_REFserialization choices. Read-side comparisons now use one retained CPython-produced scalar fixture; serializer byte identity is not claimed. The original failing comparison was retained.AI assistance
OpenAI Codex assisted with implementation, CPython source comparison, and validation. The model version was unavailable.