iOS 工程
目的
使用此單一技能來管理現有 iOS 產品的完整生命週期:
產品決策
→ 設計凍結
→ 實作
→ 審查
→ 除錯
→ UI 驗證
→ 功能測試
→ 全應用稽核
→ 最終驗收
此技能是通用的。產品事實、領域規則、真實模組名稱、建置方案、測試目標、設計權杖和元件名稱必須來自活躍的儲存庫。
調用
建議的指令:
/ios plan <需求>
/ios implement <需求或任務>
/ios review <範圍>
/ios debug <觀察到的失敗>
/ios ui <replicate | review | fix> <畫面或設計>
/ios test feature <功能>
/ios audit app
/ios verify <需求或變更>
自然語言等效形式同樣有效。如果使用者明確指定了模式,請使用該模式。
模式路由
選擇一個主要模式:
plan:決定產品結構、需求範圍、使用者體驗、互動、UI 結構、資料迴圈、執行分組與驗收標準。implement:在凍結的需求下變更生產行為。review:檢查已完成或部分完成的工作是否有缺陷與遺漏。debug:追蹤觀察到的失敗直到根本原因,並加入回歸保護。ui:複製、審查或修復渲染的 iOS UI。test:為一個功能或合約增加有針對性的 XCTest 覆蓋。audit:執行分階段的全應用 QA 與跨流程回歸測試。verify:判斷需求是否真正完成。
不要同時激活多個完整工作流程。主要模式在任務跨越邊界時,可以從其他模式載入參考資料。
必要專案探索
在應用通用規則之前,請依此順序搜尋專案特定來源:
.agent/project-profile.mddocs/project/ios-engineering-profile.mddocs/ENGINEERING-SKILL-PROFILE.md- 目前的 issue、PRD、需求或設計文件
- 產品與領域規則
- 架構與資料流程文件
- 設計系統與元件文件(用於 UI 工作)
- 測試設定檔、方案、目標與驗證指令
專案事實優先於此技能中的範例。專案規則不能削弱資料完整性、確定性測試、安全性、可存取性或證據要求。
通用操作規則
- 在接受要求的控制項或表面作為解決方案之前,先了解真正的使用者目標。
- 在提議新的模組、資料擁有者或元件之前,先檢查現有產品與實作。
- 偏好順序為「重複使用 → 擴展 → 重構 → 重建」。
- 預設提供一個建議解決方案。僅在存在重大取捨或未解決的產品衝突時才提供替代方案。
- 區分持久的產品事實與實作筆記及一次性稽核證據。
- 在修改有狀態的行為之前,先識別權威的狀態擁有者與完整的讀取/寫入路徑。
- 保留明確的非目標與已正確的行為。
- 修正最早錯誤的假設或轉換,而不僅僅是可見的症狀。
- 使用儲存庫真實的建置、測試、執行時期與視覺進入點進行驗證。
- 分別報告已確認的事實、推測的風險、未知事項、證據與剩餘障礙。
硬性規則
- 請勿發明產品行為、模組名稱、權杖名稱、測試方案或目標名稱。
- 請勿建立一個平行的真相來源來讓功能看起來運作正常。
- 請勿使用靜默的後備方案來隱藏遺失的業務資料。
- 請勿從目前可變的設定中改寫歷史事實。
- 若無可觸及的失敗路徑,請勿將程式碼異味歸類為已確認的錯誤。
- 請勿為了讓測試通過而弱化斷言、驗證或業務規則。
- 請勿使用任意的 sleep 作為同步或正確性的證明。
- 請勿僅為了符合靜態螢幕截圖而改變產品語義。
- 在掃描相關範圍並分組發現結果之前,請勿開始修復審查表面。
- 當使用者已要求實作或修復時,請勿對確定性、範圍內的修正要求使用者確認。
- 請勿自動解決真正的產品/設計衝突;應記錄衝突與建議的決策。
- 請勿僅根據編譯成功、勾選的方塊、註解或僅有 mock 的測試就宣告完成。
- 請勿將每個觀察結果都變成目前範圍內的工作;應分類為當前、暫緩、歷史與全局系統問題。
參考資料載入
僅載入任務所需的資料:
- 產品架構、需求、使用者體驗、資訊架構或執行提示:
modes/plan.mdreferences/product-architecture.mdreferences/requirement-and-ux.mdreferences/interaction-and-state-design.md
- 任何生產變更:
modes/implement.mdreferences/core-engineering-rules.md
- 寫入、刪除、持久化、歷史、通知、快取、小工具、手錶或跨頁面同步:
references/data-consistency.mdreferences/fallback-and-error-handling.md
- 程式碼審查或無法解釋的行為:
references/bug-patterns.md
- SwiftUI、導航、sheet、安全區域、鍵盤、可存取性或佈局:
references/swiftui-and-ios-ui.md
- 設計複製或渲染後的視覺審查:
references/ui-replication.mdreferences/visual-quality-review.md
- 功能測試:
modes/test.mdreferences/testing.md
- 全應用 QA:
modes/audit.mdreferences/full-app-audit.md
- 驗收或完成聲明:
modes/verify.mdreferences/evidence-and-reporting.md
- 在地化或對文案敏感的工作:
references/localization.md
輸出政策
預設輸出應簡潔且可執行。僅在使用者要求完整規格或稽核報告時才擴展內容。
每個正式輸出都必須明確顯示:
- 已檢查的範圍
- 產品或工程決策
- 已確認的發現或已完成的變更
- 保留的行為與明確的非目標
- 證據
- 未解決的風險、決策或未驗證的條件
- 下一步所需的行動(如果有的話)
當需要持久的報告或執行提示時,請使用 templates/ 下的對應檔案。