Originally created by: kristofferR
Release builds currently omit the native share extension, so share-into-Carrier cannot ship even though the app-side intake is merged.
This adds a macOS-only Tauri pre-bundle hook that builds and Developer ID-signs Carrier Share.appex, includes it under Contents/PlugIns, and keeps its versions aligned with Carrier. The release workflow verifies the nested signature and adds an isolated notarization smoke path before tagging.
Validated with the full local gate and a Developer ID-signed app: deep/strict signature verification passes, the nested appex is sandboxed and version-matched, and both bundles use the same signing team.
Ref [#212].
Release builds automatically package and sign the share extension with matching app version information.
Bug Fixes
Added notarization smoke checks for release validation.
Tests
Originally posted by: kristofferR
@codex review
Originally posted by: kristofferR
@codex review
Originally posted by: chatgpt-codex-connector[bot]
Codex Review: Didn't find any major issues. π
Reviewed commit:
4b5150360fβΉοΈ About Codex in GitHub
[Your team has set up Codex to review pull requests in this repo](https://chatgpt.com/codex/cloud/settings/general). 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".
Originally posted by: kristofferR
@coderabbitai review
Originally posted by: coderabbitai[bot]
β Action performed
Review finished. > Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.Originally posted by: coderabbitai[bot]
No actionable comments were generated in the recent review. π
βΉοΈ Recent review info
βοΈ Run configuration
**Configuration used**: Path: .coderabbit.yaml **Review profile**: ASSERTIVE **Plan**: Pro Plus **Run ID**: `02ffc9ea-f2e8-4acf-a466-c55b20426234`π₯ Commits
Reviewing files that changed from the base of the PR and between [4b5150] and 08e3027f54dd76fc770935a56a30d7e4a5db6203.π Files selected for processing (1)
* `.github/workflows/release.yml`π Walkthrough
## Walkthrough The PR adds a macOS share-extension build pipeline. It validates architecture, version, and signing inputs, bundles the extension into release builds, and adds manual notarization smoke testing with nested-extension verification. ### Changes **Share extension release** |Layer / File(s)|Summary| |---|---| |**Build and bundle the share extension**`share-extension/macos/*`, `package.json`, `src-tauri/tauri.conf.release.json`, `inject/src/messenger/lib/injected-assets.test.ts`|The build entry point validates macOS inputs and invokes the shell build. The shell script sets versions, supports `arm64` and `x86_64`, and applies identity-specific timestamp options. Release configuration bundles `Carrier Share.appex`, and tests cover configuration and invalid versions.| |**Run the notarization smoke workflow**
`.github/workflows/release.yml`|A manual `notarization_smoke` input runs a macOS build, signing, notarization, nested-extension checks, archive upload, and cleanup while skipping normal release jobs.| |**Validate nested release metadata**
`.github/workflows/release.yml`|macOS release verification checks the nested executable, code signature, sandbox entitlement, and version alignment.| **Estimated code review effort:** 4 (Complex) | ~45 minutes **Possibly related issues** - [kristofferR/Carrier#212](https://github.com/kristofferR/Carrier/issues/212) β Covers macOS share-extension bundling, signing, notarization, and release verification. - [kristofferR/Carrier#211](https://github.com/kristofferR/Carrier/issues/211) β Covers release bundling, signing, notarization, and validation for the macOS share extension. - [kristofferR/Carrier#217](https://github.com/kristofferR/Carrier/issues/217) β Covers building, signing, bundling, notarizing, and validating `Carrier Share.appex`. - [kristofferR/Carrier#213](https://github.com/kristofferR/Carrier/issues/213) β Covers packaging the macOS share extension used to hand shared files to Carrier. **Possibly related PRs** - [[kristofferR/Carrier#1](https://github.com/kristofferR/Carrier/issues/1)](https://github.com/kristofferR/Carrier/pull/1) β Modifies the macOS release packaging, signing, notarization, and updater workflow. - [[kristofferR/Carrier#2](https://github.com/kristofferR/Carrier/issues/2)](https://github.com/kristofferR/Carrier/pull/2) β Also modifies macOS release signing, notarization, and validation workflows.
π₯ Pre-merge checks | β 5
β Passed checks (5 passed)
| Check name | Status | Explanation | | :------------------------: | :------- | :------------------------------------------------------------------------------------------------------------------- | | Description Check | β Passed | Check skipped - CodeRabbitβs high-level summary is enabled. | | Title check | β Passed | The title clearly and concisely describes the primary change: including the macOS share extension in release builds. | | Docstring Coverage | β Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. | | Linked Issues check | β Passed | Check skipped because no linked issues were found for this pull request. | | Out of Scope Changes check | β Passed | Check skipped because no linked issues were found for this pull request. |β¨ Finishing Touches
π§ͺ Generate unit tests (beta)
- [ ] Create PR with unit tests - [ ] Commit unit tests in branch `feat/macos-share-release`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.
β€οΈ Share
- [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)Comment
@coderabbitai helpto get the list of available commands.Originally posted by: kristofferR
@coderabbitai review
Originally posted by: kristofferR
@codex review
Originally posted by: coderabbitai[bot]
β οΈ Action not completed
Review rate limited. > Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.Originally posted by: chatgpt-codex-connector[bot]
Codex Review: Didn't find any major issues. Can't wait for the next one!
Reviewed commit:
08e3027f54βΉοΈ About Codex in GitHub
[Your team has set up Codex to review pull requests in this repo](https://chatgpt.com/codex/cloud/settings/general). 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".
Originally posted by: kristofferR
@coderabbitai review
Originally posted by: coderabbitai[bot]
β Action performed
Review finished. > Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.Ticket changed by: kristofferR