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

32 lines
1.7 KiB
Markdown

# 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](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.