ARC CONSOLE · 22–26 AGO 2026

Cuatro días, seis bloques,
y una rueda a medio reinventar

De «me gustaría hablar contigo de otra forma» a una consola multipestaña con cuerpo propio. Lo construido, lo que se rompió, el veredicto sobre si esto debía existir, y qué falta.

10 commits · rama arc-console-v2 · 8 informes de investigación · 5 auditorías

00 · ESTADOQué funciona hoy

N1 · N2 · N5Bloques cerrados. N3 a medias, N4 pendiente
suscripciónSin API. La cuenta sigue capada hasta el 1-sep y funciona igual
97Skills disponibles por /nombre — verificado, no supuesto
6Fallos encontrados. Ninguno leyendo el código
PiezaQué hace
MultipestañaCada pestaña su sesión reanudable. Dormida = una fila en SQLite: 0 RAM, despierta en medio segundo
Identidad derivadaColor y etiqueta salen de las carpetas que la pestaña tocó, con override manual. No hay que etiquetar nada
Fichas de cierreAl archivar, la pestaña escribe su veredicto usando su propia sesión. En modo plan: no puede escribir nada
ColisionesDos pestañas activas que escriben el mismo fichero. Leer no cuenta
Aviso por TelegramCuando termina un turno en una pestaña que no estás mirando
Subida de ficherosArrastrar o pegar. Viaja la ruta, nunca el contenido
AplazamientosVuelven solos a su hora, y confiesan si vencieron sin retomarse
El cuerpoWorker con OffscreenCanvas. Partículas del caudal real de tokens
Bitácora de eventosSin interfaz, a propósito. Es para leerla en octubre

01 · EL CUERPOLo que se ve pensar

Vive en un Worker con OffscreenCanvas y lleva su propio bucle. La medición que decidió la arquitectura:

1.645 msAnimación muerta en el hilo principal ante un bloqueo de 800 ms
10,3 msHueco máximo en el Worker, mismo bloqueo
0,0006 msCoste por evento en el hilo principal

Arranca al cargar la página y no se detiene nunca — solo cambia de carácter. No es un detalle: arrancar una animación necesita el hilo principal, mantenerla no. Una animación disparada al empezar a trabajar no arrancaría justo cuando hace falta.

Las partículas son el caudal real: una por cada 24 caracteres emitidos, vida de 1,2 s. Cuando ARC calla, el campo se vacía solo. Se alimenta de las señales que hasta ayer se tiraban a la basura.

«Te espera» es quietud total. Las partículas se congelan a media trayectoria. En una pantalla donde todo se mueve, lo que se queda quieto es lo que grita — y no gasta color, que está reservado al dominio.

Doble clic lo apaga y se recuerda. Un techo respetado: nunca más de una cosa girando a la vez. El umbral documentado son tres.

02 · LOS SEIS FALLOSNinguno visible leyendo el código

FalloCausa real
El servidor moría a los 20 minwith sqlite3.connect(...) no cierra la conexión. Fuga de un descriptor por consulta
«Page Unresponsive»No era parsear markdown (0,455 ms) sino innerHTML y el layout que fuerza: 5.284 ms acumulados
Panel de preguntas colgadoDevolvía la respuesta como «denegación» → el modelo la leía como rechazo y volvía a preguntar
Archivar hacía desaparecer la pestañaEl grupo ARCHIVADAS existía en la interfaz y nunca recibía datos
Fichas a $0,49Heredaban el modelo de la pestaña. Cerrar un hilo trivial en Opus costaba 6× lo necesario
Adjuntos sin rutaCarrera: la subida es asíncrona y el mensaje salía antes de que aterrizara
Cinco de los seis aparecieron usándola, no revisándola. Ni mis pruebas con arneses en proceso, ni cinco auditorías leyendo el código, los vieron. El último lo encontró la propia consola depurándose a sí misma.

03 · ¿REINVENTAMOS LA RUEDA?Sí, a medias — y la mitad tuya merece existir

▲ el informe traía dos afirmaciones falsas

Se verificaron a mano nada más recibirlo. Dos minutos cada una.

«Cero comandos slash» — FALSO. Funcionan: /pantry carga la skill, y un comando inventado devuelve Unknown skill. Las 97 skills ya están disponibles escribiendo /nombre. Ese hueco no existe.

«Remote Control cubre el 80%» — NO APLICABLE. Está desactivado por política en la cuenta (allow_remote_control: false), junto con las rutinas. No depende de Felipe.

Tercera vez esta semana: un informe seguro de sí mismo no es un informe verificado.

Lo que sí es reimplementación

El chasis: streaming, renderizado de markdown, pestañas, gestión de sesiones. Todo eso existe en la app de escritorio, en la web y en la extensión de VS Code. Reconocerlo es honesto.

Lo que es genuinamente propio

