Files
Shutong Wu 26f8a1002e fix(asset-gen): address Copilot review — floor duration, fail-closed allowlist
- FalAudioAdapter.BuildBody: floor (not Math.Round) the clamped duration so
  it never exceeds the requested value, then enforce >= 1 (banker's rounding
  could round 2.5 -> 2 and could exceed the request).
- AssetGenJobManager.AllowedExtensionsFor: fail closed — an unexpected/unknown
  job kind now allows nothing instead of falling through to the model
  allowlist, so the RCE boundary never opens by default. Explicit cases for
  model + marketplace.
- Tests: pin floor semantics (10.9 -> 10) and the fail-closed behavior
  (unknown/null/empty kind -> not allowed).

Verified: EditMode 1167 tests / 0 failures + in-editor smoke (BuildBody(10.9)
-> duration=10; IsAllowed("bogus","glb")=false).

Claude-Session: https://claude.ai/code/session_015KYy51gwBuhDuLZXXoqc98
2026-07-13 00:44:28 -07:00
..