Skip to content

Keep installed SDK packaging tools immutable - #404

Merged
wieslawsoltes merged 1 commit into
mainfrom
fix/sdk-tool-bytecode-403
Sep 18, 2026
Merged

wieslawsoltes merged 1 commit into
mainfrom
fix/sdk-tool-bytecode-403

Conversation

@wieslawsoltes

Copy link
Copy Markdown
Collaborator

Problem and result

Executing the installed package_macos.py imported its adjacent audit module with Python bytecode caching enabled. That created an unlisted __pycache__/audit_macos_bundle.*.pyc inside the SDK, so the next appscene sdk verify correctly rejected the mutated installation.

The installed packager now disables bytecode writes before its SDK-local import. Packaging remains self-contained and leaves the verified SDK file inventory byte-for-byte unchanged even when the installation is writable.

Closes #403.

Validation

  • Portable audit suite: 22/22 pass.
  • New 100-process import gate: zero new/changed SDK-tool files, no __pycache__, under the 15 s bound.
  • Installed macOS package/audit contract: universal .node thinned, signed and loaded; 3 Mach-O files; 10 deterministic audit passes in 1.647 s; 2,564-byte evidence; installed prefix unchanged.
  • Python syntax and git diff --check pass.

@wieslawsoltes
wieslawsoltes merged commit e98b885 into main Sep 18, 2026
6 of 11 checks passed
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.

Keep installed SDK tools byte-for-byte immutable during packaging

1 participant