oficina-opencode 3.1.0 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +1 -1
  2. package/commands/oficina.md +7 -6
  3. package/dashboard/.dom-check.html +1257 -0
  4. package/dashboard/README-DASHBOARD.md +64 -0
  5. package/dashboard/assets/factory.css +1543 -0
  6. package/dashboard/assets/tokens.css +208 -0
  7. package/dashboard/build-kanban-data.mjs +279 -0
  8. package/dashboard/dashboard.css +753 -0
  9. package/dashboard/dashboard.html +121 -0
  10. package/dashboard/dashboard.js +610 -0
  11. package/dashboard/data/snapshot.json +883 -0
  12. package/dashboard/debate.html +134 -0
  13. package/dashboard/factory/build-snapshot.mjs +89 -0
  14. package/dashboard/factory/factory-app.js +1185 -0
  15. package/dashboard/factory/factory-core.js +541 -0
  16. package/dashboard/factory/snapshot.js +850 -0
  17. package/dashboard/factory.html +350 -0
  18. package/dashboard/kanban-data.json +671 -0
  19. package/dashboard/kanban-source.js +643 -0
  20. package/dashboard/kanban.check.mjs +454 -0
  21. package/dashboard/kanban.html +1257 -0
  22. package/dashboard/leadership.html +1008 -0
  23. package/dashboard/lib/debate-app.js +1149 -0
  24. package/dashboard/lib/debate-core.js +698 -0
  25. package/dashboard/lib/debate-data.js +163 -0
  26. package/dashboard/lib/debate-demo.js +110 -0
  27. package/dashboard/lib/debate.css +1155 -0
  28. package/dashboard/lib/leadership-model.js +946 -0
  29. package/dashboard/probe.mjs +35 -0
  30. package/dashboard/scripts/serve.mjs +122 -0
  31. package/dashboard/scripts/snapshot-data.mjs +93 -0
  32. package/dashboard/scripts/snapshot.mjs +28 -0
  33. package/dashboard/server.mjs +242 -0
  34. package/dashboard/shot.mjs +54 -0
  35. package/dashboard/shots/desktop-gates.png +0 -0
  36. package/dashboard/shots/desktop-light.png +0 -0
  37. package/dashboard/shots/desktop-real.png +0 -0
  38. package/dashboard/shots/mobile.png +0 -0
  39. package/dashboard/test/factory-core.test.mjs +244 -0
  40. package/dashboard/tests/debate-core.test.mjs +336 -0
  41. package/dashboard/tests/leadership-model.test.mjs +404 -0
  42. package/dist/cli.js +24 -0
  43. package/dist/cli.js.map +1 -1
  44. package/dist/core/dashboard.d.ts +33 -0
  45. package/dist/core/dashboard.d.ts.map +1 -0
  46. package/dist/core/dashboard.js +115 -0
  47. package/dist/core/dashboard.js.map +1 -0
  48. package/dist/core/dispatch.d.ts.map +1 -1
  49. package/dist/core/dispatch.js +11 -0
  50. package/dist/core/dispatch.js.map +1 -1
  51. package/dist/core/environment.d.ts +28 -0
  52. package/dist/core/environment.d.ts.map +1 -0
  53. package/dist/core/environment.js +80 -0
  54. package/dist/core/environment.js.map +1 -0
  55. package/dist/core/systemPrompt.d.ts.map +1 -1
  56. package/dist/core/systemPrompt.js +3 -0
  57. package/dist/core/systemPrompt.js.map +1 -1
  58. package/dist/tools/index.d.ts +9 -1
  59. package/dist/tools/index.d.ts.map +1 -1
  60. package/dist/tools/index.js +26 -22
  61. package/dist/tools/index.js.bak +972 -0
  62. package/dist/tools/index.js.map +1 -1
  63. package/dist/v2.d.ts +5 -0
  64. package/dist/v2.d.ts.map +1 -1
  65. package/dist/v2.js +57 -5
  66. package/dist/v2.js.bak +517 -0
  67. package/dist/v2.js.map +1 -1
  68. package/docs/QUE-ES.md +1 -1
  69. package/package.json +4 -1
