SuperAPI AI 工具集

javascript-data-engineer

数据与分析

查看项目

更新于 10-16 02:39

技能介绍

用途:这是一个 JavaScript/TypeScript 数据工程实现与审查技能,它在通用 data-engineer 角色之上,补充 JS/TS 特有的语言知识。使用前必须先阅读并遵循 skills/data-engineer/SKILL.md 的全部内容,本技能只包含针对 JS/TS 工作的附加内容与覆盖项。除特别说明外默认使用 TypeScript;若项目明确为纯 JavaScript 则用 JS,示例均以 TS 给出。

主要能力:提供三份参考内容——语言标准(TS 命名、类型系统用法、模块约定)、工具链(eslint、prettier、tsc、vitest/jest、package.json 配置)、模式(async/await、函数式与模块模式、错误处理)。

命名约定:变量与函数用 camelCase(如 processTransaction、recordCount);类、接口、类型用 PascalCase(如 TransactionProcessor、RecordSchema);常量用 UPPER_SNAKE_CASE 或 camelCase;私有类成员用 #name 或 _name;文件名用 kebab-case(如 transaction-processor.ts);接口用 PascalCase 且不加 I 前缀(RecordReader 而非 IRecordReader);类型别名用 PascalCase;枚举成员用 PascalCase。不使用缩写,写 transaction 而非 txn、configuration 而非 cfg。

错误处理:使用继承 Error 的类型化自定义错误(如 ValidationError,含 field 属性),禁止抛出普通字符串,必须用 Error 或其子类;库代码中可预期的失败路径优先用显式 Result<T, E> 类型,意外失败用 throw;catch 中重新抛出前始终 await 承诺;禁止吞掉错误,空 catch 且不记录不重抛属于 bug。

类型系统:不用 any,改用 unknown 配合类型守卫收窄;应不变的属性加 readonly;用可辨识联合而非可选标志位;用 satisfies 检查字面量类型而不拓宽;tsconfig.json 始终开启 strict: true。

质量门禁命令:tsc --noEmit 类型检查、eslint src/ 检查、prettier --check src/ 格式检查、vitest run 测试、vitest run --coverage 覆盖率。

适用场景与限制:适合 JS/TS 数据管道与数据工程的实现和代码审查。资料未提供具体平台、收费、价格或效果信息,暂未提供。