Files
buzz/desktop
WesandClaude Opus 4.6 74b557d47f feat(ci): sign and notarize OSS desktop release builds
Replace ad-hoc code signing with proper Apple code signing via
block/apple-codesign-action. The unsigned DMG from the Tauri build
is sent to Block's signing service which signs with a Developer ID
certificate, notarizes with Apple, and returns a signed DMG.

Updater artifacts (tar.gz + minisign signature) are now created
post-signing so the archive contains the properly signed .app.

Changes:
- Add codesign action step (pinned to v1.1.0 SHA)
- Add spctl notarization verification alongside codesign --verify
- Move updater artifact creation to post-signing step
- Use pnpm exec tauri signer (lockfile-pinned) instead of npx
- Name archive with version so GitHub asset filename matches
  latest.json URL (gh release upload # syntax is label-only)
- Add id-token: write permission for AWS OIDC
- Update RELEASING.md with new secrets and signed/notarized docs
- Remove signingIdentity and createUpdaterArtifacts from release config

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-04 09:08:07 -07:00
..
…

Sprout

Desktop chat shell with:

  • Tauri + React + TypeScript + Vite
  • Tailwind CSS
  • shadcn/ui-ready shared components
  • Biome (lint/format/check)
  • Feature-driven frontend structure

Scripts

  • pnpm dev - run the web frontend
  • pnpm tauri dev - run the desktop app
  • pnpm build - typecheck and build frontend
  • pnpm typecheck - TypeScript checks
  • pnpm lint - Biome lint
  • pnpm format - Biome format (write)
  • pnpm check - Biome check

Structure

  • src/shared - reusable app-wide code (ui, lib, styles)
  • src/features - feature modules (vertical slices)
  • src/app - top-level app composition