@nac3/forge-cli 1.4.0 → 1.6.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 (97) hide show
  1. package/dist/bin/heap_bootstrap.d.ts +34 -0
  2. package/dist/bin/heap_bootstrap.d.ts.map +1 -0
  3. package/dist/bin/heap_bootstrap.js +134 -0
  4. package/dist/bin/heap_bootstrap.js.map +1 -0
  5. package/dist/bin/yf.js +30 -21
  6. package/dist/bin/yf.js.map +1 -1
  7. package/dist/chat/claude.d.ts.map +1 -1
  8. package/dist/chat/claude.js +20 -1
  9. package/dist/chat/claude.js.map +1 -1
  10. package/dist/chat/claude_cli.d.ts.map +1 -1
  11. package/dist/chat/claude_cli.js +22 -3
  12. package/dist/chat/claude_cli.js.map +1 -1
  13. package/dist/chat/graph_auto_ingest.d.ts +3 -0
  14. package/dist/chat/graph_auto_ingest.d.ts.map +1 -1
  15. package/dist/chat/graph_auto_ingest.js +18 -0
  16. package/dist/chat/graph_auto_ingest.js.map +1 -1
  17. package/dist/chat/graph_component_watcher.d.ts +41 -0
  18. package/dist/chat/graph_component_watcher.d.ts.map +1 -1
  19. package/dist/chat/graph_component_watcher.js +144 -2
  20. package/dist/chat/graph_component_watcher.js.map +1 -1
  21. package/dist/chat/graph_snapshot.d.ts +8 -0
  22. package/dist/chat/graph_snapshot.d.ts.map +1 -1
  23. package/dist/chat/graph_snapshot.js +142 -44
  24. package/dist/chat/graph_snapshot.js.map +1 -1
  25. package/dist/chat/panel.d.ts.map +1 -1
  26. package/dist/chat/panel.js +12728 -12719
  27. package/dist/chat/panel.js.map +1 -1
  28. package/dist/chat/persistence.d.ts.map +1 -1
  29. package/dist/chat/persistence.js +18 -8
  30. package/dist/chat/persistence.js.map +1 -1
  31. package/dist/chat/server.d.ts.map +1 -1
  32. package/dist/chat/server.js +22 -8
  33. package/dist/chat/server.js.map +1 -1
  34. package/dist/chat/session_store.d.ts +13 -0
  35. package/dist/chat/session_store.d.ts.map +1 -1
  36. package/dist/chat/session_store.js +36 -1
  37. package/dist/chat/session_store.js.map +1 -1
  38. package/dist/commands/chat.d.ts.map +1 -1
  39. package/dist/commands/chat.js +59 -0
  40. package/dist/commands/chat.js.map +1 -1
  41. package/dist/core/brain_behaviour.d.ts.map +1 -1
  42. package/dist/core/brain_behaviour.js +8 -1
  43. package/dist/core/brain_behaviour.js.map +1 -1
  44. package/dist/core/brain_config.d.ts +23 -0
  45. package/dist/core/brain_config.d.ts.map +1 -1
  46. package/dist/core/brain_config.js +33 -0
  47. package/dist/core/brain_config.js.map +1 -1
  48. package/dist/core/federation_config.js +1 -1
  49. package/dist/core/federation_config.js.map +1 -1
  50. package/dist/core/heap_watch.d.ts +33 -0
  51. package/dist/core/heap_watch.d.ts.map +1 -0
  52. package/dist/core/heap_watch.js +82 -0
  53. package/dist/core/heap_watch.js.map +1 -0
  54. package/dist/core/keys_envelope.d.ts +1 -1
  55. package/dist/core/keys_envelope.d.ts.map +1 -1
  56. package/dist/core/keys_envelope.js.map +1 -1
  57. package/dist/core/provider_models.d.ts +5 -0
  58. package/dist/core/provider_models.d.ts.map +1 -1
  59. package/dist/core/provider_models.js +17 -4
  60. package/dist/core/provider_models.js.map +1 -1
  61. package/dist/lan/announce.d.ts +53 -0
  62. package/dist/lan/announce.d.ts.map +1 -0
  63. package/dist/lan/announce.js +111 -0
  64. package/dist/lan/announce.js.map +1 -0
  65. package/dist/llm/cohere_client.d.ts.map +1 -1
  66. package/dist/llm/cohere_client.js +13 -3
  67. package/dist/llm/cohere_client.js.map +1 -1
  68. package/dist/llm/context_compaction.d.ts +25 -0
  69. package/dist/llm/context_compaction.d.ts.map +1 -1
  70. package/dist/llm/context_compaction.js +81 -13
  71. package/dist/llm/context_compaction.js.map +1 -1
  72. package/dist/llm/deepseek_client.d.ts +10 -3
  73. package/dist/llm/deepseek_client.d.ts.map +1 -1
  74. package/dist/llm/deepseek_client.js +12 -2
  75. package/dist/llm/deepseek_client.js.map +1 -1
  76. package/dist/llm/gemini_client.d.ts.map +1 -1
  77. package/dist/llm/gemini_client.js +0 -0
  78. package/dist/llm/gemini_client.js.map +1 -1
  79. package/dist/llm/mistral_client.d.ts.map +1 -1
  80. package/dist/llm/mistral_client.js +13 -3
  81. package/dist/llm/mistral_client.js.map +1 -1
  82. package/dist/llm/ollama_client.d.ts.map +1 -1
  83. package/dist/llm/ollama_client.js +13 -3
  84. package/dist/llm/ollama_client.js.map +1 -1
  85. package/dist/llm/openai_client.d.ts.map +1 -1
  86. package/dist/llm/openai_client.js +13 -3
  87. package/dist/llm/openai_client.js.map +1 -1
  88. package/dist/llm/xai_client.d.ts.map +1 -1
  89. package/dist/llm/xai_client.js +13 -3
  90. package/dist/llm/xai_client.js.map +1 -1
  91. package/dist/qa/brain_matrix/brains.json +80 -80
  92. package/dist/semantic_graph/store.d.ts.map +1 -1
  93. package/dist/semantic_graph/store.js +119 -88
  94. package/dist/semantic_graph/store.js.map +1 -1
  95. package/dist/version.d.ts +1 -1
  96. package/dist/version.js +1 -1
  97. package/package.json +117 -117
