# Paquetes, capas, registros *Construir un meta-modelo · lección 2 de 6 · ~15 min* ## Qué aprenderá Cómo se organiza y se escribe realmente el contenido de un modelo: la jerarquía paquete → capa → registro, los nombres que transportan significado, y qué hace bueno a un registro. ## La jerarquía - Un **paquete** es una responsabilidad semántica: "por qué existe el producto", "diseño del sistema", "calidad y riesgo". Los paquetes están ordenados: primero los fundamentos, de modo que una sola lectura secuencial encuentre las definiciones antes que su uso. - Una **capa** es una pregunta dentro de un paquete: "¿quiénes son las partes interesadas?", "¿cuáles son las API?". El directorio de una capa lleva un `README.md` que enuncia las preguntas que la capa responde: ese README *es* la declaración de significado de la capa. - Un **registro** es una afirmación direccionable de forma independiente: un requisito, una decisión, un contrato de API, un riesgo. Un registro, un archivo. El meta-modelo de dominio insignia, AISMM, fija trece paquetes para el dominio "producto de software" (de b0, núcleo de producto, a b12, economía) con unas 90 capas. Su dominio tendrá sus propios paquetes; la mecánica es idéntica. ## Nombres que las máquinas pueden leer Los registros siguen una convención de nombres que lleva la clasificación en el propio nombre del archivo: ```text {record_kind}-{YYMMDDNNNNN}-{memo}.md req-26071800001-minor-parental-consent.md decision-26061500001-concept-decisions.md i18n-26060300001-languages-roster.md ``` El prefijo es el tipo de registro (requisito, decisión, api, riesgo...), los dígitos son un identificador ordenable basado en la fecha, y el memo es para las personas. Como el tipo está en el nombre, una sola regla declarada en el manifiesto clasifica miles de archivos (lección siguiente). Dos detalles ganados a pulso: los prefijos pueden contener dígitos (`i18n`), y el identificador nunca cambia tras nacer, aunque cambien el memo o el contenido: la estabilidad de la referencia vale más que la elegancia. ## Qué hay dentro de un registro Un registro tiene dos partes: un bloque de máquina y un cuerpo humano. El bloque de máquina (front matter) lleva identidad (identificador de documento, capa, producto), clasificación (`kind_class`: ¿esto es *normativo* para el producto, *descriptivo* de él, o una *proyección* de otra cosa?) y, crucialmente, **derivación**: si un agente produjo este registro a partir de fuentes, el bloque dice de cuáles, quién, cómo se transformó y si un propietario lo ha validado. El cuerpo es prosa ordinaria bien escrita y datos estructurados: el estándar no opina sobre su estilo de redacción, solo sobre su trazabilidad. El trío `kind_class` + `derivation` + `validation_status` es lo que permite a los equipos mixtos de personas y agentes confiar en un modelo: siempre puede distinguir una afirmación normativa validada por su propietario del resumen no validado que un agente hizo de una página de wiki. ## Qué hace bueno a un registro - **Una sola preocupación.** Si no puede titularlo sin una "y", divídalo. - **Direccionable.** A quien le asignen "ocúpate de req-26071800001" no necesita nada más para encontrar su trabajo. - **Referenciado, no repetido.** Los registros citan el canon, la evidencia de `raw/` y a otros registros; el mismo hecho enunciado dos veces acabará siendo cierto una sola vez. - **Honesto sobre su estado.** Borrador, sin validar, sustituido: los estados son metadatos, no secretos. ## Ideas clave - Paquete = responsabilidad, capa = pregunta, registro = una afirmación direccionable. - El nombre del archivo lleva el tipo; el front matter lleva identidad, clasificación y derivación. - La trazabilidad (quién derivó esto de qué, quién lo validó) es lo que hace utilizable el contenido escrito por agentes. ## Profundizar - [Arquitectura central de MMAS](/spec/#02-architecture/MMAS-Core.md) · [Convenciones de nombres](/spec/#02-architecture/Naming-Conventions.md) - [Crear un nuevo meta-modelo](/spec/#07-guides/Create-a-New-Meta-Model.md) - AISMM, el meta-modelo de dominio insignia: [github.com/orkestron-ai/software-meta-model](https://github.com/orkestron-ai/software-meta-model) Siguiente: [El recorrido sin pérdida](03-walk.md)