Skip to content

ci: verify XCFramework is complete in npm package - #63

Merged
tompsota merged 1 commit into
mainfrom
ci/verify-package-contents
Oct 14, 2026
Merged

tompsota merged 1 commit into
mainfrom
ci/verify-package-contents

Conversation

@tompsota

Copy link
Copy Markdown
Member

What's new

Adds a verify-npm-package CI job that diffs the files the npm package would publish against git ls-files ios/Plugin/TalsecRuntime.xcframework.

Every file sealed in the XCFramework's _CodeSignature/CodeResources must ship, otherwise Xcode fails on archive with signature-collection failed … A sealed resource is missing or invalid. .jbroot/libRHProbe.dat is a dot-file, so it only ships because of the negation rule in .npmignore. This repo is correct today; the job keeps it that way. Cordova shipped without it in 9.1.3 (talsec/Free-RASP-Cordova#77).

File list source: npm pack --dry-run --json.

Verification (from main)

Ran the job's run: script locally with bash -eo pipefail:

  • current .npmignore: pass
  • with the XCFramework negation removed from .npmignore: fail, reporting both missing .jbroot/libRHProbe.dat files

No package or version changes.

Resolved issues

Ref talsec/Free-RASP-Cordova#77

🤖 Generated with Claude Code

Every file sealed in TalsecRuntime.xcframework's _CodeSignature must be
published, otherwise Xcode fails signature collection when archiving.
Dot-files such as .jbroot/libRHProbe.dat are excluded by default and only
ship thanks to the negation in .npmignore, so guard it in CI by diffing the
npm package file list against the tracked XCFramework files.

Ref talsec/Free-RASP-Cordova#77

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@tompsota
tompsota merged commit d1ae609 into main Oct 14, 2026
@tompsota
tompsota deleted the ci/verify-package-contents branch October 14, 2026 11:44
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.

1 participant