@nac3/forge-cli 1.21.3 → 1.23.0

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 (137) hide show
  1. package/dist/chat/bridge.d.ts +43 -1
  2. package/dist/chat/bridge.d.ts.map +1 -1
  3. package/dist/chat/bridge.js +176 -31
  4. package/dist/chat/bridge.js.map +1 -1
  5. package/dist/chat/bridge_inbox.d.ts +143 -0
  6. package/dist/chat/bridge_inbox.d.ts.map +1 -0
  7. package/dist/chat/bridge_inbox.js +219 -0
  8. package/dist/chat/bridge_inbox.js.map +1 -0
  9. package/dist/chat/claude.d.ts +10 -0
  10. package/dist/chat/claude.d.ts.map +1 -1
  11. package/dist/chat/claude.js.map +1 -1
  12. package/dist/chat/panel.d.ts.map +1 -1
  13. package/dist/chat/panel.js +148 -16
  14. package/dist/chat/panel.js.map +1 -1
  15. package/dist/chat/recent_sessions_recap.d.ts.map +1 -1
  16. package/dist/chat/recent_sessions_recap.js +18 -6
  17. package/dist/chat/recent_sessions_recap.js.map +1 -1
  18. package/dist/chat/server.d.ts +1 -1
  19. package/dist/chat/server.d.ts.map +1 -1
  20. package/dist/chat/server.js +346 -53
  21. package/dist/chat/server.js.map +1 -1
  22. package/dist/chat/tools/bridge_verbs.d.ts +10 -0
  23. package/dist/chat/tools/bridge_verbs.d.ts.map +1 -1
  24. package/dist/chat/tools/bridge_verbs.js +66 -3
  25. package/dist/chat/tools/bridge_verbs.js.map +1 -1
  26. package/dist/chat/tools/nac3_invoke.d.ts.map +1 -1
  27. package/dist/chat/tools/nac3_invoke.js +20 -3
  28. package/dist/chat/tools/nac3_invoke.js.map +1 -1
  29. package/dist/chat/tools/pending.d.ts.map +1 -1
  30. package/dist/chat/tools/pending.js +27 -4
  31. package/dist/chat/tools/pending.js.map +1 -1
  32. package/dist/chat/tools/urazuke.d.ts.map +1 -1
  33. package/dist/chat/tools/urazuke.js +7 -3
  34. package/dist/chat/tools/urazuke.js.map +1 -1
  35. package/dist/chat/tools.d.ts +6 -0
  36. package/dist/chat/tools.d.ts.map +1 -1
  37. package/dist/chat/tools.js +4 -0
  38. package/dist/chat/tools.js.map +1 -1
  39. package/dist/chat/turn_control.d.ts +2 -0
  40. package/dist/chat/turn_control.d.ts.map +1 -1
  41. package/dist/chat/turn_control.js +30 -1
  42. package/dist/chat/turn_control.js.map +1 -1
  43. package/dist/commands/pending.d.ts.map +1 -1
  44. package/dist/commands/pending.js +4 -2
  45. package/dist/commands/pending.js.map +1 -1
  46. package/dist/commands/urazuke.d.ts.map +1 -1
  47. package/dist/commands/urazuke.js +206 -16
  48. package/dist/commands/urazuke.js.map +1 -1
  49. package/dist/core/cost_router.d.ts +7 -0
  50. package/dist/core/cost_router.d.ts.map +1 -1
  51. package/dist/core/cost_router.js +8 -5
  52. package/dist/core/cost_router.js.map +1 -1
  53. package/dist/core/limits_config.d.ts +37 -6
  54. package/dist/core/limits_config.d.ts.map +1 -1
  55. package/dist/core/limits_config.js +74 -8
  56. package/dist/core/limits_config.js.map +1 -1
  57. package/dist/core/whats_new.d.ts.map +1 -1
  58. package/dist/core/whats_new.js +12 -0
  59. package/dist/core/whats_new.js.map +1 -1
  60. package/dist/nac3/danger_zone.d.ts +39 -0
  61. package/dist/nac3/danger_zone.d.ts.map +1 -0
  62. package/dist/nac3/danger_zone.js +31 -0
  63. package/dist/nac3/danger_zone.js.map +1 -0
  64. package/dist/nac3/internal_manifest.d.ts.map +1 -1
  65. package/dist/nac3/internal_manifest.js +33 -0
  66. package/dist/nac3/internal_manifest.js.map +1 -1
  67. package/dist/pending/store.d.ts +7 -0
  68. package/dist/pending/store.d.ts.map +1 -1
  69. package/dist/pending/store.js +41 -0
  70. package/dist/pending/store.js.map +1 -1
  71. package/dist/urazuke/catalog.d.ts +1 -1
  72. package/dist/urazuke/catalog.d.ts.map +1 -1
  73. package/dist/urazuke/catalog.js.map +1 -1
  74. package/dist/urazuke/current.d.ts +2 -2
  75. package/dist/urazuke/current.d.ts.map +1 -1
  76. package/dist/urazuke/current.js +32 -12
  77. package/dist/urazuke/current.js.map +1 -1
  78. package/dist/urazuke/gate.d.ts +45 -7
  79. package/dist/urazuke/gate.d.ts.map +1 -1
  80. package/dist/urazuke/gate.js +190 -20
  81. package/dist/urazuke/gate.js.map +1 -1
  82. package/dist/urazuke/gates_data.d.ts +170 -0
  83. package/dist/urazuke/gates_data.d.ts.map +1 -1
  84. package/dist/urazuke/gates_data.js +98 -5
  85. package/dist/urazuke/gates_data.js.map +1 -1
  86. package/dist/urazuke/gates_ledger.d.ts +75 -0
  87. package/dist/urazuke/gates_ledger.d.ts.map +1 -0
  88. package/dist/urazuke/gates_ledger.js +183 -0
  89. package/dist/urazuke/gates_ledger.js.map +1 -0
  90. package/dist/urazuke/gates_pull.d.ts +97 -0
  91. package/dist/urazuke/gates_pull.d.ts.map +1 -0
  92. package/dist/urazuke/gates_pull.js +303 -0
  93. package/dist/urazuke/gates_pull.js.map +1 -0
  94. package/dist/urazuke/heuristics.d.ts +108 -0
  95. package/dist/urazuke/heuristics.d.ts.map +1 -0
  96. package/dist/urazuke/heuristics.js +248 -0
  97. package/dist/urazuke/heuristics.js.map +1 -0
  98. package/dist/urazuke/manual_cases.d.ts +31 -0
  99. package/dist/urazuke/manual_cases.d.ts.map +1 -0
  100. package/dist/urazuke/manual_cases.js +87 -0
  101. package/dist/urazuke/manual_cases.js.map +1 -0
  102. package/dist/urazuke/project_config.d.ts +25 -0
  103. package/dist/urazuke/project_config.d.ts.map +1 -0
  104. package/dist/urazuke/project_config.js +65 -0
  105. package/dist/urazuke/project_config.js.map +1 -0
  106. package/dist/urazuke/quality.d.ts +0 -8
  107. package/dist/urazuke/quality.d.ts.map +1 -1
  108. package/dist/urazuke/quality.js +4 -29
  109. package/dist/urazuke/quality.js.map +1 -1
  110. package/dist/urazuke/retro.d.ts.map +1 -1
  111. package/dist/urazuke/retro.js +4 -1
  112. package/dist/urazuke/retro.js.map +1 -1
  113. package/dist/urazuke/scoreboard.d.ts +85 -0
  114. package/dist/urazuke/scoreboard.d.ts.map +1 -0
  115. package/dist/urazuke/scoreboard.js +260 -0
  116. package/dist/urazuke/scoreboard.js.map +1 -0
  117. package/dist/urazuke/section.d.ts +2 -2
  118. package/dist/urazuke/section.d.ts.map +1 -1
  119. package/dist/urazuke/section.js +31 -6
  120. package/dist/urazuke/section.js.map +1 -1
  121. package/dist/version.d.ts +1 -1
  122. package/dist/version.js +1 -1
  123. package/dist/workflow/orchestrator.d.ts +9 -0
  124. package/dist/workflow/orchestrator.d.ts.map +1 -1
  125. package/dist/workflow/orchestrator.js +17 -16
  126. package/dist/workflow/orchestrator.js.map +1 -1
  127. package/package.json +1 -1
  128. package/src/i18n/catalogs/ar.json +558 -550
  129. package/src/i18n/catalogs/de.json +558 -550
  130. package/src/i18n/catalogs/en.json +558 -550
  131. package/src/i18n/catalogs/es.json +558 -550
  132. package/src/i18n/catalogs/fr.json +558 -550
  133. package/src/i18n/catalogs/hi.json +558 -550
  134. package/src/i18n/catalogs/it.json +558 -550
  135. package/src/i18n/catalogs/ja.json +558 -550
  136. package/src/i18n/catalogs/pt.json +558 -550
  137. package/src/i18n/catalogs/zh.json +558 -550
