terminal-smart-cli 0.97.20 → 0.97.22

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/meta.js +14 -2
  2. package/package.json +1 -1
package/lib/meta.js CHANGED
@@ -56,6 +56,15 @@ function artifactForMetaItem(item, st, dir = '') {
56
56
  if (/80-100 monstros|lista.*monstros/.test(d)) return 'data/monsters.json';
57
57
  if (/economia|zeny|vending/.test(d)) return 'docs/ECONOMY.md';
58
58
  if (/prioriza|\bmvp\b.*alpha|roadmap/.test(d)) return 'docs/ROADMAP.md';
59
+ const splitWeb = dir && fs.existsSync(path.join(dir, 'index.html')) && fs.existsSync(path.join(dir, 'src', 'game.js'));
60
+ if (splitWeb) {
61
+ if (/test|npm test|contrato|navegador/.test(d)) {
62
+ if (fs.existsSync(path.join(dir, 'test', 'integration.test.js'))) return 'test/integration.test.js';
63
+ if (fs.existsSync(path.join(dir, 'test', 'core.test.js'))) return 'test/core.test.js';
64
+ }
65
+ if (/visual|cen[aá]rio|ilumina|hud|estilo|profundidade/.test(d) && fs.existsSync(path.join(dir, 'styles.css'))) return 'styles.css';
66
+ return 'src/game.js';
67
+ }
59
68
  // Em projeto web de arquivo único, itens funcionais/visuais alteram o app real.
60
69
  // Critérios globais não correspondem por posição aos itens do checklist.
61
70
  if (dir && fs.existsSync(path.join(dir, 'index.html')) && !/readme|instru[çc][õo]es|documenta[çc][ãa]o/.test(d)) return 'index.html';
@@ -1571,7 +1580,10 @@ async function run(goal, opts = {}) {
1571
1580
  // reason to burn the item's second implementation attempt.
1572
1581
  if (!model && Array.isArray(item.avoidModels) && item.avoidModels.length) {
1573
1582
  const avoid = item.avoidModels.map(v => String(v).toLowerCase());
1574
- const candidates = ['glm-5.2', 'claude-haiku-4-5', 'deepseek-v4-pro'];
1583
+ // Use only model ids currently exposed by the CDC. Haiku remains in the
1584
+ // intelligence catalog for pricing/history, but it is not a callable CDC
1585
+ // id and must never be selected as the mission recovery executor.
1586
+ const candidates = ['glm-5.2', 'gpt-5.6-luna', 'deepseek-v4-pro'];
1575
1587
  roundModel = candidates.find(c => !avoid.some(a => a.includes(c) || c.includes(a))) || roundModel;
1576
1588
  }
1577
1589
  if (visualLadder && item.id === 'visual_fix' && (st.visualFixes || 0) >= VISUAL_ESCALATE_AT && (useThinker || eye)) {
@@ -1603,7 +1615,7 @@ async function run(goal, opts = {}) {
1603
1615
  // retries, switch to another tool-capable model before pausing.
1604
1616
  // Change provider family first: if Flash is down, Pro from the same
1605
1617
  // family is likely affected too. GLM is the economical independent fallback.
1606
- const fallbacks = ['glm-5.2', 'deepseek-v4-pro', 'claude-haiku-4-5'];
1618
+ const fallbacks = ['glm-5.2', 'deepseek-v4-pro', 'gpt-5.6-luna'];
1607
1619
  if (!model && att === 0 && !roundModel) {
1608
1620
  st.autoExecutorDegradedUntil = Date.now() + (10 * 60 * 1000);
1609
1621
  save(st, dir);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "terminal-smart-cli",
3
- "version": "0.97.20",
3
+ "version": "0.97.22",
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"