roadmap: mark phase 2 done
This commit is contained in:
parent
bbb0c316c5
commit
99feb57767
1 changed files with 7 additions and 7 deletions
|
|
@ -19,16 +19,16 @@ Phases below are sized to land as discrete commits. Each phase ends with
|
|||
- Round-trip tests for the encoder
|
||||
- Generator script committed at `docs/etf_vectors.erl`
|
||||
|
||||
## Phase 2 — EPMD client
|
||||
## Phase 2 — EPMD client ✅
|
||||
|
||||
EPMD (Erlang Port Mapper Daemon) maps node names to TCP ports.
|
||||
Tiny synchronous TCP client.
|
||||
|
||||
- Connect `epmd_host:4369` (configurable)
|
||||
- `PORT_PLEASE2_REQ` (113) → port + dist version range
|
||||
- Return `EpmdNodeInfo(port, lo_ver, hi_ver, node_type, proto)`
|
||||
- Tests: live EPMD on localhost (skip if not running), unit tests
|
||||
against a recorded byte stream
|
||||
- Synchronous TCP client
|
||||
- `PORT_PLEASE2_REQ` (122) → `EpmdInfo(name, port, node_type, protocol, hi_ver, lo_ver, extra)`
|
||||
- Returns `None` cleanly on unregistered node, raises `EpmdError` on
|
||||
socket failures
|
||||
- Tests: recorded byte streams from real EPMD + live integration that
|
||||
spawns its own `erl -sname` and tears it down
|
||||
|
||||
## Phase 3 — Distribution handshake
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue