SuperAPI AI 工具集

skyrim-distr-kid-validation

测试与质量

查看项目

更新于 10-30 16:19

技能介绍

该技能用于对 Skyrim 模组框架配置进行跨框架的静态与语义校验,覆盖 SPID、KID、BOS、SkyPatcher 以及源锁定的 CDF 规则。

用途

该技能面向需要验证框架配置文件的开发者或模组作者,帮助检查 SPID、KID、BOS 等框架的配置是否符合语法和结构约定。

主要能力

命令

python scripts\lint_framework_configs.py <files-or-directories> python scripts\verify_framework_truth.py python ..\skyrim-base-object-swapper\scripts\audit_bos_configs.py <bos-directory> python ..\skyrim-container-distribution\scripts\lint_cdf_json.py <json>

契约覆盖范围

SPID

支持 standard、Death<Type>、ExclusiveGroup 以及 linked key 系列;

针对特定 key 的字段布局;

一到七个普通字段和一到四个 linked 字段;

字段感知的 LevelFilters、TraitFilters、count/index 和 Chance;

行尾分号注释;

Weapon = 被拒绝,而 Item = 保持有效。

KID

普通 Keyword 两到五个字段;

普通行需要人类可读的类型;

记录签名和空白普通类型会被拒绝;

特殊的 ExclusiveGroup 语法;

行尾分号注释。

BOS

节和字段计数;

transform/property/chance 语法;

调用内部的空白会被通用 linter 和 BOS auditor 同时拒绝;

重复目标会被报告,但不会臆造语义上的胜出者。

验证器分歧处理协议

已发布的配置是证据,不是证明。验证器结果同样是证据,不是证明。当 linter 与精确解析器、已接受的运行时日志或已知正向的部署行为发生冲突时:

不要仅仅为了满足 linter 而重写模组;

用精确的行复现分歧;

检查解析器/版本和运行时日志;

将验证器发现标记为有争议;

当验证器的契约错误时,先修复验证器;

将真实行添加为生产路径回归测试夹具。

当回归测试测试的是实际 CLI/auditor 从未调用的辅助函数时,声称的回归测试是不充分的。verify_framework_truth.py 会针对生产形态的夹具执行生产入口点。

限制

静态验证无法证明表单解析、语义 BOS 坐标、预期的角色选择、钩子安全或游戏内行为。