SuperAPI AI 工具集

kinemotion-development

编程与开发

查看项目

更新于 10-16 06:22

技能介绍

用途:在编写 Python 代码、创建测试、修改 kinemotion 代码库或审查代码质量时应用 kinemotion 开发标准。

提交前检查:提交前需依次运行 uv run ruff check --fix、uv run ruff format、uv run pyright、uv run pytest,也可合并为一条命令执行。质量目标包括测试覆盖率不低于 50%(当前 80.86%)、代码重复率低于 3%(当前 2.96%)、类型错误与 lint 错误均为 0;重复率可用 npx jscpd src/kinemotion 检查。

类型标注:numpy 数组使用 NDArray[np.float64],指标字典使用 TypedDict,字符串联合使用 Literal,并强制 Pyright strict 模式。

模块结构:src/kinemotion 下含 cli.py、api.py、core(validation、pose、filtering、video_io)、cmj 与 dropjump 模块,各含 cli、analysis、kinematics、validation_bounds 等文件。

测试:目录镜像源码结构,使用 tests/conftest.py 中的 cli_runner、minimal_video、sample_video_path 等集中 fixture,并覆盖空数组、单帧视频、NaN 值、缺失关键点、零速度等边界情况。

算法差异:CMJ 从峰值向后搜索、速度有符号、关注反向运动检测、起始于地面;Drop Jump 向前搜索、速度取绝对值、关注触地、起始于跳箱。常见注意点包括 CMJ 速度须有符号、序列化前将 NumPy 值转为 int/float、处理视频旋转元数据、读取首帧获取尺寸。

提交格式:使用 Conventional Commits,类型含 feat、fix、docs、test、refactor、perf、chore。代码风格为 88 字符行宽、早返回、复杂度超 15 时抽方法、优先组合、单一职责。新增分析类型需创建模块目录并实现 cli.py、analysis.py、kinematics.py,添加 validation_bounds.py,注册 CLI,导出 API,补充镜像测试并更新 CLAUDE.md。