Construct/drop performs no network side effect unless requested.
Public docs show ownership and runtime requirements.
Prerequisite
Wire codegen and the foundational implementation milestones are complete; the fixed API/test gates remain authoritative.
Project constraints
Native Rust networking only; no C# bridge, helper service, subprocess, or fallback.
Keep mapped APIs and translated assertions fixed, use bounded resources, and never log secrets.
Validate offline with deterministic fake servers before live-grid use and update docs/coverage evidence.
## Objective
Implement validated configuration, typed lifecycle errors, GridClient construction, manager ownership, runtime boundaries, and cancellation primitives.
## Deliverables
- Port grouped settings/defaults and validate durations, limits, endpoints, logging, caches, and feature policies.
- Use explicit constructors/traits instead of a service locator; libraries never create nested runtimes.
- Define task ownership, shutdown ordering, cancellation, redacted Debug, and secret handling.
## Validation
- Settings/default/null-argument/GridClient tests pass.
- Construct/drop performs no network side effect unless requested.
- Public docs show ownership and runtime requirements.
## Prerequisite
Wire codegen and the foundational implementation milestones are complete; the fixed API/test gates remain authoritative.
## Project constraints
- Native Rust networking only; no C# bridge, helper service, subprocess, or fallback.
- Keep mapped APIs and translated assertions fixed, use bounded resources, and never log secrets.
- Validate offline with deterministic fake servers before live-grid use and update docs/coverage evidence.
hugo
added this to the 08 - Networking and client lifecycle milestone 2026-08-08 08:19:15 +00:00
The native Rust client core now provides the exact grouped C# Settings defaults, validation for endpoints/durations/limits/cache and feature policies, typed configuration and lifecycle errors, an explicit GridClientBuilder and ClientService ownership contract, injected clocks, executor-neutral cancellation futures and linked tokens, and deterministic idempotent shutdown in network/manager/HTTP/rate-limiter order. Construction performs no I/O and starts no runtime. Debug output redacts login endpoints, clocks, and service internals. Public ownership/runtime documentation is in docs/client-core.md.
Verified in isolation with all 48 libremetaverse-types tests, the 3 client_core tests, core_runtime_shims, world_manager_shims, scoped Clippy with warnings denied, generated shim and Rust mapping checks, the independent API compile fixture, rustdoc, and serial cargo test --workspace --no-run --no-default-features. The broader red-suite/parity baseline remains stale from already-landed milestone-07 packet/message passes; no #51 parity-case body was changed.
Implemented in b413cd6 and pushed to main.
The native Rust client core now provides the exact grouped C# Settings defaults, validation for endpoints/durations/limits/cache and feature policies, typed configuration and lifecycle errors, an explicit GridClientBuilder and ClientService ownership contract, injected clocks, executor-neutral cancellation futures and linked tokens, and deterministic idempotent shutdown in network/manager/HTTP/rate-limiter order. Construction performs no I/O and starts no runtime. Debug output redacts login endpoints, clocks, and service internals. Public ownership/runtime documentation is in docs/client-core.md.
Verified in isolation with all 48 libremetaverse-types tests, the 3 client_core tests, core_runtime_shims, world_manager_shims, scoped Clippy with warnings denied, generated shim and Rust mapping checks, the independent API compile fixture, rustdoc, and serial cargo test --workspace --no-run --no-default-features. The broader red-suite/parity baseline remains stale from already-landed milestone-07 packet/message passes; no #51 parity-case body was changed.
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 validated configuration, typed lifecycle errors, GridClient construction, manager ownership, runtime boundaries, and cancellation primitives.
Deliverables
Validation
Prerequisite
Wire codegen and the foundational implementation milestones are complete; the fixed API/test gates remain authoritative.
Project constraints
Implemented in
b413cd6and pushed to main.The native Rust client core now provides the exact grouped C# Settings defaults, validation for endpoints/durations/limits/cache and feature policies, typed configuration and lifecycle errors, an explicit GridClientBuilder and ClientService ownership contract, injected clocks, executor-neutral cancellation futures and linked tokens, and deterministic idempotent shutdown in network/manager/HTTP/rate-limiter order. Construction performs no I/O and starts no runtime. Debug output redacts login endpoints, clocks, and service internals. Public ownership/runtime documentation is in docs/client-core.md.
Verified in isolation with all 48 libremetaverse-types tests, the 3 client_core tests, core_runtime_shims, world_manager_shims, scoped Clippy with warnings denied, generated shim and Rust mapping checks, the independent API compile fixture, rustdoc, and serial cargo test --workspace --no-run --no-default-features. The broader red-suite/parity baseline remains stale from already-landed milestone-07 packet/message passes; no #51 parity-case body was changed.