From the qa-engineer's PR #64 audit. Severity: LOW (test debt). #64 added a vitest harness to packages/cli and wired pnpm -r test into CI, so these are now cheaply testable — they weren't before.
Gaps
resolveGifOption (packages/cli/src/render.ts) — flag/config merge + --gif-steps implies --gif: untested.
resolveRecorder — valid/invalid value handling (throws on bad input): untested.
- Flag→resolver wiring (P2 from the audit) — nothing asserts the Commander option name actually reaches the resolver. A camelCase typo (
renderConcurrency vs render-concurrency) would silently fall back to serial with no test catching it. Either a thin argv-parse test through the Commander program, or accept it stays manual.
Acceptance
From the qa-engineer's PR #64 audit. Severity: LOW (test debt). #64 added a vitest harness to
packages/cliand wiredpnpm -r testinto CI, so these are now cheaply testable — they weren't before.Gaps
resolveGifOption(packages/cli/src/render.ts) — flag/config merge +--gif-stepsimplies--gif: untested.resolveRecorder— valid/invalid value handling (throws on bad input): untested.renderConcurrencyvsrender-concurrency) would silently fall back to serial with no test catching it. Either a thin argv-parse test through the Commander program, or accept it stays manual.Acceptance
resolveGifOptionandresolveRecorderhave unit tests inpackages/cli/test/.