@nac3/forge-cli 1.21.4 → 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 (108) 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 +142 -15
  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 +19 -2
  31. package/dist/chat/tools/pending.js.map +1 -1
  32. package/dist/chat/tools.d.ts +6 -0
  33. package/dist/chat/tools.d.ts.map +1 -1
  34. package/dist/chat/tools.js +4 -0
  35. package/dist/chat/tools.js.map +1 -1
  36. package/dist/chat/turn_control.d.ts +2 -0
  37. package/dist/chat/turn_control.d.ts.map +1 -1
  38. package/dist/chat/turn_control.js +30 -1
  39. package/dist/chat/turn_control.js.map +1 -1
  40. package/dist/commands/urazuke.d.ts.map +1 -1
  41. package/dist/commands/urazuke.js +68 -6
  42. package/dist/commands/urazuke.js.map +1 -1
  43. package/dist/core/cost_router.d.ts +7 -0
  44. package/dist/core/cost_router.d.ts.map +1 -1
  45. package/dist/core/cost_router.js +8 -5
  46. package/dist/core/cost_router.js.map +1 -1
  47. package/dist/core/limits_config.d.ts +37 -6
  48. package/dist/core/limits_config.d.ts.map +1 -1
  49. package/dist/core/limits_config.js +74 -8
  50. package/dist/core/limits_config.js.map +1 -1
  51. package/dist/nac3/danger_zone.d.ts +39 -0
  52. package/dist/nac3/danger_zone.d.ts.map +1 -0
  53. package/dist/nac3/danger_zone.js +31 -0
  54. package/dist/nac3/danger_zone.js.map +1 -0
  55. package/dist/nac3/internal_manifest.d.ts.map +1 -1
  56. package/dist/nac3/internal_manifest.js +33 -0
  57. package/dist/nac3/internal_manifest.js.map +1 -1
  58. package/dist/pending/store.d.ts +7 -0
  59. package/dist/pending/store.d.ts.map +1 -1
  60. package/dist/pending/store.js +41 -0
  61. package/dist/pending/store.js.map +1 -1
  62. package/dist/urazuke/catalog.d.ts +1 -1
  63. package/dist/urazuke/catalog.d.ts.map +1 -1
  64. package/dist/urazuke/catalog.js.map +1 -1
  65. package/dist/urazuke/gate.d.ts.map +1 -1
  66. package/dist/urazuke/gate.js +98 -6
  67. package/dist/urazuke/gate.js.map +1 -1
  68. package/dist/urazuke/gates_data.d.ts +8 -1
  69. package/dist/urazuke/gates_data.d.ts.map +1 -1
  70. package/dist/urazuke/gates_data.js +25 -3
  71. package/dist/urazuke/gates_data.js.map +1 -1
  72. package/dist/urazuke/heuristics.d.ts +108 -0
  73. package/dist/urazuke/heuristics.d.ts.map +1 -0
  74. package/dist/urazuke/heuristics.js +248 -0
  75. package/dist/urazuke/heuristics.js.map +1 -0
  76. package/dist/urazuke/manual_cases.d.ts +31 -0
  77. package/dist/urazuke/manual_cases.d.ts.map +1 -0
  78. package/dist/urazuke/manual_cases.js +87 -0
  79. package/dist/urazuke/manual_cases.js.map +1 -0
  80. package/dist/urazuke/project_config.d.ts +25 -0
  81. package/dist/urazuke/project_config.d.ts.map +1 -0
  82. package/dist/urazuke/project_config.js +65 -0
  83. package/dist/urazuke/project_config.js.map +1 -0
  84. package/dist/urazuke/quality.d.ts +0 -8
  85. package/dist/urazuke/quality.d.ts.map +1 -1
  86. package/dist/urazuke/quality.js +4 -29
  87. package/dist/urazuke/quality.js.map +1 -1
  88. package/dist/urazuke/scoreboard.d.ts +85 -0
  89. package/dist/urazuke/scoreboard.d.ts.map +1 -0
  90. package/dist/urazuke/scoreboard.js +260 -0
  91. package/dist/urazuke/scoreboard.js.map +1 -0
  92. package/dist/version.d.ts +1 -1
  93. package/dist/version.js +1 -1
  94. package/dist/workflow/orchestrator.d.ts +7 -3
  95. package/dist/workflow/orchestrator.d.ts.map +1 -1
  96. package/dist/workflow/orchestrator.js +1 -1
  97. package/dist/workflow/orchestrator.js.map +1 -1
  98. package/package.json +1 -1
  99. package/src/i18n/catalogs/ar.json +558 -550
  100. package/src/i18n/catalogs/de.json +558 -550
  101. package/src/i18n/catalogs/en.json +558 -550
  102. package/src/i18n/catalogs/es.json +558 -550
  103. package/src/i18n/catalogs/fr.json +558 -550
  104. package/src/i18n/catalogs/hi.json +558 -550
  105. package/src/i18n/catalogs/it.json +558 -550
  106. package/src/i18n/catalogs/ja.json +558 -550
  107. package/src/i18n/catalogs/pt.json +558 -550
  108. package/src/i18n/catalogs/zh.json +558 -550
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/chat/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/chat/tools.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,8 @@ export interface TurnSnapshot {
58
58
  * el mismo turno reintentandose, no uno nuevo en paralelo).
