@nac3/forge-cli 1.23.7 → 1.24.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 (162) hide show
  1. package/dist/bin/yf.js +0 -0
  2. package/dist/chat/claude.d.ts +8 -0
  3. package/dist/chat/claude.d.ts.map +1 -1
  4. package/dist/chat/claude.js.map +1 -1
  5. package/dist/chat/claude_cli.d.ts +23 -0
  6. package/dist/chat/claude_cli.d.ts.map +1 -1
  7. package/dist/chat/claude_cli.js +76 -2
  8. package/dist/chat/claude_cli.js.map +1 -1
  9. package/dist/chat/doctrine_digest.d.ts.map +1 -1
  10. package/dist/chat/doctrine_digest.js +2 -1
  11. package/dist/chat/doctrine_digest.js.map +1 -1
  12. package/dist/chat/server.d.ts.map +1 -1
  13. package/dist/chat/server.js +11 -0
  14. package/dist/chat/server.js.map +1 -1
  15. package/dist/chat/tools/pending.d.ts +11 -0
  16. package/dist/chat/tools/pending.d.ts.map +1 -1
  17. package/dist/chat/tools/pending.js +55 -8
  18. package/dist/chat/tools/pending.js.map +1 -1
  19. package/dist/chat/tools/shell.d.ts +39 -4
  20. package/dist/chat/tools/shell.d.ts.map +1 -1
  21. package/dist/chat/tools/shell.js +167 -7
  22. package/dist/chat/tools/shell.js.map +1 -1
  23. package/dist/chat/tools/urazuke.d.ts.map +1 -1
  24. package/dist/chat/tools/urazuke.js +8 -5
  25. package/dist/chat/tools/urazuke.js.map +1 -1
  26. package/dist/chat/urazuke_section.d.ts +26 -4
  27. package/dist/chat/urazuke_section.d.ts.map +1 -1
  28. package/dist/chat/urazuke_section.js +115 -9
  29. package/dist/chat/urazuke_section.js.map +1 -1
  30. package/dist/commands/pending.d.ts.map +1 -1
  31. package/dist/commands/pending.js +116 -12
  32. package/dist/commands/pending.js.map +1 -1
  33. package/dist/commands/urazuke.d.ts +3 -0
  34. package/dist/commands/urazuke.d.ts.map +1 -1
  35. package/dist/commands/urazuke.js +80 -3
  36. package/dist/commands/urazuke.js.map +1 -1
  37. package/dist/core/ascii_purity.d.ts +69 -0
  38. package/dist/core/ascii_purity.d.ts.map +1 -0
  39. package/dist/core/ascii_purity.js +141 -0
  40. package/dist/core/ascii_purity.js.map +1 -0
  41. package/dist/core/battery_stamp.d.ts +85 -0
  42. package/dist/core/battery_stamp.d.ts.map +1 -0
  43. package/dist/core/battery_stamp.js +237 -0
  44. package/dist/core/battery_stamp.js.map +1 -0
  45. package/dist/core/ci_gaps.d.ts +129 -0
  46. package/dist/core/ci_gaps.d.ts.map +1 -0
  47. package/dist/core/ci_gaps.js +352 -0
  48. package/dist/core/ci_gaps.js.map +1 -0
  49. package/dist/core/doc_citations.d.ts +133 -0
  50. package/dist/core/doc_citations.d.ts.map +1 -0
  51. package/dist/core/doc_citations.js +271 -0
  52. package/dist/core/doc_citations.js.map +1 -0
  53. package/dist/docs/doctrine/urazuke.md +173 -2
  54. package/dist/nac3/internal_manifest.d.ts.map +1 -1
  55. package/dist/nac3/internal_manifest.js +28 -2
  56. package/dist/nac3/internal_manifest.js.map +1 -1
  57. package/dist/pending/store.d.ts +29 -0
  58. package/dist/pending/store.d.ts.map +1 -1
  59. package/dist/pending/store.js +51 -1
  60. package/dist/pending/store.js.map +1 -1
  61. package/dist/pending/types.d.ts +23 -0
  62. package/dist/pending/types.d.ts.map +1 -1
  63. package/dist/pending/types.js.map +1 -1
  64. package/dist/telemetry/usage.d.ts +18 -0
  65. package/dist/telemetry/usage.d.ts.map +1 -1
  66. package/dist/telemetry/usage.js +16 -1
  67. package/dist/telemetry/usage.js.map +1 -1
  68. package/dist/urazuke/announce.d.ts +7 -0
  69. package/dist/urazuke/announce.d.ts.map +1 -1
  70. package/dist/urazuke/announce.js +20 -0
  71. package/dist/urazuke/announce.js.map +1 -1
  72. package/dist/urazuke/catalog.d.ts +1 -1
  73. package/dist/urazuke/catalog.d.ts.map +1 -1
  74. package/dist/urazuke/catalog.js.map +1 -1
  75. package/dist/urazuke/close_gate.d.ts +31 -4
  76. package/dist/urazuke/close_gate.d.ts.map +1 -1
  77. package/dist/urazuke/close_gate.js +70 -13
  78. package/dist/urazuke/close_gate.js.map +1 -1
  79. package/dist/urazuke/current.d.ts +28 -0
  80. package/dist/urazuke/current.d.ts.map +1 -1
  81. package/dist/urazuke/current.js +18 -5
  82. package/dist/urazuke/current.js.map +1 -1
  83. package/dist/urazuke/cycle.d.ts +3 -0
  84. package/dist/urazuke/cycle.d.ts.map +1 -1
  85. package/dist/urazuke/cycle.js +5 -3
  86. package/dist/urazuke/cycle.js.map +1 -1
  87. package/dist/urazuke/evidence.d.ts +14 -1
  88. package/dist/urazuke/evidence.d.ts.map +1 -1
  89. package/dist/urazuke/evidence.js +88 -2
  90. package/dist/urazuke/evidence.js.map +1 -1
  91. package/dist/urazuke/evidence_env.d.ts +78 -0
  92. package/dist/urazuke/evidence_env.d.ts.map +1 -0
  93. package/dist/urazuke/evidence_env.js +341 -0
  94. package/dist/urazuke/evidence_env.js.map +1 -0
  95. package/dist/urazuke/freeze.d.ts.map +1 -1
  96. package/dist/urazuke/freeze.js +16 -9
  97. package/dist/urazuke/freeze.js.map +1 -1
  98. package/dist/urazuke/gate.d.ts +48 -0
  99. package/dist/urazuke/gate.d.ts.map +1 -1
  100. package/dist/urazuke/gate.js +251 -25
  101. package/dist/urazuke/gate.js.map +1 -1
  102. package/dist/urazuke/gates_data.d.ts +30 -3
  103. package/dist/urazuke/gates_data.d.ts.map +1 -1
  104. package/dist/urazuke/gates_data.js +51 -5
  105. package/dist/urazuke/gates_data.js.map +1 -1
  106. package/dist/urazuke/gates_pull.d.ts +40 -0
  107. package/dist/urazuke/gates_pull.d.ts.map +1 -1
  108. package/dist/urazuke/gates_pull.js +118 -8
  109. package/dist/urazuke/gates_pull.js.map +1 -1
  110. package/dist/urazuke/manual_cases.d.ts +11 -1
  111. package/dist/urazuke/manual_cases.d.ts.map +1 -1
  112. package/dist/urazuke/manual_cases.js +1 -0
  113. package/dist/urazuke/manual_cases.js.map +1 -1
  114. package/dist/urazuke/overrides.d.ts +107 -0
  115. package/dist/urazuke/overrides.d.ts.map +1 -0
  116. package/dist/urazuke/overrides.js +128 -0
  117. package/dist/urazuke/overrides.js.map +1 -0
  118. package/dist/urazuke/probes.d.ts.map +1 -1
  119. package/dist/urazuke/probes.js +51 -0
  120. package/dist/urazuke/probes.js.map +1 -1
  121. package/dist/urazuke/profiles.d.ts +135 -0
  122. package/dist/urazuke/profiles.d.ts.map +1 -0
  123. package/dist/urazuke/profiles.js +470 -0
  124. package/dist/urazuke/profiles.js.map +1 -0
  125. package/dist/urazuke/receipt_audit.d.ts +67 -0
  126. package/dist/urazuke/receipt_audit.d.ts.map +1 -0
  127. package/dist/urazuke/receipt_audit.js +103 -0
  128. package/dist/urazuke/receipt_audit.js.map +1 -0
  129. package/dist/urazuke/receipts.d.ts +22 -0
  130. package/dist/urazuke/receipts.d.ts.map +1 -1
  131. package/dist/urazuke/receipts.js +44 -0
  132. package/dist/urazuke/receipts.js.map +1 -1
  133. package/dist/urazuke/report.d.ts +30 -0
  134. package/dist/urazuke/report.d.ts.map +1 -1
  135. package/dist/urazuke/report.js +39 -0
  136. package/dist/urazuke/report.js.map +1 -1
  137. package/dist/urazuke/reset.d.ts +35 -0
  138. package/dist/urazuke/reset.d.ts.map +1 -0
  139. package/dist/urazuke/reset.js +150 -0
  140. package/dist/urazuke/reset.js.map +1 -0
  141. package/dist/urazuke/retro.d.ts +5 -1
  142. package/dist/urazuke/retro.d.ts.map +1 -1
  143. package/dist/urazuke/retro.js +21 -8
  144. package/dist/urazuke/retro.js.map +1 -1
  145. package/dist/urazuke/section.d.ts.map +1 -1
  146. package/dist/urazuke/section.js +17 -2
  147. package/dist/urazuke/section.js.map +1 -1
  148. package/dist/urazuke/semantics.d.ts +173 -0
  149. package/dist/urazuke/semantics.d.ts.map +1 -0
  150. package/dist/urazuke/semantics.js +232 -0
  151. package/dist/urazuke/semantics.js.map +1 -0
  152. package/dist/urazuke/start.d.ts +8 -0
  153. package/dist/urazuke/start.d.ts.map +1 -1
  154. package/dist/urazuke/start.js +10 -2
  155. package/dist/urazuke/start.js.map +1 -1
  156. package/dist/version.d.ts +1 -1
  157. package/dist/version.js +1 -1
  158. package/dist/workflow/orchestrator.d.ts.map +1 -1
  159. package/dist/workflow/orchestrator.js +6 -7
  160. package/dist/workflow/orchestrator.js.map +1 -1
  161. package/docs/doctrine/urazuke.md +173 -2
  162. package/package.json +24 -20
