← 返回
未分类

Swiftverify

Apple Design Award 标准的 Swift/SwiftUI 项目验证技能。执行编译、架构、设计系统、无障碍、国际化、性能、原生集成七层检查,生成综合报告。
Apple Design Award 标准 Swift/SwiftUI项目验证技能,执行编译、架构、设计系统、无障碍、国际化、性能、原生集成七层检查并生成综合报告。
soponcd soponcd 来源
未分类 clawhub v1.0.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 276
下载
💾 0
安装
1
版本
#latest

概述

SwiftVerify: Apple 原生应用质量验证技能 (v1.0)

> 核心任务: 确保代码达到 Apple Design Award 评审标准 (执行 ./tools/quality_gate.sh full)。

> 执行频率: 每次 Feature 完成后、PR 合并前、发布前必须执行。

技能目录结构

├── scripts/
│   ├── run_all.sh                # 入口脚本
│   ├── check_build.sh            # Step 1: 编译
│   ├── check_architecture.sh     # Step 2: 架构
│   ├── check_design_tokens.sh    # Step 3: 设计
│   ├── check_a11y.sh             # Step 4: 无障碍
│   ├── check_i18n.sh             # Step 5: 国际化
│   ├── check_performance.sh      # Step 6: 性能
│   ├── check_native.sh           # Step 7: 原生
│   └── check_tests.sh            # Step 8: 测试

## 技能拓扑图 (Topology)

graph TD

User[用户 / CI] -->|调用| RunAll[run_all.sh]

subgraph "Verification Steps"

RunAll --> Build[1. Build & Lint]

RunAll --> Arch[2. Architecture]

RunAll --> Tokens[3. Design Tokens]

RunAll --> A11y[4. Accessibility]

RunAll --> I18n[5. i18n]

RunAll --> Perf[6. Performance]

RunAll --> Native[7. Native Integration]

RunAll --> Tests[8. Unit Tests]

end

subgraph "Dependencies"

Build --> Xcode[xcodebuild]

Build --> SwiftLint[swiftlint]

Tests --> XCTest[XCTest]

Arch --> Grep[grep/awk]

end

subgraph "Rules"

RunAll -.-|quality_gate.sh| Tools[Project Tools]

end

│   ├── check_build.sh            # Step 1: 编译检查
│   ├── check_architecture.sh     # Step 2: 架构漂移检测
│   ├── check_design_tokens.sh    # Step 3: 设计系统合规
│   ├── check_a11y.sh             # Step 4: 无障碍检查
│   ├── check_i18n.sh             # Step 5: 国际化检查
│   ├── check_performance.sh      # Step 6: 性能基准 (需手动)
│   ├── check_native.sh           # Step 7: 原生集成检查
│   └── run_all.sh                # 一键执行全部检查
├── templates/
│   └── verification_report.md    # 报告模板
└── resources/
    └── ada_checklist.md          # Apple Design Award 检查清单

1. 执行流程 (Execution Protocol)

快速验证 (Quick Check)

./agent/skills/swiftverify/scripts/run_all.sh

完整验证 (Full Check)

按顺序执行以下检查,任一失败则阻断:

Step脚本验证内容阻断级别
--------------------------------
1check_build.sh编译通过 + SwiftLint🔴 HARD
2check_architecture.shMVVM+ 分层 + 依赖方向🔴 HARD
3check_design_tokens.shToken 使用率 100%🟡 SOFT
4check_a11y.sh无障碍标签覆盖🟡 SOFT
5check_i18n.sh字符串本地化 100%🟡 SOFT
6check_performance.sh性能基准 (手动)🟢 INFO
7check_native.sh原生集成验证🟢 INFO
8check_tests.shUnit Tests (XCTest)🟡 SOFT

2. 检查详情 (Check Details)

无障碍参考

swiftverify 整合了完整的无障碍检查指南。详见 resources/accessibility-checklist.md

自动检查项

  • ✅ VoiceOver 标签缺失检测
  • ✅ 硬编码字号检测(破坏 Dynamic Type)
  • ✅ Reduce Motion 适配提示
  • ✅ 空标签或占位符标签检测
  • ✅ 触控目标大小验证

执行检查

./scripts/check_a11y.sh

Step 1: 编译检查 (Build Check)

文件: scripts/check_build.sh

