giles
2bafb4f7d2
Merge loops/fed-sx-m2 into architecture: federation milestone 2
m2 lands multi-actor + cross-instance federation on the fed-sx
substrate. Feature-complete except 8b-timer (retry-loop wiring,
gated on erlang:send_after substrate primitive in loops/erlang).
Highlights:
- Multi-actor gen_server kernel (one nx_kernel handles N actors)
- Per-actor HTTP routes /actors/<id>/{inbox,outbox} + actor-doc
- Inbound signature verify + peer-AS cache + auto-Accept publish
- Outbound delivery_set with audience expansion + delivery_worker
- Native httpc:request/4 BIF wrapper + live HTTP dispatch
- Discovery: peer-actor fetch + cache on demand
- Backfill on Follow accept (in-process + paginated outbox)
- Two-instance smoke test passes 6/6 (real cross-host HTTP flow)
Substrate fixes carried in this merge (textually identical to
upstream-arrived copies, will conflict on scoreboard files only):
- Blockers #1: er-bif-http-listen marshaller bridge rewrite
- Blockers #4: er-sched-step-alive! :pending-args extension
(lets receive in a kernel-aware route suspend+resume cleanly)
Conformance 761/761 still green on m2 tip.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
# Conflicts:
# lib/erlang/runtime.sx
2026-06-28 16:57:55 +00:00
..
2026-06-06 22:44:28 +00:00
2026-06-06 19:17:28 +00:00
2026-06-07 12:34:07 +00:00
2026-06-07 13:40:02 +00:00
2026-06-20 07:37:43 +00:00
2026-06-07 14:49:15 +00:00
2026-05-18 14:48:00 +00:00
2026-06-07 15:20:55 +00:00
2026-06-28 16:57:55 +00:00
2026-06-07 20:03:07 +00:00
2026-06-07 10:50:47 +00:00
2026-06-06 19:33:04 +00:00
2026-06-07 11:37:46 +00:00
2026-06-07 09:55:44 +00:00
2026-06-19 22:22:40 +00:00
2026-05-13 21:16:09 +00:00
2026-06-07 14:12:10 +00:00
2026-06-19 22:22:40 +00:00
2026-05-14 20:18:03 +00:00
2026-05-14 20:21:18 +00:00
2026-05-09 14:12:36 +00:00
2026-06-06 19:40:36 +00:00
2026-05-11 05:54:39 +00:00
2026-06-06 20:43:15 +00:00
2026-06-19 22:22:40 +00:00
2026-06-07 13:43:20 +00:00
2026-06-19 22:22:40 +00:00
2026-06-07 00:46:22 +00:00
2026-06-19 20:36:30 +00:00
2026-05-12 07:02:56 +00:00
2026-06-19 20:36:30 +00:00
2026-05-11 22:26:45 +00:00
2026-05-08 14:23:45 +00:00