fix(api): harden drawSprite, drawBitmapText, and spritesRefresh in BTAPI master
Validate paletteOffset via assertPaletteIndex in both drawSprite and drawBitmapText, consistent with all other draw methods. Add isIndexized() guard and spriteSheets registration to drawBitmapText, mirroring the existing drawSprite behavior so font sheets are tracked for palette refreshes and the pipeline receives a correctly-typed r8uint texture. Make spritesRefresh resilient: skip and evict non-indexized or destroyed sheets instead of aborting the entire refresh loop on the first failure. Add comment to OffscreenCanvas fallback in test setup warning that its zero-filled pixel data maps to the transparent sentinel; tests requiring opaque pixels must stub OffscreenCanvas before calling indexize(). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Vaclav Vancura <commit@vancura.dev>