Hive — sync opt-in cross-team
Hive es la capa cloud opcional que permite a los equipos compartir conocimiento entre repos, ramas y colaboradores. Deshabilitada por defecto. Cuando se activa, solo chunks redactados por el filtro de privacidad y content-addressed de tipos en allow-list salen de la máquina.
Actualizado: 2026-04-30
Hive es la capa cloud opcional que permite a los equipos compartir conocimiento entre repos, ramas y colaboradores. Está deshabilitada por defecto, se puede apagar con un kill-switch de una sola variable de entorno, y aplica una frontera de privacidad default-deny que cada byte tiene que cruzar.
Garantías de privacidad
- Filtro de privacidad en la frontera: solo contenido redactado sale de la máquina.
- Chunking content-addressed: dedup a nivel de chunk, sin uploads redundantes.
- Allow-list de tipos: solo tipos explícitos sincronizan (default:
pattern,decision,learning). - Pause / resume por proyecto:
POST /admin/hive/projects/{project}/pause. - Conflict-free: last-write-wins en la metadata, chunks inmutables.
Flujo de sincronización
Store.Save → Outbox.Enqueue (tabla cloud_outbox) → Worker tick (cada 15 min, default) → Filter (reglas de privacidad) → Client.PostBatch (gzip JSON, timeout 10 s) → MarkSent | MarkRejected | MarkFailed (con backoff)Schedule de backoff con jitter ±25%: 30s → 2m → 10m → 1h → 6h → 24h. Tras 6 intentos fallidos, la fila queda parqueada en estado failed y se puede re-encolar con korva hive retry.
Estados del worker
idle | pushing | backoff | healthy | disabledInspeccionable vía GET /api/v1/hive/status o korva hive status.
Comandos CLI
| Comando | Propósito |
|---|---|
korva hive push | Vacía el outbox local una vez |
korva hive status | Conteos de pendientes / enviados / rechazados / fallidos |
korva hive enable | Activa la sincronización (escribe config) |
korva hive disable | Desactiva la sincronización (escribe config) |
korva hive retry | Re-encola filas en estado failed |
korva hive rotate-key | Genera una nueva API key de Hive de 32 bytes |
Comportamiento por tier
- Community: Hive disponible — sync solo al cerebro comunitario (anonimizado, sin secretos).
- Teams: sync de Hive al comunitario + opcional cross-team dentro de la misma organización, más sync privado entre repos del mismo cliente (
FeatureCloudPrivate).
Deshabilitar por completo
export KORVA_HIVE_DISABLE=1Una sola variable de entorno mata el worker en el siguiente arranque. No hay forma de que un mal config o un glitch transitorio de red envíe nada al exterior cuando esto está definido.
Búsqueda híbrida
Cuando Hive está activo, vault_context y vault_search?cloud=1 consultan SQLite local y el cerebro comunitario de Hive en paralelo con un timeout duro de 3 segundos. Una falla de Hive nunca bloquea tu contexto local — los IDs locales siempre tienen prioridad en el conjunto de resultados fusionado.