Metadata-Version: 2.4
Name: emkeel
Version: 2.0.1
Summary: Governance framework and process gates
Author: EMillion Networking LTD
License-Expression: Apache-2.0
Project-URL: Repositorio, https://github.com/emillion-networking-ltd-labs/emkeel
Project-URL: Incidencias, https://github.com/emillion-networking-ltd-labs/emkeel/issues
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Typing :: Typed
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest==8.3.4; extra == "dev"
Requires-Dist: ruff==0.9.6; extra == "dev"
Requires-Dist: mypy==1.15.0; extra == "dev"
Dynamic: license-file

# emkeel

Marco de gobernanza del desarrollo, y el motor que lo aplica. No es una guía: son controles que
corren en la integración continua de cada repositorio que lo adopta, y un guardián que juzga en la
sesión, antes de que el trabajo llegue a la forja.

## Qué hace

- **Un ciclo por ticket**: Issue → rama nacida de él → especificación → aprobación del operador →
  plan → tareas → implementación test-primero → solicitud de cambios → fusión → validación → cierre.
  Cada paso tiene un control que lo comprueba, y ninguno se puede saltar.
- **Controles que no se pueden esquivar**: viven en la integración continua del repositorio
  adoptante y se exigen por nombre en su regla de rama.
- **Un guardián en la sesión**: deniega la escritura fuera de orden y anuncia en su primera línea
  qué ha comprobado y qué no ha podido comprobar. Su silencio es la señal.
- **La normativa viaja con el paquete**: quien lo instala puede leer las reglas que lo gobiernan.

## Qué no hace

- **No impone un estándar de código.** El estándar es de cada repositorio; el marco no lo verifica.
- **No fusiona.** La fusión es el registro del juicio del operador, y ningún automatismo la suple.
- **No decide.** Los puntos de decisión son del operador, y quedan registrados con su fecha.

## Instalación

```
pip install emkeel
emkeel adopt --repo .
```

La adopción no escribe nada sin decir qué escribe, y declara en su mapa lo que **no** cubre: lo que
queda por hacer, de quién es, y por qué el instalador no puede hacerlo.

## Estado

En construcción y gobernado por sí mismo: cada cambio de este repositorio pasa por su propio ciclo,
sus propios controles y su propia lista de validación.

## Licencia

Apache-2.0. Véase [LICENSE](LICENSE).
