feat: rename ALPN prefix from alknet/ to alk/ (v0.1.1)
- CHANNELS_ALPN: b"alknet/channels" → b"alk/channels" - CallAdapter::alpn(): b"alknet/call" → b"alk/call" - derive_alpn_from_op_name: alknet/ prefix → alk/ prefix - All ALPN string literals in src/ and docs/ updated - ADR-004 amended with prefix rename rationale - AGENTS.md, README.md updated - Version bumped to 0.1.1 Review: docs/reviews/003-alpn-prefix-rename.md Verification: - cargo test: 542 passed, 0 failed - cargo clippy --all-targets -- -D warnings: clean - cargo fmt --check: clean - cargo doc --no-deps: clean
This commit is contained in:
1 parent
3cce1410c4
commit
08e7df2aa0
60 files changed
+837
-328
No files matched your search
@@ -25,7 +25,7 @@ and/or `channels/<alpn>/pub`:
|
||||
| `channels/<alpn>/sub` | `Sub` | consumer (subscribes) | producer (streams) | server → client |
|
||||
| `channels/<alpn>/pub` | `Pub` | producer (publishes) | consumer (receives) | client → server |
|
||||
|
||||
The `channels/<alpn>/...` path segment is the ALPN with the `alknet/`
|
||||
The `channels/<alpn>/...` path segment is the ALPN with the `alk/`
|
||||
prefix stripped (ADR-047 §"Negative"). An ALPN may register one or both
|
||||
ops; separate op types → separate ACLs. The op spec carries the
|
||||
`channel_open: Option<ChannelOpenSpec>` marker (ADR-047 §2) — the
|
||||
@@ -44,8 +44,8 @@ Request (`call.requested` on channel 0):
|
||||
```
|
||||
|
||||
The `input` is ALPN-specific params (the former `params` field, now the
|
||||
op's `input_schema`). For `alknet/tty` this is the `NegotiateRequest`;
|
||||
for `alknet/tunnel` this is the target resource. The channels layer does
|
||||
op's `input_schema`). For `alk/tty` this is the `NegotiateRequest`;
|
||||
for `alk/tunnel` this is the target resource. The channels layer does
|
||||
not interpret `input`.
|
||||
|
||||
Response (`call.responded`):
|
||||
@@ -174,11 +174,11 @@ The responder registers a `StreamingHandler` that emits a
|
||||
"output": {
|
||||
"resources": [
|
||||
{
|
||||
"alpn": "alknet/tty",
|
||||
"alpn": "alk/tty",
|
||||
"backends": ["docker", "local"]
|
||||
},
|
||||
{
|
||||
"alpn": "alknet/tunnel",
|
||||
"alpn": "alk/tunnel",
|
||||
"targets": ["container:*", "service:postgres"]
|
||||
}
|
||||
]
|
||||
@@ -394,7 +394,7 @@ This is not a flaw — it is the same shape as any per-peer ACL.
|
||||
|
||||
### Recursive channels do not bypass the cap
|
||||
|
||||
A recursive `alknet/channels`-inside-`alknet/channels` channel runs a
|
||||
A recursive `alk/channels`-inside-`alk/channels` channel runs a
|
||||
new `ChannelsAdapter` with a new `ChannelManager`. If the same
|
||||
`ChannelLifecyclePolicy` is wired into the inner `ChannelOperations`,
|
||||
the inner channels are counted against the same identity. Recursion
|
||||
@@ -422,8 +422,8 @@ JSON payload; the hub's `CallAdapter` translates these too (rewrites
|
||||
`channel/control` — it's a call operation, translated, not
|
||||
byte-forwarded.
|
||||
|
||||
The hub never runs a handler for `alknet/tty`, `alknet/ssh`, or
|
||||
`alknet/tunnel`. It runs `alknet/channels` (the relay) and `alknet/call`
|
||||
The hub never runs a handler for `alk/tty`, `alk/ssh`, or
|
||||
`alk/tunnel`. It runs `alk/channels` (the relay) and `alk/call`
|
||||
(for its own hub-level operations + translation). The `channel_open`
|
||||
marker (ADR-047 §2) is how the hub recognizes a channel-open op during
|
||||
`from_call` discovery (ADR-047 §1, Gap C) — the `from_call` relay
|
||||
@@ -437,7 +437,7 @@ All design decisions are documented as ADRs in [decisions/](decisions/).
|
||||
|-----|----------|---------|
|
||||
| [037](decisions/037-channel-lifecycle-operations.md) | Channel Lifecycle Operations | The generic ops; `direction` pinned (amended by ADR-047 — `channel/open` dissolves; `direction` removed) |
|
||||
| [047](decisions/047-openable-alpns-are-operations.md) | Openable ALPNs Are Operations | Per-ALPN open ops; `channel_open` marker; `ChannelCore` wrapper; opener ledger |
|
||||
| [036](decisions/036-channel-0-pre-negotiated-call.md) | Channel 0 Pre-Negotiated | Channel 0 = alknet/call |
|
||||
| [036](decisions/036-channel-0-pre-negotiated-call.md) | Channel 0 Pre-Negotiated | Channel 0 = alk/call |
|
||||
| [042](decisions/042-hub-relay-translate-not-forward.md) | Hub Relay | Translate channel 0, byte-forward data channels |
|
||||
| [041](decisions/041-per-identity-channel-cap.md) | Per-Identity Channel Cap | 256 per PeerId, enforced via ChannelLifecyclePolicy in channels-call (amended by ADR-047 §7 — opener ledger, every teardown path) |
|
||||
| [035](decisions/035-channels-pure-channel-multiplexing.md) | Pure Channel Multiplexing | No stream_types; handler owns sub-mux |
|
||||
|
||||
Reference in new issue
Block a user