Files
alkhttp/CHANGELOG.md
T
glm-5.3-flash 8e8e1f2b14 refactor(gateway): migrate to alkcall 0.2 promoted gateway module
Bump the alkcall dependency to 0.2 (with the gateway feature) and
converge on the promoted shared pieces:

- The local dispatch spine (gateway/dispatch.rs, 721 lines) is deleted;
  GatewayDispatch, schema_disclosure_denial, and DEFAULT_DEADLINE are
  re-exported from alkcall::gateway (alkcall ADR-048). The 30 s default
  deadline preserves the previous behavior exactly.
- gateway/schema_cache.rs (PublishSchemaCache) is deleted: alkcall CF-003
  compiles publish_schema at registration time and exposes
  OperationRegistry::publish_validator; the /publish chunk stream
  resolves against it. Un-compilable schemas are now rejected at
  registration, so the two end-to-end fail-closed tests were reworked
  into a registration-rejection test (a stronger guarantee).
- schema_disclosure_denial consumers (to_mcp, routes) use alkcall's
  promoted implementation; the alkhttp-local copy is gone (ADR-071
  updated: the guard stays as defense-in-depth, the implementation no
  longer forks).
- CF-001: from_wss drop monitor and the WS overlay tests use
  CallError::connection_closed; the review-001-ws-eof-signal race tests
  now assert retryable CONNECTION_CLOSED on both resolution paths (the
  tolerated non-retryable INTERNAL write-failure outcome is gone).
- Added CHANGELOG.md (Keep a Changelog), Unreleased section records the
  bump and convergence.

Verification: cargo test default 453 ok, wss 470 ok, mcp 526 ok,
all-features 575 ok; clippy -D warnings clean (default + all-features,
all-targets); fmt clean; cargo doc warning-free.

Net: -1093 lines.
2026-08-31 10:36:32 +00:00

46 lines
2.2 KiB
Markdown

# 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`.
- **`/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
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.