Generate world and social API shims

This commit is contained in:
2026-08-08 12:44:47 +02:00
parent 376e63ac6d
commit 1291234e6f
7 changed files with 9099 additions and 314 deletions

View File

@@ -52,16 +52,17 @@ The current workspace is a structural baseline, not a working client:
matching independent ECMA-335 counts, with all 142 external signature types
resolved to cross-platform Rust or project-owned boundary types;
- the completed Types, StructuredData, Imaging, PrimMesher, rendering, main
wire/data, core runtime/networking, and avatar-facing manager slices expose
2,597 final Rust-facing types and all 27,191 callable members with real
fields/constants/enum values and standardized failing bodies;
wire/data, core runtime/networking, avatar-facing manager, and
world/social/service manager slices expose 2,795 final Rust-facing types and
all 28,768 callable members with real fields/constants/enum values and
standardized failing bodies;
- all 1,295 NUnit `[Test]`/`[TestCase]` invocations have compiling Rust test
entries that intentionally panic with their source identity and body hash;
- all nine sample/tool projects have compiling Rust binary targets;
- the 128 TestClient command source files are retained as a command inventory.
The remaining 469 generated type shims preserve names and module placement, but
do not yet expose their 3,598 callable members. `api/SURFACE.tsv` is an inventory aid,
The remaining 271 generated type shims preserve names and module placement, but
do not yet expose their 2,021 callable members. `api/SURFACE.tsv` is an inventory aid,
not proof of API coverage: it records declaration lines but does not fully parse
multiline signatures. Likewise, a generated `pending` test is a parity
placeholder, not a semantic translation. **This repository is therefore at
@@ -74,6 +75,13 @@ Long-running mapped calls retain an explicit cross-platform cancellation token
and return the shared `NotImplemented { csharp_member }` error; events return a
typed subscription guard so callback lifetime is visible to Rust callers.
The world-facing slice preserves the C# object, parcel, terrain, grid,
environment, estate, directory, friend, group, sound, interest-list,
marketplace, and reporting concepts. Server-facing async operations retain
explicit cancellation and shared typed failures; request/reply events expose
typed payloads and subscription guards, while catalog constants and flag values
remain real.
No functional porting starts until both missing gates are complete across the
entire workspace, rather than one crate at a time: