Commit Graph

10 Commits

Author SHA1 Message Date
Jordan Diaz
55e594b4f9 feat: agente triage + soporte enriquecido para evaluacion de tickets
- agents/triage: agente Claude sin tools (ACAI_SKIP_MCP) que clasifica el
  ticket desde la conversacion completa: requiere_web, categoria, urgencia,
  veredicto preliminar de garantia (aplica la politica de coberturas) y
  borrador de respuesta. Emite JSON estructurado.
- agents/soporte: recibe conversacion completa + coberturas + fechas de
  garantia; anade veredicto de garantia con evidencia (garantia/mejora/
  fuera_garantia/dudoso citando la regla), respuesta sugerida al cliente
  y bloque JSON final.
- registry: flag aditivo ACAI_SKIP_MCP para no arrancar servidores MCP en
  sesiones sin tools (el triage), evitando ~30s de cold-start.
2026-08-21 22:20:17 +00:00
Jordan Diaz
5198afedaa feat: rol auditor (solo lectura total) en el MCP + agente soporte
- roleCheck.js: isAuditor()/canEditContent(); canEditCode() tambien
  excluye auditor. Superficie editor/developer intacta (verificado
  contra el codigo pre-cambio en el test).
- records/tables/media/languages: tools de escritura gateadas con
  canEditContent(), orden de registro original preservado.
- agents/soporte: agente de evaluacion de incidencias en produccion,
  allowed_tools allowlist namespaceada (23 acai_code + 18 playwright,
  cero fetch), system.md con formato de informe obligatorio y trato
  del texto del cliente como dato no confiable.
- test/auditor-role.test.js: 22 tests de superficie exacta por rol.
2026-08-21 18:05:47 +00:00
Jordan Diaz
6a03fdf284 Harden DeepSeek agent: LiteLLM adapter, DSML/reasoning/embeddings/error fixes
- LiteLLMAdapter (subclasses OpenAIAdapter via _acreate hook): routes DeepSeek
  through LiteLLM. Opt-in AGENTIC_DEFAULT_MODEL_PROVIDER=litellm. A/B beat the
  hand-rolled adapter (0 DSML, 0 parse-fails). Defensive chunk.usage getattr,
  token-estimate usage fallback for billing, quiet litellm logs.
- DSML parser: tolerate single/multi fullwidth pipes, honor string="true/false"
  typed args (openai_adapter fallback when DeepSeek leaks tool calls as text).
- Thinking mode: capture and round-trip reasoning_content across turns.
- Embeddings: dedicated AGENTIC_EMBEDDINGS_API_KEY (DeepSeek has no embeddings);
  disable cleanly when unset to avoid per-turn 401.
- claude_format: friendly generic error messages to the chat, raw only in logs.
- acai agent max_tokens 4096->16384 (whole-file writes no longer truncate);
  system.md size-based edit policy; strict tools opt-in (off).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-07 14:49:48 +00:00
Jordan Diaz
5e64bbdfc8 Ajustes de estructura 2026-05-10 18:47:08 +00:00
Jordan Diaz
44cb956f95 Ajustes 2026-05-08 21:31:28 +00:00
Jordan Diaz
06ce51a9c1 Mas cosas 2026-05-06 07:07:57 +00:00
Jordan Diaz
3af875ed11 Ajustes de estructura 2026-04-28 20:25:09 +00:00
Jordan Diaz
6881d64a08 ajustes 2026-04-25 10:27:51 +00:00
Jordan Diaz
e84a36c83d mcp tablas 2026-04-25 08:51:17 +00:00
Jordan Diaz
c1a29bbbf8 Selector de agentes 2026-04-07 10:57:40 +00:00