59
59
  */
60
60
  export declare function beginTurn(id: string, onAbort?: () => void, user?: string): AbortSignal;
61
+ /** Registra un oyente de "ya no hay turnos vivos". Devuelve el des-registro. */
62
+ export declare function onTurnsIdle(cb: () => void): () => void;
61
63
  /** Saca este turno del registro. Solo el suyo: un turno que termina tarde
62
64
  * no puede borrar a uno que arranco despues. */
63
65
  export declare function endTurn(id: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"turn_control.d.ts","sourceRoot":"","sources":["../../src/chat/turn_control.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,eAAe,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAcD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAatF;AAED;iDACiD;AACjD,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAExC;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAMlE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,EAAE,CAAA;CAAE,CAQlE;AAED,wBAAgB,YAAY,IAAI,OAAO,CAA6B;AAEpE,4CAA4C;AAC5C,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAG5C;AAED;;yDAEyD;AACzD,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAI5C;AAED,iBAAiB;AACjB,wBAAgB,iBAAiB,IAAI,IAAI,CAAqB"}
1
+ {"version":3,"file":"turn_control.d.ts","sourceRoot":"","sources":["../../src/chat/turn_control.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,eAAe,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAcD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAatF;AAmBD,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGtD;AAED;iDACiD;AACjD,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAOxC;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAMlE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,EAAE,CAAA;CAAE,CAQlE;AAED,wBAAgB,YAAY,IAAI,OAAO,CAA6B;AAEpE,4CAA4C;AAC5C,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAG5C;AAED;;yDAEyD;AACzD,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAI5C;AAED,iBAAiB;AACjB,wBAAgB,iBAAiB,IAAI,IAAI,CAAoC"}
@@ -73,10 +73,39 @@ export function beginTurn(id, onAbort, user) {
73
73
  });
74
74
  return controller.signal;
75
75
  }
76
+ /**
77
+ * Oyentes del momento en que NO queda ningun turno vivo.
78
+ *
79
+ * POR QUE EXISTE (PND-222, 2026-10-27). Un mensaje dirigido de otra instancia
80
+ * de Forge llegaba a un panel OCUPADO, el receptor contestaba 'busy' y el
81
+ * emisor reintentaba tres veces cada cuatro segundos: doce segundos de ventana
82
+ * contra turnos que duran minutos. Medido el 27-oct: de diez mensajes
83
+ * dirigidos, seis se perdieron. La salida no es mas reintentos sino una COLA
84
+ * que se drena cuando el turno termina -- y el unico lugar que sabe que el
85
+ * turno termino es este registro.
86
+ *
87
+ * El oyente se llama DESPUES de borrar el turno, asi que isTurnActive() ya
88
+ * dice false cuando corre: el drenaje puede arrancar un turno nuevo sin
89
+ * pelearse consigo mismo.
90
+ */
91
+ const _idle = new Set();
92
+ /** Registra un oyente de "ya no hay turnos vivos". Devuelve el des-registro. */
93
+ export function onTurnsIdle(cb) {
94
+ _idle.add(cb);
95
+ return () => { _idle.delete(cb); };
96
+ }
76
97
  /** Saca este turno del registro. Solo el suyo: un turno que termina tarde
77
98
  * no puede borrar a uno que arranco despues. */
78
99
  export function endTurn(id) {
79
100
  _active.delete(id);
101
+ if (_active.size === 0) {
102
+ for (const cb of [..._idle]) {
103
+ try {
104
+ cb();
105
+ }
106
+ catch { /* un oyente roto no puede trabar el cierre */ }
107
+ }
108
+ }
80
109
  }
