- 00_VISION/MARCO_TEMPORAL.md - Marco conceptual temporal - 01_ARQUITECTURA/aplicaciones/09_APLICACIONES.md - Aplicaciones TZZR - 03_MODELO_DATOS/hst_standards_all.json - Tags HST JSON - 03_MODELO_DATOS/procesos_productivos.md - Procesos productivos - 05_INTEGRACIONES/README_MCP.md - MCP Server README - 05_INTEGRACIONES/SPEC_MCP.md - MCP Especificación técnica - 99_ANEXOS/ANEXO_1_REFERENCIA_TECNICA.md - Referencia técnica
16 KiB
09_APLICACIONES
Versión: 10.0
Fecha: 6 Enero 2026
Sistema: TZZR
Visión General
Las aplicaciones son interfaces especializadas para interactuar con el sistema TZZR. Cada una resuelve un problema específico y puede integrarse con otras partes del sistema.
| App | Propósito | Destino |
|---|---|---|
| Packet | Captura de evidencia | Secretaría (Clara) |
| Mind Map | Árboles de milestones y bloques | Feldman (estructuras) |
| Mind Flow | Flujos de trabajo con HST | Producción (Alfred/Jared) |
| Mind Link | Menú de acceso / visualizador | Salida (Usuario) |
Packet
Tipo: App Móvil (Flutter)
Estado: APK funcional
Destino: Secretaría (Clara/Margaret)
Propósito
Captura de evidencia multimedia con política zero-retention. Todo lo capturado se envía inmediatamente a la Secretaría sin dejar rastro en el dispositivo.
Características
| Característica | Descripción |
|---|---|
| Zero-retention | Archivos en RAM, nunca en disco |
| Hash-first | SHA-256 único por contenedor |
| Offline-capable | Cola de 20 reintentos en 72h |
| Multi-destino | DECK, CORP u otros servidores |
Flujo
Captura → Etiquetas HST → Enviar → Clara → BCK
Pantallas
| Pantalla | Función |
|---|---|
| Captura | Foto, audio, video, texto, GPS |
| Etiquetas | Selección de tags HST |
| Packs | Conjuntos predefinidos |
| Pendientes | Cola de fallos |
| Config | Destinos y bibliotecas |
API
POST /ingest
X-Auth-Key: {h_instancia}
{
"hash": "sha256 del contenedor",
"titulo": "opcional",
"etiquetas": ["mrf1", "mrf2"],
"archivos": [{"nombre", "tipo", "contenido"}]
}
Mind Map
Tipo: App Web / iPad
Estado: Especificado
Destino: Feldman (estructuras de referencia)
Propósito
Crear árboles de milestones y árboles de bloques, enlazarlos entre ellos. Cada nodo genera un hash único. Las estructuras resultantes sirven como documentación interna para que Feldman reconozca entradas y proponga integraciones.
Problema que Resuelve
| Problema | Solución |
|---|---|
| Vendor lock-in | Formato abierto, exportable |
| Duplicación de elementos | Elementos únicos por hash |
| Pérdida de datos | Estructuras separadas de elementos |
Modelo Conceptual
┌─────────────────────────────────────────────────────────────────┐
│ ELEMENTOS │
│ (entidades únicas, cada una con su hash) │
│ │
│ [E1: hash-a1b2] [E2: hash-c3d4] [E3: hash-e5f6] │
└─────────────────────────────────────────────────────────────────┘
│
│ RELACIONES
▼
┌─────────────────────────────────────────────────────────────────┐
│ ESTRUCTURAS │
│ │
│ Árbol A: E1 ──► E2 ──► E3 │
│ Árbol B: E4 ──► E5 ──► E3 (mismo E3, no duplicado) │
└─────────────────────────────────────────────────────────────────┘
Identificación por Hash
Cada elemento tiene un content hash (SHA-256) calculado sobre su contenido:
def calculate_hash(elemento):
content = {
'nombre': elemento['nombre'].strip().lower(),
'tipo': elemento.get('tipo', 'nodo'),
}
content_string = json.dumps(content, sort_keys=True)
return hashlib.sha256(content_string.encode()).hexdigest()
Estados
| Estado | Descripción |
|---|---|
| Borrador | Editable, puede ser solo local |
| Consolidado | Inmutable, sincronizado |
Tipos de Árbol
Árbol de Milestones (MST)
Proyecto Alpha (mrf: a1b2c3...)
├── Fase 1 (mrf: d4e5f6...)
│ ├── Diseño (mrf: g7h8i9...)
│ └── Desarrollo (mrf: j0k1l2...)
└── Fase 2 (mrf: m3n4o5...)
└── Testing (mrf: p6q7r8...)
Árbol de Bloques (BCK)
Documentación Proyecto (mrf: x1y2z3...)
├── Especificación técnica (mrf: a9b8c7...)
├── Manual de usuario (mrf: d6e5f4...)
└── Guía de despliegue (mrf: g3h2i1...)
Enlaces entre Árboles
MST: Fase 1 > Desarrollo
└── enlaza → BCK: Especificación técnica
Interfaz
┌─────────────────────────────────────────────────────────────────┐
│ Mind Map 🔄 Sync ⚙ │
├─────────────────────────────────────────────────────────────────┤
│ ┌───────────────┐ ┌─────────────────────────────────────────┐ │
│ │ MAPAS │ │ Proyecto Alpha │ │
│ │ │ ├─────────────────────────────────────────┤ │
│ │ ▼ Trabajo │ │ │ │
│ │ • Proyecto │ │ ▼ 🔒 Proyecto Alpha │ │
│ │ Alpha │ │ ▼ 🔒 Fase 1 │ │
│ │ • Backlog │ │ • Diseño │ │
│ │ │ │ • Desarrollo [2] │ │
│ │ ▼ Personal │ │ ▶ 🔒 Fase 2 (3 items) │ │
│ │ • Ideas │ │ │ │
│ │ │ │ │ │
│ │ + Nuevo mapa │ │ + Añadir elemento... │ │
│ └───────────────┘ └─────────────────────────────────────────┘ │
├─────────────────────────────────────────────────────────────────┤
│ 🔒 = consolidado [2] = aparece en 2 mapas │
└─────────────────────────────────────────────────────────────────┘
Atajos de Teclado
| Atajo | Acción |
|---|---|
Enter |
Crear hermano debajo |
Tab |
Convertir en hijo |
Shift+Tab |
Subir nivel |
Ctrl+Enter |
Crear hijo |
Space |
Colapsar/expandir |
Ctrl+Shift+C |
Consolidar elemento |
Ctrl+L |
Vincular elemento existente |
Exportación
| Formato | Uso |
|---|---|
| JSON | Estructura completa con hashes |
| OPML | Compatibilidad con otras apps |
| Markdown | Lectura humana |
Mind Flow
Tipo: App Web / iPad
Estado: Especificado
Destino: Producción (Alfred/Jared)
Propósito
Crear flujos de trabajo enlazando piezas de la biblioteca HST. Interfaz minimalista para bocetado rápido de procesos. Los flujos definidos se usan como plantillas en Producción.
Diferencia con Mind Map
| Mind Map | Mind Flow |
|---|---|
| Árboles jerárquicos | Grafos direccionales |
| Estructura estática | Flujo con dirección |
| Milestones y bloques | Procesos HST enlazados |
Principios de Diseño
| Principio | Descripción |
|---|---|
| Minimalismo | Elementos esenciales |
| Naturalidad | Físicas orgánicas |
| Portabilidad | Exportable |
Elementos Visuales
Cuadrados con esquinas redondeadas (estilo Apple), tamaño 1×1.
| Elemento | Marco | Descripción |
|---|---|---|
| Proceso | Amarillo | Paso individual (tag HST) |
| Flujo | Azul | 2+ procesos conectados |
Biblioteca HST en UI
┌─────────────────────────────────────────────────────────────────┐
│ [inv] [cli] [prv] [pgo] [ctr] [doc] [tsk] ... 🔍 Buscar │
├─────────────────────────────────────────────────────────────────┤
│ [⭐ frecuentes del usuario] │
├─────────────────────────────────────────────────────────────────┤
│ │
│ LIENZO DE TRABAJO │
│ │
│ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │ cli │────────▶│ inv │────────▶│ pgo │ │
│ └─────┘ └─────┘ └─────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
Sistema de Físicas
Gravedad Central
Elementos atraídos hacia el centro del lienzo (estilo Apple Watch).
Separación Vertical
- Procesos (amarillo): tendencia arriba
- Flujos (azul): tendencia abajo
Conexiones
Crear
- Arrastrar proceso sobre otro
- Colisión genera rebote
- Se crea línea de conexión
- Ambos pasan a flujo (azul)
Direccionalidad
| Acción | Resultado |
|---|---|
| Deslizar sobre línea | Flecha en dirección del gesto |
| Doble tap | Cicla: sin flecha → → → ← |
Elasticidad
- Límite: 2 celdas
- Superar y soltar en vacío: ruptura
- Superar y soltar sobre otro: unión
Nodo Fantasma
Al crear flujo aparece nodo vacío para:
- Conexiones adicionales
- Flujos circulares
Exportación a Producción
{
"mrf": "hash-del-flujo",
"nombre": "Proceso de facturación",
"pasos": [
{"ref": "cli", "mrf": "hash-cliente"},
{"ref": "inv", "mrf": "hash-factura"},
{"ref": "pgo", "mrf": "hash-pago"}
],
"conexiones": [
{"from": 0, "to": 1},
{"from": 1, "to": 2}
]
}
Mind Link
Tipo: Componente Web embebible
Estado: Planificado
Destino: Salida al usuario
Propósito
Visualizador y menú de acceso integrable en cualquier parte del sistema:
- Menú - Agrupar herramientas o funcionalidades
- Visualizador - Enlace de salida de documentos
- Share - Página pública tipo linktree
Integración con ADI
Se integra con ADI para aplicación de acceso a documentos.
Característica Clave
Embebible en cualquier parte del sistema como componente reutilizable.
Modo Menú
┌─────────────────────────────────────────┐
│ 🏠 TZZR │
├─────────────────────────────────────────┤
│ ┌─────────┐ ┌─────────┐ │
│ │ 📷 │ │ 🗺️ │ │
│ │ Packet │ │ Mind Map│ │
│ └─────────┘ └─────────┘ │
│ ┌─────────┐ ┌─────────┐ │
│ │ ⚡ │ │ 📊 │ │
│ │ Flow │ │ Reports │ │
│ └─────────┘ └─────────┘ │
└─────────────────────────────────────────┘
Modo Visualizador
┌─────────────────────────────────────────┐
│ Documentación Proyecto │
├─────────────────────────────────────────┤
│ [Proyecto] │
│ │ │
│ ┌─────────┼─────────┐ │
│ │ │ │ │
│ [Spec] [Manual] [API] │
└─────────────────────────────────────────┘
Modo Share
┌─────────────────────────────────────┐
│ 🖼️ Avatar │
│ Nombre │
│ Bio corta │
├─────────────────────────────────────┤
│ [🔗 Portfolio] │
│ [📧 Contacto] │
│ [📄 CV] │
└─────────────────────────────────────┘
Tipos de Nodo
| Tipo | Acción |
|---|---|
| Link externo | Abre URL |
| Documento | Abre visualizador |
| App | Lanza aplicación |
| Submenú | Expande hijos |
| Acción | Ejecuta función |
Configuración
{
"modo": "menu",
"titulo": "Panel Principal",
"nodos": [
{
"icono": "📷",
"nombre": "Packet",
"tipo": "app",
"destino": "/packet"
}
]
}
Matriz de Aplicaciones
Por Destino
| App | Secretaría | Producción | Feldman | Salida |
|---|---|---|---|---|
| Packet | ✅ | - | - | - |
| Mind Map | - | - | ✅ | - |
| Mind Flow | - | ✅ | - | - |
| Mind Link | - | - | - | ✅ |
Por Estado
| App | Estado | Próximo paso |
|---|---|---|
| Packet | APK funcional | Enlazar con Clara |
| Mind Map | Especificado | Prototipo |
| Mind Flow | Especificado | Prototipo |
| Mind Link | Planificado | Especificar integración ADI |
Por Plataforma
| App | Web | iPad | Móvil |
|---|---|---|---|
| Packet | ❌ | ❌ | ✅ |
| Mind Map | ✅ | ✅ | ❌ |
| Mind Flow | ✅ | ✅ | ❌ |
| Mind Link | ✅ | ✅ | ✅ |
Principios Comunes
Hash como Identificador
mrf = hashlib.sha256(contenido.encode()).hexdigest()
Inmutabilidad
Datos consolidados no se modifican. Cambios crean nuevas versiones.
Portabilidad
Formatos abiertos, exportables, sin vendor lock-in.
Offline-first
Funcionalidad básica sin conexión.
SKYNET v10 - 09_APLICACIONES - 6 Enero 2026