5dff4ba0de
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.0 KiB
2.0 KiB
0045 — DM rooms creados por notify-developer.sh sin E2EE
Objetivo
El script notify-developer.sh (paso 12 del pipeline de creacion de agentes) crea salas DM
sin encriptacion E2EE. Esto causa que Element muestre "End-to-end encryption isn't enabled"
en las conversaciones con bots creados recientemente (father-bot, test-bot, test-personality),
mientras que los bots mas antiguos (assistant-bot, asistente-2) tienen E2EE porque sus DMs
fueron iniciados desde Element Web (que encripta por defecto).
Contexto
El createRoom actual usa preset: trusted_private_chat que configura permisos pero no activa
E2EE. Para activar encriptacion se necesita un initial_state con evento m.room.encryption.
Archivo afectado: dev-scripts/agent/notify-developer.sh (linea ~109).
Arquitectura
dev-scripts/agent/notify-developer.sh— script bash (impuro, shell)- No hay cambios en
pkg/(puro)
Tareas
Fase 1: Fix
- 1.1 Agregar
initial_stateconm.room.encryption(algorithmm.megolm.v1.aes-sha2) al JSON delcreateRoomennotify-developer.sh
Fase 2: Tests
- 2.1 Test de shell que valide que el JSON del createRoom incluye encryption
Fase 3: Docs
- 3.1 Cerrar issue, mover a completed
Ejemplo de uso
Antes (sin E2EE):
{
"is_direct": true,
"invite": ["@dev:server"],
"preset": "trusted_private_chat"
}
Despues (con E2EE):
{
"is_direct": true,
"invite": ["@dev:server"],
"preset": "trusted_private_chat",
"initial_state": [
{
"type": "m.room.encryption",
"state_key": "",
"content": {
"algorithm": "m.megolm.v1.aes-sha2"
}
}
]
}
Decisiones de diseno
- Se usa
m.megolm.v1.aes-sha2que es el algoritmo estandar de Matrix para group encryption. - El
preset: trusted_private_chatse mantiene para los permisos (invite-only, admins). - No se requieren cambios en el codigo Go — solo el script bash.
Prerequisitos
Ninguno.
Riesgos
- Bajo: cambio minimo y bien definido en un solo archivo.