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
@@ -657,15 +657,18 @@ alknet-hub (Hub struct deps)
|
||||
│ from_call, FromCallConfig, AdapterError, ClientError)
|
||||
├── alknet-http (HttpAdapter — for the registration endpoint and browser access)
|
||||
├── alknet-core (IdentityProvider, Connection, OperationRegistry,
|
||||
│ HandlerRegistry, AuthContext)
|
||||
│ AuthContext)
|
||||
├── tokio (spawn, time::sleep)
|
||||
└── tracing (logging)
|
||||
|
||||
(assembly-layer deps — used by the hub's composition code, not by
|
||||
the Hub struct itself)
|
||||
├── alknet-endpoint (AlknetEndpoint with quinn + iroh + tcp features,
|
||||
│ │ HandlerRegistry — the accept-loop runner)
|
||||
├── alknet-client (AlknetClient — outbound worker dials, ADR-089)
|
||||
├── alknet-tls (TlsServerConfig — builds the raw-key + X.509/ACME
|
||||
│ configs handed to the endpoint's transports)
|
||||
└── alknet-core [tcp feature] (with_tcp_tls — the TCP+TLS accept loop)
|
||||
└── alknet-core [quinn/iroh features] (Connection::from_quinn/from_iroh)
|
||||
```
|
||||
|
||||
`alknet-hub` depends on `alknet-channels-call`, `alknet-call`, and
|
||||
|
||||
Reference in new issue
Block a user