docs(arch): extract AlknetEndpoint into alknet-endpoint (ADR-083 Am. 2026-07-15)
Amend ADR-083 with the crate-extraction decision: the endpoint moves from alknet-core into a new crate alknet-endpoint, mirroring the alknet-client extraction (ADR-089). The ADR's shape (new + builder methods + public dispatch + run/shutdown) is unchanged; only the location changes. The extraction is structural pruning, not an inline refactor. The endpoint is a leaf consumer of core's shared types (zero handler crates import it; 124 import sites for the other core modules). Extracting it lets core shed quinn/iroh/rcgen/rustls-acme — handler crates no longer transitively link those. A pure worker (client-only) does not pull alknet-endpoint at all. The dep graph is symmetric: alknet-core is the shared types crate; alknet-endpoint and alknet-client are the server-side and client-side establishment crates. New spec: crates/endpoint/README.md (the canonical endpoint spec). core/endpoint.md is deprecated to a stub. Cross-references updated across 8 docs (README, overview, tls, hub, client, core README, ADR-083, ADR-089 references). Architecture review passed (3 critical, 9 warnings — all addressed).
This commit is contained in:
1 parent
ce7de57973
commit
8669594661
9 files changed
+667
-457
No files matched your search
@@ -426,7 +426,7 @@ alknet-hub (uses AlknetClient for outbound worker dials)
|
||||
├── alknet-client (the dial — the hub's dial_worker closure calls it)
|
||||
├── alknet-channels-call (ChannelClient — the take-over)
|
||||
├── alknet-call (CallAdapter, Dispatcher)
|
||||
└── alknet-core (AlknetEndpoint)
|
||||
└── alknet-endpoint (AlknetEndpoint)
|
||||
|
||||
alknet-worker (uses AlknetClient to dial a hub)
|
||||
├── alknet-client (the dial)
|
||||
@@ -533,7 +533,7 @@ See [open-questions.md](../../open-questions.md) for full details.
|
||||
`ChannelClient::from_connection` (the take-over the dial feeds)
|
||||
- [ADR-017](../../decisions/017-call-protocol-client-and-adapter-contract.md)
|
||||
— `CallClient::spawn_dispatch` (the take-over the dial feeds)
|
||||
- [`crates/core/endpoint.md`](../core/endpoint.md) — `AlknetEndpoint`
|
||||
- [`crates/endpoint/README.md`](../endpoint/README.md) — `AlknetEndpoint`
|
||||
(the server-side complement)
|
||||
- [`crates/tls/README.md`](../tls/README.md) — `TlsClientConfig`
|
||||
- [`crates/call/client-and-adapters.md`](../call/client-and-adapters.md)
|
||||
|
||||
Reference in new issue
Block a user