@@ -0,0 +1,103 @@
1
+ /**
2
+ * AUDITORIA DE RECIBOS YA PRODUCIDOS -- F-02c (pedido del dueno,
3
+ * 2026-11-01, segunda vuelta).
4
+ *
5
+ * LA PREGUNTA. El defecto F-02c era el runner de evidencia spawneando por
6
+ * cmd.exe sin las dos guardas: un comando con un salto de linea salia VERDE
7
+ * habiendo corrido solo la primera linea, y uno por encima del tope de
8
+ * cmd.exe se truncaba. Arreglado. Queda saber si algun recibio YA PRODUCIDO
9
+ * paso por ese camino, porque si paso, hay retrabajo.
10
+ *
11
+ * Y LA PREGUNTA DE LA PREGUNTA, que es la que decide si el numero vale.
12
+ * Palabras del dueno: "una medicion que puede informar cero tiene que
13
+ * distinguir cero porque no hay de cero porque no mire". La marca que se
14
+ * busca es el COMANDO TEXTUAL guardado en el recibo. Entonces un cero sobre
15
+ * 821 recibos solo significa "no hay" si los 821 registran el comando. Los
16
+ * que no lo registran NO son limpios: son no auditables por esta via, y eso
17
+ * se informa como un numero propio.
18
+ *
19
+ * Por eso esto es un modulo con casos y no un grep: el numero va a un
20
+ * paper.
21
+ *
22
+ * ASCII-only.
23
+ */
24
+ /** El tope de una linea de comando en cmd.exe, medido en esta maquina el
25
+ * 2026-11-01: 8150 caracteres pasan, 8180 fallan. El limite documentado
26
+ * por Microsoft es 8191 incluyendo el `cmd /c `. */
27
+ export const CMD_LINE_CEILING = 8150;
28
+ export function auditReceipts(stores) {
29
+ const rows = [];
30
+ const unreadable = [];
31
+ let total = 0;
32
+ for (const s of stores) {
33
+ if (s.error || !Array.isArray(s.items)) {
34
+ unreadable.push({ store: s.store, reason: s.error ?? 'sin lista de items' });
35
+ continue;
36
+ }
37
+ for (const item of s.items) {
38
+ total++;
39
+ const cmd = item['command'];
40
+ const hasCommand = typeof cmd === 'string' && cmd.length > 0;
41
+ const text = hasCommand ? cmd : '';
42
+ rows.push({
43
+ store: s.store,
44
+ id: typeof item['id'] === 'string' ? item['id'] : '(sin id)',
45
+ has_command: hasCommand,
46
+ multiline: hasCommand && /[\r\n]/.test(text),
47
+ over_ceiling: hasCommand && text.length > CMD_LINE_CEILING,
48
+ length: text.length,
49
+ });
50
+ }
51
+ }
52
+ const auditable = rows.filter((r) => r.has_command);
53
+ const longest = auditable.length
54
+ ? auditable.reduce((a, b) => (b.length > a.length ? b : a))
55
+ : null;
56
+ return {
57
+ stores: stores.length,
58
+ total,
59
+ auditable: auditable.length,
60
+ not_auditable: rows.length - auditable.length,
61
+ multiline: rows.filter((r) => r.multiline),
62
+ over_ceiling: rows.filter((r) => r.over_ceiling),
63
+ longest,
64
+ unreadable,
65
+ };
66
+ }
67
+ export function renderReceiptAudit(r) {
68
+ const out = [];
69
+ out.push('recibos auditados: ' + r.total + ' en ' + r.stores + ' stores.');
70
+ out.push(' registran el comando (auditables por esta via): ' + r.auditable);
71
+ out.push(' NO registran el comando (no auditables): ' + r.not_auditable);
72
+ out.push('con salto de linea: ' + r.multiline.length
73
+ + ' | por encima del tope de cmd.exe (' + CMD_LINE_CEILING + '): ' + r.over_ceiling.length);
74
+ for (const row of [...r.multiline, ...r.over_ceiling]) {
75
+ out.push(' ' + row.store + ' ' + row.id + ' (' + row.length + ' chars)');
76
+ }
77
+ if (r.longest) {
78
+ out.push('el comando mas largo encontrado: ' + r.longest.length + ' chars ('
79
+ + r.longest.store + ' ' + r.longest.id + '), margen contra el tope: '
80
+ + (CMD_LINE_CEILING - r.longest.length) + '.');
81
+ }
82
+ if (r.unreadable.length) {
83
+ out.push('STORES QUE NO SE PUDIERON LEER (' + r.unreadable.length + '):');
84
+ for (const u of r.unreadable)
85
+ out.push(' ' + u.store + ': ' + u.reason);
86
+ out.push('Un store ilegible NO cuenta como limpio.');
87
+ }
88
+ if (r.not_auditable === 0 && r.total > 0) {
89
+ out.push('');
90
+ out.push('Los ' + r.total + ' registran el comando, asi que un cero aca es');
91
+ out.push('"cero porque no hay" y no "cero porque no mire".');
92
+ }
93
+ else if (r.not_auditable > 0) {
94
+ out.push('');
95
+ out.push('ATENCION: ' + r.not_auditable + ' recibos no registran el comando. Sobre esos el');
96
+ out.push('cero es "cero porque no mire": la frase correcta es "ninguno de los '
97
+ + r.auditable + ' que');
98
+ out.push('registran el comando paso por ahi, y hay ' + r.not_auditable + ' que no se pueden');
99
+ out.push('auditar por esta via".');
100
+ }
101
+ return out.join('\n');
102
+ }
103
+ //# sourceMappingURL=receipt_audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"receipt_audit.js","sourceRoot":"","sources":["../../src/urazuke/receipt_audit.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,18 @@ export interface Receipt {
42
42
  /** The unified diff of the planted defect (mutation mode), bounded. The
43
43
  * owner sees in the receipt that the mutant was not trivial. */
