Add the ABot-World streaming/interactive blockset
- ABotWorldStreamingBlocks: like the default blockset, but each block is
decoded to pixels inside the rollout loop (trailing-window decode with the
previous block as temporal context; independent per-block decode of the
causal VAE produces artifacts), so stream() yields ready frames per ~1 s
block
- the rollout takes a scripted `actions` list or an `action_source` callable
polled once per block (return None to stop) — a live driver is just a
stream() consumer whose callable returns the player's current action; with
__call__ the callable combination raises, since no frames flow back between
polls
- set_action reads the single current `action` from state (no actions[k]
indexing); `actions` becomes optional in the prepare step
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>