[Grid agent] Render pure-Rust viewport snapshots for multimodal questions #132
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Objective
Create a bounded, deterministic viewport snapshot from the agent's current virtual camera using pure Rust rendering/codec paths, then allow the generic endpoint to answer questions that explicitly reference visual context.
Capture pipeline
LLM integration
Acceptance criteria
Dependencies
Depends on world perception, embodied camera state, generic LLM transport, policy, and observability. This is an advanced feature and may land after the text agent is complete.
Implemented in
11a8c37. Added a bounded deterministic synthetic viewport pipeline in metacrate-grid-agent: live camera/FOV and simulator-generation capture, pure-Rust faceted mesh rendering and bounded rust-j2k texture decoding, privacy-marked avatars, terrain/environment, z-buffer occlusion, deterministic color-managed sRGB PNG encoding, completeness/timestamp summary, and hash-only observations. Integrated explicit authorized visual questions with the provider-neutral OpenAI-compatible image schema, typed multimodal capability rejection with textual fallback and no large-request retry. Added rate/resource/concurrency/time limits plus cancellation for external requests, supersession, generation/region changes, and operator pause/cancel; control/TUI report progress and hashes without pixels. Namespace policy is enforced: no new libremetaverse crate or metacrate reexport from compatibility facades. Verification: vision golden/adversarial tests (6), control runtime (1), TUI (5), dependency policy (7), full related fake-LLM transport suite (15), live-grid cargo doc, all-target live-grid clippy -D warnings, cargo tree pure-Rust feature audit, and git diff checks all pass.