问题:\`||\` 运算符接受任何 falsy 值(undefined/NaN/null)为帧 1, 违反「零兜底」原则。brief 仅明确规定 frameIndex=0 视同 1。 修法: - 将 \`frameIndex || 1\` 改为 \`frameIndex === 0 ? 1 : frameIndex\` - 在 frameRect 中加入 Number.isInteger 检查(拦截 NaN、undefined) - frameFileName 亦加验证,防止非法输入产出垃圾文件名 - 错误信息明确说明有效范围与 0→1 转换规则 新增 4 条测试用例覆盖 undefined 与 NaN,确保非整数被正确拒绝。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>