@@ -0,0 +1,219 @@
1
+ /**
2
+ * bridge_inbox -- la CASILLA DE ENTRADA de los mensajes dirigidos que llegan
3
+ * de otra instancia de Forge (PND-221 / PND-222 / PND-223 / PND-224,
4
+ * 2026-10-27).
5
+ *
6
+ * POR QUE EXISTE, Y ESTA MEDIDO. El canal entre instancias entregaba asi: el
7
+ * receptor, si tenia un turno vivo, contestaba {accepted:false,
8
+ * reason:'busy'}, y el emisor reintentaba INJECT_MAX_RETRIES=3 veces cada
9
+ * INJECT_RETRY_MS=4000 ms. La ventana completa, medida con un destino ocupado
10
+ * (tests/bridge-busy-window-redproof.test.ts): 12026 ms, cuatro intentos.
11
+ * Despues descartaba en silencio. Un turno de Forge dura minutos.
12
+ *
13
+ * El 27-oct-2026, cruzando el anillo del host con turn_routing.jsonl: de diez
14
+ * mensajes dirigidos, CUATRO se ejecutaron y SEIS se perdieron. El caso de
15
+ * libro es el par seq 9 / seq 10, mandados con 21 s de diferencia: el primero
16
+ * corrio, el segundo cayo dentro del turno que el primero acababa de abrir.
17
+ *
18
+ * Tres cosas cambian aca:
19
+ *
20
+ * 1. isTurnActive() deja de ser una NEGATIVA y pasa a ser una PLANIFICACION.
21
+ * El receptor siempre acepta y encola; el drenaje lo dispara el cierre del
22
+ * turno (turn_control.onTurnsIdle). Desaparece la ventana.
23
+ * 2. Lo que no se puede entregar se DICE. Un mensaje que espero mas que el
24
+ * TTL se marca 'expired' y queda en el registro; no se tira en silencio.
25
+ * "No pude entregarlo" es un tercer estado, no un sinonimo de ninguno de
26
+ * los otros dos -- la misma regla que el cuarto estado de `yf doctor`.
27
+ * 3. La procedencia viaja en METADATOS, no dentro del texto. El receptor ya
28
+ * no envuelve el prompt del emisor en un preambulo con instrucciones que
29
+ * el emisor no escribio ("Responde en el chat...", "NO reabras el
30
+ * canal..."). Eso no era transporte: era editar el prompt, y hacia
31
+ * imposible razonar sobre que se pidio de verdad.
32
+ *
33
+ * ASCII-only.
34
+ */
35
+ import { promises as fs } from 'node:fs';
36
+ import path from 'node:path';
37
+ import os from 'node:os';
38
+ import { createHash } from 'node:crypto';
39
+ /**
40
+ * Cuanto tolera esperar un mensaje en la cola.
41
+ *
42
+ * El numero no es suelto: el turno mas largo MEDIDO en esta maquina el
43
+ * 27-oct-2026 fue la compuerta de publicacion, ~16 minutos (1943 s de reloj
44
+ * contra 372 s de la corrida limpia). Treinta minutos es el doble de ese
45
+ * techo, asi que un mensaje sobrevive al turno real mas largo que se midio y
46
+ * sigue siendo lo bastante corto para que un vencido signifique algo (el panel
47
+ * se colgo, el proceso murio) y no "estuvo ahi desde ayer".
48
+ */
49
+ export const INBOX_TTL_MS = 30 * 60 * 1000;
50
+ /**
51
+ * Tope de mensajes en espera POR EMISOR.
52
+ *
53
+ * El doble del techo de entrada que ya existia (INJECT_RATE_MAX = 5 por
54
+ * minuto por destino, en bridge.ts): una instancia que respeta el ritmo de
55
+ * entrada nunca llega al tope, y una que se desboca no puede llenar la cola
56
+ * del vecino. Cuando se llena, el mas VIEJO cede el lugar -- y cede diciendo
57
+ * que cedio, no en silencio.
58
+ */
59
+ export const INBOX_MAX_PER_SENDER = 10;
60
+ /* ------------------------------- la cola -------------------------------- */
61
+ const _queue = [];
62
+ let _seq = 0;
63
+ function hashText(from, text) {
64
+ return createHash('sha256').update(from + '|' + text).digest('hex').slice(0, 16);
65
+ }
66
+ /** Puerto del panel emisor a partir del id del roster ('<slug>-<puerto>-<pid>'). */
67
+ export function senderPort(fromId) {
68
+ const m = String(fromId || '').match(/-(\d+)-\d+$/);
69
+ return m && m[1] ? m[1] : '';
70
+ }
71
+ /** Identidad ESTABLE del emisor para los pares de confianza. El pid cambia en
72
+ * cada arranque, asi que el id completo no sirve: el par es slug + puerto. */
73
+ export function senderIdentity(fromId, fromName) {
74
+ const port = senderPort(fromId);
75
+ const slug = String(fromId || '').replace(/-\d+-\d+$/, '') || String(fromName || '');
76
+ return (slug + ':' + port).toLowerCase();
77
+ }
78
+ export function enqueueDirected(msg, receivedAt = Date.now()) {
79
+ const from = String(msg.from || '');
80
+ const text = String(msg.text || '');
81
+ const h = hashText(from, text);
82
+ const yaEsta = _queue.find((q) => hashText(q.from, q.text) === h);
83
+ if (yaEsta) {
84
+ /* Dedup: el reintento del emisor mandaba el MISMO texto cuatro veces y el
85
+ * receptor no lo notaba. */
86
+ return {
87
+ accepted: true, delivery_id: yaEsta.delivery_id,
88
+ position: _queue.indexOf(yaEsta) + 1, duplicate_of: yaEsta.delivery_id,
89
+ };
90
+ }
91
+ _seq += 1;
92
+ const row = {
93
+ delivery_id: 'in-' + Date.now().toString(36) + '-' + _seq.toString(36),
94
+ from,
95
+ from_name: String(msg.from_name || ''),
96
+ from_port: senderPort(from),
97
+ hop: Math.max(0, Math.min(10, Number(msg.hop) || 0)),
98
+ text,
99
+ received_at: receivedAt,
100
+ };
101
+ _queue.push(row);
102
+ let evicted;
103
+ const mios = _queue.filter((q) => q.from === from);
104
+ if (mios.length > INBOX_MAX_PER_SENDER) {
105
+ const viejo = mios[0];
106
+ if (viejo) {
107
+ _queue.splice(_queue.indexOf(viejo), 1);
108
+ evicted = viejo.delivery_id;
109
+ }
110
+ }
111
+ return {
112
+ accepted: true,
113
+ delivery_id: row.delivery_id,
114
+ position: _queue.indexOf(row) + 1,
115
+ ...(evicted ? { evicted } : {}),
116
+ };
117
+ }
118
+ /** Saca de la cola los vencidos y los DEVUELVE, para que el llamador los
119
+ * reporte. Nunca descarta en silencio. */
120
+ export function dropExpired(now = Date.now()) {
121
+ const out = [];
122
+ for (let i = _queue.length - 1; i >= 0; i -= 1) {
123
+ const row = _queue[i];
124
+ if (row && now - row.received_at > INBOX_TTL_MS) {
125
+ _queue.splice(i, 1);
126
+ out.unshift(row);
127
+ }
128
+ }
129
+ return out;
130
+ }
131
+ /** El proximo entrante vivo, o null. Los vencidos NO salen por aca: para eso
132
+ * esta dropExpired, que los nombra. */
133
+ export function takeNextDirected(now = Date.now()) {
134
+ dropExpired(now);
135
+ return _queue.shift() ?? null;
136
+ }
137
+ export function inboxDepth() { return _queue.length; }
138
+ export function peekInbox() { return _queue.slice(); }
139
+ /** Test hook. */
140
+ export function _resetBridgeInbox() { _queue.length = 0; _seq = 0; }
141
+ /* ------------------------------ el plan --------------------------------- */
142
+ /**
143
+ * Que hacer con un entrante, dada la postura del dueno.
144
+ *
145
+ * Es una funcion PURA a proposito: la decision de si un pedido de otro proceso
146
+ * corre sin humano en el medio es lo mas delicado del canal, y tiene que poder
147
+ * probarse sin levantar un servidor.
148
+ */
149
+ export function planDelivery(msg, cfg) {
150
+ if (cfg.directed_mode === 'off')
151
+ return { action: 'refuse', reason: 'disabled' };
152
+ const confia = cfg.directed_mode === 'auto' || isTrustedPeer(msg, cfg.auto_from);
153
+ if (!confia)
154
+ return { action: 'ask' };
155
+ return { action: 'run', turn: composeInjectedTurn(msg, cfg.tier) };
156
+ }
157
+ /** Un emisor es de confianza si el dueno lo declaro por par ('<slug>:<puerto>'),
158
+ * por puerto suelto, o por slug suelto. */
159
+ export function isTrustedPeer(msg, autoFrom) {
160
+ if (!autoFrom || autoFrom.length === 0)
161
+ return false;
162
+ const ident = senderIdentity(msg.from, msg.from_name);
163
+ const slug = ident.split(':')[0] || '';
164
+ const port = msg.from_port;
165
+ /* El nombre del proyecto tambien, porque es lo que el dueno VE en el panel y
166
+ * puede no coincidir con el slug (ADIP Kikan -> adip-kikan). */
167
+ const nombre = String(msg.from_name || '').trim().toLowerCase();
168
+ return autoFrom.some((raw) => {
169
+ const x = String(raw || '').trim().toLowerCase();
170
+ if (!x)
171
+ return false;
172
+ return x === ident
173
+ || (!!port && (x === port || x === nombre + ':' + port))
174
+ || (!!slug && x === slug)
175
+ || (!!nombre && x === nombre);
176
+ });
177
+ }
178
+ /**
179
+ * El cuerpo del turno inyectado.
180
+ *
181
+ * Lo que NO hace, y es el arreglo (D2a + D2b):
182
+ * - no fuerza 'eco'. El mismo texto corria contra un cerebro mas debil solo
183
+ * por venir del canal, y el log lo anotaba como "user slash command /eco"
184
+ * -- una atribucion falsa: nadie tipeo /eco. Hoy solo baja de nivel si el
185
+ * dueno lo declaro en bridge.tier.
186
+ * - no envuelve el texto. La procedencia va en los campos bridge_*; el panel
187
+ * la pinta como marca de la burbuja.
188
+ */
189
+ export function composeInjectedTurn(msg, tier) {
190
+ return {
191
+ messages: [{ role: 'user', content: msg.text }],
192
+ origin: 'bridge',
193
+ bridge_hop: msg.hop,
194
+ bridge_delivery_id: msg.delivery_id,
195
+ bridge_from: msg.from_name,
196
+ bridge_from_port: msg.from_port,
197
+ ...(tier === 'eco' ? { brain_tier_override: 'eco' } : {}),
198
+ };
199
+ }
200
+ function logPath() {
201
+ const dir = process.env.YF_CONFIG_DIR || path.join(os.homedir(), '.yujin-forge');
202
+ return path.join(dir, 'bridge_deliveries.jsonl');
203
+ }
204
+ /**
205
+ * Fila append-only por cada entrante y su disposicion.
206
+ *
207
+ * Un console.error en el stderr de un panel no lo lee nadie: los seis mensajes
208
+ * perdidos del 27-oct solo dejaron rastro ahi, y por eso nadie se entero. El
209
+ * precedente es nac3_approvals.jsonl.
210
+ */
211
+ export async function logBridgeDelivery(entry) {
212
+ try {
213
+ await fs.mkdir(path.dirname(logPath()), { recursive: true });
214
+ await fs.appendFile(logPath(), JSON.stringify(entry) + '\n', 'utf-8');
215
+ }
216
+ catch { /* el rastro no puede trabar la entrega */ }
217
+ }
218
+ export function bridgeDeliveryLogPath() { return logPath(); }
219
+ //# sourceMappingURL=bridge_inbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge_inbox.js","sourceRoot":"","sources":["../../src/chat/bridge_inbox.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,16 @@ export declare class ClaudeApiError extends Error {
11
11
  export interface ChatMessage {
12
12
  role: 'user' | 'assistant';
13
13
  content: string;
14
+ /** Procedencia del turno (PND-224). Se PERSISTE en el transcript y NO viaja
15
+ * al proveedor: cada cliente mapea {role, content} explicitamente.
16
+ *
17
+ * Existe porque el receptor del canal entre instancias envolvia el prompt
18
+ * del emisor en un preambulo con instrucciones que el emisor no escribio, y
19
+ * despues el recap de arranque reconocia una coordinacion POR ESE PREAMBULO
20
+ * LITERAL (recent_sessions_recap.isNoise). Al sacar el preambulo, la marca
21
+ * tenia que volverse estructural o el recap habria empezado a contar las
22
+ * coordinaciones como trabajo del dueno. Par productor/consumidor, SQ 14. */
23
+ origin?: 'panel' | 'mobile' | 'bridge';
14
24
  /** alpha.56 -- tier the assistant turn was served by. Persisted
15
25
  * in the store so the next turn's reasoning_gate can apply
16
26
  * sticky-tier inertia (a follow-up to a frontier turn should
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/chat/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/chat/claude.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/chat/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/chat/claude.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/chat/panel.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;2BAKuB;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAsqcxD"}
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/chat/panel.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;2BAKuB;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CA0ycxD"}
@@ -240,6 +240,10 @@ export function renderPanelHtml(cfg) {
240
240
  nac3Approve: tForLang(lang, 'panel.nac3.approve'),
241
241
  nac3ApproveDestructive: tForLang(lang, 'panel.nac3.approveDestructive'),
242
242
  nac3Executing: tForLang(lang, 'panel.nac3.executing'),
243
+ bridgeAskTitle: tForLang(lang, 'panel.bridge.askTitle'),
244
+ bridgeAskFrom: tForLang(lang, 'panel.bridge.askFrom'),
245
+ bridgeApproveTrust: tForLang(lang, 'panel.bridge.approveTrust'),
246
+ bridgeAskNote: tForLang(lang, 'panel.bridge.askNote'),
243
247
  ttsProviderBrowser: tForLang(lang, 'panel.tts.providerBrowser'),
244
248
  ttsProviderGoogle: tForLang(lang, 'panel.tts.providerGoogle'),
245
249
  ttsProviderTitle: tForLang(lang, 'panel.tts.providerTitle'),
@@ -1012,6 +1016,7 @@ body {
1012
1016
  #yf-full .pz-uzk-state.uzk-green { color: #fff; background: #6f8b5e; }
1013
1017
  #yf-full .pz-uzk-state.uzk-red { color: #fff; background: #c8472e; }
1014
1018
  #yf-full .pz-uzk-state.uzk-owner { color: var(--ink, #1a1a1a); background: var(--amber, #c8a04d); }
1019
+ #yf-full .pz-uzk-state.uzk-unmeasured { color: #fff; background: #6b6b76; }
1015
1020
  #yf-full .pz-uzk-state.uzk-closed { color: #fff; background: var(--indigo, #4f5b87); }
1016
1021
  #yf-full .pz-uzk-flow { display: flex; align-items: flex-start; gap: 22px; overflow-x: auto; padding: 6px 4px 16px; }
1017
1022
  #yf-full .pz-uzk-col { flex: 0 0 auto; width: 232px; }
@@ -1021,6 +1026,7 @@ body {
1021
1026
  #yf-full .pz-uzk-step.uzk-green { border-left-color: #6f8b5e; color: var(--ink, #1a1a1a); }
1022
1027
  #yf-full .pz-uzk-step.uzk-red { border-left-color: #c8472e; }
1023
1028
  #yf-full .pz-uzk-step.uzk-owner { border-left-color: var(--amber, #c8a04d); }
1029
+ #yf-full .pz-uzk-step.uzk-unmeasured { border-left-color: #6b6b76; }
1024
1030
  #yf-full .pz-uzk-step.uzk-current { box-shadow: 0 2px 12px rgba(200,160,77,0.3); font-weight: 600; color: var(--ink, #1a1a1a); }
1025
1031
  #yf-full .pz-uzk-num { font-family: ui-monospace, Menlo, monospace; font-size: 11px; flex: 0 0 auto; min-width: 22px; }
1026
1032
  #yf-full .pz-uzk-step-title { flex: 1 1 auto; min-width: 0; line-height: 1.2; overflow-wrap: anywhere; }
@@ -2670,7 +2676,13 @@ ${renderYujinSplash()}
2670
2676
  <div class="set-section-title">${escapeHtml(tForLang(lang, 'settings.bridge.title'))}
2671
2677
  <span class="bridge-status" data-bridge-status></span>
2672
2678
  </div>
2673
- <label class="bridge-toggle"><input type="checkbox" data-bridge-accept> ${escapeHtml(tForLang(lang, 'settings.bridge.accept'))}</label>
2679
+ <label class="bridge-toggle">${escapeHtml(tForLang(lang, 'settings.bridge.mode'))}
2680
+ <select data-bridge-mode data-nac-id="yujin.settings.bridge-mode" data-nac-role="select" data-nac-action="set-bridge-mode">
2681
+ <option value="off">${escapeHtml(tForLang(lang, 'settings.bridge.modeOff'))}</option>
2682
+ <option value="ask">${escapeHtml(tForLang(lang, 'settings.bridge.modeAsk'))}</option>
2683
+ <option value="auto">${escapeHtml(tForLang(lang, 'settings.bridge.modeAuto'))}</option>
2684
+ </select>
2685
+ </label>
2674
2686
  <div class="bridge-roster" data-bridge-roster></div>
2675
2687
  <div class="bridge-feed" data-bridge-feed></div>
2676
2688
  <div class="bridge-compose">
@@ -5388,6 +5400,113 @@ function mountShellOutputTab(result) {
5388
5400
  * NAC3-compliant: every element of the modal carries
5389
5401
  * data-nac-id + data-nac-role + data-nac-action.
5390
5402
  */
5403
+ /* =========================================================================
5404
+ * Modal de un MENSAJE ENTRANTE del canal entre instancias (PND-221).
5405
+ *
5406
+ * EL MODAL ES LA PREGUNTA (R8). Muestra el emisor, su puerto, el salto y EL
5407
+ * TEXTO LITERAL -- no un resumen: lo que se aprueba es que ese texto corra
5408
+ * como un turno de chat aca, asi que el dueno tiene que poder leerlo entero.
5409
+ *
5410
+ * Tres salidas: Rechazar / Aprobar / Aprobar y confiar. La tercera suma el par
5411
+ * emisor-destino a bridge.auto_from, asi que el PROXIMO mensaje de ESA
5412
+ * instancia corre sin preguntar -- por par, no global: que 4847 pueda mandarle
5413
+ * a 4850 sin modal no habilita a cualquiera.
5414
+ *
5415
+ * No reutiliza nac3OpenApprovalModal porque la cola de aprobaciones de NAC3
5416
+ * esta atada a un despacho de verbo (PendingApproval exige verb + args + ctx +
5417
+ * legacy_run) y esto no es un verbo: es un turno entero.
5418
+ */
5419
+ function bridgeOpenApprovalModal(envelope) {
5420
+ const b = (envelope && envelope.bridge) || {};
5421
+ const id = String(b.delivery_id || envelope.trace_id || '');
5422
+ if (!id) return;
5423
+
5424
+ const overlay = document.createElement('div');
5425
+ overlay.className = 'yf-nac3-modal-overlay';
5426
+ overlay.setAttribute('data-nac-id', 'yujin.modal.bridge-message');
5427
+ overlay.setAttribute('data-nac-role', 'dialog');
5428
+ overlay.style.cssText = 'position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,0.55);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);';
5429
+
5430
+ const panel = document.createElement('div');
5431
+ panel.style.cssText = 'background:var(--bg,#101218);color:var(--fg,#e6e8ee);max-width:680px;width:92%;max-height:88vh;overflow:auto;border-radius:12px;padding:24px;box-shadow:0 12px 40px rgba(0,0,0,0.6);border:1px solid #d0a040;';
5432
+
5433
+ const title = document.createElement('div');
5434
+ title.style.cssText = 'font-weight:600;font-size:15px;margin-bottom:4px;';
5435
+ title.textContent = CONFIG.i18n.bridgeAskTitle;
5436
+
5437
+ const from = document.createElement('div');
5438
+ from.style.cssText = 'opacity:0.75;font-size:12px;font-family:ui-monospace,monospace;margin-bottom:14px;';
5439
+ from.setAttribute('data-nac-id', 'yujin.modal.bridge-message.from');
5440
+ from.textContent = String(CONFIG.i18n.bridgeAskFrom || '')
5441
+ .replace('{name}', String(b.from_name || '?'))
5442
+ .replace('{port}', String(b.from_port || '?'))
5443
+ .replace('{hop}', String(b.hop != null ? b.hop : '?'));
5444
+
5445
+ const body = document.createElement('pre');
5446
+ body.style.cssText = 'background:var(--bg-soft,#1a1d27);border:1px solid #2a2f3d;border-radius:8px;padding:12px;font-size:12px;max-height:340px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0 0 12px 0;';
5447
+ body.setAttribute('data-nac-id', 'yujin.modal.bridge-message.text');
5448
+ body.setAttribute('data-nac-role', 'region');
5449
+ /* El texto LITERAL, sin recortar: es lo que se esta aprobando. */
5450
+ body.textContent = String(b.text || '');
5451
+
5452
+ const note = document.createElement('div');
5453
+ note.style.cssText = 'font-size:11px;opacity:0.7;margin-bottom:16px;';
5454
+ note.textContent = CONFIG.i18n.bridgeAskNote;
5455
+
5456
+ const btnRow = document.createElement('div');
5457
+ btnRow.style.cssText = 'display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;';
5458
+
5459
+ const mk = (label, nacId, action, css) => {
5460
+ const btn = document.createElement('button');
5461
+ btn.textContent = label;
5462
+ btn.setAttribute('data-nac-id', nacId);
5463
+ btn.setAttribute('data-nac-role', 'button');
5464
+ btn.setAttribute('data-nac-action', action);
5465
+ btn.style.cssText = 'padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;' + css;
5466
+ return btn;
5467
+ };
5468
+ const btnReject = mk(CONFIG.i18n.nac3Reject, 'yujin.modal.bridge-message.reject', 'reject',
5469
+ 'border:1px solid #803030;background:#3a1818;color:#f4b8b8;');
5470
+ const btnApprove = mk(CONFIG.i18n.nac3Approve, 'yujin.modal.bridge-message.approve', 'approve',
5471
+ 'border:1px solid #3a7a3a;background:#1c3a1c;color:#b8e0b8;font-weight:600;');
5472
+ const btnTrust = mk(CONFIG.i18n.bridgeApproveTrust, 'yujin.modal.bridge-message.approve-trust', 'approve-and-trust',
5473
+ 'border:1px solid #3a4258;background:transparent;color:inherit;');
5474
+
5475
+ const close = () => { try { document.body.removeChild(overlay); } catch (e) {} };
5476
+ const disable = () => { btnReject.disabled = true; btnApprove.disabled = true; btnTrust.disabled = true; };
5477
+
5478
+ const post = async (path, payload) => {
5479
+ disable();
5480
+ try {
5481
+ await fetch(path, {
5482
+ method: 'POST', headers: { 'content-type': 'application/json' },
5483
+ body: JSON.stringify(payload),
5484
+ });
5485
+ } catch (e) { /* el servidor registra la disposicion igual */ }
5486
+ close();
5487
+ };
5488
+ btnReject.addEventListener('click', () => {
5489
+ void post('/api/forge/bridge/reject', { delivery_id: id, reason: 'rejected in panel modal' });
5490
+ });
5491
+ btnApprove.addEventListener('click', () => {
5492
+ void post('/api/forge/bridge/approve', { delivery_id: id });
5493
+ });
5494
+ btnTrust.addEventListener('click', () => {
5495
+ void post('/api/forge/bridge/approve', { delivery_id: id, trust: true });
5496
+ });
5497
+
5498
+ btnRow.appendChild(btnReject);
5499
+ btnRow.appendChild(btnTrust);
5500
+ btnRow.appendChild(btnApprove);
5501
+ panel.appendChild(title);
5502
+ panel.appendChild(from);
5503
+ panel.appendChild(body);
5504
+ panel.appendChild(note);
5505
+ panel.appendChild(btnRow);
5506
+ overlay.appendChild(panel);
5507
+ document.body.appendChild(overlay);
5508
+ }
5509
+
5391
5510
  function nac3OpenApprovalModal(envelope) {
5392
5511
  const trace_id = String(envelope.trace_id || '');
5393
5512
  const verb = envelope.verb || {};
@@ -5717,7 +5836,10 @@ function uzkDocLink(p, exists) {
5717
5836
  }
5718
5837
 
5719
5838
  function uzkRenderModal(r) {
5720
- var stLbl = { closed: 'cerrado', green: 'verde', red: 'rojo', owner: 'a cargo del dueno' };
5839
+ // unmeasured (PND-210): la definicion en vigor pide un evaluador que esta
5840
+ // instalacion no sabe medir. Sin etiqueta salia la palabra cruda y sin
5841
+ // color, que es la confusion que el cuarto estado viene a deshacer.
5842
+ var stLbl = { closed: 'cerrado', green: 'verde', red: 'rojo', owner: 'a cargo del dueno', unmeasured: 'declarado, no medido' };
5721
5843
  var h = '<div class="uzk-state uzk-' + escapeHtml(r.status) + '">' + escapeHtml(stLbl[r.status] || r.status) + '</div>';
5722
5844
  if (r.summary) h += '<p class="uzk-sum">' + escapeHtml(r.summary) + '</p>';
5723
5845
  if (r.task_id) h += '<p class="uzk-sum">Tarea <button type="button" class="uzk-doc" data-wfl-pnd="' + escapeHtml(r.task_id) + '">' + escapeHtml(r.task_id) + '</button>'
@@ -9708,8 +9830,12 @@ function handleSseEvent(event, data) {
9708
9830
  const tid = (data && typeof data.trace_id === 'string') ? data.trace_id : '';
9709
9831
  if (tid && !state.shownApprovalTraceIds.has(tid)) {
9710
9832
  state.shownApprovalTraceIds.add(tid);
9711
- try { nac3OpenApprovalModal(data); }
9712
- catch (_) { /* */ }
9833
+ /* PND-221 -- dos clases de aprobacion por el mismo evento: un verbo
9834
+ * destructivo, o un MENSAJE entrante de otra instancia. */
9835
+ try {
9836
+ if (data && data.kind === 'bridge_message') bridgeOpenApprovalModal(data);
9837
+ else nac3OpenApprovalModal(data);
9838
+ } catch (_) { /* */ }
9713
9839
  }
9714
9840
  return;
9715
9841
  }
@@ -13262,25 +13388,31 @@ document.addEventListener('DOMContentLoaded', () => {
13262
13388
  if (bridgeInput) bridgeInput.addEventListener('keydown', (e) => {
13263
13389
  if (e.key === 'Enter') { e.preventDefault(); sendBridge(); }
13264
13390
  });
13265
- /* Toggle "aceptar mensajes dirigidos" -- reads/writes the
13266
- * bridge.accept_directed limits boolean (the ruedita). */
13267
- const acceptCb = $('[data-bridge-accept]');
13268
- if (acceptCb) {
13391
+ /* PND-221 -- la postura del canal tiene TRES estados, no dos: descartar /
13392
+ * preguntarme / ejecutar sin preguntar. Lee y escribe el campo de
13393
+ * enumeracion bridge.directed_mode. */
13394
+ const modeSel = $('[data-bridge-mode]');
13395
+ if (modeSel) {
13396
+ let modePrev = 'ask';
13269
13397
  (async () => {
13270
13398
  try {
13271
13399
  const r = await fetch('/api/forge/limits'); const j = await r.json();
13272
- const b = (j && Array.isArray(j.booleans)) ? j.booleans.find((x) => x.field === 'bridge.accept_directed') : null;
13273
- acceptCb.checked = b ? b.value === true : true;
13274
- } catch (_) { acceptCb.checked = true; }
13400
+ const e = (j && Array.isArray(j.enums)) ? j.enums.find((x) => x.field === 'bridge.directed_mode') : null;
13401
+ modePrev = (e && typeof e.value === 'string') ? e.value : 'ask';
13402
+ modeSel.value = modePrev;
13403
+ } catch (_) { modeSel.value = 'ask'; }
13275
13404
  })();
13276
- acceptCb.addEventListener('change', async () => {
13277
- const val = acceptCb.checked;
13405
+ modeSel.addEventListener('change', async () => {
13406
+ const val = modeSel.value;
13278
13407
  try {
13279
- await fetch('/api/forge/limits', {
13408
+ const r = await fetch('/api/forge/limits', {
13280
13409
  method: 'POST', headers: { 'content-type': 'application/json' },
13281
- body: JSON.stringify({ field: 'bridge.accept_directed', value: val }),
13410
+ body: JSON.stringify({ field: 'bridge.directed_mode', value: val }),
13282
13411
  });
13283
- } catch (_) { acceptCb.checked = !val; }
13412
+ const j = await r.json();
13413
+ if (!j || j.ok !== true) throw new Error('rejected');
13414
+ modePrev = val;
13415
+ } catch (_) { modeSel.value = modePrev; }
13284
13416
  });
13285
13417
  }
13286
13418
  renderBridge();