@@ -0,0 +1,64 @@
1
+ # Oficina · Dashboard visual
2
+
3
+ Interfaz en tiempo real para **ver** cómo trabaja la Oficina de Agents: la mesa, el bus de mensajes, las decisiones del jefe, el kanban de cards, los gates y la factory.
4
+
5
+ ## Cómo abrirlo
6
+
7
+ ```bash
8
+ # 1. Con datos reales (recomendado) — desde la raíz del repo:
9
+ node dashboard/server.mjs # → http://localhost:7333
10
+
11
+ # 2. Sin server — abrí dashboard/dashboard.html en el browser:
12
+ # entra en Modo Demo (datos simulados, claramente etiquetados).
13
+ ```
14
+
15
+ ## Qué muestra cada panel
16
+
17
+ | Panel | Qué muestra | Fuente |
18
+ |---|---|---|
19
+ | **Mesa** | La mesa redonda con cada agente: anillo de color por estado (ámbar = trabajando, verde = libre, rojo = sin heartbeat), card actual, y cards sin owner (recuadro punteado) | `roster.json` + `state.json` |
20
+ | **Bus de mensajes** | Flujo entre agentes: HELP_REQUEST, CLAIM, STATUS, SPAWN… con flechas `→`, color por prioridad, threading visual (respuestas indentadas) | `bus/peer/*.json` |
21
+ | **Decisiones del jefe** | Feed de Director / Integrator / Architect / Commander | mensajes de `oficina-*` |
22
+ | **Cards** | Kanban de 7 columnas: todo → in_progress → review → done / rework / blocked / escalated, con owner, reviewer, count de rechazos y checklist de acceptance criteria | `state.json` |
23
+ | **Gates** | Al hacer click en una card: spinners de gates (build, typecheck, lint, test, security, diff) y PASS/FAIL + links a evidence.md / handoff.md | `artifacts/<card>/gates.md` |
24
+ | **Factory** | Toast animado cuando aparece un agente nuevo en el roster | diff de `roster.json` |
25
+ | **Replay** | Grabación de la sesión paso a paso (scrub del bus) | buffer en memoria |
26
+
27
+ ## Atajos de teclado
28
+
29
+ - **T** — tema oscuro/claro
30
+ - **R** — modo replay
31
+ - **Esc** — salir del replay
32
+
33
+ ## Arquitectura
34
+
35
+ - `dashboard.html` — estructura (una sola página, sin build step)
36
+ - `dashboard.css` — tokens en `:root`, tema dark/light, solo se anima `transform`/`opacity`
37
+ - `dashboard.js` — conexión (SSE + polling), render de los 6 paneles, modo demo, replay, fondo WebGL con bloom (three.js vía esm.sh, fallback silencioso)
38
+ - `server.mjs` — Node puro, cero dependencias: sirve los archivos, agrega `.oficina/`, watch + SSE
39
+
40
+ ## Accesibilidad
41
+
42
+ - ARIA live regions en bus y toasts (`role="log"`, `role="status"`)
43
+ - Navegación por teclado: los mensajes y cards son focusables, se expanden con Enter/Espacio
44
+ - Contraste AA en ambos temas
45
+ - `prefers-reduced-motion` desactiva animaciones y el fondo WebGL
46
+
47
+ ## Notas
48
+
49
+ - El modo demo existe para ver la interfaz sin corrida activa; el banner lo indica.
50
+ ## Arranque
51
+
52
+ **Automático (recomendado):** arrancá una corrida con el comando `/oficina` o con el plugin instalado: el dashboard se levanta solo en background y el navegador se abre cuando la corrida arranca. Se negocia un puerto libre si el 7333 está ocupado.
53
+
54
+ **Manual:**
55
+
56
+ ```bash
57
+ node dashboard/server.mjs # abre el navegador en 7333
58
+ oficina dashboard # CLI: igual, desde el paquete instalado
59
+ node dashboard/server.mjs --no-open # solo servidor, sin navegador
60
+ node dashboard/server.mjs --oficina /ruta/al/proyecto/.oficina --port 8080
61
+ ```
62
+
63
+ Sin datos reales la interfaz entra en modo demo (etiquetado, honesto): ves cómo se lee la mesa y el bus aunque no haya corrida activa; el banner lo indica.
64
+ - El fondo WebGL se degrada a nada si WebGL o la CDN no están disponibles — la mesa nunca depende de él.