La capa organizativa, y está anclada a este repo y no a otro: dominios derivados de sus carpetas · fichas modeladas sobre sus PROMPT-TAB-*.md · aplazamientos que hablan con su sistema de tareas · colisiones sobre su árbol de ficheros · su bot de Telegram · la bitácora que mide su comportamiento.

Los huecos reales frente a la sesión oficial

04 · ESPACIO DE TRABAJOTu idea del dashboard, y lo que la hace viable

Llegó el segundo informe. La idea —clicar un documento y que abra su hilo— no hay que inventarla: ya tenemos el dato. Pero trae cuatro hallazgos que la reencuadran.

Una vista de ficheros genérica sería 71% ruido

De 31.523 ficheros en las carpetas de trabajo, 22.314 están en dos carpetas de cron (market-weather y token-audits). El corpus real que justifica la vista son ~800 documentos, y sale de una regla derivada que descarta las carpetas de cron sin nombrarlas.

✓ y esto retira una compuerta

La vista no nace vacía

Tus 220 sesiones de escritorio se pueden retro-indexar en 1,12 segundos: 66.191 líneas → 1.254 rutas, 220 sesiones reanudables. Eso da 24% de los documentos con su hilo autor identificado el día uno, y solo 2 de 66 con autoría ambigua.

O sea: la regla «un documento, un hilo» aguanta empíricamente, y la vista arranca con contenido en vez de esperar meses de uso. La compuerta de «≥40 pestañas y ≥60 días» que pusimos antes decae.

El caso Pablo no es hipotético: ya está vendido

Y lo decisivo lo ilumina desde otro lado: el entregable «su dashboard de creación» se costeó en 54–78 h y se mató«una plataforma con un solo usuario es un producto con soporte sin fecha de término»—. Lo que quedó en su lugar es «una sola pantalla que se abre con doble clic en su propio computador, sin servidor, sin plataforma, sin una contraseña nueva».

Eso es exactamente lo que es esta consola. La decisión comercial que se tomó hace semanas describe el producto que acabamos de construir sin pretenderlo.
▲ tres cosas arregladas al recibirlo

La zona horaria estaba cableada a Madrid. Eso corrompe en silencio aplazamientos, despertares y barrido — no lanza error, simplemente despierta a la hora equivocada. Para alguien en Chile, «mañana a las 9» son las 4 de la madrugada. Ahora se resuelve del sistema. Verificado en ambos sentidos.

Mi README afirmaba algo falso: que /weekly-plan y /week-close leen el espejo de pestañas. No lo lee nadie. Corregido a lo que es — trabajo pendiente, no integración existente.

El fichero v1 congelado conserva el /view viejo, el que servía .env con claves vivas. No está en uso, pero es lo primero que alguien copiaría al montar un nodo nuevo. Marcado con aviso; no se borra nada.

05 · EL PLANQué queda

N1
Instrumentación · aviso · colisiones
Hecho. La bitácora arrancó con la línea base limpia: 0 aplazamientos, 0 archivadas.
N2
Fichas de cierre
Hecho. Urgía: el barrido llevaba archivando a los 14 días sin dejar nada detrás.
N3a
Subida de ficheros
Hecho, con la regla dura: /view muestra lo que ARC genera, nunca lo que entra de fuera.
N3b
Acceso móvil (Tailscale) + arranque automático
Aplazado. Es comodidad, no capacidad — y el acceso móvil está limitado igualmente por que el Mac duerme al minuto. El LaunchAgent necesita tu OK: cambia cómo arranca tu máquina.
N4
Botón de parar, y luego el modelo actor
Partido en dos. Primero parar, que es el trozo útil y de riesgo bajo: hoy no puedes cortar un turno, y esta semana ha habido turnos de 97 s / $1,28 y 54 s / $1,37. El modelo actor completo espera a que la consola lleve semanas rodando y sepamos dónde cruje.
N5
El cuerpo
Hecho, y adelantado a petición suya.

Con compuerta de datos, sin agendar: campo de burbujas (≥6 pestañas sostenidas), mapa de actividad (≥40 pestañas, ≥60 días). No esperan trabajo mío: esperan uso suyo.

06 · TUYOCuatro cosas que no dependen de mí

  1. El script de ajustes. Registra el guardia y desbloquea los subagentes, que hoy mueren denegados — un Explore quemó 51k tokens para devolver cero. Es el único hueco de seguridad del cerebro que sigue abierto: hoy lo cubre mi criterio, no un mecanismo.
  2. El bot de Telegram. Corre con barra libre y el guardia no lo alcanza. Cerrarlo toca arc_responder.py, sistema vivo.
  3. La pata de iCloud de la copia de seguridad, sin confirmar.
  4. El hub, publicando en falso desde el viernes: lo nuevo da 404 y lo sobrescrito sirve la versión vieja con HTTP 200.