fix(pickle): require source proof for framework metadata#1644
Conversation
Allow exact Hugging Face and Accelerate training metadata references observed in training_args.bin while keeping executable REDUCE, extension, shadow-constructor, and near-match controls detected.
|
/codex review |
Performance BenchmarksCompared
|
|
@codex review |
|
Codex Review: Didn't find any major issues. Can't wait for the next one! ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Independent review of current head
Please address both findings, push a new head, resolve this feedback with concrete test evidence, and request a new exact-head Codex review. |
|
Addressed the independent review findings at exact head P1: unresolved framework metadata now fails closed instead of suppressing executable reconstruction findings. Regressions added for scan/load environment divergence through standalone P3: added the root Local validation:
I also attempted the full non-slow/non-integration xdist lane. It stopped at |
|
@codex review Please review exact head |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0f9fa3e82d
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Update for exact head I fixed the CI failure from the first push as well. The stricter suppression initially made reviewed interpreter-owned stdlib reconstruction references such as Additional validation after the fixup:
The earlier full root non-slow/non-integration local xdist attempt still stopped on |
|
@codex review Please review exact head |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ea25b1424e
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Additional exact pinned QA: |
|
Update for exact head Addressed the additional feedback posted after the previous push:
Additional local validation for this head:
|
|
@codex review Please review exact head |
|
Codex Review: Didn't find any major issues. You're on a roll. ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Pinned TorchScript QA input: |
|
Update for exact head Fixed the root Python 3.13 CI failure in Validation after this fixup:
CI is rerunning on this new head. |
|
@codex review Please review exact head |
|
Codex Review: Didn't find any major issues. Another round soon, please! ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Pinned real-model framework-metadata QA: |
…framework-metadata-20260610' into campaign/pr-1644
|
Codex Review: Didn't find any major issues. Keep it up! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
…framework-metadata-20260610' into mdangelo/codex/hf-fp-t10-pickle-framework-metadata-20260610 # Conflicts: # tests/scanners/test_pickle_scanner.py
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b748f27177
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…framework-metadata-20260610' into campaign/pr-1644
|
Codex Review: Didn't find any major issues. Can't wait for the next one! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
…framework-metadata-20260610' into mdangelo/codex/hf-fp-t10-pickle-framework-metadata-20260610 # Conflicts: # modelaudit/scanners/joblib_scanner.py # packages/modelaudit-picklescan/src/modelaudit_picklescan/api.py
|
Addressed the latest live review-thread items at exact head What changed in this round:
Thread handling:
Final local validation on
@codex review exact head |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8a1a322cad
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…framework-metadata-20260610' into campaign/pr-1644 # Conflicts: # modelaudit/scanners/numpy_scanner.py
…t10-pickle-framework-metadata-20260610
|
Addressed the exact-head Joblib no-position cleanup blocker at What changed:
Exact-head validation on
Live thread state after push: the Joblib no-position review item is no longer a live unresolved thread; only @codex review exact head |
…framework-metadata-20260610' into campaign/pr-1644
|
Codex Review: Didn't find any major issues. Hooray! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
@codex review Please review exact head d80e0fb. Local validation passed: focused private-evidence/storage regressions, full ruff format check, full ruff check, full mypy, and PROMPTFOO_DISABLE_TELEMETRY=1 pytest -n auto -m "not slow and not integration" --maxfail=1 with 20770 passed / 799 skipped. Independent reviewer also found no blockers on this exact head. |
|
Codex Review: Didn't find any major issues. Another round soon, please! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
Fixes false-positive task 10 for installed, source-trusted framework metadata only. Inert Hugging Face / Accelerate / Torch training metadata can be suppressed when the referenced implementation resolves from trusted installed source or an expected extension owner and the executable surface has been inspected. Default and standalone installs without optional frameworks intentionally retain
NON_ALLOWLISTED_GLOBALwarnings; unresolved-name trust is not restored.Security contract
NEWOBJ_EX, slot-stateBUILD, andEXT1/EXT2/EXT4controls remain detected or suspicious.Real-model QA
Pinned
nvidia/LocateAnything-3B@272068e81a31e88a48ea03c20a09decba2b62ed6/training_args.binremains the target benign source-trusted metadata case. The default/missing-framework profile is now explicitly out of scope for clean suppression and should warn rather than fail open.Validation
uv run ruff check modelaudit/ packages/modelaudit-picklescan/src packages/modelaudit-picklescan/tests tests/passed.uv run ruff format --check modelaudit/ packages/modelaudit-picklescan/src packages/modelaudit-picklescan/tests tests/passed.uv run mypy modelaudit/ packages/modelaudit-picklescan/src packages/modelaudit-picklescan/tests tests/ --cache-dir /tmp/modelaudit-mypy-cache-pr1644-rebindpassed.PROMPTFOO_DISABLE_TELEMETRY=1 uv run pytest packages/modelaudit-picklescan/tests -qpassed: 2382 passed, 9 skipped.PROMPTFOO_DISABLE_TELEMETRY=1 uv run pytest tests/scanners/test_pytorch_zip_scanner.py -qpassed: 852 passed, 4 skipped.PROMPTFOO_DISABLE_TELEMETRY=1 uv run pytest -n auto -m "not slow and not integration" --maxfail=1passed: 18313 passed, 837 skipped.