检查项标准状态
--------------------
xcodebuild 编译EXIT 0HARD
SwiftLint0 ErrorHARD
生命周期激活所有 Service 启动HARD

Step 2: 架构漂移检测 (Architecture Drift)

文件: scripts/check_architecture.sh

检查项验证规则状态
------------------------
View 层隔离Views/ 不 import SwiftDataHARD
Model 层隔离Models/ 不 import SwiftUIHARD
Sendable 符合所有 Model 实现 SendableHARD
GCD 禁用无 DispatchQueueHARD

Step 3: 设计系统合规 (Design System Compliance)

文件: scripts/check_design_tokens.sh

检查项验证规则状态
------------------------
硬编码颜色Color(#...).redSOFT
硬编码数值.padding(16)SOFT
标准圆角使用 DesignTokens.CornerRadiusSOFT
标准间距使用 DesignTokens.SpacingSOFT

Step 4: 无障碍检查 (Accessibility)

文件: scripts/check_a11y.sh

检查项验证规则状态
------------------------
accessibilityLabel所有 Button/Image 有标签SOFT
触控区域交互元素 ≥ 44x44 ptSOFT
动态字体.font(.system(size:))SOFT

Step 5: 国际化检查 (Internationalization)

文件: scripts/check_i18n.sh

检查项验证规则状态
------------------------
字符串本地化使用 String(localized:)SOFT
无硬编码中文Text("中文") 需替换SOFT

Step 6: 性能检查 (Performance)

文件: scripts/check_performance.sh

检查项工具标准
--------------------
启动时间Instruments< 400ms
内存泄漏Instruments Leaks0
主线程阻塞Main Thread Checker0

> ⚠️ 性能检查需要手动运行 Instruments

Step 7: 原生集成检查 (Native Integration)

文件: scripts/check_native.sh

检查项验证规则状态
------------------------
AppIntent 存在Intents/ 目录非空INFO
Shortcuts 注册AppShortcutsProvider 存在INFO

Step 8: 单元测试 (Unit Tests)

文件: scripts/check_tests.sh

检查项验证规则状态
------------------------
Unit Tests如果存在测试 Target,必须全部通过SOFT
Code Coverage(可选) 输出覆盖率报告INFO

3. 报告生成 (Report Generation)

执行完成后,在 specs/verification_report.md 生成报告:

# 验证报告 - [日期]

## 总体状态: ✅ PASS / ❌ FAIL

| 检查维度 | 状态 | 违规数 |
|----------|------|--------|
| 编译检查 | ✅ | 0 |
| 架构一致性 | ✅ | 0 |
| 设计系统 | ⚠️ | 3 |
| 无障碍 | ⚠️ | 5 |
| 国际化 | ✅ | 0 |
| 性能 | ⏳ | - |
| 原生集成 | ✅ | 0 |
| 单元测试 | ✅ | 0 |

## 违规详情
...

4. 自动修复 (Auto-Fix)

对于 SOFT 级别的违规,提供自动修复建议:

违规类型自动修复方法
------------------------
硬编码字符串替换为 String(localized: "key")
硬编码数值替换为 DesignTokens.Spacing.xxx
缺少 a11y 标签添加 .accessibilityLabel()

5. 与 CI/CD 集成

# GitHub Actions 示例
- name: SwiftVerify
  run: |
    chmod +x .agent/skills/swiftverify/scripts/run_all.sh
    .agent/skills/swiftverify/scripts/run_all.sh

6. 安全阻断 (Safety)

  • [ ] HARD 级别失败:必须修复后才能继续
  • [ ] SOFT 级别失败:可继续但需记录 Tech Debt
  • [ ] INFO 级别失败:仅供参考

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-05-07 16:10 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

design-media

Web Design Guidelines

soponcd
审查 UI 代码以确保符合 Web 界面规范,适用于“审查我的 UI”“检查可访问性”“审计设计”“审查 UX”“检查我的网站”等请求。
★ 3 📥 1,365
dev-programming

Mcporter

steipete
使用 mcporter CLI 直接列出、配置、认证及调用 MCP 服务器/工具(支持 HTTP 或 stdio),涵盖临时服务器、配置编辑及 CLI/类型生成功能。
★ 195 📥 67,825
dev-programming

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 680 📥 328,566