Skip to content

Private imports, additions 16/19: the direct imports of Artifacts, Generic and Proof/Aes to Proof/Camellia - #2043

Merged
reaperhulk merged 1 commit into
mainfrom
claude/imports-add-16
Oct 13, 2026
Merged

reaperhulk merged 1 commit into
mainfrom
claude/imports-add-16

Conversation

@alex

@alex alex commented Oct 13, 2026

Copy link
Copy Markdown
Member

Summary

This is the 16th additions PR of the private-imports series. #2013 has the plan and the tool, both now on main.

It only adds imports, using the output of python3 ci/modularize.py visibility --additions-only on the directories below. It touches 315 files and adds 838 lines: 686 import, 34 public import and 118 meta import. Nothing is removed.

Each module gets a direct import of what it uses, or sees today, but would no longer see once its imports' imports turn private. It already sees each of these modules, so no module's visibility changes and no dependency is added.

Directories (under lean/VerifiedGarbage/):

  • Artifacts/{Ed25519Verify,Ed25519VerifyMessage,TripleDesCbc,TripleDesCfb,TripleDesCfb8,TripleDesOfb,X25519}
  • Generic/{AesGcm,DsaArithmetic,MdHash}
  • Proof/Aes/X86_64
  • Proof/AesGcm/X86_64
  • Proof/AesXts/X86_64
  • Proof/Bignum/AArch64
  • Proof/Camellia/{AArch64,Arm,X86}

Left out on purpose: these 8 files are also changed by open PRs (#1866, #1971, #1975, #2003, #2005, #2006, #2029, #2041). Adding imports to them here would conflict with those PRs. Their additions go into the demotion PR for their directory, which adds any additions still missing, or into a small follow-up once those PRs merge.

  • Proof/Aes/X86_64/AesNi/Blocks
  • Proof/Aes/X86_64/VaesBlocks/Blocks
  • Proof/AesGcm/X86_64/Gather/Copy
  • Proof/AesGcm/X86_64/OneBlocks/Facts
  • Proof/AesXts/X86_64/Clmul87
  • Proof/AesXts/X86_64/Vaes/Top
  • Proof/Bignum/AArch64/Mont
  • Proof/Bignum/AArch64/MontMul

No file under TCB/ or Spec/ changes.

Regenerate it

After lake build of main 9dcda8e, run python3 ci/modularize.py visibility --additions-only on the directories above, leaving out the 8 files listed. The result is applied to today's main, c6e4238.

Checked locally

  • check_lean_modules.py passes.
  • check_lean_imports.py passes.
  • No file imports a module twice in the same form.

CI is the gate for the build.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TyNFiywMtzf7eAdKcGMA5z


Generated by Claude Code

…c and Proof/Aes to Proof/Camellia

Output of `python3 ci/modularize.py visibility --additions-only` on
Artifacts/Ed25519Verify Artifacts/Ed25519VerifyMessage Artifacts/TripleDesCbc Artifacts/TripleDesCfb Artifacts/TripleDesCfb8 Artifacts/TripleDesOfb Artifacts/X25519 Generic/AesGcm Generic/DsaArithmetic Generic/MdHash Proof/Aes/X86_64 Proof/AesGcm/X86_64 Proof/AesXts/X86_64 Proof/Bignum/AArch64 Proof/Camellia/AArch64 Proof/Camellia/Arm Proof/Camellia/X86, applied to main, but for the 8 files open
pull requests change. Only adds imports of modules each file already
sees.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TyNFiywMtzf7eAdKcGMA5z
@reaperhulk
reaperhulk enabled auto-merge October 13, 2026 12:03
@reaperhulk
reaperhulk added this pull request to the merge queue Oct 13, 2026
Merged via the queue into main with commit 675e489 Oct 13, 2026
31 checks passed
@reaperhulk
reaperhulk deleted the claude/imports-add-16 branch October 13, 2026 12:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants