bootstrap: iniciar bitácora operativa
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
+++
|
||||
title = "Bitácora Operativa del Clúster"
|
||||
description = "Punto único para entender, operar y revisar los cambios técnicos del clúster."
|
||||
sort_by = "date"
|
||||
template = "index.html"
|
||||
+++
|
||||
|
||||
La bitácora reúne conocimiento estable y actividad operativa en un mismo sitio, sin mezclar sus ciclos de vida:
|
||||
|
||||
- **Documentación** explica cómo está construido el clúster.
|
||||
- **Manuales** indican cómo ejecutar procedimientos repetibles.
|
||||
- **Memorias** registran qué se cambió, quién lo hizo y cómo se validó.
|
||||
- **Proyectos** agrupan objetivos, alcance e hitos.
|
||||
- **Tareas** muestran trabajo pendiente, responsables y tiempo real.
|
||||
@@ -0,0 +1,9 @@
|
||||
+++
|
||||
title = "Documentación"
|
||||
description = "Arquitectura, decisiones, inventarios, políticas y explicaciones técnicas duraderas."
|
||||
sort_by = "weight"
|
||||
template = "section.html"
|
||||
page_template = "page.html"
|
||||
+++
|
||||
|
||||
Aquí vive el conocimiento descriptivo del clúster: el **qué**, el **por qué** y las relaciones entre componentes.
|
||||
@@ -0,0 +1,33 @@
|
||||
+++
|
||||
title = "Arquitectura de la bitácora operativa"
|
||||
description = "Separación entre contenido legible, eventos de estado, identidad SSH y publicación estática."
|
||||
date = 2026-08-12T00:00:00Z
|
||||
authors = ["sistema"]
|
||||
slug = "arquitectura-bitacora"
|
||||
template = "page.html"
|
||||
weight = 10
|
||||
|
||||
[taxonomies]
|
||||
categories = ["documentacion"]
|
||||
tags = ["arquitectura", "git", "zola"]
|
||||
systems = ["bitacora"]
|
||||
|
||||
[extra]
|
||||
id = "DOC-DEMO-001"
|
||||
kind = "documentacion"
|
||||
author_id = "sistema"
|
||||
author_fingerprint = ""
|
||||
+++
|
||||
|
||||
## Capas
|
||||
|
||||
1. **Contenido fuente:** páginas Markdown con front matter TOML.
|
||||
2. **Eventos:** revisiones y temporizadores en archivos JSON anexables.
|
||||
3. **Identidad:** registro de administradores y huellas de llaves públicas SSH.
|
||||
4. **Auditoría:** commits Git, preferentemente firmados con SSH.
|
||||
5. **Proyección:** `clusterlog sync` calcula el estado actual para las vistas de Zola.
|
||||
6. **Publicación:** Zola genera HTML estático, búsqueda, taxonomías y feeds.
|
||||
|
||||
## Regla de diseño
|
||||
|
||||
El sitio web es una proyección de lectura. Las mutaciones se realizan con la CLI, se validan y después se integran mediante Git.
|
||||
@@ -0,0 +1,9 @@
|
||||
+++
|
||||
title = "Manuales"
|
||||
description = "Runbooks y procedimientos operativos verificables, con prerrequisitos, pasos y reversión."
|
||||
sort_by = "weight"
|
||||
template = "section.html"
|
||||
page_template = "page.html"
|
||||
+++
|
||||
|
||||
Los manuales deben ser ejecutables por una persona distinta de quien los escribió y declarar claramente sus condiciones de seguridad.
|
||||
@@ -0,0 +1,45 @@
|
||||
+++
|
||||
title = "Registrar al primer administrador"
|
||||
description = "Inicialización segura del registro de identidad de clusterlog."
|
||||
date = 2026-08-12T00:00:00Z
|
||||
authors = ["sistema"]
|
||||
slug = "registrar-primer-administrador"
|
||||
template = "page.html"
|
||||
weight = 10
|
||||
|
||||
[taxonomies]
|
||||
categories = ["manuales"]
|
||||
tags = ["identidad", "ssh", "inicio"]
|
||||
systems = ["bitacora"]
|
||||
|
||||
[extra]
|
||||
id = "RUN-DEMO-001"
|
||||
kind = "manuales"
|
||||
author_id = "sistema"
|
||||
author_fingerprint = ""
|
||||
+++
|
||||
|
||||
## Prerrequisitos
|
||||
|
||||
- Una llave SSH personal con su archivo público disponible.
|
||||
- Git inicializado en la raíz del proyecto.
|
||||
- El binario `clusterlog` compilado.
|
||||
|
||||
## Procedimiento
|
||||
|
||||
```bash
|
||||
git init
|
||||
make build
|
||||
./bin/clusterlog --ssh-key ~/.ssh/id_ed25519 --commit admin add \
|
||||
--id ana --name "Ana Operadora" --email ana@example.org
|
||||
```
|
||||
|
||||
El primer administrador recibe automáticamente el rol `owner`. Después, sólo un `owner` activo puede registrar a otra persona.
|
||||
|
||||
## Verificación
|
||||
|
||||
```bash
|
||||
./bin/clusterlog --ssh-key ~/.ssh/id_ed25519.pub identity
|
||||
./bin/clusterlog validate --skip-zola
|
||||
git log --show-signature -1
|
||||
```
|
||||
@@ -0,0 +1,10 @@
|
||||
+++
|
||||
title = "Memorias"
|
||||
description = "Historia cronológica y auditable de intervenciones, cambios, incidentes y correcciones."
|
||||
sort_by = "date"
|
||||
template = "memories.html"
|
||||
page_template = "memory.html"
|
||||
generate_feeds = true
|
||||
+++
|
||||
|
||||
Cada entrada describe una sesión de trabajo o una unidad de cambio. Las entradas sujetas a revisión aparecen también en **Revisión semanal**.
|
||||
@@ -0,0 +1,47 @@
|
||||
+++
|
||||
title = "Inicializar la estructura de la bitácora"
|
||||
description = "Ejemplo de memoria no operativa que explica el formato esperado."
|
||||
date = 2026-08-12T00:00:00Z
|
||||
authors = ["sistema"]
|
||||
slug = "ejemplo-inicial"
|
||||
template = "memory.html"
|
||||
|
||||
[taxonomies]
|
||||
categories = ["memorias"]
|
||||
tags = ["ejemplo", "inicio"]
|
||||
systems = ["bitacora"]
|
||||
|
||||
[extra]
|
||||
id = "MEM-DEMO-001"
|
||||
kind = "memory"
|
||||
author_id = "sistema"
|
||||
author_fingerprint = ""
|
||||
risk = "low"
|
||||
ticket = ""
|
||||
review_required = false
|
||||
review_policy = "all-active"
|
||||
started_at = "2026-08-12T00:00:00Z"
|
||||
finished_at = "2026-08-12T00:15:00Z"
|
||||
duration_minutes = 15
|
||||
agent = "scaffold"
|
||||
+++
|
||||
|
||||
## Contexto
|
||||
|
||||
Se creó una entrada demostrativa para documentar el contrato de las memorias sin añadirla a la cola de revisión.
|
||||
|
||||
## Cambios realizados
|
||||
|
||||
- Se definió el front matter mínimo.
|
||||
- Se añadieron taxonomías de etiquetas y sistemas.
|
||||
- Se declaró explícitamente que el ejemplo no requiere revisión.
|
||||
|
||||
## Validación
|
||||
|
||||
- La página es parseable por la CLI.
|
||||
- El identificador comienza con `MEM-`.
|
||||
- No contiene información sensible.
|
||||
|
||||
## Riesgo y reversión
|
||||
|
||||
Eliminar esta página cuando el equipo haya creado su primera memoria real.
|
||||
@@ -0,0 +1,9 @@
|
||||
+++
|
||||
title = "Proyectos"
|
||||
description = "Objetivos compartidos, alcance, responsables, hitos y criterios de éxito."
|
||||
sort_by = "date"
|
||||
template = "projects.html"
|
||||
page_template = "project.html"
|
||||
+++
|
||||
|
||||
Los proyectos dan contexto a las tareas y permiten explicar por qué existe cada línea de trabajo.
|
||||
@@ -0,0 +1,44 @@
|
||||
+++
|
||||
title = "Adopción de la bitácora operativa"
|
||||
description = "Proyecto demostrativo para desplegar el flujo de documentación y revisión."
|
||||
date = 2026-08-12T00:00:00Z
|
||||
authors = ["sistema"]
|
||||
slug = "adopcion-bitacora"
|
||||
template = "project.html"
|
||||
|
||||
[taxonomies]
|
||||
categories = ["proyectos"]
|
||||
tags = ["ejemplo", "operaciones"]
|
||||
systems = ["bitacora"]
|
||||
|
||||
[extra]
|
||||
id = "PRJ-DEMO-001"
|
||||
kind = "project"
|
||||
status = "planned"
|
||||
owners = []
|
||||
target_date = "2026-09-30"
|
||||
created_by = "sistema"
|
||||
author_fingerprint = ""
|
||||
+++
|
||||
|
||||
## Objetivo
|
||||
|
||||
Conseguir que todas las intervenciones relevantes del equipo queden documentadas, revisadas y localizables en un único repositorio.
|
||||
|
||||
## Alcance
|
||||
|
||||
- Registrar administradores.
|
||||
- Crear memorias desde sesiones asistidas por IA.
|
||||
- Celebrar una revisión semanal basada en la cola pendiente.
|
||||
- Adoptar proyectos y tareas compartidas.
|
||||
|
||||
## Hitos
|
||||
|
||||
- Primer administrador registrado.
|
||||
- Primera memoria real revisada por todo el equipo.
|
||||
- Primer mes con cobertura operativa completa.
|
||||
|
||||
## Criterios de éxito
|
||||
|
||||
- Toda memoria de cambio relevante se publica el mismo día.
|
||||
- Ningún pendiente de revisión supera dos reuniones semanales.
|
||||
@@ -0,0 +1,8 @@
|
||||
+++
|
||||
title = "Revisión semanal"
|
||||
description = "Memorias que aún requieren confirmación de uno o más administradores."
|
||||
template = "review.html"
|
||||
in_search_index = false
|
||||
+++
|
||||
|
||||
Esta página es la agenda operativa de la reunión semanal. Una memoria desaparece cuando todos los revisores requeridos han registrado su revisión para el hash actual del contenido.
|
||||
@@ -0,0 +1,9 @@
|
||||
+++
|
||||
title = "Tareas"
|
||||
description = "Trabajo visible para el equipo, con prioridad, estimación, fecha objetivo y tiempo acumulado."
|
||||
sort_by = "date"
|
||||
template = "tasks.html"
|
||||
page_template = "task.html"
|
||||
+++
|
||||
|
||||
El estado actual y el tiempo real se calculan a partir de eventos anexables; la definición original de la tarea permanece legible en Markdown.
|
||||
@@ -0,0 +1,36 @@
|
||||
+++
|
||||
title = "Registrar al equipo inicial"
|
||||
description = "Tarea demostrativa vinculada al proyecto de adopción."
|
||||
date = 2026-08-12T00:00:00Z
|
||||
authors = ["sistema"]
|
||||
slug = "registrar-equipo-inicial"
|
||||
template = "task.html"
|
||||
|
||||
[taxonomies]
|
||||
categories = ["tareas"]
|
||||
tags = ["ejemplo", "inicio"]
|
||||
systems = ["bitacora"]
|
||||
|
||||
[extra]
|
||||
id = "TSK-DEMO-001"
|
||||
kind = "task"
|
||||
status = "todo"
|
||||
priority = "high"
|
||||
project_id = "PRJ-DEMO-001"
|
||||
assignees = []
|
||||
estimate_minutes = 30
|
||||
due = "2026-08-31"
|
||||
created_by = "sistema"
|
||||
author_fingerprint = ""
|
||||
+++
|
||||
|
||||
## Objetivo
|
||||
|
||||
Registrar las llaves públicas de las personas que administran el clúster y comprobar la resolución de identidad.
|
||||
|
||||
## Criterios de aceptación
|
||||
|
||||
- Existe al menos un `owner` activo.
|
||||
- Cada administrador tiene una huella SSH única.
|
||||
- `config/allowed_signers` contiene todas las llaves activas.
|
||||
- `clusterlog validate --skip-zola` termina sin errores.
|
||||
Reference in New Issue
Block a user