SuperAPI AI 工具集

effect-program-design

编程与开发

查看项目

更新于 10-16 05:52

技能介绍

用途:面向生产环境编写、设计、审查与测试 Effect v4 程序,围绕小规模领域形状接口、类型化成功/错误通道、显式依赖、可观测操作边界以及可在真实接缝替换层的测试。主要能力:以深层模块组织公共操作,让调用方只提供领域输入输出;把预期失败保留在 E、依赖放在 R、资源放入作用域;采用两层错误,先捕获丰富内部失败再收窄为调用方可处理的联合类型;为每个公共操作提供稳定追踪边界(Effect.fn 或 Effect.withSpan),并用 Effect.logError 与 Sentry.captureException 捕获错误;使用 Schema 在适配器边界解码未知输入,用 Schema.TaggedError 处理边界错误,用 Data.TaggedError 处理内部错误;通过 Config 读取配置并保持密钥 Redacted;用 Schedule 处理重试,用 Stream 处理背压数据源;使用有界并发、幂等重试、作用域后台纤程与显式终结器;测试使用 @effect/vitest、TestClock、Deferred、Queue、Latch、Ref,SQL 相关用真实临时数据库,禁止使用 vi.mock、vi.spyOn。使用方式:先查阅最近的 CLAUDE.md / AGENTS.md 与项目约定、已安装的 effect 与 @effect/* 版本声明,参考 Effect v4 文档或上游源码确认 API;按任务只读相关参考文档,若涉及服务或层修改必须先读 DEEP_MODULES.md,编写测试必须读 TESTING.md。限制:effect/unstable/* 可能在 beta/次版本间变化,示例需针对安装版本做类型检查;本地项目约定优先,除非任务明确改变;品牌类型可选,具名输入对象必需;不要传递外部日志器;不要用 instanceof、Match 或手工 _tag 比较做错误恢复;外部网络调用不得放在权威数据库事务内;TypeScript 合同避免 any、非空断言、除 as const 外的 as 转换。资料未提供具体价格、收费与完整安装命令。