Skip to content

docs(ios): IOS_PLAN 勾選對齊現況+更正「CI 推不上去」的過期敘述 - #50

Merged
thothawei merged 1 commit into
mainfrom
claude/ios-plan-checkbox-sync
Jul 28, 2026
Merged

thothawei merged 1 commit into
mainfrom
claude/ios-plan-checkbox-sync

Conversation

@thothawei

Copy link
Copy Markdown
Owner

為什麼有這個 PR

TODO 的「下次任務」剩下四項全部卡在外部資源,我先實查前置條件(結論:都還沒到位):

項目 當日實查
A2 真裝置推播 android/app/google-services.json 不存在
A5 階段 5 iOS 實機 xcrun devicectl list devicesNo devices found

查證途中撞到一個真的洞:docs/IOS_PLAN.md 的勾選框與同一份文件的散文互相矛盾。 「執行進度」段說階段 1–4、7 都完成,但階段 1 的四項(1-1/1-2/1-3/1-5)、3-4 仍是 [ ],7-1 是 [~] 並寫著「已寫好但推不上去」。只讀清單的人會以為要重跑那些需要 sudo 的工具鏈步驟。

(先修正我自己一開始的說法:不是「全部都沒勾」——階段 2、3、4 的多數項目早就勾好了,沒勾的是上面這六項。)

不照散文打勾,逐條重新取證

項目 證據(2026-07-28)
1-1 xcode-select -p = /Applications/Xcode.app/Contents/Developerxcodebuild -version = Xcode 26.6 (17F113)
1-2 flutter build ios 全程無授權提示
1-3 xcrun xctrace list devices 列出 iOS 26.5 模擬器
1-5 flutter doctor[✓] Xcode ... (Xcode 26.6)No issues found!
3-4 ios/Runner/Info.plist 確認 UIBackgroundModes: location +兩則定位用途說明
7-1 CI 檔案在 main;最近一次完整 run 30319680445build-ios success,6 分鐘

順帶補了一項先前沒驗過的:flutter build ios --no-codesign --flavor driver -t lib/main_driver.dart 實跑✓ Built build/ios/iphoneos/Runner.app (20.6MB)(Xcode build 116.8s)。之前只驗過 customer flavor 的不簽名 build(CI 跑的也是 customer),driver flavor 這條路徑今天才真的走過。

兩個更正

  1. 7-1「已寫好但推不上去(token 缺 workflow scope)」是過期敘述——.github/workflows/flutter-ci.yml 早就在 main 且每次 push 都在跑。不需要再 gh auth refresh
  2. 順手記下一件合併時發現的事實:build-ios 不是 branch protection 的必要檢查——它 pending 時 PR 照樣合得進去(PR docs(app): 回填維護項 5+6(清殘留分支/清 dev DB)——並救回一份未合併的測試、更正一條寫錯的機制 #49 就是這樣合的)。要讓 iOS build 擋門得去 repo Settings 設 required check(我不會擅自改設定)。

另外把「0. 環境現況(2026-07-20 實測)」表加註為動工前的歷史快照,避免下一個人把那四個 ❌ 當成現況。

範圍

只動 docs/IOS_PLAN.mddocs/TODO.md沒有程式碼改動——但有實跑一次 iOS build 當證據。

🤖 Generated with Claude Code

盤點 A2/A5 前置條件時發現的洞:IOS_PLAN 的散文說階段 1–4、7 都完成,
但**勾選框仍是 [ ]/[~]**(階段 1 的 1-1/1-2/1-3/1-5、3-4、7-1)。
只讀清單的人會以為要重跑那些需要 sudo 的工具鏈步驟。

不照散文打勾,逐條重新取證:
- xcode-select -p = /Applications/Xcode.app/...、xcodebuild = Xcode 26.6 (17F113)
- xctrace list devices 有 iOS 26.5 runtime;flutter doctor → No issues found!
- Info.plist 確認 UIBackgroundModes: location +兩則定位用途說明皆在
- **實跑 flutter build ios --no-codesign --flavor driver -t lib/main_driver.dart
  → ✓ Built Runner.app (20.6MB),Xcode build 116.8s**(先前只驗過 customer flavor)

更正 7-1:「已寫好但推不上去(token 缺 workflow scope)」是過期敘述——
CI 檔案早就在 main,最近一次完整執行 build-ios success(6 分鐘)。
同時記下它**不是 branch protection 的必要檢查**(PR #49 就是在它 pending 時合掉的)。

「0. 環境現況」表加註為動工前的歷史快照,避免被當成現況讀。

前置條件當日實查:google-services.json 不存在(A2 卡)、
devicectl list devices → No devices found(A5 階段 5 卡)。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@thothawei
thothawei merged commit 0499ce7 into main Jul 28, 2026
2 checks passed
@thothawei
thothawei deleted the claude/ios-plan-checkbox-sync branch July 28, 2026 01: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