No task, socket, HTTP request, or filesystem side effect occurs in shim bodies.
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 callable signatures for the client runtime and transport-facing surface while leaving behavior unimplemented.
## Deliverables
- Cover GridClient, settings, login, network/simulator/protocol managers, UDP types, caps HTTP/event queue/rate limiting, download/texture pipelines, logging, statistics, threading, and utility interfaces.
- Finalize Rust async, cancellation, stream, error, builder, and ownership signatures.
- Model IDisposable and lifecycle APIs explicitly without creating a runtime or opening sockets.
- Record all overload and event-subscription mappings.
## Validation
- 100% coverage for the owned core catalog subset.
- Downstream fixtures compile login, subscribe, request, cancellation, shutdown, and settings flows.
- No task, socket, HTTP request, or filesystem side effect occurs in shim bodies.
## 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:53 +00:00
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
Implement callable signatures for the client runtime and transport-facing surface while leaving behavior unimplemented.
Deliverables
Validation
Prerequisite
Stage 0 project setup is complete. Do not implement production behavior in this milestone.
Project constraints
Implemented and pushed in commit
a007313. Generated the complete failure-only core runtime/networking subset: 111 authoritative catalog types and 965 members covering GridClient/settings/login, network/simulator/protocol/UDP, caps/rate limiting, HTTP download/event queue, image/texture pipelines, logging/statistics, threading/disposers, observable/event helpers, and utility interfaces. Event APIs return typed Subscription guards; System.IProgress and IDisposable use explicit project-owned trait objects; concrete Task methods are native async functions; interface Task methods are object-safe boxed Send futures. Added only cataloged project-owned cross-platform boundary types for external HTTP, logging, service collection, cancellation/task, rate-limit, thread/wait, and event signatures. Fixed Caps.Capabilities to its concrete Vec key type and boxed the cataloged Caps/Simulator reference cycle. No external member APIs or platform-specific APIs were copied. The focused fixture compiles login, subscribe, request/cancellation, rate-limit, async shutdown, settings, texture shutdown, and object-safe texture request flows, and verifies five constructors fail with exact member IDs before any runtime work. Review verified exact catalog-ID parity, standardized bodies, explicit lifecycle APIs, and no task/socket/HTTP/filesystem side effect. Gates passed: mapping/shim determinism, cargo fmt, git diff --check, workspace cargo check, workspace test compile (--no-run), clippy -D warnings, workspace docs, issue test (2 passed), and prior focused regressions (9 passed).