@@ -19,22 +19,69 @@
19
19
  * ASCII-only.
20
20
  */
21
21
  import crypto from 'node:crypto';
22
- /* The kinds we render, in order. New worker-side kinds appear
23
- * under "other" so the snapshot is forward-compatible. */
24
- const KIND_ORDER = [
25
- { key: 'entity', label: 'entities' },
26
- { key: 'endpoint', label: 'endpoints' },
27
- { key: 'component', label: 'components' },
28
- { key: 'utility', label: 'utilities' },
29
- { key: 'agent', label: 'agents' },
30
- { key: 'doctrine', label: 'doctrines' },
31
- { key: 'template', label: 'templates' },
22
+ /**
23
+ * Etiqueta legible por kind + orden preferido.
24
+ *
25
+ * 2026-09-22 -- esto ERA una lista cerrada (entity/endpoint/component/
26
+ * utility/agent/doctrine/template) y el render filtraba `kind === key`.
27
+ * Los kinds que el grafo produce hoy son otros (root/datamodel/tooling/
28
+ * module/library), asi que NINGUN grupo matcheaba y el snapshot se
29
+ * inyectaba VACIO: encabezado, linea en blanco y pie. Meses de prompts con
30
+ * una seccion hueca que encima le ordenaba al modelo usar IDs que no
31
+ * estaban.
32
+ *
33
+ * Ahora los grupos salen de los nodos que llegan: esta tabla solo aporta
34
+ * nombre legible y prioridad de presentacion, y un kind desconocido se
35
+ * renderiza igual. Agregar un kind al grafo ya no requiere tocar esto.
36
+ */
37
+ const KIND_LABELS = {
38
+ root: 'root',
39
+ module: 'modules',
40
+ datamodel: 'data models',
41
+ tooling: 'tooling',
42
+ library: 'libraries',
43
+ entity: 'entities',
44
+ endpoint: 'endpoints',
45
+ component: 'components',
46
+ utility: 'utilities',
47
+ agent: 'agents',
48
+ doctrine: 'doctrines',
49
+ template: 'templates',
50
+ protocol: 'protocols',
51
+ };
52
+ const KIND_PRIORITY = [
53
+ 'root', 'entity', 'datamodel', 'endpoint', 'module', 'component',
54
+ 'protocol', 'utility', 'tooling', 'library', 'agent', 'doctrine', 'template',
32
55
  ];
56
+ export function kindLabel(kind) {
57
+ return KIND_LABELS[kind] ?? kind;
58
+ }
59
+ /** Orden de presentacion: los kinds conocidos en su prioridad, despues
60
+ * cualquier kind nuevo, alfabetico. */
61
+ export function orderKinds(kinds) {
62
+ return [...new Set(kinds)].sort((a, b) => {
63
+ const ia = KIND_PRIORITY.indexOf(a);
64
+ const ib = KIND_PRIORITY.indexOf(b);
65
+ if (ia !== -1 && ib !== -1)
66
+ return ia - ib;
67
+ if (ia !== -1)
68
+ return -1;
69
+ if (ib !== -1)
70
+ return 1;
71
+ return a.localeCompare(b);
72
+ });
73
+ }
74
+ /* El pie nombraba `yujin.semantic-graph.get`, un verbo que ya no existe en
75
+ * el manifiesto: si el modelo le hacia caso, invocaba algo inexistente. Los
76
+ * vigentes son yujin.graph.list-relevant / summary / list-edges. Y ahora
77
+ * explica que una rama truncada NO es la rama completa: trae la llamada que
78
+ * la recorre. */
33
79
  const FOOTER = [
34
80
  '',
35
- 'When you reference a primitive from this snapshot, USE that ID.',
36
- 'Do NOT reinvent. For full schema of one primitive, call',
37
- 'yujin.semantic-graph.get({id}).',
81
+ 'When you reference a primitive from this snapshot, USE that ID -- do NOT',
82
+ 'reinvent it. A line ending in [+N more: <call>] is TRUNCATED, not the',
83
+ 'whole branch: that call returns the rest, ordered by weight.',
84
+ 'For the relations of a node, call yujin.graph.list-edges({node_id}).',
38
85
  ].join('\n');
39
86
  const CACHE = new Map();
40
87
  export function _resetSnapshotCacheForTests() {
@@ -56,37 +103,84 @@ function renderSnapshot(nodes, maxTokens, hash, fetchedAt) {
56
103
  lines.push('');
57
104
  const charBudget = Math.max(200, tokenBudgetToChars(maxTokens));
58
105
  /* Reserve room for the footer + the header lines. */
59
- let charsLeft = charBudget - FOOTER.length - lines.join('\n').length;
60
- for (const { key, label } of KIND_ORDER) {
61
- const kindNodes = nodes.filter((n) => n.kind === key);
62
- if (kindNodes.length === 0)
106
+ const charsLeft = charBudget - FOOTER.length - lines.join('\n').length;
107
+ /* --- Quien entra: los mas pesados del PROYECTO, no de cada kind ---
108
+ *
109
+ * Antes el presupuesto se gastaba kind por kind en orden fijo, asi que
110
+ * los primeros kinds se lo comian y los ultimos podian quedar en cero
111
+ * (habia un `if (charsLeft < 40) break`). Ahora se recorre la lista
112
+ * ordenada por peso DESCENDENTE una sola vez y cada nodo se asigna a su
113
+ * grupo mientras quede lugar: el snapshot termina siendo "lo mas pesado
114
+ * del proyecto", que es lo que uno quiere de un panorama. */
115
+ const ranked = [...nodes].sort((a, b) => (b.weight ?? 0) - (a.weight ?? 0));
116
+ const totalByKind = new Map();
117
+ for (const n of nodes)
118
+ totalByKind.set(n.kind, (totalByKind.get(n.kind) ?? 0) + 1);
119
+ const shownByKind = new Map();
120
+ let used = 0;
121
+ /* Lo que ocupa el marcador "[+N more: <call>]" de una rama truncada. Se
122
+ * reserva por grupo abierto para no quedarse sin lugar justo cuando hay
123
+ * que avisar que la rama sigue. */
124
+ const MARKER_RESERVE = 72;
125
+ const ROW_OVERHEAD = 2 + 14 + 1; /* sangria + etiqueta del kind + \n */
126
+ /* Paso 1 -- semilla: el nodo MAS PESADO de cada kind entra primero.
127
+ * Asi un presupuesto chico no deja el snapshot vacio: sigue diciendo que
128
+ * tipos de cosa existen en el proyecto y, via el marcador, como traer el
129
+ * resto. Un snapshot minimo util es mejor que ninguno. */
130
+ for (const n of ranked) {
131
+ if (shownByKind.has(n.kind))
132
+ continue;
133
+ const label = n.label || n.id;
134
+ const grow = ROW_OVERHEAD + label.length;
135
+ if (used + grow + ((shownByKind.size + 1) * MARKER_RESERVE) > charsLeft)
136
+ continue;
137
+ shownByKind.set(n.kind, [label]);
138
+ used += grow;
139
+ }
140
+ /* Presupuesto agotado antes de poder sembrar nada: mostrar al menos el
141
+ * kind mas pesado, aunque se pase un poco. El marcador es el texto mas
142
+ * valioso de la linea, y el presupuesto es una aproximacion (4 ch/tok). */
143
+ if (shownByKind.size === 0 && ranked.length > 0) {
144
+ const first = ranked[0];
145
+ shownByKind.set(first.kind, [first.label || first.id]);
146
+ }
147
+ /* Paso 2 -- relleno por peso global: se recorre la lista ordenada una
148
+ * sola vez y cada nodo cae en su grupo mientras quede lugar. Antes el
149
+ * presupuesto se gastaba kind por kind en orden fijo, asi que los
150
+ * primeros se lo comian y los ultimos quedaban en cero. */
151
+ for (const n of ranked) {
152
+ const shown = shownByKind.get(n.kind);
153
+ if (!shown)
154
+ continue; /* kind que no entro en la semilla */
155
+ const label = n.label || n.id;
156
+ if (shown.length === 1 && shown[0] === label)
157
+ continue; /* ya sembrado */
158
+ const grow = 2 + label.length; /* ", " + label */
159
+ if (used + grow + (shownByKind.size * MARKER_RESERVE) > charsLeft)
63
160
  continue;
64
- const labels = kindNodes.map((n) => n.label || n.id);
65
- /* Pad header label to a fixed width for alignment when read in
66
- * raw text. */
67
- const padded = (label + ' ').slice(0, 14);
68
- let row = ' ' + padded + labels.join(', ');
69
- if (row.length + 1 > charsLeft) {
70
- /* Truncate the list, append "... +N more" so the LLM knows
71
- * there are more nodes than rendered. */
72
- const head = [];
73
- let used = (' ' + padded).length;
74
- let kept = 0;
75
- for (const lab of labels) {
76
- const grow = head.length === 0 ? lab.length : 2 + lab.length;
77
- if (used + grow + 12 > charsLeft)
78
- break;
79
- head.push(lab);
80
- used += grow;
81
- kept += 1;
82
- }
83
- const remainder = labels.length - kept;
84
- row = ' ' + padded + head.join(', ') + (remainder > 0 ? ', ... +' + remainder + ' more' : '');
85
- }
86
- lines.push(row);
87
- charsLeft -= (row.length + 1);
88
- if (charsLeft < 40)
89
- break;
161
+ shown.push(label);
162
+ used += grow;
163
+ }
164
+ /* --- Como se avisa lo que NO entro ---
165
+ *
166
+ * El marcador viejo era "... +N more": un callejon sin salida, el modelo
167
+ * sabia que faltaban nodos pero no como traerlos. Ahora cada rama
168
+ * truncada lleva la llamada EXACTA que la recorre entera, ordenada por
169
+ * peso. La rama deja de ser un limite y pasa a ser una puerta. */
170
+ for (const kind of orderKinds(shownByKind.keys())) {
171
+ const shown = shownByKind.get(kind) ?? [];
172
+ const total = totalByKind.get(kind) ?? shown.length;
173
+ const hidden = total - shown.length;
174
+ /* Pad a ancho fijo para que se lea como columna, pero SIN cortar: un
175
+ * kind de nombre largo salia truncado ("kind-que-no-ex") y no coincidia
176
+ * con el que lleva el marcador de expansion, que usa el kind real. */
177
+ const lbl = kindLabel(kind);
178
+ const padded = lbl.length >= 14 ? lbl + ' ' : (lbl + ' ').slice(0, 14);
179
+ const marker = hidden > 0
180
+ ? ', ... [+' + hidden + ' more: yujin.graph.list-relevant({kinds:["'
181
+ + kind + '"],limit:' + total + '})]'
182
+ : '';
183
+ lines.push(' ' + padded + shown.join(', ') + marker);
90
184
  }
91
185
  lines.push(FOOTER);
92
186
  return lines.join('\n');
@@ -103,7 +197,11 @@ function hashNodes(nodes) {
103
197
  */
104
198
  export async function buildGraphSnapshotSection(opts) {
105
199
  const slug = opts.project_slug;
106
- const maxTk = opts.max_tokens ?? 400;
200
+ /* 2.4k (Pablo, 2026-09-22). El analisis de julio proponia ~2k medido
201
+ * sobre un proyecto de 271 nodos; los de hoy tienen 643-689, donde
202
+ * "todos los labels+kind" costaria ~5.1k. 2.4k con truncado por peso
203
+ * entra lo importante y deja el resto a un call de distancia. */
204
+ const maxTk = opts.max_tokens ?? 2400;
107
205
  const ttl = opts.ttl_ms ?? 300_000;
108
206
  const now = (opts.clock ?? Date.now)();
109
207
  const cached = CACHE.get(slug);
@@ -1 +1 @@
1
- {"version":3,"file":"graph_snapshot.js","sourceRoot":"","sources":["../../src/chat/graph_snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph_snapshot.js","sourceRoot":"","sources":["../../src/chat/graph_snapshot.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/chat/panel.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;2BAKuB;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CA2tZxD"}
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/chat/panel.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;2BAKuB;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAouZxD"}