Vista generada de dec-0093: Placement Planner
docs/decisions/dec-0093-placement-planner.mdVista generada desde
docs/decisions/dec-0093-placement-planner.md. No se edita a mano:bun run docs:genla regenera ybun run docs:checkfalla si difiere. El estado aquí es el del model: si discrepa con otra página, manda el model.
| Campo | Valor |
|---|---|
| Estado | LOCKED (migrado de un rNN por gate-3: el fichero no declara estado) |
| Referencia legada | r60-EXTRA-placement-planner-library |
| Fichero | docs/decisions/dec-0093-placement-planner.md |
Enmienda a: r17, r27, r40, r45, r52, r54, r59
Por qué importa (del frontmatter del ADR):
ROADMAP.md línea 203 ('F-NODE-FOUNDATION ext. cont. 41... Placement Planner = LIBRARY... no microservicio'); r61 §AC-D6 ('Placement Planner = LIBRARY en packages/placement/... find apps/ -name 'placement' = 0 hits'); header del propio r60 ('Bloquea: F-NODE-FOUNDATION.M1+ placement trigger refinado'); docs/progress-log.md líneas 6694/6722.
Nodos del roadmap que lo citan en refs: ninguno.
Páginas de la documentación que lo citan: ninguna todavía.
Leído de docs/decisions/dec-0093-placement-planner.md, el fichero canónico.
Placement Planner = LIBRARY (no microservicio), consumida por F-NODE-FOUNDATION + F-SWARM-CORE; trigger = M1 done + ≥1 nodo real F-NODE-ACQUISITION (r28 §3 anti-speculative).
NI classify NI verify evaluaron esto como lock — está huérfano en el ADR: solo aparece en 'Conflicts resolved' (línea 195, citado por error como parte de 'D1') y en 'Alternatives considered' (línea 207), pero el cuerpo real de D1 (líneas 37-56) es únicamente el alias table de mesh roles, sin mencionar Placement Planner. Es una decisión real y distinta: dado que r17 es 'microservicios split-duro desde día 1 (…) sin modo monolito' (invariante global del repo), decidir que Placement Planner NO es microservicio es un carve-out genuinamente surprising sin contexto; la alternativa rechazada (microservicio) tiene coste documentado (viola r17 + duplica role machinery F-NODE-FOUNDATION); y es load-bearing hoy con evidencia más concreta (grep verificable en r61 AC-D6) que varios de los D1-D8 'oficiales'.
Split de docs/decisions/r60-boundary-authorities-2026-07-15.md (lock r60-EXTRA-placement-planner-library) durante PASO 7 (2026-07-16). Ver el fichero padre para el contexto completo del pack original.