API shims: agent, appearance, inventory, and asset managers #9

Closed
opened 2026-08-08 08:11:54 +00:00 by hugo · 1 comment
Owner

Objective

Implement complete public signatures for the high-volume avatar-facing manager surfaces.

Deliverables

  • Cover AgentManager partial APIs, movement/camera/chat/teleport/effects/money/profile events, AppearanceManager and outfit policies, Inventory model/store/manager/AIS/cache operations, AssetManager/cache, avatar/animesh managers, and all event args/delegates.
  • Resolve C# overloads into stable Rust names or request types.
  • Keep callback and subscription lifetimes explicit.
  • Use only standardized failing bodies.

Validation

  • Every owned catalog member has a reviewed mapping.
  • Compile representative bot, outfit, inventory, asset-download, animation, and teleport call sites.
  • Public docs cite C# source concepts and cancellation/error expectations.

Prerequisite

Stage 0 project setup is complete. Do not implement production behavior in this milestone.

Project constraints

  • Implement the public surface in native Rust only; no CLR hosting, FFI bridge, subprocess, RPC, or C# fallback.
  • Preserve recognizable API concepts while applying the documented Rust mapping rules.
  • Do not weaken parity requirements or add functional behavior outside this issue.
  • Update the API mapping, coverage report, public docs, and relevant handover status in the same change.
## Objective Implement complete public signatures for the high-volume avatar-facing manager surfaces. ## Deliverables - Cover AgentManager partial APIs, movement/camera/chat/teleport/effects/money/profile events, AppearanceManager and outfit policies, Inventory model/store/manager/AIS/cache operations, AssetManager/cache, avatar/animesh managers, and all event args/delegates. - Resolve C# overloads into stable Rust names or request types. - Keep callback and subscription lifetimes explicit. - Use only standardized failing bodies. ## Validation - Every owned catalog member has a reviewed mapping. - Compile representative bot, outfit, inventory, asset-download, animation, and teleport call sites. - Public docs cite C# source concepts and cancellation/error expectations. ## Prerequisite Stage 0 project setup is complete. Do not implement production behavior in this milestone. ## Project constraints - Implement the public surface in native Rust only; no CLR hosting, FFI bridge, subprocess, RPC, or C# fallback. - Preserve recognizable API concepts while applying the documented Rust mapping rules. - Do not weaken parity requirements or add functional behavior outside this issue. - Update the API mapping, coverage report, public docs, and relevant handover status in the same change.
hugo added this to the 02 - Full public API signature shim milestone 2026-08-08 08:11:54 +00:00
hugo added the enhancement label 2026-08-08 08:11:54 +00:00
Author
Owner

Implemented and verified in commit 376e63a. Added complete callable failure-only Rust shims for 193 avatar-facing types and 1,934 members: AgentManager movement/camera/chat/teleport/effects/money/profile APIs, appearance and outfit policies, inventory/AIS/store models and manager operations, asset/cache transfers, avatar/animesh managers, and all owned event/delegate payloads. Event subscriptions return typed guards, async operations retain explicit cancellation and Result errors, overload names remain ledger-stable, and System.Span/System.Random are cataloged project-owned cross-platform boundary types only. Coverage is now 2,597 types / 27,191 members workspace-wide. Verification passed: mapping and shim regeneration checks, cargo fmt, git diff check, cargo check --workspace --all-targets, cargo test --workspace --no-run, cargo clippy with -D warnings, cargo doc --workspace --no-deps, issue-owned catalog/generated ID audit, and 11 focused shim regression tests including representative bot, outfit, inventory, asset-download, animation, and teleport call sites.

Implemented and verified in commit 376e63a. Added complete callable failure-only Rust shims for 193 avatar-facing types and 1,934 members: AgentManager movement/camera/chat/teleport/effects/money/profile APIs, appearance and outfit policies, inventory/AIS/store models and manager operations, asset/cache transfers, avatar/animesh managers, and all owned event/delegate payloads. Event subscriptions return typed guards, async operations retain explicit cancellation and Result errors, overload names remain ledger-stable, and System.Span/System.Random are cataloged project-owned cross-platform boundary types only. Coverage is now 2,597 types / 27,191 members workspace-wide. Verification passed: mapping and shim regeneration checks, cargo fmt, git diff check, cargo check --workspace --all-targets, cargo test --workspace --no-run, cargo clippy with -D warnings, cargo doc --workspace --no-deps, issue-owned catalog/generated ID audit, and 11 focused shim regression tests including representative bot, outfit, inventory, asset-download, animation, and teleport call sites.
hugo closed this issue 2026-08-08 10:39:56 +00:00
Sign in to join this conversation.