SuperAPI AI 工具集

stratos-swift

编程与开发

查看项目

更新于 10-16 03:41

技能介绍

用途:stratos-swift 是一个专注于设计 Swift 库、SDK 和逻辑层的专家技能,适用于构建 Swift 包、框架或 SDK、设计公开库 API 与流式配置构建器、实现 Swift 6 并发(async/await、actor、Sendable、Mutex、AsyncSequence),以及设计 @resultBuilder DSL 或类型化错误处理(throws(ErrorType))。

主要能力与原则:强调“调用点优先”,首个代码块必须展示预期调用点,而非先定义错误枚举、协议、结构体或 actor;主张编译期类型安全优于运行时便利,用枚举和值类型精确建模领域状态,在封闭可恢复失败域使用 Swift 6 类型化 throws,在高层组合边界使用标准 throws。

并发要点:actor 内状态可能跨 await 挂起点变化,需用 in-flight Task 字典合并并发调用者;优先值类型与 actor 获得自然 Sendable;需要同步线程安全状态时优先使用 Synchronization 的 Mutex;结构化并发优先 withThrowingTaskGroup,桥接回调 API 到 AsyncStream 时始终连接 onTermination。

Result Builder:使用 @resultBuilder 配合同质组件枚举或 buildExpression 重载,让调用者以任意顺序组合请求并支持可选分支。

库演进:存储属性保持 private 或 internal,弃用提供 renamed: 或 message: 指引;为可排序集合提供约束扩展,返回新集合而非原地修改。

常见任务:设计公开 SDK API 时先起草三层调用点(零配置、流式配置、协议依赖注入),公开 init 只要求必要参数,确保 Sendable 纪律,用 @_spi(Experimental) 标记不稳定 API;迁移到 Swift 6 时启用完整并发检查,审计 actor 状态假设,用 Mutex 或 actor 替换 NSLock + @unchecked Sendable,为公开依赖注入协议添加 Sendable。

限制与拒绝标准:拒绝 actor 重入缺陷、无正当理由的 @unchecked Sendable、非 Sendable 的公开协议、僵化的 Result Builder、公开 API 暴露 [String: Any]。具体安装命令与平台支持暂未提供。