# Changelog
All notable changes to this crate are documented here. The format is
based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and
this crate adheres to [Semantic Versioning](https://semver.org/).
## [Unreleased]
### Changed
- **`alkcall` dependency bumped to 0.2** with the `gateway` feature
enabled. The transport-neutral dispatch spine now comes from
`alkcall::gateway` (promoted from this crate per alkcall ADR-048):
`GatewayDispatch`, `schema_disclosure_denial`, and
`DEFAULT_DEADLINE` are re-exported from `alkhttp::gateway`; the
local copy (`gateway/dispatch.rs`) was deleted. The spine is used
with the 30 s default deadline (identical behavior to the local
version). alkcall 0.2 also carries the consumer-findings fixes
CF-001..004 documented in
`alkcall/docs/reviews/consumer-findings-ledger.md`.
- **`alkcall` dependency bumped to 0.4.1** (through 0.3, 0.4.0):
- 0.3 — per-session fork, serving loop, and `op/register`
(the WS op/register ACL surface in this crate builds on it);
0.3.1 — `PeerCompositeEnv::peer_operations` so `list-peers`
sees peer-announced ops (UP-03).
- 0.4.0 — the registry enforces `input_schema` at call time
(ADR-016 `INVALID_INPUT` leg); adapters no longer need to
validate before dispatch.
- 0.4.1 — early-arrival chunks are parked for un-adopted
channels, closing the open/first-data race on the WS overlay.
- **`/publish` chunk validation uses the registry-owned validator**
(CF-003). The local compile-once `PublishSchemaCache`
(`gateway/schema_cache.rs`) is removed — `publish_schema` is
compiled at **registration time** by alkcall and exposed as
`OperationRegistry::publish_validator`; an un-compilable schema is
now a registration error, so the fail-open window this cache closed
GW-side cannot exist upstream either. The `/publish` chunk stream
resolves against the registry's cached validator.
- The from_wss drop monitor and the WS overlay tests use
`CallError::connection_closed` (CF-001), and the
review-001-ws-eof-signal race tests now assert retryable
`CONNECTION_CLOSED` on **both** resolution paths (the drop monitor
and the undelivered-request write failure) — the previously
tolerated non-retryable `INTERNAL: failed to write request frame`
outcome on the race path is gone.
### Notes
- **CF-004 convergence:** the alkhttp-local `services/schema`
defense-in-depth guard remains, but its shared check
(`schema_disclosure_denial`) is now alkcall's promoted
implementation (ADR-048); the alkhttp-local copy is gone. See
ADR-071 for the updated disposition.