dec-0089

Vista generada de dec-0089: Mesh role mapping

ImplementadoSin versión del tren todavía· generada desde docs/decisions/dec-0089-mesh-role-mapping.md
track/docsdec-0124track/docs:DC10

Vista generada desde docs/decisions/dec-0089-mesh-role-mapping.md. No se edita a mano: bun run docs:gen la regenera y bun run docs:check falla si difiere. El estado aquí es el del model: si discrepa con otra página, manda el model.

CampoValor
EstadoLOCKED (migrado de un rNN por gate-3: el fichero no declara estado)
Referencia legadar60-D1
Ficherodocs/decisions/dec-0089-mesh-role-mapping.md

Enmienda a: r17, r27, r40, r45, r52, r54, r59

Por qué importa (del frontmatter del ADR):

TKT-050 (gate 'r60-D1-code', status open) + AC-D1 en TKT-045 + referencia en roadmap.spec.yml. Código (@styx/api-contracts/mesh-roles.ts) aún no existe (verificado con find), pero el ticket en la cola ejecutable cuenta como consumer real.

Nodos del roadmap que lo citan en refs: ninguno.

Páginas de la documentación que lo citan: ninguna todavía.

Texto del ADR

Leído de docs/decisions/dec-0089-mesh-role-mapping.md, el fichero canónico.

Mesh role mapping

Mesh role mapping = aliases explícitos a r17 svcs + r27 §Nodes; NO identidades mesh-own nuevas, NO control-plane paralelo a NATS r18.

Por qué pasa gate-3

  • Hard-to-reverse: Si creamos identidades mesh-own duplicadas de r17/r27, revertir requiere renombrar y eliminar referencias. No es un flip de config, es corrección de identidad.
  • Surprising sin contexto: Un ingeniero viendo CATALOG_NODE o IDENTITY_NODE en código NO inferiría que son aliases a catalog-svc/identity-svc sin este ADR. Parecerían entidades nuevas con lifecycle propio.
  • Trade-off real: Alternativa rejected explícitamente: crear 12 identidades mesh-own (CONTROL/CATALOG/IDENTITY/STORAGE/COMPUTE/TRANSCODE/ANALYSIS/EDGE_CACHE/REMOTE_GATEWAY/RELAY/APPLIANCE/CLIENT) como entidades propias. Coste visible: vocabulario pollution, control-plane paralelo al bus NATS r18, duplicación de r17 microservicios.

Procedencia

Split de docs/decisions/r60-boundary-authorities-2026-07-15.md (lock r60-D1) durante PASO 7 (2026-07-16). Ver el fichero padre para el contexto completo del pack original.