Register explicit scope/name coordinates independently of Definition type. Require provider-attested current scope snapshots for fetch and dispatch, compare optional scope_ref at membership precedence, and retain the same Descriptor through result validation. Migrate FS pinned-root boundaries and public self-scope example; document provider atomicity/lifecycle and root-only FS support. Add lifecycle, ref, replacement-race, root-lineage and compile-time exposure regressions. Validation: cargo fmt --all --check; git diff --check; cargo check --workspace --all-targets; cargo test --workspace --all-targets and --doc (232 passing test-harness cases including doctests); nix develop --command cargo clippy --workspace --all-targets -- -D warnings; RUSTDOCFLAGS=-Dwarnings cargo doc --workspace --no-deps. Narrow wip-host suite also passed.
1.7 KiB
1.7 KiB
Changelog
All notable changes to the published WIP Rust crates are documented here.
Unreleased
- Breaking Protocol/HTTP migration from opaque Interface reference strings to
exact
(scope, name)records in Objects, fetches and calls, with optional opaquescope_refmetadata. Adds shape and placement-aware scope validation without changing routes, validators or the wire error-code set. - Breaking Host registration migration to explicit Scope publication lifetimes and local names, with coherent provider-attested scope Object binding for fetch and dispatch. Supplied scope_ref is checked at membership precedence; scope deletion retires retained tokens, while ordinary Object state updates preserve lifetime.
- Migrates FS root publication and public-example self-scopes to the Host API, including coherent backend observations and explicit built-in names. Non-root FS semantics and Client cache recovery remain follow-up work. See MIGRATION.md for API/wire examples and provider responsibilities.
0.1.0
Initial public release of:
wip-protocol: transport-independent WIP logical model and validation.wip-interface-macros: procedural-macro implementation for interface and DTO declarations.wip-interface: public Rust interface-authoring facade and typed value codecs.wip-host: request-scoped publication, precondition validation, and qualified operation dispatch.wip-http: framework-independent WIP over HTTP v1 routes, strict JSON codecs, and failure classification.wip-client: stateful Known Space, interest-driven acquisition, request ownership, and operation lifecycle.
The repository also contains non-published filesystem server, terminal client, and public-API conformance packages.