refactor: restructure docs as submodule, add dev-docs/ and AGENTS.md
- Move ASPICE docs to chanoraapp/docs submodule at docs/ - Move development docs to dev-docs/ (superpowers, offline-knowledge, impl-mapping) - Add AGENTS.md with project conventions for AI agents - Add impl-mapping.md (SAD component → source file mapping) - Archive completed plans to dev-docs/superpowers/plans/_archived/ - Remove AGENTS.md from .gitignore (now tracked)
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
# iOS release build
|
||||
|
||||
This document records the credential-free iOS P1 release path and the signing handoff for TestFlight/App Store builds.
|
||||
|
||||
## Unsigned verification build
|
||||
|
||||
Run from the repository root on macOS:
|
||||
|
||||
```bash
|
||||
flutter --version
|
||||
./tools/build-ios.sh --no-codesign
|
||||
```
|
||||
|
||||
Expected unsigned output:
|
||||
|
||||
```text
|
||||
apps/chanora_flutter/build/ios/iphoneos/Runner.app/
|
||||
```
|
||||
|
||||
## Store export configuration
|
||||
|
||||
The App Store export template lives at:
|
||||
|
||||
```text
|
||||
apps/chanora_flutter/ios/ExportOptions/AppStore.plist
|
||||
```
|
||||
|
||||
Use it after Apple signing assets are available:
|
||||
|
||||
```bash
|
||||
./tools/build-ios.sh --export-method app-store --export-options-plist apps/chanora_flutter/ios/ExportOptions/AppStore.plist
|
||||
```
|
||||
|
||||
Required signing assets:
|
||||
|
||||
- Apple Developer team access for `app.chanora.chanoraFlutter`
|
||||
- App Store distribution certificate or automatic signing permission
|
||||
- App Store provisioning profile if automatic signing is not used
|
||||
- Xcode 26 or later for uploads on or after 2026-04-28
|
||||
|
||||
## Verification checklist
|
||||
|
||||
- `flutter test` passes in `apps/chanora_flutter`
|
||||
- `flutter analyze` passes in `apps/chanora_flutter`
|
||||
- `flutter build ios --release --no-codesign` succeeds
|
||||
- Signed App Store export succeeds once credentials are installed
|
||||
- App Store metadata does not imply TeamSpeak affiliation
|
||||
Reference in New Issue
Block a user