docs: align remaining alloc-failure references with ADR-010 §2A (prepublish review for v0.3.0)

- README.md ADR index: ADR-010 status notes the §2A amendment
- ADR-009: amendment note records the §2A supersession (in-band path
  shrinks to nothing from registered producers)
- ADR-010 Consequences: dial_failed replaces the stale in-band
  allocate_failed retry-policy bullet
- AllocFailed doc comment + tty-backend.md: describe both failure
  surfaces (direct-path frame / channels-path dial_failed)
This commit is contained in:
2026-09-07 10:04:44 +00:00
parent af9dbaedea
commit bc4a9b6024
5 changed files with 20 additions and 7 deletions
@@ -21,6 +21,13 @@ cannot carry the allocated handle across — see ADR-010 §2). The R4
tests that asserted the in-band frames for those classes now assert
the call-error shape.
Amended 2026-09-07 (ADR-010 §2A, alkcall 0.6.0 — review 007 R-01):
`Establishment` gained its plan payload, so `allocate` also moved
into the establisher — the in-band error-frame path on this channel
shrinks to nothing from a registered producer (the frames remain the
defense-in-depth fallback for no-establisher registrations and the
direct path). See ADR-010 §2A.
## Context
Before this ADR, the channels path carried the negotiation twice. The
@@ -242,8 +242,9 @@ on `establishment_reason()` without unwrapping strings.
open no longer allocates → succeeds → in-band-fails. Ledger, policy
count, and manager state balance on every rejection.
- Retry policy / UX can branch: `unknown_resource` (bad config — don't
retry), `timeout` (maybe retry), `allocate_failed` (capacity
still distinguishable in-band).
retry), `timeout` (maybe retry), `dial_failed` (capacity/target
refused — maybe retry; amended §2A, was the in-band
`allocate_failed`).
- The consumer's `open_via_channels` failure is a typed call error —
no peeking at the data stream for anything but the (now
unreachable-from-registered-producers) error-frame formality.