44
44
  mutation_diff?: string;
45
+ /** F-13 -- what the evidence worktree got from the environment, and what
46
+ * it did NOT get. `absent` is the load-bearing field: while it has an
47
+ * entry, this receipt ran WITHOUT part of the project's environment, so
48
+ * its red cannot be certified as one that tells behaviour apart. Absent
49
+ * on a receipt written before 2026-11-01, and that reads as "nobody
50
+ * measured it", never as "the environment was complete". */
51
+ env?: {
52
+ carried?: string[];
53
+ declared_missing?: string[];
54
+ rejected?: string[];
55
+ absent?: string[];
56
+ };
45
57
  /** The verdict Forge derived: for red_proof, failed > 0 and exit != 0;
46
58
  * for green/regression/e2e, exit == 0 and failed == 0. */
47
59
  verdict: 'ok' | 'not_ok';
@@ -133,6 +145,11 @@ export interface ReceiptSummary {
133
145
  * no test counts were reported. Not a fault: a check script is legitimate
134
146
  * evidence. Counted so the reader can tell the weight of what they have. */
135
147
  exit_only: number;
148
+ /** F-13 -- reds that would have counted as strong but ran in a worktree
149
+ * missing part of the project's environment. Surfaced instead of
150
+ * dropped: a close gate that just says "no strong red" after the owner
151
+ * produced one is the silence the fix was for. */
152
+ env_incomplete_reds: number;
136
153
  last_at?: number;
137
154
  }
