T-20: identify interfaces by exact scope/name pairs; add optional opaque scope_ref metadata and separate shape validation from path-dependent scope compatibility. Preserve call error precedence, strict JSON, validators and transport boundaries. Mechanically migrate consumers and document API/wire compatibility and deferred lifecycle semantics. Validation: cargo fmt --all --check; git diff --check; cargo check --workspace --all-targets; cargo test -p wip-protocol -p wip-http; cargo test --workspace (221 passing tests including doctests); cargo test --workspace --all-targets; nix develop --command cargo clippy --workspace --all-targets -- -D warnings; RUSTDOCFLAGS="-D warnings" cargo doc --workspace --no-deps. All pass. cargo/rustc 1.95.0; development-shell Clippy/rustc 1.97.1.
1.3 KiB
1.3 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. - Mechanically migrates workspace consumers and fixtures. See MIGRATION.md for API/wire examples and the deferred Host/Client lifecycle semantics.
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.