SuperAPI AI 工具集

typescript-strict

编程与开发

查看项目

更新于 10-15 20:32

技能介绍

用途:把 TypeScript 的 strict 作为基线,用类型准确建模领域,并在边界处尽早失败。编译期类型不能替代边界校验。

主要能力与规则:不关闭 strict 标志来“让构建通过”;禁止新增 any,优先 unknown 加 narrowing;避免盲目断言,改用 type guard、predicate 与 schema;显式建模可空性(T | null),不用魔法哨兵值;领域类型放在专门模块,避免重复接口。

建模:用 union 与可辨识联合表示状态;不可变数据优先 Readonly / as const;泛型用 extends 约束,避免装饰性泛型;用 typeof、ReturnType、Awaited 从值提取类型而非复制;外部 API 定义 request/response 类型并配等价的 Zod/Valibot schema。

运行时:在 HTTP、表单、env、webhook、localStorage 等边界校验;以 z.infer<typeof Schema> 作为单一来源;使用 result 类型或可辨识错误类;env 在启动时用 schema 解析,无效即失败。

安全重构:在边界引入类型,把 unknown 向内推直到 narrowing,逐步移除 cast,改动后运行 tsc --noEmit 或项目 typecheck。

反模式:any、as any、无简短局部理由的 @ts-ignore;过多可选字段的巨型接口;字符串联合足够时用脆弱数字枚举;仅前端有类型而后端返回 any;对编译器撒谎而不修正模型。

完成标准:涉及区域无无理由 any;边界有运行时校验;复杂状态用可辨识联合;项目 typecheck 通过;类型可读且贴合领域。

限制:资料未提供安装命令、平台支持、收费与价格信息。