138
155
  /** A red that tells behaviour apart (D-037): tests failed, or a mutant was
@@ -141,6 +158,11 @@ export interface ReceiptSummary {
141
158
  * ship on its own. Uses the EFFECTIVE verdict and counts (re-derived, not
142
159
  * the stored ones), same reason as summarizeReceipts below. */
143
160
  export declare function isStrongRed(r: Receipt): boolean;
161
+ /** Un rojo que HABRIA sido fuerte si el worktree hubiera tenido el entorno
162
+ * completo. Se cuenta aparte para que la compuerta del cierre pueda decir
163
+ * el MOTIVO en vez de "falta un rojo fuerte": el dueno pidio explicitamente
164
+ * que el recibo diga por que, y la compuerta es donde se lee. */
165
+ export declare function isEnvIncompleteRed(r: Receipt): boolean;
144
166
  /** Count the receipts whose EFFECTIVE verdict is ok, per kind (a not_ok
145
167
  * receipt is evidence of the opposite; it never counts towards a step).
146
168
  * Never filters by the stored `r.verdict`: that field is a write-time
@@ -1 +1 @@
1
- {"version":3,"file":"receipts.d.ts","sourceRoot":"","sources":["../../src/urazuke/receipts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receipts.d.ts","sourceRoot":"","sources":["../../src/urazuke/receipts.ts"],"names":[],"mappings":"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"}
@@ -155,6 +155,35 @@ export async function appendReceipt(slug, input) {
155
155
  export function isStrongRed(r) {
156
156
  if (r.kind !== 'red_proof' || effectiveVerdict(r) !== 'ok')
157
157
  return false;
158
+ /* F-13 -- UN ROJO CON EL ENTORNO INCOMPLETO NO ES UN ROJO FUERTE.
159
+ *
160
+ * Es la mitad que el dueno puso PRIMERO, y por que: un rojo que fallo por
161
+ * falta de entorno, aceptado como rojo fuerte, es lavado de evidencia --
162
+ * la compuerta del cierre lo cuenta como prueba de que la mutacion fue
163
+ * detectada, cuando lo unico que se detecto fue un archivo ausente. Ese
164
+ * recibo existe y fue medido (RCP-074 del experimento): salia con
165
+ * veredicto ok, con sus conteos de fallas y con su cola de salida, igual
166
+ * que un rojo bueno.
167
+ *
168
+ * No se afirma que el rojo FUE CAUSADO por el archivo ausente: eso no se
169
+ * puede medir. Se afirma que corrio con el entorno incompleto, que si se
170
+ * puede, y que alcanza para no certificarlo. El rojo sigue siendo un rojo
171
+ * (el veredicto no cambia); lo que no es, es evidencia de que la conducta
172
+ * se distinguio. */
173
+ if (r.env?.absent?.length)
174
+ return false;
175
+ const c = effectiveCounts(r);
176
+ return (c.failed ?? 0) > 0 || r.mode === 'mutation';
177
+ }
178
+ /** Un rojo que HABRIA sido fuerte si el worktree hubiera tenido el entorno
179
+ * completo. Se cuenta aparte para que la compuerta del cierre pueda decir
180
+ * el MOTIVO en vez de "falta un rojo fuerte": el dueno pidio explicitamente
181
+ * que el recibo diga por que, y la compuerta es donde se lee. */
182
+ export function isEnvIncompleteRed(r) {
183
+ if (r.kind !== 'red_proof' || effectiveVerdict(r) !== 'ok')
184
+ return false;
185
+ if (!r.env?.absent?.length)
186
+ return false;
158
187
  const c = effectiveCounts(r);
159
188
  return (c.failed ?? 0) > 0 || r.mode === 'mutation';
160
189
  }
@@ -183,6 +212,7 @@ export function summarizeReceipts(items, filter = {}) {
183
212
  false_reds: scoped.filter(isFalseRed).length,
184
213
  empty_runs: scoped.filter(isEmptyRun).length,
185
214
  exit_only: sel.filter((r) => POSITIVE_KINDS.has(r.kind) && exitOnlyEvidence(effectiveCounts(r))).length,
215
+ env_incomplete_reds: sel.filter(isEnvIncompleteRed).length,
186
216
  ...(last ? { last_at: last } : {}),
187
217
  };
188
218
  }
@@ -341,6 +371,20 @@ export function renderReceipt(r) {
341
371
  ...(isEmptyRun(r) ? [' WHY : the runner reported ZERO tests. The command succeeded at running nothing, so this is not evidence of anything. Check the test path or glob (a quoted glob does not expand in cmd.exe).'] : []),
342
372
  ...(verdict === 'ok' && POSITIVE_KINDS.has(r.kind) && exitOnlyEvidence(counts)
343
373
  ? [' weight : exit code only -- the command reported no test counts. Valid evidence for a check script, weaker than a suite.'] : []),
374
+ /* F-13 -- el recibo tiene que DECIR que corrio sin entorno. Sin esta
375
+ * linea el rojo descartado y el rojo debil se leen igual, y el dueno
376
+ * que produjo un rojo perfectamente bueno no sabe que le falto. */
377
+ ...(r.env?.absent?.length
378
+ ? [' env : INCOMPLETO -- al worktree le falto ' + r.env.absent.join(', ')
379
+ + '. Este rojo NO cuenta como fuerte: corrio sin parte del entorno del proyecto,'
380
+ + ' asi que no prueba que la conducta se distinguio. Declaralo en yujin.forge.json'
381
+ + ' (urazuke.evidence_env.include) y volve a correrlo.'] : []),
382
+ ...(r.env?.declared_missing?.length
383
+ ? [' env : DECLARADO Y AUSENTE EN DISCO: ' + r.env.declared_missing.join(', ')] : []),
384
+ ...(r.env?.rejected?.length
385
+ ? [' env : RECHAZADO (tope o ruta): ' + r.env.rejected.join('; ')] : []),
386
+ ...(r.env?.carried?.length
387
+ ? [' env : acarreado al worktree: ' + r.env.carried.join(', ')] : []),
344
388
  ' ruleset : ' + renderStamp(r.ruleset),
345
389
  ' when : ' + new Date(r.started_at).toISOString() + ' (' + r.duration_ms + ' ms)',
346
390
  ].join('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"receipts.js","sourceRoot":"","sources":["../../src/urazuke/receipts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receipts.js","sourceRoot":"","sources":["../../src/urazuke/receipts.ts"],"names":[],"mappings":"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"}
@@ -19,5 +19,35 @@ export interface ReportInput {
19
19
  functional?: string;
20
20
  }
21
21
  export declare function buildHonestReport(slug: string, item: PendingItem, input: ReportInput): Promise<PendingReport>;
22
+ /** RECOLECTAR EL INFORME DE UN ITEM YA CERRADO.
23
+ *
24
+ * POR QUE EXISTE (medido el 2026-11-01, punto 8 del dueno). El dueno pidio
25
+ * verificar con el mecanismo de evidencia el lote que arreglo el mecanismo
26
+ * de evidencia: tres pendientes cerrados con todo en BELIEVED porque la
27
+ * bateria se habia corrido con `vitest` y no por `yujin.evidence.run`. Los
28
+ * recibos se produjeron despues, quedaron en el registro con su
29
+ * `pending_id`... y el expediente siguio diciendo "creido, sin recibo".
30
+ * `buildHonestReport` se llamaba una sola vez, en el cierre, y
31
+ * `closePending` rechaza un item ya cerrado: no habia ninguna puerta por
32
+ * la que la evidencia posterior entrara.
33
+ *
34
+ * Un informe que no puede alcanzar al registro del que sale es una cita
35
+ * vencida con cara de vigente -- la misma familia que este lote persiguio
36
+ * en la prosa (F-14) y en los numeros de los comentarios. Asi que se
37
+ * recolecta, con tres limites:
38
+ *
39
+ * 1. Las DECLARACIONES no se vuelven a pedir: salen del expediente
40
+ * guardado (tests, use_cases, functional). Recolectar no es una
41
+ * oportunidad de reescribir lo que se declaro.
42
+ * 2. El veredicto lo sigue dando el registro de recibos. Recolectar
43
+ * puede EMPEORAR el informe (un recibo con veredicto no_ok aparece
44
+ * como punto ciego) y eso es correcto: es dato derivado, no un
45
+ * ascenso.
46
+ * 3. El cierre no se toca. Ver `setPendingReport`. */
47
+ export declare function recollectHonestReport(slug: string, id: string): Promise<{
48
+ before?: PendingReport;
49
+ after: PendingReport;
50
+ changed: boolean;
51
+ }>;
22
52
  export declare function renderHonestReport(r: PendingReport): string;
23
53
  //# sourceMappingURL=report.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/urazuke/report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AActE,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAwCnH;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAG3D"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/urazuke/report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AActE,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAwCnH;AAED;;;;;;;;;;;;;;;;;;;;;;;;yDAwByD;AACzD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GACvB,OAAO,CAAC;IAAE,MAAM,CAAC,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAY7E;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAG3D"}
@@ -55,6 +55,45 @@ export async function buildHonestReport(slug, item, input) {
55
55
  blind.push('the item has no spec (acceptance + how_verified): nothing to verify against');
56
56
  return { verified, believed, blind_spots: blind, receipts: all.map((r) => r.id), built_at: Date.now() };
57
57
  }
58
+ /** RECOLECTAR EL INFORME DE UN ITEM YA CERRADO.
59
+ *
60
+ * POR QUE EXISTE (medido el 2026-11-01, punto 8 del dueno). El dueno pidio
61
+ * verificar con el mecanismo de evidencia el lote que arreglo el mecanismo
62
+ * de evidencia: tres pendientes cerrados con todo en BELIEVED porque la
63
+ * bateria se habia corrido con `vitest` y no por `yujin.evidence.run`. Los
64
+ * recibos se produjeron despues, quedaron en el registro con su
65
+ * `pending_id`... y el expediente siguio diciendo "creido, sin recibo".
66
+ * `buildHonestReport` se llamaba una sola vez, en el cierre, y
67
+ * `closePending` rechaza un item ya cerrado: no habia ninguna puerta por
68
+ * la que la evidencia posterior entrara.
69
+ *
70
+ * Un informe que no puede alcanzar al registro del que sale es una cita
71
+ * vencida con cara de vigente -- la misma familia que este lote persiguio
72
+ * en la prosa (F-14) y en los numeros de los comentarios. Asi que se
73
+ * recolecta, con tres limites:
74
+ *
75
+ * 1. Las DECLARACIONES no se vuelven a pedir: salen del expediente
76
+ * guardado (tests, use_cases, functional). Recolectar no es una
77
+ * oportunidad de reescribir lo que se declaro.
78
+ * 2. El veredicto lo sigue dando el registro de recibos. Recolectar
79
+ * puede EMPEORAR el informe (un recibo con veredicto no_ok aparece
80
+ * como punto ciego) y eso es correcto: es dato derivado, no un
81
+ * ascenso.
82
+ * 3. El cierre no se toca. Ver `setPendingReport`. */
83
+ export async function recollectHonestReport(slug, id) {
84
+ const { findPending } = await import('../pending/store.js');
85
+ const item = await findPending(slug, id);
86
+ if (!item)
87
+ throw new Error('recollectHonestReport: no existe ' + id + ' en ' + slug);
88
+ const before = item.implementation?.report;
89
+ const after = await buildHonestReport(slug, item, {
90
+ ...(item.implementation?.tests?.status ? { tests_status: item.implementation.tests.status } : {}),
91
+ ...(item.implementation?.tests?.summary ? { tests_summary: item.implementation.tests.summary } : {}),
92
+ });
93
+ const key = (r) => r
94
+ ? JSON.stringify([r.verified, r.believed, r.blind_spots, r.receipts]) : '';
95
+ return { ...(before ? { before } : {}), after, changed: key(before) !== key(after) };
96
+ }
58
97
  export function renderHonestReport(r) {
59
98
  const sec = (title, xs) => title + ' (' + xs.length + ')' + (xs.length ? '\n' + xs.map((x) => ' - ' + x).join('\n') : ' -- none');
60
99
  return [sec('VERIFIED', r.verified), sec('BELIEVED', r.believed), sec('BLIND SPOTS', r.blind_spots)].join('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/urazuke/report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/urazuke/report.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ export interface ProjectStateHistory {
2
+ /** Hay estado de antes para este slug. */
3
+ has_history: boolean;
4
+ /** Archivos encontrados, ordenados. */
5
+ files: string[];
6
+ /** Items en el registro de pendientes (abiertos + cerrados). */
7
+ pendings: number;
8
+ /** Recibos de evidencia. */
9
+ receipts: number;
10
+ /** Hay un dimensionamiento registrado (el que contamino la corrida). */
11
+ sizing: boolean;
12
+ /** Instancias de workflow (escaleras incluidas). */
13
+ workflows: number;
14
+ /** El directorio, para poder nombrarlo en el aviso. */
15
+ dir: string;
16
+ }
17
+ export interface ResetResult {
18
+ ok: boolean;
19
+ reason: string;
20
+ /** Donde quedo lo anterior. Ausente cuando no habia nada que archivar. */
21
+ archived_to?: string;
22
+ /** Lo que no se pudo mover (un archivo tomado por otro proceso). Vacio
23
+ * en el camino normal; cuando no lo esta, el reset fue PARCIAL y el
24
+ * resultado lo dice en vez de dar por limpio lo que sigue ahi. */
25
+ left_behind?: string[];
26
+ }
27
+ /** Que quedo del slug de antes. Nunca tira: un registro ilegible se
28
+ * reporta como presente con cero items, que es la respuesta prudente --
29
+ * "hay algo aca y no lo entiendo" nunca puede salir como "no hay nada". */
30
+ export declare function projectStateHistory(slug: string): Promise<ProjectStateHistory>;
31
+ /** Una linea para el dueno. Devuelve '' cuando no hay nada que avisar. */
32
+ export declare function renderHistoryNotice(slug: string, h: ProjectStateHistory): string;
33
+ /** Mueve el estado del slug al archivo. */
34
+ export declare function resetProjectState(slug: string): Promise<ResetResult>;
35
+ //# sourceMappingURL=reset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../src/urazuke/reset.ts"],"names":[],"mappings":"AAkCA,MAAM,WAAW,mBAAmB;IAClC,0CAA0C;IAC1C,WAAW,EAAE,OAAO,CAAC;IACrB,uCAAuC;IACvC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;uEAEmE;IACnE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAYD;;4EAE4E;AAC5E,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsBpF;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAYhF;AAED,2CAA2C;AAC3C,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA6C1E"}
@@ -0,0 +1,150 @@
1
+ /**
2
+ * EL ESTADO DEL PROYECTO SOBREVIVE AL WORKSPACE -- y eso hay que decirlo.
3
+ *
4
+ * F-08 del experimento Urazuke (2026-11-01). Todo el estado de un proyecto
5
+ * (pendientes, instancias de workflow, recibos, dimensionamiento, grafo,
6
+ * config del cerebro) vive en `~/.yujin-forge/projects/<slug>/`, FUERA del
7
+ * repositorio, indexado por slug. Eso es deliberado y es lo correcto: el
8
+ * registro no se pierde porque alguien hizo un `git clean`.
9
+ *
10
+ * Lo que no era correcto es que nadie lo dijera. En el experimento se vacio
11
+ * un workspace entero y el dimensionamiento de la corrida anterior seguia
12
+ * ahi: la corrida nueva heredo datos de la vieja SIN QUE SE VIERA. En un
13
+ * experimento eso es contaminacion -- invalida la medicion y nadie se
14
+ * entera --; en un proyecto normal es un estado fantasma que no se explica
15
+ * con nada que haya en el repositorio, y que por eso se diagnostica mal.
16
+ *
17
+ * Dos piezas, y las dos importan:
18
+ *
19
+ * - projectStateHistory(slug): que quedo de antes, con numeros. La usa el
20
+ * hint de arranque de la escalera para AVISAR en vez de heredar en
21
+ * silencio.
22
+ * - resetProjectState(slug): limpia el estado. ARCHIVA, no destruye: el
23
+ * estado anterior queda en `projects/.archived/<slug>-<fecha>/`, porque
24
+ * "la corrida anterior contamino esta" y "borrame tres meses de
25
+ * pendientes" se piden con el mismo comando y solo uno de los dos es
26
+ * recuperable si nos equivocamos.
27
+ *
28
+ * ASCII-only.
29
+ */
30
+ import { promises as fs } from 'node:fs';
31
+ import path from 'node:path';
32
+ import { projectStateDir, projectsRootDir } from '../pending/store.js';
33
+ import { renameWithRetry } from '../core/atomic_write.js';
34
+ /** Cuantos items tiene un registro JSON con forma { items: [...] }. */
35
+ async function countItems(file) {
36
+ try {
37
+ const raw = await fs.readFile(file, 'utf-8');
38
+ const j = JSON.parse(raw);
39
+ const arr = Array.isArray(j.items) ? j.items : Array.isArray(j.instances) ? j.instances : [];
40
+ return arr.length;
41
+ }
42
+ catch {
43
+ return 0;
44
+ }
45
+ }
46
+ /** Que quedo del slug de antes. Nunca tira: un registro ilegible se
47
+ * reporta como presente con cero items, que es la respuesta prudente --
48
+ * "hay algo aca y no lo entiendo" nunca puede salir como "no hay nada". */
49
+ export async function projectStateHistory(slug) {
50
+ const empty = {
51
+ has_history: false, files: [], pendings: 0, receipts: 0, sizing: false, workflows: 0, dir: '',
52
+ };
53
+ let dir = '';
54
+ try {
55
+ dir = projectStateDir(slug);
56
+ }
57
+ catch {
58
+ return empty;
59
+ }
60
+ let names = [];
61
+ try {
62
+ names = (await fs.readdir(dir)).sort();
63
+ }
64
+ catch {
65
+ return { ...empty, dir };
66
+ }
67
+ /* Los respaldos (.bak) cuentan como historia: son exactamente el rastro
68
+ * de una corrida anterior. */
69
+ const files = names.filter((n) => !n.startsWith('.'));
70
+ return {
71
+ has_history: files.length > 0,
72
+ files,
73
+ pendings: files.includes('pending.json') ? await countItems(path.join(dir, 'pending.json')) : 0,
74
+ receipts: files.includes('receipts.json') ? await countItems(path.join(dir, 'receipts.json')) : 0,
75
+ sizing: files.includes('sizing.json'),
76
+ workflows: files.includes('workflow_instances.json') ? await countItems(path.join(dir, 'workflow_instances.json')) : 0,
77
+ dir,
78
+ };
79
+ }
80
+ /** Una linea para el dueno. Devuelve '' cuando no hay nada que avisar. */
81
+ export function renderHistoryNotice(slug, h) {
82
+ if (!h.has_history)
83
+ return '';
84
+ const bits = [];
85
+ if (h.pendings)
86
+ bits.push(h.pendings + ' pendientes');
87
+ if (h.receipts)
88
+ bits.push(h.receipts + ' recibos de evidencia');
89
+ if (h.workflows)
90
+ bits.push(h.workflows + ' workflows');
91
+ if (h.sizing)
92
+ bits.push('un dimensionamiento registrado');
93
+ if (!bits.length)
94
+ bits.push(h.files.length + ' archivos de estado');
95
+ return 'El slug "' + slug + '" YA TIENE historia de antes: ' + bits.join(', ')
96
+ + '. Ese estado vive en ' + h.dir + ', fuera del repositorio, asi que vaciar el '
97
+ + 'workspace no lo borra y esta corrida lo HEREDA. Si queres arrancar limpio: '
98
+ + 'yf urazuke reset ' + slug + ' --yes (archiva, no destruye).';
99
+ }
100
+ /** Mueve el estado del slug al archivo. */
101
+ export async function resetProjectState(slug) {
102
+ const h = await projectStateHistory(slug);
103
+ if (!h.has_history) {
104
+ return { ok: true, reason: 'el slug "' + slug + '" esta sin estado: no hay nada que resetear' };
105
+ }
106
+ const stamp = new Date().toISOString().replace(/[:.]/g, '-');
107
+ const dest = path.join(projectsRootDir(), '.archived', slug + '-' + stamp);
108
+ await fs.mkdir(path.dirname(dest), { recursive: true });
109
+ /* Primero el rename, que es atomico y no copia bytes. Falla cuando otro
110
+ * proceso tiene un archivo del directorio abierto -- en Windows, el panel
111
+ * con semantic_graph.db -- y ahi se cae al camino de a uno, que puede
112
+ * dejar cosas atras y LO DICE. */
113
+ try {
114
+ /* renameWithRetry y no fs.rename: en Windows un rename sobre algo que
115
+ * otro proceso acaba de soltar devuelve EPERM por unos milisegundos, y
116
+ * el primitivo con reintento es la regla del repo (PND-197) justamente
117
+ * porque ese EPERM ya mato un `yf chat`. Aca la carpeta puede tener el
118
+ * SQLite del grafo abierto por el panel. */
119
+ await renameWithRetry(h.dir, dest);
120
+ return {
121
+ ok: true, archived_to: dest,
122
+ reason: 'estado de "' + slug + '" archivado en ' + dest + ' (' + h.files.length + ' archivos)',
123
+ };
124
+ }
125
+ catch { /* al camino de a uno */ }
126
+ await fs.mkdir(dest, { recursive: true });
127
+ const left = [];
128
+ for (const name of h.files) {
129
+ const from = path.join(h.dir, name);
130
+ const to = path.join(dest, name);
131
+ try {
132
+ await fs.cp(from, to, { recursive: true, force: true });
133
+ await fs.rm(from, { recursive: true, force: true });
134
+ }
135
+ catch {
136
+ left.push(name);
137
+ }
138
+ }
139
+ return {
140
+ ok: left.length === 0,
141
+ archived_to: dest,
142
+ ...(left.length ? { left_behind: left } : {}),
143
+ reason: left.length
144
+ ? 'reset PARCIAL de "' + slug + '": se archivo en ' + dest + ' pero quedaron '
145
+ + left.length + ' archivo(s) sin mover (' + left.join(', ') + '); '
146
+ + 'probablemente los tenga abiertos el panel -- cerralo y volve a correrlo'
147
+ : 'estado de "' + slug + '" archivado en ' + dest + ' (' + h.files.length + ' archivos)',
148
+ };
149
+ }
150
+ //# sourceMappingURL=reset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.js","sourceRoot":"","sources":["../../src/urazuke/reset.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA8B1D,uEAAuE;AACvE,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAiD,CAAC;QAC1E,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,OAAO,GAAG,CAAC,MAAM,CAAC;IACpB,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,CAAC,CAAC;IAAC,CAAC;AACvB,CAAC;AAED;;4EAE4E;AAC5E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAY;IACpD,MAAM,KAAK,GAAwB;QACjC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;KAC9F,CAAC;IACF,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,CAAC;QAAC,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;IAC5D,IAAI,KAAK,GAAa,EAAE,CAAC;IACzB,IAAI,CAAC;QACH,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,CAAC;IACrC;kCAC8B;IAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC;QAC7B,KAAK;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/F,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC;QACrC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtH,GAAG;KACJ,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,CAAsB;IACtE,IAAI,CAAC,CAAC,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,CAAC,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC;IACtD,IAAI,CAAC,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,GAAG,uBAAuB,CAAC,CAAC;IAChE,IAAI,CAAC,CAAC,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,YAAY,CAAC,CAAC;IACvD,IAAI,CAAC,CAAC,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,qBAAqB,CAAC,CAAC;IACpE,OAAO,WAAW,GAAG,IAAI,GAAG,gCAAgC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;UAC1E,uBAAuB,GAAG,CAAC,CAAC,GAAG,GAAG,6CAA6C;UAC/E,6EAA6E;UAC7E,mBAAmB,GAAG,IAAI,GAAG,gCAAgC,CAAC;AACpE,CAAC;AAED,2CAA2C;AAC3C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAClD,MAAM,CAAC,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,6CAA6C,EAAE,CAAC;IAClG,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC;IAC3E,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD;;;sCAGkC;IAClC,IAAI,CAAC;QACH;;;;oDAI4C;QAC5C,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI;YAC3B,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,iBAAiB,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY;SAC/F,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;IAEpC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACxD,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;IAC9B,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC;QACrB,WAAW,EAAE,IAAI;QACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,MAAM,EAAE,IAAI,CAAC,MAAM;YACjB,CAAC,CAAC,oBAAoB,GAAG,IAAI,GAAG,mBAAmB,GAAG,IAAI,GAAG,iBAAiB;kBAC1E,IAAI,CAAC,MAAM,GAAG,yBAAyB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK;kBACjE,yEAAyE;YAC7E,CAAC,CAAC,aAAa,GAAG,IAAI,GAAG,iBAAiB,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY;KAC3F,CAAC;AACJ,CAAC"}
@@ -20,10 +20,14 @@ export interface RetroNumbers {
20
20
  quality: number;
21
21
  mutation: number;
22
22
  false_reds: number;
23
+ env_incomplete_reds: number;
23
24
  not_ok: number;
24
25
  total: number;
25
26
  };
26
- overrides: number;
27
+ /** M-02: por tipo del catalogo, por compuerta salteada, y los anteriores
28
+ * al tipo en su propia fila. Un total suelto no contesta ninguna
29
+ * pregunta. */
30
+ overrides: import('./overrides.js').OverrideCounts;
27
31
  ladder: {
28
32
  closed: number;
29
33
  green: number;