81
110
  /** Interrumpe el turno MAS RECIENTE (abort signal + kill del subproceso). */
82
111
  export function interruptActiveTurn() {
@@ -130,5 +159,5 @@ export function activeTurns() {
130
159
  .map((t) => ({ id: t.id, startedAt: t.startedAt, ...(t.user ? { user: t.user } : {}) }));
131
160
  }
132
161
  /** Test hook. */
133
- export function _resetTurnControl() { _active.clear(); }
162
+ export function _resetTurnControl() { _active.clear(); _idle.clear(); }
134
163
  //# sourceMappingURL=turn_control.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"turn_control.js","sourceRoot":"","sources":["../../src/chat/turn_control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn_control.js","sourceRoot":"","sources":["../../src/chat/turn_control.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"urazuke.d.ts","sourceRoot":"","sources":["../../src/commands/urazuke.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4nB7D"}
1
+ {"version":3,"file":"urazuke.d.ts","sourceRoot":"","sources":["../../src/commands/urazuke.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmrB7D"}
@@ -584,7 +584,6 @@ export function registerUrazukeCommand(program) {
584
584
  .option('--no-lint', 'no correr los lint del stack')
585
585
  .option('--max-file-lines <n>', 'limite', (v) => parseInt(v, 10))
586
586
  .option('--max-function-lines <n>', 'limite', (v) => parseInt(v, 10))
587
- .option('--max-complexity <n>', 'limite', (v) => parseInt(v, 10))
588
587
  .option('--pending <id>', 'asociar el recibo a un pendiente')
589
588
  .option('--json', 'emit JSON')
590
589
  .action(async (opts) => {
@@ -598,15 +597,13 @@ export function registerUrazukeCommand(program) {
598
597
  limits['max_file_lines'] = opts.maxFileLines;
599
598
  if (opts.maxFunctionLines)
600
599
  limits['max_function_lines'] = opts.maxFunctionLines;
601
- if (opts.maxComplexity)
602
- limits['max_complexity'] = opts.maxComplexity;
603
600
  const started = Date.now();
604
601
  const r = await runQualityCheck(projectRoot, { limits, lint: opts.lint !== false, ...(opts.coverage ? { coverage: true } : {}), ...(opts.mutation ? { mutation: true } : {}) });
605
602
  const target = path.join(projectRoot, 'docs', 'CODE_QUALITY.md');
606
603
  const prev = await readFile(target, 'utf8').catch(() => '');
607
604
  await mkdir(path.dirname(target), { recursive: true });
608
605
  await writeFile(target, renderCodeQuality(r, prev), 'utf8');
609
- const summary = r.native.violations.length + ' violations, ' + r.native.duplicated_blocks + ' dup blocks'
606
+ const summary = r.native.violations.length + ' violations'
610
607
  + (r.coverage_pct != null ? ', coverage ' + r.coverage_pct + '%' : '') + (r.mutation_score != null ? ', mutation ' + r.mutation_score + '%' : '')
611
608
  + (r.ratchet.ok ? '' : '; RATCHET: ' + r.ratchet.reasons.join('; '));
612
609
  const receipt = await appendReceipt(slug, {
@@ -631,8 +628,8 @@ export function registerUrazukeCommand(program) {
631
628
  }
632
629
  header('Calidad por maquina -- ' + r.stack.label + ' -- ' + (r.ok ? c.success('VERDE') : c.error('ROJO')));
633
630
  process.stdout.write(' ' + r.native.files + ' archivos, ' + r.native.lines + ' lineas, ' + r.native.functions + ' funciones\n');
634
- process.stdout.write(' max lineas/archivo ' + r.native.max_file_lines + ' (limite ' + r.limits.max_file_lines + ') | max lineas/funcion ' + r.native.max_function_lines + ' (' + r.limits.max_function_lines + ') | max complejidad ' + r.native.max_complexity + ' (' + r.limits.max_complexity + ')\n');
635
- process.stdout.write(' violaciones: ' + r.native.violations.length + ' | bloques duplicados: ' + r.native.duplicated_blocks + '\n');
631
+ process.stdout.write(' max lineas/archivo ' + r.native.max_file_lines + ' (limite ' + r.limits.max_file_lines + ') | max lineas/funcion ' + r.native.max_function_lines + ' (' + r.limits.max_function_lines + ')\n');
632
+ process.stdout.write(' violaciones: ' + r.native.violations.length + '\n');
636
633
  for (const l of r.lint)
637
634
  process.stdout.write(' lint ' + (l.exit_code === 0 ? c.success('ok ') : c.error('X ')) + l.command + '\n');
638
635
  if (r.coverage_pct != null)
@@ -772,6 +769,71 @@ export function registerUrazukeCommand(program) {
772
769
  fail(err);
773
770
  }
774
771
  });
772
+ /* ---------------- the forty-five rules (Annex H) ---------------- */
773
+ const rules = root
774
+ .command('rules')
775
+ .description('Anexo H: las 45 reglas de la definicion en vigor, las dos cifras, lo apagado y lo que juzga una persona.');
776
+ rules
777
+ .command('show', { isDefault: true })
778
+ .description('El informe en el orden que publica el metodo: veredicto, las dos cifras con su huella, lo apagado y hasta cuando, el movimiento. Sale con 1 en rojo.')
779
+ .option('--project <slug>', 'override active project')
780
+ .option('--json', 'emit JSON')
781
+ .action(async (opts) => {
782
+ try {
783
+ const { root: projectRoot } = await resolveSlugRoot(opts);
784
+ const { resolveGates } = await import('../urazuke/gates_data.js');
785
+ const { resolveRuleset } = await import('../urazuke/heuristics.js');
786
+ const { scoreboardOf, renderHeuristicsReport, readComplianceMark } = await import('../urazuke/scoreboard.js');
787
+ const gates = await resolveGates(projectRoot);
788
+ if (!gates.heuristics) {
789
+ process.stdout.write(c.warn('la definicion en vigor (' + gates.version + ') no trae el catalogo de reglas')
790
+ + '\n esta instalacion NO las da por cumplidas: trae una version que las publique con'
791
+ + ' `yf urazuke gates pull` y adoptala con `yf urazuke gates adopt`.\n');
792
+ process.exitCode = 1;
793
+ return;
794
+ }
795
+ const rs = await resolveRuleset({ projectRoot, gates });
796
+ const sb = scoreboardOf(rs);
797
+ const prev = await readComplianceMark(projectRoot);
798
+ if (opts.json) {
799
+ process.stdout.write(JSON.stringify({ scoreboard: sb, rules: rs.rules }, null, 2) + '\n');
800
+ }
801
+ else {
802
+ process.stdout.write(renderHeuristicsReport(sb, prev) + '\n');
803
+ }
804
+ if (sb.verdict === 'red')
805
+ process.exitCode = 1;
806
+ }
807
+ catch (err) {
808
+ fail(err);
809
+ }
810
+ });
811
+ rules
812
+ .command('sign <rule> <verdict>')
813
+ .description('Registra el veredicto de una PERSONA sobre una regla que una maquina no decide (passed|failed). Exige nombre y fecha.')
814
+ .option('--project <slug>', 'override active project')
815
+ .option('--by <name>', 'quien la juzgo (obligatorio)')
816
+ .option('--at <date>', 'cuando, YYYY-MM-DD (default: hoy)')
817
+ .option('--profile <id>', 'el perfil con el que se corrio el caso')
818
+ .option('--note <text>', 'que vio')
819
+ .action(async (rule, verdict, opts) => {
820
+ try {
821
+ const { root: projectRoot } = await resolveSlugRoot(opts);
822
+ const { recordManualCase } = await import('../urazuke/manual_cases.js');
823
+ if (!opts.by)
824
+ throw new Error('falta --by: un veredicto sin nombre no es un veredicto');
825
+ const at = opts.at ?? new Date().toISOString().slice(0, 10);
826
+ await recordManualCase(projectRoot, {
827
+ rule, verdict: verdict, judged_by: opts.by, at,
828
+ ...(opts.profile ? { profile: opts.profile } : {}),
829
+ ...(opts.note ? { note: opts.note } : {}),
830
+ });
831
+ process.stdout.write(c.success('registrado ') + rule + ' ' + verdict + ' -- ' + opts.by + ', ' + at + '\n');
832
+ }
833
+ catch (err) {
834
+ fail(err);
835
+ }
836
+ });
775
837
  root
776
838
  .command('sync-prompts [repo]')
777
839
  .description('Re-vendorea los prompts desde el repositorio del metodo (URAZUKE_REPO o ../urazuke).')