Files
wip-rs/CHANGELOG.md
Hare 755e6aeb88 feat: bind Host interfaces to scope Object lifetimes
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.
2026-10-08 03:18:13 +09:00

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 opaque scope_ref metadata. 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.