Estate, experiences, marketplace, and user-report services #73

Closed
opened 2026-08-08 08:21:46 +00:00 by hugo · 1 comment
Owner

Objective

Implement EstateTools/schedules/console/access lists, experience preferences/lists/permissions, MarketplaceManager/listing roles, and abuse/user-report category flows.

Deliverables

  • Preserve owner messages/caps payloads, schedule conversions, list deltas, permissions, folder classifications, events, errors, and cancellation.
  • Separate state/decision logic from privileged network actions.
  • Require explicit opt-in for destructive/live estate and marketplace operations.

Validation

  • Estate/experience/marketplace/report tests pass offline.
  • Recorded payloads and events match exactly.
  • Live prerequisites and safety restrictions are documented.

Prerequisite

Networking/client lifecycle and the earlier world model/manager issues are available; mapped APIs and translated tests are fixed.

Project constraints

  • New native Rust behavior only; no bridge or C# fallback.
  • Preserve fixed APIs and translated assertions; reuse completed lower layers and keep privileged live actions opt-in.
  • Validate bounded untrusted inputs, cancellation, task cleanup, docs, and coverage in the same change.
## Objective Implement EstateTools/schedules/console/access lists, experience preferences/lists/permissions, MarketplaceManager/listing roles, and abuse/user-report category flows. ## Deliverables - Preserve owner messages/caps payloads, schedule conversions, list deltas, permissions, folder classifications, events, errors, and cancellation. - Separate state/decision logic from privileged network actions. - Require explicit opt-in for destructive/live estate and marketplace operations. ## Validation - Estate/experience/marketplace/report tests pass offline. - Recorded payloads and events match exactly. - Live prerequisites and safety restrictions are documented. ## Prerequisite Networking/client lifecycle and the earlier world model/manager issues are available; mapped APIs and translated tests are fixed. ## Project constraints - New native Rust behavior only; no bridge or C# fallback. - Preserve fixed APIs and translated assertions; reuse completed lower layers and keep privileged live actions opt-in. - Validate bounded untrusted inputs, cancellation, task cleanup, docs, and coverage in the same change.
hugo added this to the 09 - World vertical slices milestone 2026-08-08 08:21:46 +00:00
hugo added the enhancement label 2026-08-08 08:21:46 +00:00
Author
Owner

Implemented and pushed in commit 763e9e5.

Native Rust implementation includes:

  • client-cached EstateTools with exact owner-message/access-delta payloads, LLUDP and CAPS reply events, covenant and terrain transfer paths, restart schedules, console event correlation/timeout, cancellation, bounds, disposal, and explicit live mutation opt-in;
  • experience permission/list handling and exact blocked/trusted/allowed estate events;
  • MarketplaceFolderClassifier plus MarketplaceManager caches, fetch/create/delete/activate/deactivate payloads, events, errors, cancellation, bounds, and explicit live mutation opt-in;
  • localized abuse-category discovery and capability/legacy user-report submission with exact LLSD fields, cancellation, input bounds, and explicit live submission safety;
  • documented live prerequisites, privacy guidance, and offline fixture restrictions.

Focused verification:

  • estate/experience/console/CAPS unit semantics: 8 passed
  • marketplace classifier: 34 passed
  • marketplace manager: 24 passed
  • world capability/schedule semantics: 18 passed
  • experience message semantics: 9 passed
  • user-report semantics: 4 passed
  • world manager/API scaffolds: 2 passed
  • cargo clippy -p libremetaverse --lib -- -D warnings
  • API compile, rustfmt, generated-shim check, codegen gate, and API coverage gate all passed.
Implemented and pushed in commit 763e9e5. Native Rust implementation includes: - client-cached EstateTools with exact owner-message/access-delta payloads, LLUDP and CAPS reply events, covenant and terrain transfer paths, restart schedules, console event correlation/timeout, cancellation, bounds, disposal, and explicit live mutation opt-in; - experience permission/list handling and exact blocked/trusted/allowed estate events; - MarketplaceFolderClassifier plus MarketplaceManager caches, fetch/create/delete/activate/deactivate payloads, events, errors, cancellation, bounds, and explicit live mutation opt-in; - localized abuse-category discovery and capability/legacy user-report submission with exact LLSD fields, cancellation, input bounds, and explicit live submission safety; - documented live prerequisites, privacy guidance, and offline fixture restrictions. Focused verification: - estate/experience/console/CAPS unit semantics: 8 passed - marketplace classifier: 34 passed - marketplace manager: 24 passed - world capability/schedule semantics: 18 passed - experience message semantics: 9 passed - user-report semantics: 4 passed - world manager/API scaffolds: 2 passed - cargo clippy -p libremetaverse --lib -- -D warnings - API compile, rustfmt, generated-shim check, codegen gate, and API coverage gate all passed.
hugo closed this issue 2026-08-10 19:26:05 +00:00
Sign in to join this conversation.