Saltar al contenido
mcpizer 0.1.0 · bf25803

Registro de decisiones

docs/decisiones/README.md

El corolario de la sección 1 de ../arquitectura.md dice que, ante una pregunta cuya respuesta no está en la arquitectura, la respuesta por defecto no es preguntar sino decidir y dejar constancia. Esto es la constancia.

Solo se escala lo que contradiga una decisión cerrada o un invariante. Nada de lo registrado aquí lo hace.

Qué entra

Una decisión merece registro si se cumple alguna de estas condiciones:

  • La arquitectura la dejó abierta y había más de una opción defendible.
  • Alguien razonable la tomaría al revés.
  • Se rechazó una alternativa que un implementador propondría por reflejo.

No entran las decisiones que solo tienen una respuesta sensata, ni las que el código explica mejor que un documento.

Formato

Contexto, decisión, motivo, consecuencias y alternativas descartadas. Breve. Un registro que nadie relee no sirve de nada.

Las decisiones no se borran ni se editan cuando cambian: se registra una nueva que sustituya a la anterior, y se marca la vieja como sustituida. Saber qué se creyó y por qué dejó de creerse vale más que un fichero limpio.

Índice

#DecisiónEstado
0001TypeScript sobre el SDK oficial de MCPVigente
0002El núcleo no llama a puertos: es una funciónVigente
0003Cinco contextos delimitadosVigente
0004Ningún contexto importa a otroVigente
0005La política solo concede; no hay denegacionesVigente
0006Nomenclatura en inglés y diseño en varios documentosVigente
0007Fase de sesiones: cuatro sesiones grandes, hito en la CLIVigente
0008Workspace de pnpm, ESM y exports apuntando a lo compiladoVigente
0009La CLI vive en runtime/; el arnés, en verification/Vigente
0010S1 declara dos puertos, no sieteVigente
0011El selector es una conjunción de igualdades sobre atributos de un solo valorVigente
0012path es un puntero RFC 6901 resoluble a línea y columnaVigente
0013El techo más restrictivo se compara por ritmoVigente
0014En seco, el uso por defecto es cero, y el listado no lo consultaVigente
0015La pasarela se orquesta en runtime/; el protocolo MCP vive en adapters/Vigente
0016El nombre expuesto de una tool es upstream__tool, siempreVigente
0017El emisor static-key declara sujeto y referencia a la claveVigente
0018Los fallos que access no ve envuelven la decisión; no amplían ReasonCodeVigente
0019El registro de decisiones va a stderr, porque stdout es el protocoloVigente
0020Una sesión de upstream por (upstream, cuenta)Vigente
0021S2 no añade descubrimiento MCP al CatalogSourceVigente
0022El artefacto elige la periferia por elemento; el arranque elige la del procesoVigente
0023El ciclo de vida de la periferia vive en un compositor, no en los puertosVigente
0024Un claim multivaluado no produce atributoVigente
0025El descubrimiento MCP ocurre una vez al arrancar, y sin credencialVigente
0026jose sí; cliente de Redis y SDK de OpenTelemetry, noVigente
0027Con HTTP la credencial del cliente llega por cabecera y por peticiónVigente
0028PolicySource sobre git: la versión es el sha, y se lee sin copia de trabajoVigente
0029discovery y audience los lee la cáscara del documentoVigente
0030El artefacto desplegable es runtime con su cierre, producido por pnpm deployVigente
0031El empaquetado vive en deployment/, un directorio sin manifiestoVigente
0032La imagen es una envoltura, y el criterio de terminación no la necesitaVigente
0033TLS fuera, CORS ninguno, techo de petición dentroVigente
0034La parada ordenada la conecta la cáscara; sin puerto de señales, salud ni configuraciónVigente
0035Una versión para el producto; los siete paquetes siguen privadosSustituida en parte por 0041
0036Lo que S4 no cierra, y por quéSustituida en parte por 0039 y 0040
0037La identidad de certificado la verifica el terminador TLS, y llega por cabeceraVigente
0038Ni el artefacto ni el secreto de un cliente viajan por canal abiertoVigente
0039El generador del catálogo declarado, y por qué aborta en vez de completarVigente
0040Se escriben las cinco implementaciones previstas que faltabanVigente
0041Se publican los siete, con una sola versión, y el que trae la CLI se llama mcpizerVigente
0042Publicar exige una licencia, y elegirla no es una decisión de diseñoVigente
0043Lo publicado se comprueba instalándolo con el npm realVigente

Importado de rflvz/mcpizer en bf25803. El cuerpo no se reescribe: sólo se reenlaza.