terminal-smart-cli 0.73.0 → 0.74.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 (2) hide show
  1. package/lib/shared.js +55 -0
  2. package/package.json +1 -1
package/lib/shared.js ADDED
@@ -0,0 +1,55 @@
1
+ // ⌁ NÚCLEO CANÔNICO PORTÁVEL do Terminal Smart — o "@terminal-smart/agent-core" mínimo.
2
+ //
3
+ // Convergência F4 (análises GPT): a Web e o App reimplementavam de forma divergente a mesma
4
+ // lógica de gate/erro/verificação → risco de comportamento inconsistente entre superfícies
5
+ // (um comando bloqueado no CLI e liberado no App). Este ponto de entrada reúne o subconjunto
6
+ // do motor que NÃO depende do CLI (nada de api/ui/config/agent/tools) — só Node builtins e
7
+ // estes 4 módulos — pra QUALQUER superfície consumir a MESMA fonte de verdade.
8
+ //
9
+ // Como a Web/App consomem: copiar core.js + verify.js + recovery.js + stack.js + shared.js
10
+ // para o backend (ou publicar como pacote npm e depender dele). ZERO mudança de runtime.
11
+ //
12
+ // Garantia: test/core.test.js tem um GUARDA que falha se qualquer um destes módulos passar a
13
+ // importar algo específico do CLI — mantendo o núcleo portável para sempre.
14
+ 'use strict';
15
+ const core = require('./core');
16
+ const verify = require('./verify');
17
+ const recovery = require('./recovery');
18
+ const stack = require('./stack');
19
+
20
+ module.exports = {
21
+ // namespaces completos
22
+ core, verify, recovery, stack,
23
+
24
+ // ── atalhos das capacidades mais usadas (a superfície importa daqui) ──
25
+ // Gate de destrutivo (fonte única — App/Web param de ter regex divergente)
26
+ isDestructive: core.isDestructive,
27
+ DESTRUCTIVE: core.DESTRUCTIVE,
28
+ // ToolResult tipado + classes de erro (erro nunca vira "concluído")
29
+ classifyToolResult: core.classifyToolResult,
30
+ classifyError: core.classifyError,
31
+ ERROR_CLASSES: core.ERROR_CLASSES,
32
+ RETRYABLE_CLASSES: core.RETRYABLE_CLASSES,
33
+ // Janela de contexto / compactação
34
+ winFor: core.winFor,
35
+ estMsgsTok: core.estMsgsTok,
36
+ COMPACT_AT: core.COMPACT_AT,
37
+ KEEP_TAIL: core.KEEP_TAIL,
38
+ DEFAULT_EXECUTOR: core.DEFAULT_EXECUTOR,
39
+ // Envelope de eventos (contrato stream-json único)
40
+ AgentEvents: core.AgentEvents,
41
+ EVENT_TYPES: core.EVENT_TYPES,
42
+ // Verificadores + TaskSpec (o modelo propõe, o harness valida e prova)
43
+ runCriteria: verify.runAll,
44
+ runCriterion: verify.runCriterion,
45
+ compileCriteria: verify.compileCriteria,
46
+ deriveFromStack: verify.deriveFromStack,
47
+ // Recovery Engine (estratégia de conserto por classe de erro)
48
+ recoveryHint: recovery.recoveryHint,
49
+ strategiesFor: recovery.strategiesFor,
50
+ // Detector de stack
51
+ detectStack: stack.detectStack,
52
+
53
+ // versão do contrato (bump quando a forma dos exports/eventos mudar)
54
+ CORE_CONTRACT: 1,
55
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "terminal-smart-cli",
3
- "version": "0.73.0",
3
+ "version": "0.74.0",
4
4
  "description": "Terminal Smart no seu terminal — pergunte, analise logs por pipe e orquestre agentes de IA. Comando: ts",
5
5
  "bin": {
6
6
  "ts": "bin/ts.js"