Use fake-grid world fixtures for deterministic validation.
Validation
Every owned command has tests and leaves expected client/world calls.
Exports are deterministic and bounded.
No privileged live operation runs by default.
Prerequisite
The library behavior required by the program is implemented and its translated parity tests pass.
Project constraints
Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback.
Provide deterministic offline/fake validation before opt-in live or device tests.
Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in.
Update program/source completeness, docs, and workspace validation evidence.
## Objective
Port movement/teleport/location/follow/sit/fly commands, primitive find/info/export/import/permissions/textures, parcel/land/estate-related queries, grid map/layer/region and wind commands.
## Deliverables
- Preserve parsing, coordinates, filters, output, timeouts, cancellation, and simulator selection.
- Gate destructive/spending/upload/estate actions explicitly.
- Use fake-grid world fixtures for deterministic validation.
## Validation
- Every owned command has tests and leaves expected client/world calls.
- Exports are deterministic and bounded.
- No privileged live operation runs by default.
## Prerequisite
The library behavior required by the program is implemented and its translated parity tests pass.
## Project constraints
- Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback.
- Provide deterministic offline/fake validation before opt-in live or device tests.
- Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in.
- Update program/source completeness, docs, and workspace validation evidence.
hugo
added this to the 11 - Programs and live-grid validation milestone 2026-08-08 08:24:34 +00:00
Completed all 46 commands owned by this issue across movement/teleport, primitives, parcel/estate, and grid groups. Live paths use native managers with cancellation and bounded waits; follow updates continuously from coarse locations; texture mode uses deduplicated native asset-cache requests; linkset export is ownership-checked, deterministic, bounded, and emits JP2/TGA assets; import rezzes, configures, links, rotates, and permissions native prims. Added explicit gates for live mutations, uploads/spending, estate-owner actions, and per-command confirmation, plus bounded fake-world fixtures and operational documentation.
no TODO, stub, unimplemented, or fallback marker remains in the issue implementation
Implemented in commit 374d795 and pushed to main.
Completed all 46 commands owned by this issue across movement/teleport, primitives, parcel/estate, and grid groups. Live paths use native managers with cancellation and bounded waits; follow updates continuously from coarse locations; texture mode uses deduplicated native asset-cache requests; linkset export is ownership-checked, deterministic, bounded, and emits JP2/TGA assets; import rezzes, configures, links, rotates, and permissions native prims. Added explicit gates for live mutations, uploads/spending, estate-owner actions, and per-command confirmation, plus bounded fake-world fixtures and operational documentation.
Verification:
- cargo fmt --all -- --check
- cargo clippy -p libremetaverse-programs --all-targets --locked -j1 -- -D warnings
- 9 focused TestClient CLI tests passed, including every owned world command and expected backend calls
- 120 related world/asset/task-inventory compatibility tests passed; 1 credential-dependent read-only live test remained correctly ignored
- cargo check --workspace --all-targets --locked -j1
- API coverage and native codegen gates passed
- no TODO, stub, unimplemented, or fallback marker remains in the issue implementation
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Objective
Port movement/teleport/location/follow/sit/fly commands, primitive find/info/export/import/permissions/textures, parcel/land/estate-related queries, grid map/layer/region and wind commands.
Deliverables
Validation
Prerequisite
The library behavior required by the program is implemented and its translated parity tests pass.
Project constraints
Implemented in commit
374d795and pushed to main.Completed all 46 commands owned by this issue across movement/teleport, primitives, parcel/estate, and grid groups. Live paths use native managers with cancellation and bounded waits; follow updates continuously from coarse locations; texture mode uses deduplicated native asset-cache requests; linkset export is ownership-checked, deterministic, bounded, and emits JP2/TGA assets; import rezzes, configures, links, rotates, and permissions native prims. Added explicit gates for live mutations, uploads/spending, estate-owner actions, and per-command confirmation, plus bounded fake-world fixtures and operational documentation.
Verification: