@nac3/forge-cli 1.23.1 → 1.23.3
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.
- package/dist/bin/yf.js +0 -0
- package/dist/chat/server.d.ts.map +1 -1
- package/dist/chat/server.js +36 -8
- package/dist/chat/server.js.map +1 -1
- package/dist/commands/urazuke.d.ts.map +1 -1
- package/dist/commands/urazuke.js +22 -16
- package/dist/commands/urazuke.js.map +1 -1
- package/dist/core/error_catalog.d.ts +27 -0
- package/dist/core/error_catalog.d.ts.map +1 -1
- package/dist/core/error_catalog.js +55 -0
- package/dist/core/error_catalog.js.map +1 -1
- package/dist/core/error_formatter.d.ts +12 -0
- package/dist/core/error_formatter.d.ts.map +1 -1
- package/dist/core/error_formatter.js +19 -0
- package/dist/core/error_formatter.js.map +1 -1
- package/dist/relay/command_consumer.d.ts +10 -0
- package/dist/relay/command_consumer.d.ts.map +1 -1
- package/dist/relay/command_consumer.js +10 -1
- package/dist/relay/command_consumer.js.map +1 -1
- package/dist/relay/loopback_turn.d.ts +82 -0
- package/dist/relay/loopback_turn.d.ts.map +1 -0
- package/dist/relay/loopback_turn.js +171 -0
- package/dist/relay/loopback_turn.js.map +1 -0
- package/dist/urazuke/heuristics.d.ts +11 -0
- package/dist/urazuke/heuristics.d.ts.map +1 -1
- package/dist/urazuke/heuristics.js +15 -3
- package/dist/urazuke/heuristics.js.map +1 -1
- package/dist/urazuke/quality.d.ts +1 -4
- package/dist/urazuke/quality.d.ts.map +1 -1
- package/dist/urazuke/quality.js +3 -42
- package/dist/urazuke/quality.js.map +1 -1
- package/dist/urazuke/quality_doc.d.ts +11 -0
- package/dist/urazuke/quality_doc.d.ts.map +1 -0
- package/dist/urazuke/quality_doc.js +137 -0
- package/dist/urazuke/quality_doc.js.map +1 -0
- package/dist/urazuke/rule_report.d.ts +29 -0
- package/dist/urazuke/rule_report.d.ts.map +1 -0
- package/dist/urazuke/rule_report.js +239 -0
- package/dist/urazuke/rule_report.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +18 -20
- package/src/i18n/catalogs/ar.json +7 -0
- package/src/i18n/catalogs/de.json +7 -0
- package/src/i18n/catalogs/en.json +7 -0
- package/src/i18n/catalogs/es.json +7 -0
- package/src/i18n/catalogs/fr.json +7 -0
- package/src/i18n/catalogs/hi.json +7 -0
- package/src/i18n/catalogs/it.json +7 -0
- package/src/i18n/catalogs/ja.json +7 -0
- package/src/i18n/catalogs/pt.json +7 -0
- package/src/i18n/catalogs/zh.json +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command_consumer.js","sourceRoot":"","sources":["../../src/relay/command_consumer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;
|
|
1
|
+
{"version":3,"file":"command_consumer.js","sourceRoot":"","sources":["../../src/relay/command_consumer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Como el escritorio ejecuta un turno que PIDIO el telefono.
|
|
3
|
+
*
|
|
4
|
+
* El relay no corre nada: deja el pedido en su log y el escritorio lo levanta
|
|
5
|
+
* (command_consumer.ts). Para correrlo, el escritorio hace un POST por
|
|
6
|
+
* loopback a su PROPIO servidor de chat -- el mismo /api/chat que usa el
|
|
7
|
+
* panel -- y espera la respuesta. Esa indireccion es deliberada: un turno que
|
|
8
|
+
* viene del telefono recorre exactamente el mismo camino que uno del panel,
|
|
9
|
+
* sin una segunda implementacion que se desincronice.
|
|
10
|
+
*
|
|
11
|
+
* EL DEFECTO QUE ESTE MODULO CIERRA (PND-234. Pablo, 29-oct-2026, desde el
|
|
12
|
+
* telefono: "No pude completar tu pedido: fetch failed").
|
|
13
|
+
*
|
|
14
|
+
* La respuesta de /api/chat es un JSON, no un stream, asi que sus CABECERAS
|
|
15
|
+
* recien salen cuando el turno entero termino. Con `fetch` sin opciones ese
|
|
16
|
+
* POST hereda el headersTimeout de undici, que es un limite pensado para una
|
|
17
|
+
* llamada corta, y pasado ese punto muere el fetch -- no el turno. El
|
|
18
|
+
* escritorio seguia trabajando y terminaba el trabajo, pero el telefono ya
|
|
19
|
+
* habia recibido "fetch failed" y el usuario quedaba creyendo que no se hizo
|
|
20
|
+
* nada.
|
|
21
|
+
*
|
|
22
|
+
* El limite esta MEDIDO, no estimado: contra un servidor que acepta la
|
|
23
|
+
* conexion y nunca responde, el fetch global de Node 22.16 murio a los
|
|
24
|
+
* 305.677 ms con name=TypeError, message="fetch failed" y
|
|
25
|
+
* cause.code=UND_ERR_HEADERS_TIMEOUT. El turno del reporte habia durado 22
|
|
26
|
+
* minutos (turn_routing.jsonl 13:36:33Z; los archivos que escribio tienen
|
|
27
|
+
* mtime hasta 10:58 local). O sea: cinco minutos de techo para turnos que
|
|
28
|
+
* duran veinte. El defecto es determinista y crece con la utilidad del
|
|
29
|
+
* pedido -- cuanto mas trabajo pide el usuario desde el telefono, mas seguro
|
|
30
|
+
* es que no vea el resultado.
|
|
31
|
+
*
|
|
32
|
+
* POR QUE node:http Y NO fetch. Es la unica forma de mandar los tiempos sin
|
|
33
|
+
* depender de undici: Node lo trae adentro pero no lo expone como paquete, y
|
|
34
|
+
* construir un Agent con otro headersTimeout exigiria declarar una
|
|
35
|
+
* dependencia nueva para algo que el stdlib ya hace. La conexion es loopback
|
|
36
|
+
* y en claro, asi que no se pierde nada por bajar de capa.
|
|
37
|
+
*
|
|
38
|
+
* EL PRESUPUESTO NO DESAPARECE, cambia de escala. Sin ningun limite, un
|
|
39
|
+
* servidor de chat colgado dejaria al consumidor esperando para siempre -- y
|
|
40
|
+
* como atiende un pedido a la vez, ningun pedido POSTERIOR del telefono se
|
|
41
|
+
* correria nunca. Lo que no se usa es `req.setTimeout`, que mide INACTIVIDAD
|
|
42
|
+
* del socket: un turno que piensa diez minutos no manda un byte, y ese
|
|
43
|
+
* temporizador lo mataria sin motivo, que es la forma exacta del bug que esto
|
|
44
|
+
* cierra. Lo que se mide es el tiempo TOTAL, con un techo mas alto que
|
|
45
|
+
* cualquier turno legitimo.
|
|
46
|
+
*
|
|
47
|
+
* Y al vencerse, el usuario recibe algo accionable y VERDADERO: que el
|
|
48
|
+
* escritorio puede seguir trabajando y donde ver el resultado. El mensaje
|
|
49
|
+
* anterior ("no pude completar tu pedido") era falso en el caso mas comun.
|
|
50
|
+
*
|
|
51
|
+
* ASCII puro.
|
|
52
|
+
*/
|
|
53
|
+
/**
|
|
54
|
+
* Techo de tiempo total para un turno pedido desde el telefono.
|
|
55
|
+
*
|
|
56
|
+
* Una hora. El numero no sale de la nada: el turno que destapo el defecto
|
|
57
|
+
* duro 22 minutos y termino bien, asi que el techo tiene que estar bastante
|
|
58
|
+
* arriba de eso. Y tiene que seguir siendo finito porque el consumidor
|
|
59
|
+
* atiende de a uno: con el escritorio colgado, este es el tiempo que el
|
|
60
|
+
* telefono queda sin poder pedir nada. Una hora deja pasar cualquier turno
|
|
61
|
+
* real y acota el peor caso a algo que el dueno nota en el dia.
|
|
62
|
+
*/
|
|
63
|
+
export declare const MOBILE_TURN_BUDGET_MS: number;
|
|
64
|
+
/** El techo efectivo, con el override de operacion. */
|
|
65
|
+
export declare function mobileTurnBudgetMs(env?: NodeJS.ProcessEnv): number;
|
|
66
|
+
export interface LoopbackResponse {
|
|
67
|
+
status: number;
|
|
68
|
+
body: string;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* POST al /api/chat local, esperando lo que tarde el turno.
|
|
72
|
+
*
|
|
73
|
+
* Devuelve el status y el cuerpo crudo; parsear es del llamador, que es el
|
|
74
|
+
* que conoce la forma de la respuesta.
|
|
75
|
+
*/
|
|
76
|
+
export declare function postChatTurn(args: {
|
|
77
|
+
port: number;
|
|
78
|
+
payload: Record<string, unknown>;
|
|
79
|
+
budgetMs?: number;
|
|
80
|
+
path?: string;
|
|
81
|
+
}): Promise<LoopbackResponse>;
|
|
82
|
+
//# sourceMappingURL=loopback_turn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loopback_turn.d.ts","sourceRoot":"","sources":["../../src/relay/loopback_turn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAQH;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,QAAc,CAAC;AAEjD,uDAAuD;AACvD,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAU/E;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA6E5B"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Como el escritorio ejecuta un turno que PIDIO el telefono.
|
|
3
|
+
*
|
|
4
|
+
* El relay no corre nada: deja el pedido en su log y el escritorio lo levanta
|
|
5
|
+
* (command_consumer.ts). Para correrlo, el escritorio hace un POST por
|
|
6
|
+
* loopback a su PROPIO servidor de chat -- el mismo /api/chat que usa el
|
|
7
|
+
* panel -- y espera la respuesta. Esa indireccion es deliberada: un turno que
|
|
8
|
+
* viene del telefono recorre exactamente el mismo camino que uno del panel,
|
|
9
|
+
* sin una segunda implementacion que se desincronice.
|
|
10
|
+
*
|
|
11
|
+
* EL DEFECTO QUE ESTE MODULO CIERRA (PND-234. Pablo, 29-oct-2026, desde el
|
|
12
|
+
* telefono: "No pude completar tu pedido: fetch failed").
|
|
13
|
+
*
|
|
14
|
+
* La respuesta de /api/chat es un JSON, no un stream, asi que sus CABECERAS
|
|
15
|
+
* recien salen cuando el turno entero termino. Con `fetch` sin opciones ese
|
|
16
|
+
* POST hereda el headersTimeout de undici, que es un limite pensado para una
|
|
17
|
+
* llamada corta, y pasado ese punto muere el fetch -- no el turno. El
|
|
18
|
+
* escritorio seguia trabajando y terminaba el trabajo, pero el telefono ya
|
|
19
|
+
* habia recibido "fetch failed" y el usuario quedaba creyendo que no se hizo
|
|
20
|
+
* nada.
|
|
21
|
+
*
|
|
22
|
+
* El limite esta MEDIDO, no estimado: contra un servidor que acepta la
|
|
23
|
+
* conexion y nunca responde, el fetch global de Node 22.16 murio a los
|
|
24
|
+
* 305.677 ms con name=TypeError, message="fetch failed" y
|
|
25
|
+
* cause.code=UND_ERR_HEADERS_TIMEOUT. El turno del reporte habia durado 22
|
|
26
|
+
* minutos (turn_routing.jsonl 13:36:33Z; los archivos que escribio tienen
|
|
27
|
+
* mtime hasta 10:58 local). O sea: cinco minutos de techo para turnos que
|
|
28
|
+
* duran veinte. El defecto es determinista y crece con la utilidad del
|
|
29
|
+
* pedido -- cuanto mas trabajo pide el usuario desde el telefono, mas seguro
|
|
30
|
+
* es que no vea el resultado.
|
|
31
|
+
*
|
|
32
|
+
* POR QUE node:http Y NO fetch. Es la unica forma de mandar los tiempos sin
|
|
33
|
+
* depender de undici: Node lo trae adentro pero no lo expone como paquete, y
|
|
34
|
+
* construir un Agent con otro headersTimeout exigiria declarar una
|
|
35
|
+
* dependencia nueva para algo que el stdlib ya hace. La conexion es loopback
|
|
36
|
+
* y en claro, asi que no se pierde nada por bajar de capa.
|
|
37
|
+
*
|
|
38
|
+
* EL PRESUPUESTO NO DESAPARECE, cambia de escala. Sin ningun limite, un
|
|
39
|
+
* servidor de chat colgado dejaria al consumidor esperando para siempre -- y
|
|
40
|
+
* como atiende un pedido a la vez, ningun pedido POSTERIOR del telefono se
|
|
41
|
+
* correria nunca. Lo que no se usa es `req.setTimeout`, que mide INACTIVIDAD
|
|
42
|
+
* del socket: un turno que piensa diez minutos no manda un byte, y ese
|
|
43
|
+
* temporizador lo mataria sin motivo, que es la forma exacta del bug que esto
|
|
44
|
+
* cierra. Lo que se mide es el tiempo TOTAL, con un techo mas alto que
|
|
45
|
+
* cualquier turno legitimo.
|
|
46
|
+
*
|
|
47
|
+
* Y al vencerse, el usuario recibe algo accionable y VERDADERO: que el
|
|
48
|
+
* escritorio puede seguir trabajando y donde ver el resultado. El mensaje
|
|
49
|
+
* anterior ("no pude completar tu pedido") era falso en el caso mas comun.
|
|
50
|
+
*
|
|
51
|
+
* ASCII puro.
|
|
52
|
+
*/
|
|
53
|
+
import http from 'node:http';
|
|
54
|
+
import { renderForgeError, ForgeFailure } from '../core/error_catalog.js';
|
|
55
|
+
import { E_MOBILE_TURN_UNANSWERED, E_MOBILE_TURN_UNDELIVERED, } from '../core/error_catalog.js';
|
|
56
|
+
/**
|
|
57
|
+
* Techo de tiempo total para un turno pedido desde el telefono.
|
|
58
|
+
*
|
|
59
|
+
* Una hora. El numero no sale de la nada: el turno que destapo el defecto
|
|
60
|
+
* duro 22 minutos y termino bien, asi que el techo tiene que estar bastante
|
|
61
|
+
* arriba de eso. Y tiene que seguir siendo finito porque el consumidor
|
|
62
|
+
* atiende de a uno: con el escritorio colgado, este es el tiempo que el
|
|
63
|
+
* telefono queda sin poder pedir nada. Una hora deja pasar cualquier turno
|
|
64
|
+
* real y acota el peor caso a algo que el dueno nota en el dia.
|
|
65
|
+
*/
|
|
66
|
+
export const MOBILE_TURN_BUDGET_MS = 60 * 60_000;
|
|
67
|
+
/** El techo efectivo, con el override de operacion. */
|
|
68
|
+
export function mobileTurnBudgetMs(env = process.env) {
|
|
69
|
+
const raw = env['YF_MOBILE_TURN_BUDGET_MS'];
|
|
70
|
+
if (raw === undefined || raw === '')
|
|
71
|
+
return MOBILE_TURN_BUDGET_MS;
|
|
72
|
+
const n = Number(raw);
|
|
73
|
+
/* Un valor invalido o no positivo NO apaga la guarda ni la pone en cero:
|
|
74
|
+
* cae al default. Un "0" en una variable de entorno es casi siempre un
|
|
75
|
+
* descuido, y leerlo como "sin limite" convertiria un typo en un
|
|
76
|
+
* consumidor trabado para siempre. */
|
|
77
|
+
if (!Number.isFinite(n) || n <= 0)
|
|
78
|
+
return MOBILE_TURN_BUDGET_MS;
|
|
79
|
+
return n;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* POST al /api/chat local, esperando lo que tarde el turno.
|
|
83
|
+
*
|
|
84
|
+
* Devuelve el status y el cuerpo crudo; parsear es del llamador, que es el
|
|
85
|
+
* que conoce la forma de la respuesta.
|
|
86
|
+
*/
|
|
87
|
+
export async function postChatTurn(args) {
|
|
88
|
+
const budget = args.budgetMs ?? mobileTurnBudgetMs();
|
|
89
|
+
const body = Buffer.from(JSON.stringify(args.payload), 'utf8');
|
|
90
|
+
const minutes = Math.max(1, Math.round(budget / 60_000));
|
|
91
|
+
return new Promise((resolve, reject) => {
|
|
92
|
+
let settled = false;
|
|
93
|
+
/* Que se vencio el presupuesto se recuerda aparte del error del socket:
|
|
94
|
+
* `req.destroy()` llega al handler de error como un ECONNRESET cualquiera,
|
|
95
|
+
* y sin esta marca el usuario recibiria el mensaje de "no se entrego" --
|
|
96
|
+
* el que dice que no se ejecuto nada -- justamente en el caso en que si se
|
|
97
|
+
* ejecuto. Era el error del que venimos. */
|
|
98
|
+
let vencido = false;
|
|
99
|
+
const req = http.request({
|
|
100
|
+
host: '127.0.0.1',
|
|
101
|
+
port: args.port,
|
|
102
|
+
path: args.path ?? '/api/chat',
|
|
103
|
+
method: 'POST',
|
|
104
|
+
headers: {
|
|
105
|
+
'content-type': 'application/json',
|
|
106
|
+
'content-length': String(body.byteLength),
|
|
107
|
+
},
|
|
108
|
+
}, (res) => {
|
|
109
|
+
const chunks = [];
|
|
110
|
+
res.on('data', (c) => chunks.push(c));
|
|
111
|
+
res.on('end', () => {
|
|
112
|
+
if (settled)
|
|
113
|
+
return;
|
|
114
|
+
settled = true;
|
|
115
|
+
clearTimeout(timer);
|
|
116
|
+
resolve({
|
|
117
|
+
status: res.statusCode ?? 0,
|
|
118
|
+
body: Buffer.concat(chunks).toString('utf8'),
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
/* Un corte MIENTRAS baja el cuerpo tampoco es "no se entrego": el turno
|
|
122
|
+
* ya corrio y el servidor ya estaba contestando. */
|
|
123
|
+
res.on('error', (e) => fail(e, true));
|
|
124
|
+
});
|
|
125
|
+
const timer = setTimeout(() => {
|
|
126
|
+
vencido = true;
|
|
127
|
+
req.destroy(new Error('presupuesto de turno vencido'));
|
|
128
|
+
}, budget);
|
|
129
|
+
/* Que este temporizador no sea lo que mantiene vivo al proceso. */
|
|
130
|
+
if (typeof timer.unref === 'function') {
|
|
131
|
+
timer.unref();
|
|
132
|
+
}
|
|
133
|
+
const fail = (cause, yaCorrio) => {
|
|
134
|
+
if (settled)
|
|
135
|
+
return;
|
|
136
|
+
settled = true;
|
|
137
|
+
clearTimeout(timer);
|
|
138
|
+
/* "No se entrego" se dice SOLO con prueba positiva de que nada corrio,
|
|
139
|
+
* y la unica prueba positiva es que la conexion no se llego a
|
|
140
|
+
* establecer. Cualquier otro corte -- el socket se cayo despues del
|
|
141
|
+
* saludo, el servidor murio a mitad del turno -- deja abierta la
|
|
142
|
+
* posibilidad de que el turno si haya corrido, y en la duda no se le
|
|
143
|
+
* dice al usuario que no se hizo nada: se le dice que no hubo respuesta
|
|
144
|
+
* y donde mirar. Es la misma doctrina que decidePick e
|
|
145
|
+
* liveBelongsToProject en el lado del telefono: descartar solo con
|
|
146
|
+
* prueba de lo contrario. */
|
|
147
|
+
const noEntrego = !vencido && !yaCorrio && esRechazoDeConexion(cause);
|
|
148
|
+
if (noEntrego) {
|
|
149
|
+
reject(new ForgeFailure(renderForgeError(E_MOBILE_TURN_UNDELIVERED, { port: args.port }), cause));
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
reject(new ForgeFailure(renderForgeError(E_MOBILE_TURN_UNANSWERED, { minutes }), cause));
|
|
153
|
+
};
|
|
154
|
+
req.on('error', (e) => fail(e, false));
|
|
155
|
+
req.end(body);
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* El socket nunca llego a conectar: no hay servidor escuchando ahi.
|
|
160
|
+
*
|
|
161
|
+
* Es la unica evidencia de que el turno NO corrio. Se mira el errno y no el
|
|
162
|
+
* texto porque el texto cambia entre versiones de Node y entre sistemas.
|
|
163
|
+
*/
|
|
164
|
+
function esRechazoDeConexion(e) {
|
|
165
|
+
const code = e?.code;
|
|
166
|
+
if (!code)
|
|
167
|
+
return false;
|
|
168
|
+
return code === 'ECONNREFUSED' || code === 'ENOTFOUND'
|
|
169
|
+
|| code === 'EADDRNOTAVAIL' || code === 'EHOSTUNREACH';
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=loopback_turn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loopback_turn.js","sourceRoot":"","sources":["../../src/relay/loopback_turn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EACL,wBAAwB,EAAE,yBAAyB,GACpD,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,GAAG,MAAM,CAAC;AAEjD,uDAAuD;AACvD,MAAM,UAAU,kBAAkB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACrE,MAAM,GAAG,GAAG,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC5C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,qBAAqB,CAAC;IAClE,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB;;;0CAGsC;IACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,qBAAqB,CAAC;IAChE,OAAO,CAAC,CAAC;AACX,CAAC;AAOD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAKlC;IACC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,kBAAkB,EAAE,CAAC;IACrD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;IAEzD,OAAO,IAAI,OAAO,CAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACvD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB;;;;oDAI4C;QAC5C,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;YACvB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,WAAW;YAC9B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;aAC1C;SACF,EAAE,CAAC,GAAG,EAAE,EAAE;YACT,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACjB,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,GAAG,IAAI,CAAC;gBACf,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,CAAC;oBACN,MAAM,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;oBAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;iBAC7C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH;gEACoD;YACpD,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,OAAO,GAAG,IAAI,CAAC;YACf,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzD,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,mEAAmE;QACnE,IAAI,OAAQ,KAAgC,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YACjE,KAA+B,CAAC,KAAK,EAAE,CAAC;QAC3C,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,KAAc,EAAE,QAAiB,EAAQ,EAAE;YACvD,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB;;;;;;;;yCAQ6B;YAC7B,MAAM,SAAS,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACtE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,YAAY,CACrB,gBAAgB,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CACxE,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,MAAM,CAAC,IAAI,YAAY,CACrB,gBAAgB,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAC/D,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACvC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,CAAU;IACrC,MAAM,IAAI,GAAI,CAA2B,EAAE,IAAI,CAAC;IAChD,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,WAAW;WAC/C,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,cAAc,CAAC;AAC7D,CAAC"}
|
|
@@ -50,6 +50,10 @@ export interface ResolvedRule {
|
|
|
50
50
|
record?: SwitchOffRecord;
|
|
51
51
|
/** Why it is not active, in one phrase, for the report. */
|
|
52
52
|
why?: string;
|
|
53
|
+
/** The sentence the annex extracted for this rule, when the definition in
|
|
54
|
+
* force carries it. The documents print it so a reader does not need the
|
|
55
|
+
* annex open to know what an id means. */
|
|
56
|
+
statement?: string;
|
|
53
57
|
}
|
|
54
58
|
export interface ThresholdView {
|
|
55
59
|
id: string;
|
|
@@ -57,6 +61,13 @@ export interface ThresholdView {
|
|
|
57
61
|
value: number | string | null;
|
|
58
62
|
declared: boolean;
|
|
59
63
|
source: 'annex' | 'project' | 'undeclared';
|
|
64
|
+
/** WHO the definition in force says declares it, when nobody has: the
|
|
65
|
+
* owner, the ratchet over what is measured, ... Printed verbatim, because
|
|
66
|
+
* 'undeclared' and 'undeclared by the owner' are different answers. */
|
|
67
|
+
declared_by?: string;
|
|
68
|
+
/** The method's own note about the threshold, carried through instead of
|
|
69
|
+
* paraphrased. */
|
|
70
|
+
note?: string;
|
|
60
71
|
}
|
|
61
72
|
export interface RulesetValidity {
|
|
62
73
|
ok: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heuristics.d.ts","sourceRoot":"","sources":["../../src/urazuke/heuristics.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAmB,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE3E,cAAc,iBAAiB,CAAC;AAEhC,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AACtD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,cAAc,GAAG,WAAW,GAAG,cAAc,CAAC;AACjF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,eAAe,CAAC;AAE9E,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;8BAC8B;AAC9B,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9G,uEAAuE;AACvE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB;8EAC0E;IAC1E,eAAe,EAAE,SAAS,GAAG,WAAW,CAAC;IACzC,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB;;yBAEqB;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB;mDAC+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,2DAA2D;IAC3D,GAAG,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"heuristics.d.ts","sourceRoot":"","sources":["../../src/urazuke/heuristics.ts"],"names":[],"mappings":"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"}
|
|
@@ -88,6 +88,13 @@ function severityOf(rule, realUsers, declaredThresholdIds) {
|
|
|
88
88
|
}
|
|
89
89
|
return { severity: base, source: 'catalog' };
|
|
90
90
|
}
|
|
91
|
+
/** The annex sentence for a rule, when the definition in force carries it. */
|
|
92
|
+
function statementOf(raw) {
|
|
93
|
+
const st = raw['statement'];
|
|
94
|
+
if (isRec(st) && typeof st['text'] === 'string' && st['text'].trim() !== '')
|
|
95
|
+
return st['text'];
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
91
98
|
function thresholdsOf(adapters, settings) {
|
|
92
99
|
const declared = isRec(adapters) && Array.isArray(adapters['thresholds'])
|
|
93
100
|
? adapters['thresholds']
|
|
@@ -96,15 +103,19 @@ function thresholdsOf(adapters, settings) {
|
|
|
96
103
|
return declared.filter(isRec).map((t) => {
|
|
97
104
|
const id = String(t['id']);
|
|
98
105
|
const rule = String(t['rule'] ?? '');
|
|
106
|
+
const extra = {
|
|
107
|
+
...(typeof t['declared_by'] === 'string' ? { declared_by: t['declared_by'] } : {}),
|
|
108
|
+
...(typeof t['note'] === 'string' ? { note: t['note'] } : {}),
|
|
109
|
+
};
|
|
99
110
|
if (Object.prototype.hasOwnProperty.call(own, id) && own[id] != null) {
|
|
100
|
-
return { id, rule, value: own[id], declared: true, source: 'project' };
|
|
111
|
+
return { id, rule, value: own[id], declared: true, source: 'project', ...extra };
|
|
101
112
|
}
|
|
102
113
|
if (t['declared'] === true && t['value'] != null) {
|
|
103
|
-
return { id, rule, value: t['value'], declared: true, source: 'annex' };
|
|
114
|
+
return { id, rule, value: t['value'], declared: true, source: 'annex', ...extra };
|
|
104
115
|
}
|
|
105
116
|
/* Not declared anywhere: reported as undeclared. No approximating, no
|
|
106
117
|
* silent inheriting and no inventing (adapters.undeclared_threshold). */
|
|
107
|
-
return { id, rule, value: null, declared: false, source: 'undeclared' };
|
|
118
|
+
return { id, rule, value: null, declared: false, source: 'undeclared', ...extra };
|
|
108
119
|
});
|
|
109
120
|
}
|
|
110
121
|
export async function resolveRuleset(opts) {
|
|
@@ -198,6 +209,7 @@ export async function resolveRuleset(opts) {
|
|
|
198
209
|
passing: false,
|
|
199
210
|
measured: false,
|
|
200
211
|
checker,
|
|
212
|
+
...(statementOf(raw) ? { statement: statementOf(raw) } : {}),
|
|
201
213
|
...(offRecords.has(id) ? { record: offRecords.get(id) } : {}),
|
|
202
214
|
...(why ? { why } : {}),
|
|
203
215
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heuristics.js","sourceRoot":"","sources":["../../src/urazuke/heuristics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAyB,MAAM,mBAAmB,CAAC;AAE3E,cAAc,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"heuristics.js","sourceRoot":"","sources":["../../src/urazuke/heuristics.ts"],"names":[],"mappings":"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"}
|
|
@@ -84,8 +84,5 @@ export interface QualityCheckOptions {
|
|
|
84
84
|
persist?: boolean;
|
|
85
85
|
}
|
|
86
86
|
export declare function runQualityCheck(root: string, opts?: QualityCheckOptions): Promise<QualityCheckResult>;
|
|
87
|
-
|
|
88
|
-
* values. Rewritten on every check; the history lives in the ratchet. */
|
|
89
|
-
export declare function renderCodeQuality(r: QualityCheckResult, prevBody?: string): string;
|
|
90
|
-
export {};
|
|
87
|
+
export { renderQualityDoc as renderCodeQuality } from './quality_doc.js';
|
|
91
88
|
//# sourceMappingURL=quality.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quality.d.ts","sourceRoot":"","sources":["../../src/urazuke/quality.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"quality.d.ts","sourceRoot":"","sources":["../../src/urazuke/quality.ts"],"names":[],"mappings":"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"}
|
package/dist/urazuke/quality.js
CHANGED
|
@@ -199,46 +199,7 @@ export async function runQualityCheck(root, opts = {}) {
|
|
|
199
199
|
await writeRatchet(root, ratchet.next);
|
|
200
200
|
return { stack, limits, native, lint, ...(coverage_pct != null ? { coverage_pct } : {}), ...(mutation_score != null ? { mutation_score } : {}), ratchet, ok };
|
|
201
201
|
}
|
|
202
|
-
|
|
203
|
-
*
|
|
204
|
-
export
|
|
205
|
-
const keep = prevBody ? (/## Decisiones del dueno[\s\S]*$/.exec(prevBody)?.[0] ?? '') : '';
|
|
206
|
-
const v = r.native.violations;
|
|
207
|
-
const by = (k) => v.filter((x) => x.kind === k);
|
|
208
|
-
const lines = [
|
|
209
|
-
'# Calidad del codigo verificada por maquina',
|
|
210
|
-
'',
|
|
211
|
-
'Generado por `yf urazuke quality check` el ' + new Date().toISOString() + '. Stack: ' + r.stack.label + '.',
|
|
212
|
-
'Los numeros de abajo son medidos; el trinquete (`.forge/quality-ratchet.json`) solo deja mejorar.',
|
|
213
|
-
'',
|
|
214
|
-
'## Herramientas',
|
|
215
|
-
'',
|
|
216
|
-
'- Bateria: `' + (r.stack.test_command || '(sin comando de tests)') + '`',
|
|
217
|
-
'- Lint / formato: ' + (r.stack.lint_commands.length ? r.stack.lint_commands.map((c) => '`' + c + '`').join(', ') : '(ninguno instalado; medidores nativos de Forge)'),
|
|
218
|
-
'- Cobertura: ' + (r.stack.coverage_command ? '`' + r.stack.coverage_command + '` -> ' + r.stack.coverage_file : '(no disponible)'),
|
|
219
|
-
'- Mutacion: ' + (r.stack.mutation_command ? r.stack.mutation_tool + ' (`' + r.stack.mutation_command + '`)' : '(no disponible)'),
|
|
220
|
-
'',
|
|
221
|
-
'## Limites y valores medidos',
|
|
222
|
-
'',
|
|
223
|
-
'| Medida | Limite | Medido | Estado |',
|
|
224
|
-
'|---|---|---|---|',
|
|
225
|
-
'| Lineas por archivo (max) | ' + r.limits.max_file_lines + ' | ' + r.native.max_file_lines + ' | ' + (by('file_lines').length ? by('file_lines').length + ' archivos pasan el limite' : 'ok') + ' |',
|
|
226
|
-
'| Lineas por funcion (max) | ' + r.limits.max_function_lines + ' | ' + r.native.max_function_lines + ' | ' + (by('function_lines').length ? by('function_lines').length + ' funciones pasan el limite' : 'ok') + ' |',
|
|
227
|
-
'| Cobertura de lineas (%) | piso ' + (r.ratchet.next.coverage_pct ?? '-') + ' | ' + (r.coverage_pct ?? '-') + ' | ' + (r.coverage_pct != null ? 'trinquete' : 'sin medir') + ' |',
|
|
228
|
-
'| Puntaje de mutacion (%) | piso ' + (r.ratchet.next.mutation_score ?? '-') + ' | ' + (r.mutation_score ?? '-') + ' | ' + (r.mutation_score != null ? 'trinquete' : 'sin medir') + ' |',
|
|
229
|
-
'| Lint / formato | 0 fallos | ' + r.lint.filter((l) => l.exit_code !== 0).length + ' fallos | ' + (r.lint.every((l) => l.exit_code === 0) ? 'ok' : 'rojo') + ' |',
|
|
230
|
-
'',
|
|
231
|
-
'## Lo que hoy falla (' + v.length + ')',
|
|
232
|
-
'',
|
|
233
|
-
...(v.length ? v.slice(0, 80).map((x) => '- ' + x.kind + ': ' + x.where + ' (' + x.value + ' > ' + x.limit + ')') : ['- nada']),
|
|
234
|
-
...(v.length > 80 ? ['- ... y ' + (v.length - 80) + ' mas (yf urazuke quality check --json)'] : []),
|
|
235
|
-
'',
|
|
236
|
-
'## Trinquete',
|
|
237
|
-
'',
|
|
238
|
-
r.ratchet.ok ? '- en verde: los numeros no empeoraron.' : '- EN ROJO: ' + r.ratchet.reasons.join('; '),
|
|
239
|
-
'',
|
|
240
|
-
keep || '## Decisiones del dueno\n\n_Que se arregla ahora (un pendiente cada uno) y que se tolera con fecha._\n',
|
|
241
|
-
];
|
|
242
|
-
return lines.join('\n');
|
|
243
|
-
}
|
|
202
|
+
/* The document lives in quality_doc.ts: this file measures, that one
|
|
203
|
+
* renders. Re-exported under its old name so every caller is unchanged. */
|
|
204
|
+
export { renderQualityDoc as renderCodeQuality } from './quality_doc.js';
|
|
244
205
|
//# sourceMappingURL=quality.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quality.js","sourceRoot":"","sources":["../../src/urazuke/quality.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"quality.js","sourceRoot":"","sources":["../../src/urazuke/quality.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Ruleset } from './heuristics.js';
|
|
2
|
+
import type { QualityCheckResult } from './quality.js';
|
|
3
|
+
/** docs/CODE_QUALITY.md. Rewritten on every check; the history of the
|
|
4
|
+
* numbers lives in the ratchet, and the owner's prose is preserved. */
|
|
5
|
+
export declare function renderQualityDoc(r: QualityCheckResult, prevBody?: string, rs?: Ruleset): string;
|
|
6
|
+
/** Write the two artifacts step 9 names, preserving the owner's prose in
|
|
7
|
+
* each. The second one only exists when the definition in force publishes
|
|
8
|
+
* usability rules: an empty USABILITY.md would pass a must_contain by
|
|
9
|
+
* accident and say nothing. Returns the relative paths written. */
|
|
10
|
+
export declare function writeStep9Docs(root: string, r: QualityCheckResult, rs?: Ruleset): Promise<string[]>;
|
|
11
|
+
//# sourceMappingURL=quality_doc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quality_doc.d.ts","sourceRoot":"","sources":["../../src/urazuke/quality_doc.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAa,MAAM,cAAc,CAAC;AAmFlE;wEACwE;AACxE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,kBAAkB,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAkB/F;AAED;;;oEAGoE;AACpE,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAczG"}
|