@hoilab/ada-cli 0.85.0 → 0.85.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/ada-publico.d.ts.map +1 -1
- package/dist/ada-publico.js.map +1 -1
- package/dist/bun/cli.d.ts.map +1 -1
- package/dist/bun/cli.js.map +1 -1
- package/dist/bun/register-bedrock.d.ts.map +1 -1
- package/dist/bun/register-bedrock.js.map +1 -1
- package/dist/bun/restore-sandbox-env.d.ts.map +1 -1
- package/dist/bun/restore-sandbox-env.js.map +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/audit-command.d.ts.map +1 -1
- package/dist/cli/audit-command.js.map +1 -1
- package/dist/cli/auth-check.d.ts.map +1 -1
- package/dist/cli/auth-check.js.map +1 -1
- package/dist/cli/auth-command.d.ts.map +1 -1
- package/dist/cli/auth-command.js.map +1 -1
- package/dist/cli/banco-command.d.ts.map +1 -1
- package/dist/cli/banco-command.js.map +1 -1
- package/dist/cli/cleanse-command.d.ts.map +1 -1
- package/dist/cli/cleanse-command.js +5 -2
- package/dist/cli/cleanse-command.js.map +1 -1
- package/dist/cli/commit-command.d.ts +8 -6
- package/dist/cli/commit-command.d.ts.map +1 -1
- package/dist/cli/commit-command.js +124 -92
- package/dist/cli/commit-command.js.map +1 -1
- package/dist/cli/completion.d.ts +20 -0
- package/dist/cli/completion.d.ts.map +1 -0
- package/dist/cli/completion.js +75 -0
- package/dist/cli/completion.js.map +1 -0
- package/dist/cli/computer-command.d.ts.map +1 -1
- package/dist/cli/computer-command.js.map +1 -1
- package/dist/cli/config-selector.d.ts.map +1 -1
- package/dist/cli/config-selector.js.map +1 -1
- package/dist/cli/credential-print.d.ts.map +1 -1
- package/dist/cli/credential-print.js.map +1 -1
- package/dist/cli/discover-command.d.ts.map +1 -1
- package/dist/cli/discover-command.js +5 -1
- package/dist/cli/discover-command.js.map +1 -1
- package/dist/cli/experimental/auth.d.ts.map +1 -1
- package/dist/cli/experimental/auth.js.map +1 -1
- package/dist/cli/experimental/cli.d.ts +1 -1
- package/dist/cli/experimental/cli.d.ts.map +1 -1
- package/dist/cli/experimental/cli.js.map +1 -1
- package/dist/cli/experimental/command-options.d.ts.map +1 -1
- package/dist/cli/experimental/command-options.js.map +1 -1
- package/dist/cli/experimental/command.d.ts.map +1 -1
- package/dist/cli/experimental/command.js.map +1 -1
- package/dist/cli/experimental/commands/client.d.ts.map +1 -1
- package/dist/cli/experimental/commands/client.js.map +1 -1
- package/dist/cli/experimental/commands/pi.d.ts.map +1 -1
- package/dist/cli/experimental/commands/pi.js.map +1 -1
- package/dist/cli/experimental/commands/server.d.ts.map +1 -1
- package/dist/cli/experimental/commands/server.js.map +1 -1
- package/dist/cli/experimental/transport-address.d.ts.map +1 -1
- package/dist/cli/experimental/transport-address.js.map +1 -1
- package/dist/cli/file-processor.d.ts.map +1 -1
- package/dist/cli/file-processor.js.map +1 -1
- package/dist/cli/guardrails.d.ts +14 -0
- package/dist/cli/guardrails.d.ts.map +1 -0
- package/dist/cli/guardrails.js +47 -0
- package/dist/cli/guardrails.js.map +1 -0
- package/dist/cli/hashline-command.d.ts.map +1 -1
- package/dist/cli/hashline-command.js.map +1 -1
- package/dist/cli/home-screen.d.ts.map +1 -1
- package/dist/cli/home-screen.js +1 -0
- package/dist/cli/home-screen.js.map +1 -1
- package/dist/cli/import-command.d.ts.map +1 -1
- package/dist/cli/import-command.js.map +1 -1
- package/dist/cli/initial-message.d.ts +1 -1
- package/dist/cli/initial-message.d.ts.map +1 -1
- package/dist/cli/initial-message.js.map +1 -1
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js.map +1 -1
- package/dist/cli/politica-command.d.ts.map +1 -1
- package/dist/cli/politica-command.js.map +1 -1
- package/dist/cli/project-trust.d.ts.map +1 -1
- package/dist/cli/project-trust.js.map +1 -1
- package/dist/cli/refine-command.d.ts.map +1 -1
- package/dist/cli/refine-command.js.map +1 -1
- package/dist/cli/review-command.d.ts.map +1 -1
- package/dist/cli/review-command.js +77 -13
- package/dist/cli/review-command.js.map +1 -1
- package/dist/cli/schedule-command.d.ts.map +1 -1
- package/dist/cli/schedule-command.js.map +1 -1
- package/dist/cli/serve-command.d.ts +0 -1
- package/dist/cli/serve-command.d.ts.map +1 -1
- package/dist/cli/serve-command.js +12 -6
- package/dist/cli/serve-command.js.map +1 -1
- package/dist/cli/session-picker.d.ts.map +1 -1
- package/dist/cli/session-picker.js.map +1 -1
- package/dist/cli/startup-ui.d.ts.map +1 -1
- package/dist/cli/startup-ui.js.map +1 -1
- package/dist/cli/telegram-command.d.ts.map +1 -1
- package/dist/cli/telegram-command.js.map +1 -1
- package/dist/cli/telemetria-command.d.ts.map +1 -1
- package/dist/cli/telemetria-command.js.map +1 -1
- package/dist/cli/undo-command.d.ts.map +1 -1
- package/dist/cli/undo-command.js.map +1 -1
- package/dist/cli/update-cli.d.ts +82 -0
- package/dist/cli/update-cli.d.ts.map +1 -0
- package/dist/cli/update-cli.js +372 -0
- package/dist/cli/update-cli.js.map +1 -0
- package/dist/cli/usage-command.d.ts.map +1 -1
- package/dist/cli/usage-command.js +75 -6
- package/dist/cli/usage-command.js.map +1 -1
- package/dist/cli/wiki-command.d.ts.map +1 -1
- package/dist/cli/wiki-command.js.map +1 -1
- package/dist/cli.d.ts +0 -6
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +0 -0
- package/dist/cli.js.map +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/client/remote-session.d.ts.map +1 -1
- package/dist/client/remote-session.js.map +1 -1
- package/dist/client/transcript.d.ts.map +1 -1
- package/dist/client/transcript.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/core/ada.d.ts +5 -0
- package/dist/core/ada.d.ts.map +1 -1
- package/dist/core/ada.js +5 -0
- package/dist/core/ada.js.map +1 -1
- package/dist/core/advisor/guarda.d.ts.map +1 -1
- package/dist/core/advisor/guarda.js.map +1 -1
- package/dist/core/advisor/runtime.d.ts.map +1 -1
- package/dist/core/advisor/runtime.js.map +1 -1
- package/dist/core/advisor/sesion.d.ts.map +1 -1
- package/dist/core/advisor/sesion.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js +33 -0
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session.d.ts +67 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +43 -2
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/agents/loader.d.ts.map +1 -1
- package/dist/core/agents/loader.js.map +1 -1
- package/dist/core/appendonly/append-only-context.d.ts +118 -0
- package/dist/core/appendonly/append-only-context.d.ts.map +1 -0
- package/dist/core/appendonly/append-only-context.js +256 -0
- package/dist/core/appendonly/append-only-context.js.map +1 -0
- package/dist/core/appendonly/auto.d.ts +30 -0
- package/dist/core/appendonly/auto.d.ts.map +1 -0
- package/dist/core/appendonly/auto.js +68 -0
- package/dist/core/appendonly/auto.js.map +1 -0
- package/dist/core/appendonly/extension.d.ts +29 -0
- package/dist/core/appendonly/extension.d.ts.map +1 -0
- package/dist/core/appendonly/extension.js +51 -0
- package/dist/core/appendonly/extension.js.map +1 -0
- package/dist/core/appendonly/index.d.ts +41 -0
- package/dist/core/appendonly/index.d.ts.map +1 -0
- package/dist/core/appendonly/index.js +42 -0
- package/dist/core/appendonly/index.js.map +1 -0
- package/dist/core/aprobacion/generados.d.ts.map +1 -1
- package/dist/core/aprobacion/generados.js.map +1 -1
- package/dist/core/aprobacion/politica-de-maquina.d.ts.map +1 -1
- package/dist/core/aprobacion/politica-de-maquina.js.map +1 -1
- package/dist/core/aprobacion/politica.d.ts +1 -1
- package/dist/core/aprobacion/politica.d.ts.map +1 -1
- package/dist/core/aprobacion/politica.js.map +1 -1
- package/dist/core/arranque/atajos.d.ts.map +1 -1
- package/dist/core/arranque/atajos.js +20 -0
- package/dist/core/arranque/atajos.js.map +1 -1
- package/dist/core/audit/exportacion.d.ts.map +1 -1
- package/dist/core/audit/exportacion.js +5 -3
- package/dist/core/audit/exportacion.js.map +1 -1
- package/dist/core/audit/libro.d.ts +7 -0
- package/dist/core/audit/libro.d.ts.map +1 -1
- package/dist/core/audit/libro.js.map +1 -1
- package/dist/core/audit/registro-sesion.d.ts.map +1 -1
- package/dist/core/audit/registro-sesion.js.map +1 -1
- package/dist/core/audit/retencion.d.ts.map +1 -1
- package/dist/core/audit/retencion.js.map +1 -1
- package/dist/core/audit/rutas.d.ts.map +1 -1
- package/dist/core/audit/rutas.js.map +1 -1
- package/dist/core/auth-guidance.d.ts.map +1 -1
- package/dist/core/auth-guidance.js.map +1 -1
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/banco/almacenamiento.d.ts.map +1 -1
- package/dist/core/banco/almacenamiento.js.map +1 -1
- package/dist/core/banco/analisis.d.ts.map +1 -1
- package/dist/core/banco/analisis.js.map +1 -1
- package/dist/core/banco/asides.d.ts +64 -0
- package/dist/core/banco/asides.d.ts.map +1 -0
- package/dist/core/banco/asides.js +113 -0
- package/dist/core/banco/asides.js.map +1 -0
- package/dist/core/banco/bloques.d.ts.map +1 -1
- package/dist/core/banco/bloques.js.map +1 -1
- package/dist/core/banco/cargas.d.ts.map +1 -1
- package/dist/core/banco/cargas.js.map +1 -1
- package/dist/core/banco/comparar.d.ts.map +1 -1
- package/dist/core/banco/comparar.js.map +1 -1
- package/dist/core/banco/cow-isolation.d.ts +74 -0
- package/dist/core/banco/cow-isolation.d.ts.map +1 -0
- package/dist/core/banco/cow-isolation.js +259 -0
- package/dist/core/banco/cow-isolation.js.map +1 -0
- package/dist/core/banco/ejecutar.d.ts.map +1 -1
- package/dist/core/banco/ejecutar.js.map +1 -1
- package/dist/core/banco/generar.d.ts.map +1 -1
- package/dist/core/banco/generar.js.map +1 -1
- package/dist/core/banco/mutaciones.d.ts.map +1 -1
- package/dist/core/banco/mutaciones.js.map +1 -1
- package/dist/core/banco/park-revive.d.ts +67 -0
- package/dist/core/banco/park-revive.d.ts.map +1 -0
- package/dist/core/banco/park-revive.js +130 -0
- package/dist/core/banco/park-revive.js.map +1 -0
- package/dist/core/banco/pruning.d.ts +48 -0
- package/dist/core/banco/pruning.d.ts.map +1 -0
- package/dist/core/banco/pruning.js +146 -0
- package/dist/core/banco/pruning.js.map +1 -0
- package/dist/core/banco/steering.d.ts +81 -0
- package/dist/core/banco/steering.d.ts.map +1 -0
- package/dist/core/banco/steering.js +96 -0
- package/dist/core/banco/steering.js.map +1 -0
- package/dist/core/banco/tipos.d.ts.map +1 -1
- package/dist/core/banco/tipos.js.map +1 -1
- package/dist/core/bash-executor.d.ts.map +1 -1
- package/dist/core/bash-executor.js.map +1 -1
- package/dist/core/blobs/almacen.d.ts.map +1 -1
- package/dist/core/blobs/almacen.js.map +1 -1
- package/dist/core/blobs/broker.d.ts +1 -0
- package/dist/core/blobs/broker.d.ts.map +1 -1
- package/dist/core/blobs/broker.js +1 -1
- package/dist/core/blobs/broker.js.map +1 -1
- package/dist/core/blobs/index.d.ts +1 -0
- package/dist/core/blobs/index.d.ts.map +1 -1
- package/dist/core/blobs/index.js +1 -0
- package/dist/core/blobs/index.js.map +1 -1
- package/dist/core/blobs/payload.d.ts.map +1 -1
- package/dist/core/blobs/payload.js.map +1 -1
- package/dist/core/blobs/proveedor.d.ts.map +1 -1
- package/dist/core/blobs/proveedor.js.map +1 -1
- package/dist/core/blobs/uploaders.d.ts +105 -0
- package/dist/core/blobs/uploaders.d.ts.map +1 -0
- package/dist/core/blobs/uploaders.js +224 -0
- package/dist/core/blobs/uploaders.js.map +1 -0
- package/dist/core/broker/broker.d.ts +54 -0
- package/dist/core/broker/broker.d.ts.map +1 -0
- package/dist/core/broker/broker.js +216 -0
- package/dist/core/broker/broker.js.map +1 -0
- package/dist/core/broker/index.d.ts +21 -0
- package/dist/core/broker/index.d.ts.map +1 -0
- package/dist/core/broker/index.js +33 -0
- package/dist/core/broker/index.js.map +1 -0
- package/dist/core/broker/ps.d.ts +20 -0
- package/dist/core/broker/ps.d.ts.map +1 -0
- package/dist/core/broker/ps.js +55 -0
- package/dist/core/broker/ps.js.map +1 -0
- package/dist/core/broker/types.d.ts +45 -0
- package/dist/core/broker/types.d.ts.map +1 -0
- package/dist/core/broker/types.js +19 -0
- package/dist/core/broker/types.js.map +1 -0
- package/dist/core/browser/cdp.d.ts.map +1 -1
- package/dist/core/browser/cdp.js.map +1 -1
- package/dist/core/browser/politica.d.ts.map +1 -1
- package/dist/core/browser/politica.js.map +1 -1
- package/dist/core/browser/sesion.d.ts.map +1 -1
- package/dist/core/browser/sesion.js.map +1 -1
- package/dist/core/browser/tools.d.ts.map +1 -1
- package/dist/core/browser/tools.js.map +1 -1
- package/dist/core/cache-stats.d.ts.map +1 -1
- package/dist/core/cache-stats.js.map +1 -1
- package/dist/core/capability/capability.test.d.ts +12 -0
- package/dist/core/capability/capability.test.d.ts.map +1 -0
- package/dist/core/capability/capability.test.js +258 -0
- package/dist/core/capability/capability.test.js.map +1 -0
- package/dist/core/capability/fs.d.ts +32 -0
- package/dist/core/capability/fs.d.ts.map +1 -0
- package/dist/core/capability/fs.js +106 -0
- package/dist/core/capability/fs.js.map +1 -0
- package/dist/core/capability/index.d.ts +68 -0
- package/dist/core/capability/index.d.ts.map +1 -0
- package/dist/core/capability/index.js +258 -0
- package/dist/core/capability/index.js.map +1 -0
- package/dist/core/capability/types.d.ts +168 -0
- package/dist/core/capability/types.d.ts.map +1 -0
- package/dist/core/capability/types.js +16 -0
- package/dist/core/capability/types.js.map +1 -0
- package/dist/core/carga-plugins/index.d.ts +49 -0
- package/dist/core/carga-plugins/index.d.ts.map +1 -0
- package/dist/core/carga-plugins/index.js +85 -0
- package/dist/core/carga-plugins/index.js.map +1 -0
- package/dist/core/carga-plugins/invalidacion.d.ts +60 -0
- package/dist/core/carga-plugins/invalidacion.d.ts.map +1 -0
- package/dist/core/carga-plugins/invalidacion.js +94 -0
- package/dist/core/carga-plugins/invalidacion.js.map +1 -0
- package/dist/core/carga-plugins/paralelo.d.ts +48 -0
- package/dist/core/carga-plugins/paralelo.d.ts.map +1 -0
- package/dist/core/carga-plugins/paralelo.js +47 -0
- package/dist/core/carga-plugins/paralelo.js.map +1 -0
- package/dist/core/colaboracion/autoresearch.d.ts +56 -0
- package/dist/core/colaboracion/autoresearch.d.ts.map +1 -0
- package/dist/core/colaboracion/autoresearch.js +95 -0
- package/dist/core/colaboracion/autoresearch.js.map +1 -0
- package/dist/core/colaboracion/index.d.ts +10 -0
- package/dist/core/colaboracion/index.d.ts.map +1 -0
- package/dist/core/colaboracion/index.js +7 -0
- package/dist/core/colaboracion/index.js.map +1 -0
- package/dist/core/colaboracion/kernels.d.ts +63 -0
- package/dist/core/colaboracion/kernels.d.ts.map +1 -0
- package/dist/core/colaboracion/kernels.js +99 -0
- package/dist/core/colaboracion/kernels.js.map +1 -0
- package/dist/core/colaboracion/rele/index.d.ts +8 -0
- package/dist/core/colaboracion/rele/index.d.ts.map +1 -0
- package/dist/core/colaboracion/rele/index.js +6 -0
- package/dist/core/colaboracion/rele/index.js.map +1 -0
- package/dist/core/colaboracion/rele/rele-servidor.d.ts +69 -0
- package/dist/core/colaboracion/rele/rele-servidor.d.ts.map +1 -0
- package/dist/core/colaboracion/rele/rele-servidor.js +197 -0
- package/dist/core/colaboracion/rele/rele-servidor.js.map +1 -0
- package/dist/core/colaboracion/rele/suscriptor.d.ts +31 -0
- package/dist/core/colaboracion/rele/suscriptor.d.ts.map +1 -0
- package/dist/core/colaboracion/rele/suscriptor.js +173 -0
- package/dist/core/colaboracion/rele/suscriptor.js.map +1 -0
- package/dist/core/colaboracion/sesion-colaborativa.d.ts +61 -0
- package/dist/core/colaboracion/sesion-colaborativa.d.ts.map +1 -0
- package/dist/core/colaboracion/sesion-colaborativa.js +127 -0
- package/dist/core/colaboracion/sesion-colaborativa.js.map +1 -0
- package/dist/core/commits/agentic.d.ts +101 -0
- package/dist/core/commits/agentic.d.ts.map +1 -0
- package/dist/core/commits/agentic.js +268 -0
- package/dist/core/commits/agentic.js.map +1 -0
- package/dist/core/commits/changelog.d.ts +37 -0
- package/dist/core/commits/changelog.d.ts.map +1 -0
- package/dist/core/commits/changelog.js +155 -0
- package/dist/core/commits/changelog.js.map +1 -0
- package/dist/core/commits/diff.d.ts.map +1 -0
- package/dist/core/commits/diff.js.map +1 -0
- package/dist/core/commits/git.d.ts +43 -0
- package/dist/core/commits/git.d.ts.map +1 -0
- package/dist/core/commits/git.js +61 -0
- package/dist/core/commits/git.js.map +1 -0
- package/dist/core/commits/split.d.ts +45 -0
- package/dist/core/commits/split.d.ts.map +1 -0
- package/dist/core/commits/split.js +128 -0
- package/dist/core/commits/split.js.map +1 -0
- package/dist/core/compactacion/comandos.d.ts +53 -0
- package/dist/core/compactacion/comandos.d.ts.map +1 -0
- package/dist/core/compactacion/comandos.js +155 -0
- package/dist/core/compactacion/comandos.js.map +1 -0
- package/dist/core/compactacion/extension.d.ts +28 -0
- package/dist/core/compactacion/extension.d.ts.map +1 -0
- package/dist/core/compactacion/extension.js +159 -0
- package/dist/core/compactacion/extension.js.map +1 -0
- package/dist/core/compactacion/handoff.d.ts +61 -0
- package/dist/core/compactacion/handoff.d.ts.map +1 -0
- package/dist/core/compactacion/handoff.js +139 -0
- package/dist/core/compactacion/handoff.js.map +1 -0
- package/dist/core/compactacion/index.d.ts +15 -0
- package/dist/core/compactacion/index.d.ts.map +1 -0
- package/dist/core/compactacion/index.js +15 -0
- package/dist/core/compactacion/index.js.map +1 -0
- package/dist/core/compactacion/prune.d.ts +38 -0
- package/dist/core/compactacion/prune.d.ts.map +1 -0
- package/dist/core/compactacion/prune.js +81 -0
- package/dist/core/compactacion/prune.js.map +1 -0
- package/dist/core/compactacion/shake.d.ts +40 -0
- package/dist/core/compactacion/shake.d.ts.map +1 -0
- package/dist/core/compactacion/shake.js +106 -0
- package/dist/core/compactacion/shake.js.map +1 -0
- package/dist/core/compactacion/tipos.d.ts +54 -0
- package/dist/core/compactacion/tipos.d.ts.map +1 -0
- package/dist/core/compactacion/tipos.js +44 -0
- package/dist/core/compactacion/tipos.js.map +1 -0
- package/dist/core/compactar/index.d.ts.map +1 -1
- package/dist/core/compactar/index.js.map +1 -1
- package/dist/core/compactar/registro-denso.d.ts.map +1 -1
- package/dist/core/compactar/registro-denso.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/compaction/index.d.ts.map +1 -1
- package/dist/core/compaction/index.js.map +1 -1
- package/dist/core/compaction/utils.d.ts.map +1 -1
- package/dist/core/compaction/utils.js.map +1 -1
- package/dist/core/computer/captura.d.ts.map +1 -1
- package/dist/core/computer/captura.js.map +1 -1
- package/dist/core/computer/driver.d.ts.map +1 -1
- package/dist/core/computer/driver.js.map +1 -1
- package/dist/core/computer/motor/actions.d.ts.map +1 -1
- package/dist/core/computer/motor/actions.js.map +1 -1
- package/dist/core/computer/motor/bridge.d.ts +2 -2
- package/dist/core/computer/motor/bridge.d.ts.map +1 -1
- package/dist/core/computer/motor/bridge.js.map +1 -1
- package/dist/core/computer/motor/cdp.d.ts.map +1 -1
- package/dist/core/computer/motor/cdp.js.map +1 -1
- package/dist/core/computer/motor/config.d.ts.map +1 -1
- package/dist/core/computer/motor/config.js.map +1 -1
- package/dist/core/computer/motor/contract.d.ts.map +1 -1
- package/dist/core/computer/motor/contract.js.map +1 -1
- package/dist/core/computer/motor/note.d.ts.map +1 -1
- package/dist/core/computer/motor/note.js.map +1 -1
- package/dist/core/computer/motor/outline.d.ts.map +1 -1
- package/dist/core/computer/motor/outline.js.map +1 -1
- package/dist/core/computer/motor/output.d.ts.map +1 -1
- package/dist/core/computer/motor/output.js.map +1 -1
- package/dist/core/computer/motor/permissions.d.ts.map +1 -1
- package/dist/core/computer/motor/permissions.js.map +1 -1
- package/dist/core/computer/motor/platform/architecture.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/architecture.js.map +1 -1
- package/dist/core/computer/motor/platform/coerce.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/coerce.js.map +1 -1
- package/dist/core/computer/motor/platform/index.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/index.js.map +1 -1
- package/dist/core/computer/motor/platform/linux/backend.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/linux/backend.js.map +1 -1
- package/dist/core/computer/motor/platform/linux/helper.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/linux/helper.js.map +1 -1
- package/dist/core/computer/motor/platform/macos/backend.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/macos/backend.js.map +1 -1
- package/dist/core/computer/motor/platform/macos/browser.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/macos/browser.js.map +1 -1
- package/dist/core/computer/motor/platform/macos/helper.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/macos/helper.js.map +1 -1
- package/dist/core/computer/motor/platform/macos/permissions.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/macos/permissions.js.map +1 -1
- package/dist/core/computer/motor/platform/types.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/types.js.map +1 -1
- package/dist/core/computer/motor/platform/windows/backend.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/windows/backend.js.map +1 -1
- package/dist/core/computer/motor/platform/windows/helper.d.ts.map +1 -1
- package/dist/core/computer/motor/platform/windows/helper.js.map +1 -1
- package/dist/core/computer/motor/root-selection.d.ts.map +1 -1
- package/dist/core/computer/motor/root-selection.js.map +1 -1
- package/dist/core/computer/motor/runtime.d.ts.map +1 -1
- package/dist/core/computer/motor/runtime.js.map +1 -1
- package/dist/core/computer/motor/state.d.ts.map +1 -1
- package/dist/core/computer/motor/state.js.map +1 -1
- package/dist/core/computer/motor/view.d.ts.map +1 -1
- package/dist/core/computer/motor/view.js.map +1 -1
- package/dist/core/computer/motor-ada.d.ts.map +1 -1
- package/dist/core/computer/motor-ada.js.map +1 -1
- package/dist/core/computer/politica.d.ts.map +1 -1
- package/dist/core/computer/politica.js.map +1 -1
- package/dist/core/computer/tools.d.ts.map +1 -1
- package/dist/core/computer/tools.js.map +1 -1
- package/dist/core/config/quarantine.d.ts +57 -0
- package/dist/core/config/quarantine.d.ts.map +1 -0
- package/dist/core/config/quarantine.js +161 -0
- package/dist/core/config/quarantine.js.map +1 -0
- package/dist/core/config-viva/ambito.d.ts +46 -0
- package/dist/core/config-viva/ambito.d.ts.map +1 -0
- package/dist/core/config-viva/ambito.js +62 -0
- package/dist/core/config-viva/ambito.js.map +1 -0
- package/dist/core/config-viva/cache-negativa.d.ts +50 -0
- package/dist/core/config-viva/cache-negativa.d.ts.map +1 -0
- package/dist/core/config-viva/cache-negativa.js +78 -0
- package/dist/core/config-viva/cache-negativa.js.map +1 -0
- package/dist/core/config-viva/headers-vivos.d.ts +41 -0
- package/dist/core/config-viva/headers-vivos.d.ts.map +1 -0
- package/dist/core/config-viva/headers-vivos.js +43 -0
- package/dist/core/config-viva/headers-vivos.js.map +1 -0
- package/dist/core/config-viva/index.d.ts +16 -0
- package/dist/core/config-viva/index.d.ts.map +1 -0
- package/dist/core/config-viva/index.js +16 -0
- package/dist/core/config-viva/index.js.map +1 -0
- package/dist/core/config-viva/proveedor.d.ts +48 -0
- package/dist/core/config-viva/proveedor.d.ts.map +1 -0
- package/dist/core/config-viva/proveedor.js +78 -0
- package/dist/core/config-viva/proveedor.js.map +1 -0
- package/dist/core/context-breakdown.d.ts.map +1 -1
- package/dist/core/context-breakdown.js.map +1 -1
- package/dist/core/credenciales/cliente.d.ts.map +1 -1
- package/dist/core/credenciales/cliente.js.map +1 -1
- package/dist/core/credenciales/pool.d.ts +36 -1
- package/dist/core/credenciales/pool.d.ts.map +1 -1
- package/dist/core/credenciales/pool.js +56 -7
- package/dist/core/credenciales/pool.js.map +1 -1
- package/dist/core/credenciales/ranking.d.ts +56 -0
- package/dist/core/credenciales/ranking.d.ts.map +1 -0
- package/dist/core/credenciales/ranking.js +94 -0
- package/dist/core/credenciales/ranking.js.map +1 -0
- package/dist/core/credenciales/ratelimit.d.ts +54 -0
- package/dist/core/credenciales/ratelimit.d.ts.map +1 -0
- package/dist/core/credenciales/ratelimit.js +116 -0
- package/dist/core/credenciales/ratelimit.js.map +1 -0
- package/dist/core/credenciales/reposo.d.ts.map +1 -1
- package/dist/core/credenciales/reposo.js.map +1 -1
- package/dist/core/credenciales/servidor.d.ts +8 -0
- package/dist/core/credenciales/servidor.d.ts.map +1 -1
- package/dist/core/credenciales/servidor.js +9 -1
- package/dist/core/credenciales/servidor.js.map +1 -1
- package/dist/core/defaults.d.ts.map +1 -1
- package/dist/core/defaults.js.map +1 -1
- package/dist/core/descubrimiento/comandos.d.ts.map +1 -1
- package/dist/core/descubrimiento/comandos.js.map +1 -1
- package/dist/core/descubrimiento/mcp.d.ts +12 -0
- package/dist/core/descubrimiento/mcp.d.ts.map +1 -1
- package/dist/core/descubrimiento/mcp.js +32 -0
- package/dist/core/descubrimiento/mcp.js.map +1 -1
- package/dist/core/descubrimiento/reglas.d.ts.map +1 -1
- package/dist/core/descubrimiento/reglas.js.map +1 -1
- package/dist/core/descubrimiento/runtimes/index.d.ts +24 -0
- package/dist/core/descubrimiento/runtimes/index.d.ts.map +1 -0
- package/dist/core/descubrimiento/runtimes/index.js +109 -0
- package/dist/core/descubrimiento/runtimes/index.js.map +1 -0
- package/dist/core/descubrimiento/runtimes/litellm.d.ts +12 -0
- package/dist/core/descubrimiento/runtimes/litellm.d.ts.map +1 -0
- package/dist/core/descubrimiento/runtimes/litellm.js +185 -0
- package/dist/core/descubrimiento/runtimes/litellm.js.map +1 -0
- package/dist/core/descubrimiento/runtimes/lm-studio.d.ts +13 -0
- package/dist/core/descubrimiento/runtimes/lm-studio.d.ts.map +1 -0
- package/dist/core/descubrimiento/runtimes/lm-studio.js +142 -0
- package/dist/core/descubrimiento/runtimes/lm-studio.js.map +1 -0
- package/dist/core/descubrimiento/runtimes/ollama.d.ts +8 -0
- package/dist/core/descubrimiento/runtimes/ollama.d.ts.map +1 -0
- package/dist/core/descubrimiento/runtimes/ollama.js +96 -0
- package/dist/core/descubrimiento/runtimes/ollama.js.map +1 -0
- package/dist/core/descubrimiento/runtimes/tipos.d.ts +47 -0
- package/dist/core/descubrimiento/runtimes/tipos.d.ts.map +1 -0
- package/dist/core/descubrimiento/runtimes/tipos.js +10 -0
- package/dist/core/descubrimiento/runtimes/tipos.js.map +1 -0
- package/dist/core/descubrimiento/skills.d.ts.map +1 -1
- package/dist/core/descubrimiento/skills.js.map +1 -1
- package/dist/core/diagnostics.d.ts.map +1 -1
- package/dist/core/diagnostics.js.map +1 -1
- package/dist/core/dificultad/clasificador.d.ts.map +1 -1
- package/dist/core/dificultad/clasificador.js.map +1 -1
- package/dist/core/edicion/diario.d.ts.map +1 -1
- package/dist/core/edicion/diario.js.map +1 -1
- package/dist/core/edicion/hashline.d.ts.map +1 -1
- package/dist/core/edicion/hashline.js.map +1 -1
- package/dist/core/edicion/hueco.d.ts.map +1 -1
- package/dist/core/edicion/hueco.js.map +1 -1
- package/dist/core/edicion/ipynb.d.ts +51 -0
- package/dist/core/edicion/ipynb.d.ts.map +1 -0
- package/dist/core/edicion/ipynb.js +110 -0
- package/dist/core/edicion/ipynb.js.map +1 -0
- package/dist/core/edicion/limpiar-carga.d.ts.map +1 -1
- package/dist/core/edicion/limpiar-carga.js.map +1 -1
- package/dist/core/edicion/observador.d.ts.map +1 -1
- package/dist/core/edicion/observador.js.map +1 -1
- package/dist/core/edicion/parecido.d.ts.map +1 -1
- package/dist/core/edicion/parecido.js.map +1 -1
- package/dist/core/edicion/parseo.d.ts.map +1 -1
- package/dist/core/edicion/parseo.js.map +1 -1
- package/dist/core/edicion/portapapeles.d.ts +28 -0
- package/dist/core/edicion/portapapeles.d.ts.map +1 -0
- package/dist/core/edicion/portapapeles.js +49 -0
- package/dist/core/edicion/portapapeles.js.map +1 -0
- package/dist/core/edicion/reparacion.d.ts.map +1 -1
- package/dist/core/edicion/reparacion.js.map +1 -1
- package/dist/core/edicion/rutas-difusas.d.ts +44 -0
- package/dist/core/edicion/rutas-difusas.d.ts.map +1 -0
- package/dist/core/edicion/rutas-difusas.js +93 -0
- package/dist/core/edicion/rutas-difusas.js.map +1 -0
- package/dist/core/edicion/sangria.d.ts.map +1 -1
- package/dist/core/edicion/sangria.js.map +1 -1
- package/dist/core/edicion/tipos.d.ts.map +1 -1
- package/dist/core/edicion/tipos.js.map +1 -1
- package/dist/core/engine-personality.d.ts.map +1 -1
- package/dist/core/engine-personality.js.map +1 -1
- package/dist/core/errores/proveedor.d.ts.map +1 -1
- package/dist/core/errores/proveedor.js.map +1 -1
- package/dist/core/estructural/buscar.d.ts.map +1 -1
- package/dist/core/estructural/buscar.js.map +1 -1
- package/dist/core/estructural/editar.d.ts.map +1 -1
- package/dist/core/estructural/editar.js.map +1 -1
- package/dist/core/estructural/tools.d.ts.map +1 -1
- package/dist/core/estructural/tools.js.map +1 -1
- package/dist/core/event-bus.d.ts.map +1 -1
- package/dist/core/event-bus.js.map +1 -1
- package/dist/core/exec.d.ts.map +1 -1
- package/dist/core/exec.js.map +1 -1
- package/dist/core/experimental.d.ts.map +1 -1
- package/dist/core/experimental.js.map +1 -1
- package/dist/core/export-html/ansi-to-html.d.ts.map +1 -1
- package/dist/core/export-html/ansi-to-html.js.map +1 -1
- package/dist/core/export-html/index.d.ts.map +1 -1
- package/dist/core/export-html/index.js +183 -13
- package/dist/core/export-html/index.js.map +1 -1
- package/dist/core/export-html/template.css +88 -4
- package/dist/core/export-html/template.html +3 -1
- package/dist/core/export-html/template.js +84 -0
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
- package/dist/core/export-html/tool-renderer.js.map +1 -1
- package/dist/core/extensiones/suplantacion.d.ts.map +1 -1
- package/dist/core/extensiones/suplantacion.js.map +1 -1
- package/dist/core/extensiones/vigilancia.d.ts.map +1 -1
- package/dist/core/extensiones/vigilancia.js.map +1 -1
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/extensions/wrapper.d.ts.map +1 -1
- package/dist/core/extensions/wrapper.js.map +1 -1
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/gc/archivo-frio.d.ts +33 -0
- package/dist/core/gc/archivo-frio.d.ts.map +1 -0
- package/dist/core/gc/archivo-frio.js +152 -0
- package/dist/core/gc/archivo-frio.js.map +1 -0
- package/dist/core/gc/blobs-gc.d.ts +25 -0
- package/dist/core/gc/blobs-gc.d.ts.map +1 -0
- package/dist/core/gc/blobs-gc.js +143 -0
- package/dist/core/gc/blobs-gc.js.map +1 -0
- package/dist/core/gc/index.d.ts +42 -0
- package/dist/core/gc/index.d.ts.map +1 -0
- package/dist/core/gc/index.js +50 -0
- package/dist/core/gc/index.js.map +1 -0
- package/dist/core/gc/lock.d.ts +19 -0
- package/dist/core/gc/lock.d.ts.map +1 -0
- package/dist/core/gc/lock.js +48 -0
- package/dist/core/gc/lock.js.map +1 -0
- package/dist/core/gc/reconciliacion.d.ts +19 -0
- package/dist/core/gc/reconciliacion.d.ts.map +1 -0
- package/dist/core/gc/reconciliacion.js +102 -0
- package/dist/core/gc/reconciliacion.js.map +1 -0
- package/dist/core/gc/wal.d.ts +15 -0
- package/dist/core/gc/wal.d.ts.map +1 -0
- package/dist/core/gc/wal.js +44 -0
- package/dist/core/gc/wal.js.map +1 -0
- package/dist/core/harness/fuentes-de-contexto.d.ts.map +1 -1
- package/dist/core/harness/fuentes-de-contexto.js.map +1 -1
- package/dist/core/harness/refine.d.ts.map +1 -1
- package/dist/core/harness/refine.js.map +1 -1
- package/dist/core/harness/store.d.ts.map +1 -1
- package/dist/core/harness/store.js.map +1 -1
- package/dist/core/higiene/index.d.ts +8 -0
- package/dist/core/higiene/index.d.ts.map +1 -0
- package/dist/core/higiene/index.js +8 -0
- package/dist/core/higiene/index.js.map +1 -0
- package/dist/core/higiene/managed-timers.d.ts +19 -0
- package/dist/core/higiene/managed-timers.d.ts.map +1 -0
- package/dist/core/higiene/managed-timers.js +68 -0
- package/dist/core/higiene/managed-timers.js.map +1 -0
- package/dist/core/higiene/race-handler.d.ts +7 -0
- package/dist/core/higiene/race-handler.d.ts.map +1 -0
- package/dist/core/higiene/race-handler.js +32 -0
- package/dist/core/higiene/race-handler.js.map +1 -0
- package/dist/core/higiene/withHostGuard.d.ts +27 -0
- package/dist/core/higiene/withHostGuard.d.ts.map +1 -0
- package/dist/core/higiene/withHostGuard.js +79 -0
- package/dist/core/higiene/withHostGuard.js.map +1 -0
- package/dist/core/hooks/contract.d.ts.map +1 -1
- package/dist/core/hooks/contract.js.map +1 -1
- package/dist/core/hooks/runner.d.ts.map +1 -1
- package/dist/core/hooks/runner.js.map +1 -1
- package/dist/core/hooks/session-hooks.d.ts.map +1 -1
- package/dist/core/hooks/session-hooks.js.map +1 -1
- package/dist/core/hooks-ts/cargador.d.ts +29 -0
- package/dist/core/hooks-ts/cargador.d.ts.map +1 -0
- package/dist/core/hooks-ts/cargador.js +51 -0
- package/dist/core/hooks-ts/cargador.js.map +1 -0
- package/dist/core/hooks-ts/index.d.ts +25 -0
- package/dist/core/hooks-ts/index.d.ts.map +1 -0
- package/dist/core/hooks-ts/index.js +25 -0
- package/dist/core/hooks-ts/index.js.map +1 -0
- package/dist/core/hooks-ts/runner.d.ts +40 -0
- package/dist/core/hooks-ts/runner.d.ts.map +1 -0
- package/dist/core/hooks-ts/runner.js +95 -0
- package/dist/core/hooks-ts/runner.js.map +1 -0
- package/dist/core/hooks-ts/tipos.d.ts +69 -0
- package/dist/core/hooks-ts/tipos.d.ts.map +1 -0
- package/dist/core/hooks-ts/tipos.js +90 -0
- package/dist/core/hooks-ts/tipos.js.map +1 -0
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/importar/formatos.d.ts.map +1 -1
- package/dist/core/importar/formatos.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/interactivo/deteccion.d.ts.map +1 -1
- package/dist/core/interactivo/deteccion.js.map +1 -1
- package/dist/core/interactivo/sesion.d.ts.map +1 -1
- package/dist/core/interactivo/sesion.js.map +1 -1
- package/dist/core/interactivo/tools.d.ts.map +1 -1
- package/dist/core/interactivo/tools.js.map +1 -1
- package/dist/core/keybindings.d.ts +170 -170
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/lectura/mapa.d.ts.map +1 -1
- package/dist/core/lectura/mapa.js.map +1 -1
- package/dist/core/lectura/pdf.d.ts.map +1 -1
- package/dist/core/lectura/pdf.js.map +1 -1
- package/dist/core/lectura/sniffer.d.ts +54 -0
- package/dist/core/lectura/sniffer.d.ts.map +1 -0
- package/dist/core/lectura/sniffer.js +106 -0
- package/dist/core/lectura/sniffer.js.map +1 -0
- package/dist/core/limpieza/comprobadores.d.ts +16 -2
- package/dist/core/limpieza/comprobadores.d.ts.map +1 -1
- package/dist/core/limpieza/comprobadores.js +200 -6
- package/dist/core/limpieza/comprobadores.js.map +1 -1
- package/dist/core/limpieza/flujo.d.ts +36 -0
- package/dist/core/limpieza/flujo.d.ts.map +1 -0
- package/dist/core/limpieza/flujo.js +89 -0
- package/dist/core/limpieza/flujo.js.map +1 -0
- package/dist/core/limpieza/parseo.d.ts.map +1 -1
- package/dist/core/limpieza/parseo.js.map +1 -1
- package/dist/core/limpieza/peso.d.ts +17 -0
- package/dist/core/limpieza/peso.d.ts.map +1 -0
- package/dist/core/limpieza/peso.js +52 -0
- package/dist/core/limpieza/peso.js.map +1 -0
- package/dist/core/limpieza/pool.d.ts +44 -0
- package/dist/core/limpieza/pool.d.ts.map +1 -0
- package/dist/core/limpieza/pool.js +123 -0
- package/dist/core/limpieza/pool.js.map +1 -0
- package/dist/core/limpieza/reparacion.d.ts +19 -2
- package/dist/core/limpieza/reparacion.d.ts.map +1 -1
- package/dist/core/limpieza/reparacion.js +95 -8
- package/dist/core/limpieza/reparacion.js.map +1 -1
- package/dist/core/limpieza/tablero.d.ts +47 -0
- package/dist/core/limpieza/tablero.d.ts.map +1 -0
- package/dist/core/limpieza/tablero.js +78 -0
- package/dist/core/limpieza/tablero.js.map +1 -0
- package/dist/core/limpieza/tipos.d.ts +25 -0
- package/dist/core/limpieza/tipos.d.ts.map +1 -1
- package/dist/core/limpieza/tipos.js.map +1 -1
- package/dist/core/lsp/cliente.d.ts +7 -0
- package/dist/core/lsp/cliente.d.ts.map +1 -1
- package/dist/core/lsp/cliente.js +4 -2
- package/dist/core/lsp/cliente.js.map +1 -1
- package/dist/core/lsp/descubrimiento.d.ts.map +1 -1
- package/dist/core/lsp/descubrimiento.js.map +1 -1
- package/dist/core/lsp/ediciones.d.ts.map +1 -1
- package/dist/core/lsp/ediciones.js.map +1 -1
- package/dist/core/lsp/extension.d.ts +9 -0
- package/dist/core/lsp/extension.d.ts.map +1 -1
- package/dist/core/lsp/extension.js +60 -4
- package/dist/core/lsp/extension.js.map +1 -1
- package/dist/core/lsp/formato.d.ts +72 -0
- package/dist/core/lsp/formato.d.ts.map +1 -0
- package/dist/core/lsp/formato.js +117 -0
- package/dist/core/lsp/formato.js.map +1 -0
- package/dist/core/lsp/tools.d.ts +3 -3
- package/dist/core/lsp/tools.d.ts.map +1 -1
- package/dist/core/lsp/tools.js.map +1 -1
- package/dist/core/lsp/writethrough.d.ts +165 -0
- package/dist/core/lsp/writethrough.d.ts.map +1 -0
- package/dist/core/lsp/writethrough.js +282 -0
- package/dist/core/lsp/writethrough.js.map +1 -0
- package/dist/core/marketplace/catalogo.d.ts +32 -0
- package/dist/core/marketplace/catalogo.d.ts.map +1 -0
- package/dist/core/marketplace/catalogo.js +122 -0
- package/dist/core/marketplace/catalogo.js.map +1 -0
- package/dist/core/marketplace/doctor.d.ts +47 -0
- package/dist/core/marketplace/doctor.d.ts.map +1 -0
- package/dist/core/marketplace/doctor.js +155 -0
- package/dist/core/marketplace/doctor.js.map +1 -0
- package/dist/core/marketplace/features.d.ts +22 -0
- package/dist/core/marketplace/features.d.ts.map +1 -0
- package/dist/core/marketplace/features.js +70 -0
- package/dist/core/marketplace/features.js.map +1 -0
- package/dist/core/marketplace/index.d.ts +33 -0
- package/dist/core/marketplace/index.d.ts.map +1 -0
- package/dist/core/marketplace/index.js +33 -0
- package/dist/core/marketplace/index.js.map +1 -0
- package/dist/core/marketplace/instalar.d.ts +27 -0
- package/dist/core/marketplace/instalar.d.ts.map +1 -0
- package/dist/core/marketplace/instalar.js +50 -0
- package/dist/core/marketplace/instalar.js.map +1 -0
- package/dist/core/mcp/client.d.ts.map +1 -1
- package/dist/core/mcp/client.js.map +1 -1
- package/dist/core/mcp/manager.d.ts.map +1 -1
- package/dist/core/mcp/manager.js.map +1 -1
- package/dist/core/mcp/oauth.d.ts +138 -0
- package/dist/core/mcp/oauth.d.ts.map +1 -0
- package/dist/core/mcp/oauth.js +348 -0
- package/dist/core/mcp/oauth.js.map +1 -0
- package/dist/core/mcp/tools.d.ts.map +1 -1
- package/dist/core/mcp/tools.js.map +1 -1
- package/dist/core/memoria/almacen.d.ts +56 -0
- package/dist/core/memoria/almacen.d.ts.map +1 -0
- package/dist/core/memoria/almacen.js +214 -0
- package/dist/core/memoria/almacen.js.map +1 -0
- package/dist/core/memoria/dr/respaldo.d.ts +34 -0
- package/dist/core/memoria/dr/respaldo.d.ts.map +1 -0
- package/dist/core/memoria/dr/respaldo.js +133 -0
- package/dist/core/memoria/dr/respaldo.js.map +1 -0
- package/dist/core/memoria/embeddings.d.ts +21 -0
- package/dist/core/memoria/embeddings.d.ts.map +1 -0
- package/dist/core/memoria/embeddings.js +87 -0
- package/dist/core/memoria/embeddings.js.map +1 -0
- package/dist/core/memoria/grafo.d.ts +56 -0
- package/dist/core/memoria/grafo.d.ts.map +1 -0
- package/dist/core/memoria/grafo.js +143 -0
- package/dist/core/memoria/grafo.js.map +1 -0
- package/dist/core/memoria/redaccion.d.ts +32 -0
- package/dist/core/memoria/redaccion.d.ts.map +1 -0
- package/dist/core/memoria/redaccion.js +76 -0
- package/dist/core/memoria/redaccion.js.map +1 -0
- package/dist/core/memoria/servidor/almacen-json.d.ts +26 -0
- package/dist/core/memoria/servidor/almacen-json.d.ts.map +1 -0
- package/dist/core/memoria/servidor/almacen-json.js +90 -0
- package/dist/core/memoria/servidor/almacen-json.js.map +1 -0
- package/dist/core/memoria/servidor/servidor.d.ts +43 -0
- package/dist/core/memoria/servidor/servidor.d.ts.map +1 -0
- package/dist/core/memoria/servidor/servidor.js +195 -0
- package/dist/core/memoria/servidor/servidor.js.map +1 -0
- package/dist/core/memoria/servidor/tipos.d.ts +44 -0
- package/dist/core/memoria/servidor/tipos.d.ts.map +1 -0
- package/dist/core/memoria/servidor/tipos.js +12 -0
- package/dist/core/memoria/servidor/tipos.js.map +1 -0
- package/dist/core/memoria/tipos.d.ts +63 -0
- package/dist/core/memoria/tipos.d.ts.map +1 -0
- package/dist/core/memoria/tipos.js +14 -0
- package/dist/core/memoria/tipos.js.map +1 -0
- package/dist/core/memory-engine/audit-export.d.ts.map +1 -1
- package/dist/core/memory-engine/audit-export.js.map +1 -1
- package/dist/core/memory-engine/audit-indice.d.ts.map +1 -1
- package/dist/core/memory-engine/audit-indice.js.map +1 -1
- package/dist/core/memory-engine/audit.d.ts.map +1 -1
- package/dist/core/memory-engine/audit.js.map +1 -1
- package/dist/core/memory-engine/engine.d.ts +7 -0
- package/dist/core/memory-engine/engine.d.ts.map +1 -1
- package/dist/core/memory-engine/engine.js.map +1 -1
- package/dist/core/memory-engine/inverted-index.d.ts.map +1 -1
- package/dist/core/memory-engine/inverted-index.js.map +1 -1
- package/dist/core/memory-engine/keychain.d.ts.map +1 -1
- package/dist/core/memory-engine/keychain.js.map +1 -1
- package/dist/core/memory-engine/observation-store.d.ts +1 -0
- package/dist/core/memory-engine/observation-store.d.ts.map +1 -1
- package/dist/core/memory-engine/observation-store.js.map +1 -1
- package/dist/core/memory-engine/refinements.d.ts.map +1 -1
- package/dist/core/memory-engine/refinements.js.map +1 -1
- package/dist/core/memory-engine/scanner.d.ts.map +1 -1
- package/dist/core/memory-engine/scanner.js.map +1 -1
- package/dist/core/memory-engine/security.d.ts.map +1 -1
- package/dist/core/memory-engine/security.js.map +1 -1
- package/dist/core/memory-engine/session-indexer.d.ts.map +1 -1
- package/dist/core/memory-engine/session-indexer.js.map +1 -1
- package/dist/core/memory-engine/tools.d.ts.map +1 -1
- package/dist/core/memory-engine/tools.js.map +1 -1
- package/dist/core/memory-engine/types.d.ts.map +1 -1
- package/dist/core/memory-engine/types.js.map +1 -1
- package/dist/core/memory-engine/vault.d.ts.map +1 -1
- package/dist/core/memory-engine/vault.js.map +1 -1
- package/dist/core/messages.d.ts.map +1 -1
- package/dist/core/messages.js.map +1 -1
- package/dist/core/metaharness/cli.d.ts +19 -0
- package/dist/core/metaharness/cli.d.ts.map +1 -0
- package/dist/core/metaharness/cli.js +171 -0
- package/dist/core/metaharness/cli.js.map +1 -0
- package/dist/core/metaharness/comparar.d.ts +21 -0
- package/dist/core/metaharness/comparar.d.ts.map +1 -0
- package/dist/core/metaharness/comparar.js +64 -0
- package/dist/core/metaharness/comparar.js.map +1 -0
- package/dist/core/metaharness/ejecutar.d.ts +70 -0
- package/dist/core/metaharness/ejecutar.d.ts.map +1 -0
- package/dist/core/metaharness/ejecutar.js +249 -0
- package/dist/core/metaharness/ejecutar.js.map +1 -0
- package/dist/core/metaharness/tipos.d.ts +142 -0
- package/dist/core/metaharness/tipos.d.ts.map +1 -0
- package/dist/core/metaharness/tipos.js +17 -0
- package/dist/core/metaharness/tipos.js.map +1 -0
- package/dist/core/model-config.d.ts +8 -8
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/models-store.d.ts.map +1 -1
- package/dist/core/models-store.js.map +1 -1
- package/dist/core/muestreo-restringido.d.ts.map +1 -1
- package/dist/core/muestreo-restringido.js.map +1 -1
- package/dist/core/orphan-process-journal.d.ts.map +1 -1
- package/dist/core/orphan-process-journal.js.map +1 -1
- package/dist/core/output-guard.d.ts.map +1 -1
- package/dist/core/output-guard.js.map +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/parche/aplicar.d.ts +19 -0
- package/dist/core/parche/aplicar.d.ts.map +1 -0
- package/dist/core/parche/aplicar.js +243 -0
- package/dist/core/parche/aplicar.js.map +1 -0
- package/dist/core/parche/parser.d.ts +38 -0
- package/dist/core/parche/parser.d.ts.map +1 -0
- package/dist/core/parche/parser.js +217 -0
- package/dist/core/parche/parser.js.map +1 -0
- package/dist/core/parche/registro.d.ts +12 -0
- package/dist/core/parche/registro.d.ts.map +1 -0
- package/dist/core/parche/registro.js +58 -0
- package/dist/core/parche/registro.js.map +1 -0
- package/dist/core/perfiles/index.d.ts +22 -0
- package/dist/core/perfiles/index.d.ts.map +1 -0
- package/dist/core/perfiles/index.js +21 -0
- package/dist/core/perfiles/index.js.map +1 -0
- package/dist/core/perfiles/resolver.d.ts +51 -0
- package/dist/core/perfiles/resolver.d.ts.map +1 -0
- package/dist/core/perfiles/resolver.js +329 -0
- package/dist/core/perfiles/resolver.js.map +1 -0
- package/dist/core/perfiles/tipos.d.ts +69 -0
- package/dist/core/perfiles/tipos.d.ts.map +1 -0
- package/dist/core/perfiles/tipos.js +98 -0
- package/dist/core/perfiles/tipos.js.map +1 -0
- package/dist/core/pi-manifest.d.ts.map +1 -1
- package/dist/core/pi-manifest.js.map +1 -1
- package/dist/core/privacidad/categorias-especiales.d.ts.map +1 -1
- package/dist/core/privacidad/categorias-especiales.js +4 -0
- package/dist/core/privacidad/categorias-especiales.js.map +1 -1
- package/dist/core/privacidad/tapar.d.ts.map +1 -1
- package/dist/core/privacidad/tapar.js.map +1 -1
- package/dist/core/project-memory.d.ts.map +1 -1
- package/dist/core/project-memory.js.map +1 -1
- package/dist/core/project-trust.d.ts.map +1 -1
- package/dist/core/project-trust.js.map +1 -1
- package/dist/core/prompt-cache/diagnostics.d.ts.map +1 -1
- package/dist/core/prompt-cache/diagnostics.js.map +1 -1
- package/dist/core/prompt-cache/index.d.ts.map +1 -1
- package/dist/core/prompt-cache/index.js.map +1 -1
- package/dist/core/prompt-cache/payload.d.ts.map +1 -1
- package/dist/core/prompt-cache/payload.js.map +1 -1
- package/dist/core/prompt-cache/stabilize.d.ts.map +1 -1
- package/dist/core/prompt-cache/stabilize.js.map +1 -1
- package/dist/core/prompt-cache/stats.d.ts.map +1 -1
- package/dist/core/prompt-cache/stats.js.map +1 -1
- package/dist/core/prompt-eleccion.d.ts.map +1 -1
- package/dist/core/prompt-eleccion.js.map +1 -1
- package/dist/core/prompt-optimizer.d.ts.map +1 -1
- package/dist/core/prompt-optimizer.js.map +1 -1
- package/dist/core/prompt-templates.d.ts.map +1 -1
- package/dist/core/prompt-templates.js.map +1 -1
- package/dist/core/prompts/montar.d.ts.map +1 -1
- package/dist/core/prompts/montar.js.map +1 -1
- package/dist/core/prompts/plantilla.d.ts.map +1 -1
- package/dist/core/prompts/plantilla.js.map +1 -1
- package/dist/core/proveedores-registry/definiciones.d.ts +15 -0
- package/dist/core/proveedores-registry/definiciones.d.ts.map +1 -0
- package/dist/core/proveedores-registry/definiciones.js +22 -0
- package/dist/core/proveedores-registry/definiciones.js.map +1 -0
- package/dist/core/proveedores-registry/index.d.ts +14 -0
- package/dist/core/proveedores-registry/index.d.ts.map +1 -0
- package/dist/core/proveedores-registry/index.js +13 -0
- package/dist/core/proveedores-registry/index.js.map +1 -0
- package/dist/core/proveedores-registry/resolver.d.ts +25 -0
- package/dist/core/proveedores-registry/resolver.d.ts.map +1 -0
- package/dist/core/proveedores-registry/resolver.js +69 -0
- package/dist/core/proveedores-registry/resolver.js.map +1 -0
- package/dist/core/proveedores-registry/tipos.d.ts +47 -0
- package/dist/core/proveedores-registry/tipos.d.ts.map +1 -0
- package/dist/core/proveedores-registry/tipos.js +15 -0
- package/dist/core/proveedores-registry/tipos.js.map +1 -0
- package/dist/core/provider-attribution.d.ts.map +1 -1
- package/dist/core/provider-attribution.js.map +1 -1
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/radius.d.ts.map +1 -1
- package/dist/core/radius.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js.map +1 -1
- package/dist/core/remoto/destino.d.ts.map +1 -1
- package/dist/core/remoto/destino.js.map +1 -1
- package/dist/core/remoto/ejecutor.d.ts.map +1 -1
- package/dist/core/remoto/ejecutor.js.map +1 -1
- package/dist/core/remoto/ficheros.d.ts.map +1 -1
- package/dist/core/remoto/ficheros.js.map +1 -1
- package/dist/core/remoto/registro-extension.d.ts.map +1 -1
- package/dist/core/remoto/registro-extension.js.map +1 -1
- package/dist/core/remoto/tools.d.ts.map +1 -1
- package/dist/core/remoto/tools.js.map +1 -1
- package/dist/core/reparacion/index.d.ts +2 -0
- package/dist/core/reparacion/index.d.ts.map +1 -0
- package/dist/core/reparacion/index.js +2 -0
- package/dist/core/reparacion/index.js.map +1 -0
- package/dist/core/reparacion/reparar-hunk.d.ts +27 -0
- package/dist/core/reparacion/reparar-hunk.d.ts.map +1 -0
- package/dist/core/reparacion/reparar-hunk.js +139 -0
- package/dist/core/reparacion/reparar-hunk.js.map +1 -0
- package/dist/core/resolve-config-value.d.ts.map +1 -1
- package/dist/core/resolve-config-value.js.map +1 -1
- package/dist/core/resource-loader.d.ts +13 -0
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +7 -4
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/revision/dispositions.d.ts +86 -0
- package/dist/core/revision/dispositions.d.ts.map +1 -0
- package/dist/core/revision/dispositions.js +137 -0
- package/dist/core/revision/dispositions.js.map +1 -0
- package/dist/core/revision/hallazgo.d.ts.map +1 -1
- package/dist/core/revision/hallazgo.js.map +1 -1
- package/dist/core/revision/procedencia.d.ts +63 -0
- package/dist/core/revision/procedencia.d.ts.map +1 -0
- package/dist/core/revision/procedencia.js +72 -0
- package/dist/core/revision/procedencia.js.map +1 -0
- package/dist/core/revision/publicar.d.ts +26 -0
- package/dist/core/revision/publicar.d.ts.map +1 -0
- package/dist/core/revision/publicar.js +34 -0
- package/dist/core/revision/publicar.js.map +1 -0
- package/dist/core/revision/revisor.d.ts.map +1 -1
- package/dist/core/revision/revisor.js.map +1 -1
- package/dist/core/revision/sarif.d.ts.map +1 -1
- package/dist/core/revision/sarif.js.map +1 -1
- package/dist/core/router-uris/index.d.ts +12 -0
- package/dist/core/router-uris/index.d.ts.map +1 -0
- package/dist/core/router-uris/index.js +12 -0
- package/dist/core/router-uris/index.js.map +1 -0
- package/dist/core/router-uris/router.d.ts +2 -0
- package/dist/core/router-uris/router.d.ts.map +1 -0
- package/dist/core/router-uris/router.js +2 -0
- package/dist/core/router-uris/router.js.map +1 -0
- package/dist/core/runtime-credentials.d.ts.map +1 -1
- package/dist/core/runtime-credentials.js.map +1 -1
- package/dist/core/rutas/envoltorio.d.ts +20 -0
- package/dist/core/rutas/envoltorio.d.ts.map +1 -0
- package/dist/core/rutas/envoltorio.js +48 -0
- package/dist/core/rutas/envoltorio.js.map +1 -0
- package/dist/core/rutas/index.d.ts +11 -0
- package/dist/core/rutas/index.d.ts.map +1 -0
- package/dist/core/rutas/index.js +11 -0
- package/dist/core/rutas/index.js.map +1 -0
- package/dist/core/rutas/router.d.ts +82 -0
- package/dist/core/rutas/router.d.ts.map +1 -0
- package/dist/core/rutas/router.js +161 -0
- package/dist/core/rutas/router.js.map +1 -0
- package/dist/core/scheduler/scheduler.d.ts.map +1 -1
- package/dist/core/scheduler/scheduler.js.map +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/secretos/extension.d.ts +31 -0
- package/dist/core/secretos/extension.d.ts.map +1 -0
- package/dist/core/secretos/extension.js +64 -0
- package/dist/core/secretos/extension.js.map +1 -0
- package/dist/core/secretos/index.d.ts +75 -0
- package/dist/core/secretos/index.d.ts.map +1 -0
- package/dist/core/secretos/index.js +385 -0
- package/dist/core/secretos/index.js.map +1 -0
- package/dist/core/secretos/message-transform.d.ts +44 -0
- package/dist/core/secretos/message-transform.d.ts.map +1 -0
- package/dist/core/secretos/message-transform.js +246 -0
- package/dist/core/secretos/message-transform.js.map +1 -0
- package/dist/core/secretos/obfuscator.d.ts +30 -0
- package/dist/core/secretos/obfuscator.d.ts.map +1 -0
- package/dist/core/secretos/obfuscator.js +1182 -0
- package/dist/core/secretos/obfuscator.js.map +1 -0
- package/dist/core/secretos/placeholder-scan.d.ts +96 -0
- package/dist/core/secretos/placeholder-scan.d.ts.map +1 -0
- package/dist/core/secretos/placeholder-scan.js +433 -0
- package/dist/core/secretos/placeholder-scan.js.map +1 -0
- package/dist/core/secretos/placeholder.d.ts +95 -0
- package/dist/core/secretos/placeholder.d.ts.map +1 -0
- package/dist/core/secretos/placeholder.js +283 -0
- package/dist/core/secretos/placeholder.js.map +1 -0
- package/dist/core/secretos/regex.d.ts +3 -0
- package/dist/core/secretos/regex.d.ts.map +1 -0
- package/dist/core/secretos/regex.js +19 -0
- package/dist/core/secretos/regex.js.map +1 -0
- package/dist/core/secretos/replacement.d.ts +83 -0
- package/dist/core/secretos/replacement.d.ts.map +1 -0
- package/dist/core/secretos/replacement.js +211 -0
- package/dist/core/secretos/replacement.js.map +1 -0
- package/dist/core/sesion/cerrar-llamadas-abiertas.d.ts.map +1 -1
- package/dist/core/sesion/cerrar-llamadas-abiertas.js.map +1 -1
- package/dist/core/sesion/journal-tree.d.ts +73 -0
- package/dist/core/sesion/journal-tree.d.ts.map +1 -0
- package/dist/core/sesion/journal-tree.js +241 -0
- package/dist/core/sesion/journal-tree.js.map +1 -0
- package/dist/core/sesion/turn-recovery.d.ts +48 -0
- package/dist/core/sesion/turn-recovery.d.ts.map +1 -0
- package/dist/core/sesion/turn-recovery.js +182 -0
- package/dist/core/sesion/turn-recovery.js.map +1 -0
- package/dist/core/session-cwd.d.ts.map +1 -1
- package/dist/core/session-cwd.js.map +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/settings-diagnostics.d.ts.map +1 -1
- package/dist/core/settings-diagnostics.js.map +1 -1
- package/dist/core/settings-manager.d.ts +2 -2
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/share/cifrado.d.ts +39 -0
- package/dist/core/share/cifrado.d.ts.map +1 -0
- package/dist/core/share/cifrado.js +81 -0
- package/dist/core/share/cifrado.js.map +1 -0
- package/dist/core/share/exportar.d.ts +69 -0
- package/dist/core/share/exportar.d.ts.map +1 -0
- package/dist/core/share/exportar.js +247 -0
- package/dist/core/share/exportar.js.map +1 -0
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/source-info.d.ts.map +1 -1
- package/dist/core/source-info.js.map +1 -1
- package/dist/core/stream-guard/guardia.d.ts +45 -0
- package/dist/core/stream-guard/guardia.d.ts.map +1 -0
- package/dist/core/stream-guard/guardia.js +100 -0
- package/dist/core/stream-guard/guardia.js.map +1 -0
- package/dist/core/stream-guard/index.d.ts +9 -0
- package/dist/core/stream-guard/index.d.ts.map +1 -0
- package/dist/core/stream-guard/index.js +7 -0
- package/dist/core/stream-guard/index.js.map +1 -0
- package/dist/core/stream-guard/replay.d.ts +39 -0
- package/dist/core/stream-guard/replay.d.ts.map +1 -0
- package/dist/core/stream-guard/replay.js +68 -0
- package/dist/core/stream-guard/replay.js.map +1 -0
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/telemetria/otlp.d.ts.map +1 -1
- package/dist/core/telemetria/otlp.js.map +1 -1
- package/dist/core/telemetry/otel-genai.d.ts +44 -0
- package/dist/core/telemetry/otel-genai.d.ts.map +1 -0
- package/dist/core/telemetry/otel-genai.js +124 -0
- package/dist/core/telemetry/otel-genai.js.map +1 -0
- package/dist/core/telemetry.d.ts.map +1 -1
- package/dist/core/telemetry.js.map +1 -1
- package/dist/core/terminal/backlog-guard.d.ts +53 -0
- package/dist/core/terminal/backlog-guard.d.ts.map +1 -0
- package/dist/core/terminal/backlog-guard.js +122 -0
- package/dist/core/terminal/backlog-guard.js.map +1 -0
- package/dist/core/terminal/conpty.d.ts +29 -0
- package/dist/core/terminal/conpty.d.ts.map +1 -0
- package/dist/core/terminal/conpty.js +67 -0
- package/dist/core/terminal/conpty.js.map +1 -0
- package/dist/core/terminal/conptyChunking.d.ts +2 -0
- package/dist/core/terminal/conptyChunking.d.ts.map +1 -0
- package/dist/core/terminal/conptyChunking.js +2 -0
- package/dist/core/terminal/conptyChunking.js.map +1 -0
- package/dist/core/terminal/index.d.ts +5 -0
- package/dist/core/terminal/index.d.ts.map +1 -0
- package/dist/core/terminal/index.js +5 -0
- package/dist/core/terminal/index.js.map +1 -0
- package/dist/core/terminal/loop-watchdog.d.ts +43 -0
- package/dist/core/terminal/loop-watchdog.d.ts.map +1 -0
- package/dist/core/terminal/loop-watchdog.js +117 -0
- package/dist/core/terminal/loop-watchdog.js.map +1 -0
- package/dist/core/terminal/runner.d.ts +55 -0
- package/dist/core/terminal/runner.d.ts.map +1 -0
- package/dist/core/terminal/runner.js +102 -0
- package/dist/core/terminal/runner.js.map +1 -0
- package/dist/core/timings.d.ts.map +1 -1
- package/dist/core/timings.js.map +1 -1
- package/dist/core/tools/apply_patch.d.ts +29 -0
- package/dist/core/tools/apply_patch.d.ts.map +1 -0
- package/dist/core/tools/apply_patch.js +54 -0
- package/dist/core/tools/apply_patch.js.map +1 -0
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/coercion-argumentos.d.ts.map +1 -1
- package/dist/core/tools/coercion-argumentos.js.map +1 -1
- package/dist/core/tools/edit-diff.d.ts.map +1 -1
- package/dist/core/tools/edit-diff.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +43 -1
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/file-mutation-queue.d.ts.map +1 -1
- package/dist/core/tools/file-mutation-queue.js.map +1 -1
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/json-tolerante.d.ts.map +1 -1
- package/dist/core/tools/json-tolerante.js.map +1 -1
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/noop-loop-guard.d.ts +46 -0
- package/dist/core/tools/noop-loop-guard.d.ts.map +1 -0
- package/dist/core/tools/noop-loop-guard.js +57 -0
- package/dist/core/tools/noop-loop-guard.js.map +1 -0
- package/dist/core/tools/output-accumulator.d.ts.map +1 -1
- package/dist/core/tools/output-accumulator.js.map +1 -1
- package/dist/core/tools/path-utils.d.ts.map +1 -1
- package/dist/core/tools/path-utils.js.map +1 -1
- package/dist/core/tools/project-memory-tool.d.ts.map +1 -1
- package/dist/core/tools/project-memory-tool.js.map +1 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/render-utils.d.ts.map +1 -1
- package/dist/core/tools/render-utils.js.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
- package/dist/core/tools/truncate.d.ts.map +1 -1
- package/dist/core/tools/truncate.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/trust-manager.d.ts.map +1 -1
- package/dist/core/trust-manager.js.map +1 -1
- package/dist/core/ttsr/captura.d.ts +72 -0
- package/dist/core/ttsr/captura.d.ts.map +1 -0
- package/dist/core/ttsr/captura.js +183 -0
- package/dist/core/ttsr/captura.js.map +1 -0
- package/dist/core/ttsr/index.d.ts +24 -0
- package/dist/core/ttsr/index.d.ts.map +1 -0
- package/dist/core/ttsr/index.js +57 -0
- package/dist/core/ttsr/index.js.map +1 -0
- package/dist/core/ttsr/preview.d.ts +48 -0
- package/dist/core/ttsr/preview.d.ts.map +1 -0
- package/dist/core/ttsr/preview.js +83 -0
- package/dist/core/ttsr/preview.js.map +1 -0
- package/dist/core/turno-vacio/detectar.d.ts.map +1 -1
- package/dist/core/turno-vacio/detectar.js.map +1 -1
- package/dist/core/undo/journal.d.ts.map +1 -1
- package/dist/core/undo/journal.js.map +1 -1
- package/dist/core/urls-internas/auditoria.d.ts.map +1 -1
- package/dist/core/urls-internas/auditoria.js.map +1 -1
- package/dist/core/urls-internas/boveda.d.ts.map +1 -1
- package/dist/core/urls-internas/boveda.js.map +1 -1
- package/dist/core/urls-internas/lector.d.ts +14 -10
- package/dist/core/urls-internas/lector.d.ts.map +1 -1
- package/dist/core/urls-internas/lector.js +50 -36
- package/dist/core/urls-internas/lector.js.map +1 -1
- package/dist/core/urls-internas/memoria.d.ts.map +1 -1
- package/dist/core/urls-internas/memoria.js.map +1 -1
- package/dist/core/urls-internas/parse.d.ts +6 -13
- package/dist/core/urls-internas/parse.d.ts.map +1 -1
- package/dist/core/urls-internas/parse.js +6 -17
- package/dist/core/urls-internas/parse.js.map +1 -1
- package/dist/core/urls-internas/reglas.d.ts.map +1 -1
- package/dist/core/urls-internas/reglas.js.map +1 -1
- package/dist/core/usage/aggregate.d.ts +1 -0
- package/dist/core/usage/aggregate.d.ts.map +1 -1
- package/dist/core/usage/aggregate.js +1 -1
- package/dist/core/usage/aggregate.js.map +1 -1
- package/dist/core/usage/cuota/anthropic.d.ts.map +1 -1
- package/dist/core/usage/cuota/anthropic.js.map +1 -1
- package/dist/core/usage/cuota/cache.d.ts.map +1 -1
- package/dist/core/usage/cuota/cache.js.map +1 -1
- package/dist/core/usage/cuota/github-copilot.d.ts.map +1 -1
- package/dist/core/usage/cuota/github-copilot.js.map +1 -1
- package/dist/core/usage/cuota/google-gemini.d.ts.map +1 -1
- package/dist/core/usage/cuota/google-gemini.js.map +1 -1
- package/dist/core/usage/cuota/index.d.ts.map +1 -1
- package/dist/core/usage/cuota/index.js.map +1 -1
- package/dist/core/usage/cuota/openai-codex.d.ts.map +1 -1
- package/dist/core/usage/cuota/openai-codex.js.map +1 -1
- package/dist/core/usage/cuota/openrouter.d.ts.map +1 -1
- package/dist/core/usage/cuota/openrouter.js.map +1 -1
- package/dist/core/usage/cuota/tipos.d.ts.map +1 -1
- package/dist/core/usage/cuota/tipos.js.map +1 -1
- package/dist/core/usage/index.d.ts +11 -0
- package/dist/core/usage/index.d.ts.map +1 -0
- package/dist/core/usage/index.js +11 -0
- package/dist/core/usage/index.js.map +1 -0
- package/dist/core/usage/multi.d.ts +62 -0
- package/dist/core/usage/multi.d.ts.map +1 -0
- package/dist/core/usage/multi.js +122 -0
- package/dist/core/usage/multi.js.map +1 -0
- package/dist/core/usage/redaccion.d.ts +48 -0
- package/dist/core/usage/redaccion.d.ts.map +1 -0
- package/dist/core/usage/redaccion.js +72 -0
- package/dist/core/usage/redaccion.js.map +1 -0
- package/dist/core/usage-totals.d.ts.map +1 -1
- package/dist/core/usage-totals.js.map +1 -1
- package/dist/core/utils/atomic-write.d.ts +55 -0
- package/dist/core/utils/atomic-write.d.ts.map +1 -0
- package/dist/core/utils/atomic-write.js +293 -0
- package/dist/core/utils/atomic-write.js.map +1 -0
- package/dist/core/utils/git.d.ts +24 -0
- package/dist/core/utils/git.d.ts.map +1 -0
- package/dist/core/utils/git.js +107 -0
- package/dist/core/utils/git.js.map +1 -0
- package/dist/core/utils/logger.d.ts +26 -0
- package/dist/core/utils/logger.d.ts.map +1 -0
- package/dist/core/utils/logger.js +104 -0
- package/dist/core/utils/logger.js.map +1 -0
- package/dist/core/utils/shell-snapshot.d.ts +21 -0
- package/dist/core/utils/shell-snapshot.d.ts.map +1 -0
- package/dist/core/utils/shell-snapshot.js +32 -0
- package/dist/core/utils/shell-snapshot.js.map +1 -0
- package/dist/core/utils/startup-watchdog.d.ts +11 -0
- package/dist/core/utils/startup-watchdog.d.ts.map +1 -0
- package/dist/core/utils/startup-watchdog.js +34 -0
- package/dist/core/utils/startup-watchdog.js.map +1 -0
- package/dist/core/utils/tls-ca-shim.d.ts +17 -0
- package/dist/core/utils/tls-ca-shim.d.ts.map +1 -0
- package/dist/core/utils/tls-ca-shim.js +33 -0
- package/dist/core/utils/tls-ca-shim.js.map +1 -0
- package/dist/core/web/agregador.d.ts +67 -0
- package/dist/core/web/agregador.d.ts.map +1 -0
- package/dist/core/web/agregador.js +182 -0
- package/dist/core/web/agregador.js.map +1 -0
- package/dist/core/web/busqueda-nativa.d.ts.map +1 -1
- package/dist/core/web/busqueda-nativa.js.map +1 -1
- package/dist/core/web/consulta.d.ts +53 -0
- package/dist/core/web/consulta.d.ts.map +1 -0
- package/dist/core/web/consulta.js +213 -0
- package/dist/core/web/consulta.js.map +1 -0
- package/dist/core/web/destino.d.ts +11 -0
- package/dist/core/web/destino.d.ts.map +1 -1
- package/dist/core/web/destino.js +35 -0
- package/dist/core/web/destino.js.map +1 -1
- package/dist/core/web/load-page.d.ts +52 -0
- package/dist/core/web/load-page.d.ts.map +1 -0
- package/dist/core/web/load-page.js +221 -0
- package/dist/core/web/load-page.js.map +1 -0
- package/dist/core/web/proveedores/brave.d.ts.map +1 -1
- package/dist/core/web/proveedores/brave.js.map +1 -1
- package/dist/core/web/proveedores/claves.d.ts.map +1 -1
- package/dist/core/web/proveedores/claves.js.map +1 -1
- package/dist/core/web/proveedores/duckduckgo.d.ts.map +1 -1
- package/dist/core/web/proveedores/duckduckgo.js.map +1 -1
- package/dist/core/web/proveedores/ecosia.d.ts.map +1 -1
- package/dist/core/web/proveedores/ecosia.js.map +1 -1
- package/dist/core/web/proveedores/exa.d.ts.map +1 -1
- package/dist/core/web/proveedores/exa.js.map +1 -1
- package/dist/core/web/proveedores/mojeek.d.ts.map +1 -1
- package/dist/core/web/proveedores/mojeek.js.map +1 -1
- package/dist/core/web/proveedores/navegador.d.ts.map +1 -1
- package/dist/core/web/proveedores/navegador.js.map +1 -1
- package/dist/core/web/proveedores/registro.d.ts.map +1 -1
- package/dist/core/web/proveedores/registro.js.map +1 -1
- package/dist/core/web/proveedores/searxng.d.ts.map +1 -1
- package/dist/core/web/proveedores/searxng.js.map +1 -1
- package/dist/core/web/proveedores/serper.d.ts.map +1 -1
- package/dist/core/web/proveedores/serper.js.map +1 -1
- package/dist/core/web/proveedores/tavily.d.ts.map +1 -1
- package/dist/core/web/proveedores/tavily.js.map +1 -1
- package/dist/core/web/proveedores/tipos.d.ts.map +1 -1
- package/dist/core/web/proveedores/tipos.js.map +1 -1
- package/dist/core/web/registro-red.d.ts.map +1 -1
- package/dist/core/web/registro-red.js.map +1 -1
- package/dist/core/web/scrapers/cisa-kev.d.ts.map +1 -1
- package/dist/core/web/scrapers/cisa-kev.js.map +1 -1
- package/dist/core/web/scrapers/crates-io.d.ts.map +1 -1
- package/dist/core/web/scrapers/crates-io.js.map +1 -1
- package/dist/core/web/scrapers/docs-rs.d.ts.map +1 -1
- package/dist/core/web/scrapers/docs-rs.js.map +1 -1
- package/dist/core/web/scrapers/github.d.ts.map +1 -1
- package/dist/core/web/scrapers/github.js.map +1 -1
- package/dist/core/web/scrapers/go-pkg.d.ts.map +1 -1
- package/dist/core/web/scrapers/go-pkg.js.map +1 -1
- package/dist/core/web/scrapers/hex.d.ts.map +1 -1
- package/dist/core/web/scrapers/hex.js.map +1 -1
- package/dist/core/web/scrapers/maven.d.ts.map +1 -1
- package/dist/core/web/scrapers/maven.js.map +1 -1
- package/dist/core/web/scrapers/mdn.d.ts.map +1 -1
- package/dist/core/web/scrapers/mdn.js.map +1 -1
- package/dist/core/web/scrapers/npm.d.ts.map +1 -1
- package/dist/core/web/scrapers/npm.js.map +1 -1
- package/dist/core/web/scrapers/nuget.d.ts.map +1 -1
- package/dist/core/web/scrapers/nuget.js.map +1 -1
- package/dist/core/web/scrapers/nvd.d.ts.map +1 -1
- package/dist/core/web/scrapers/nvd.js.map +1 -1
- package/dist/core/web/scrapers/pypi.d.ts.map +1 -1
- package/dist/core/web/scrapers/pypi.js.map +1 -1
- package/dist/core/web/scrapers/registro.d.ts.map +1 -1
- package/dist/core/web/scrapers/registro.js.map +1 -1
- package/dist/core/web/scrapers/rubygems.d.ts.map +1 -1
- package/dist/core/web/scrapers/rubygems.js.map +1 -1
- package/dist/core/web/scrapers/stackoverflow.d.ts.map +1 -1
- package/dist/core/web/scrapers/stackoverflow.js.map +1 -1
- package/dist/core/web/scrapers/tipos.d.ts.map +1 -1
- package/dist/core/web/scrapers/tipos.js.map +1 -1
- package/dist/core/web/texto.d.ts.map +1 -1
- package/dist/core/web/texto.js.map +1 -1
- package/dist/core/web/tools.d.ts +1 -8
- package/dist/core/web/tools.d.ts.map +1 -1
- package/dist/core/web/tools.js +2 -33
- package/dist/core/web/tools.js.map +1 -1
- package/dist/core/wiki/almacen.d.ts.map +1 -1
- package/dist/core/wiki/almacen.js.map +1 -1
- package/dist/core/wiki/citas.d.ts.map +1 -1
- package/dist/core/wiki/citas.js.map +1 -1
- package/dist/core/workflows/agent-runner.d.ts.map +1 -1
- package/dist/core/workflows/agent-runner.js.map +1 -1
- package/dist/core/workflows/builtins.d.ts.map +1 -1
- package/dist/core/workflows/builtins.js.map +1 -1
- package/dist/core/workflows/contrato/esquema.d.ts.map +1 -1
- package/dist/core/workflows/contrato/esquema.js.map +1 -1
- package/dist/core/workflows/contrato/reparar-argumentos.d.ts.map +1 -1
- package/dist/core/workflows/contrato/reparar-argumentos.js.map +1 -1
- package/dist/core/workflows/contrato/validador.d.ts.map +1 -1
- package/dist/core/workflows/contrato/validador.js.map +1 -1
- package/dist/core/workflows/contrato/yield.d.ts.map +1 -1
- package/dist/core/workflows/contrato/yield.js.map +1 -1
- package/dist/core/workflows/goal-engine/engine.d.ts +5 -0
- package/dist/core/workflows/goal-engine/engine.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/engine.js.map +1 -1
- package/dist/core/workflows/goal-engine/errors.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/errors.js.map +1 -1
- package/dist/core/workflows/goal-engine/index.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/index.js.map +1 -1
- package/dist/core/workflows/goal-engine/persistence.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/persistence.js.map +1 -1
- package/dist/core/workflows/goal-engine/prompts.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/prompts.js.map +1 -1
- package/dist/core/workflows/goal-engine/state.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/state.js.map +1 -1
- package/dist/core/workflows/goal-engine/tools.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/tools.js.map +1 -1
- package/dist/core/workflows/goal-engine/types.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/types.js.map +1 -1
- package/dist/core/workflows/goal-engine/worktree-fingerprint.d.ts.map +1 -1
- package/dist/core/workflows/goal-engine/worktree-fingerprint.js.map +1 -1
- package/dist/core/workflows/graph-sync.d.ts.map +1 -1
- package/dist/core/workflows/graph-sync.js.map +1 -1
- package/dist/core/workflows/graph.d.ts.map +1 -1
- package/dist/core/workflows/graph.js.map +1 -1
- package/dist/core/workflows/index.d.ts +6 -0
- package/dist/core/workflows/index.d.ts.map +1 -1
- package/dist/core/workflows/index.js +3 -0
- package/dist/core/workflows/index.js.map +1 -1
- package/dist/core/workflows/journal.d.ts.map +1 -1
- package/dist/core/workflows/journal.js.map +1 -1
- package/dist/core/workflows/manager.d.ts.map +1 -1
- package/dist/core/workflows/manager.js.map +1 -1
- package/dist/core/workflows/provider-caps.d.ts +103 -0
- package/dist/core/workflows/provider-caps.d.ts.map +1 -0
- package/dist/core/workflows/provider-caps.js +235 -0
- package/dist/core/workflows/provider-caps.js.map +1 -0
- package/dist/core/workflows/resolve-script.d.ts.map +1 -1
- package/dist/core/workflows/resolve-script.js.map +1 -1
- package/dist/core/workflows/runtime.d.ts.map +1 -1
- package/dist/core/workflows/runtime.js.map +1 -1
- package/dist/core/workflows/save-as-skill.d.ts.map +1 -1
- package/dist/core/workflows/save-as-skill.js.map +1 -1
- package/dist/core/workflows/shared-store.d.ts.map +1 -1
- package/dist/core/workflows/shared-store.js.map +1 -1
- package/dist/core/workflows/soft-budget.d.ts +27 -0
- package/dist/core/workflows/soft-budget.d.ts.map +1 -0
- package/dist/core/workflows/soft-budget.js +47 -0
- package/dist/core/workflows/soft-budget.js.map +1 -0
- package/dist/core/workflows/subagent-host.d.ts.map +1 -1
- package/dist/core/workflows/subagent-host.js.map +1 -1
- package/dist/core/workflows/tool-scheduling.d.ts +47 -0
- package/dist/core/workflows/tool-scheduling.d.ts.map +1 -0
- package/dist/core/workflows/tool-scheduling.js +102 -0
- package/dist/core/workflows/tool-scheduling.js.map +1 -0
- package/dist/core/workflows/tool-workflow.d.ts.map +1 -1
- package/dist/core/workflows/tool-workflow.js.map +1 -1
- package/dist/core/workflows/types.d.ts.map +1 -1
- package/dist/core/workflows/types.js.map +1 -1
- package/dist/core/workflows/worktree.d.ts.map +1 -1
- package/dist/core/workflows/worktree.js.map +1 -1
- package/dist/extensions/index.d.ts.map +1 -1
- package/dist/extensions/index.js.map +1 -1
- package/dist/extensions/llama/client.d.ts.map +1 -1
- package/dist/extensions/llama/client.js.map +1 -1
- package/dist/extensions/llama/huggingface.d.ts.map +1 -1
- package/dist/extensions/llama/huggingface.js.map +1 -1
- package/dist/extensions/llama/index.d.ts.map +1 -1
- package/dist/extensions/llama/index.js.map +1 -1
- package/dist/extensions/llama/provider.d.ts.map +1 -1
- package/dist/extensions/llama/provider.js.map +1 -1
- package/dist/extensions/llama/ui.d.ts.map +1 -1
- package/dist/extensions/llama/ui.js.map +1 -1
- package/dist/extensions/remoto/index.d.ts.map +1 -1
- package/dist/extensions/remoto/index.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +71 -3
- package/dist/main.js.map +1 -1
- package/dist/migrations.d.ts.map +1 -1
- package/dist/migrations.js.map +1 -1
- package/dist/modes/acp/acp-mode.d.ts.map +1 -1
- package/dist/modes/acp/acp-mode.js.map +1 -1
- package/dist/modes/acp/events.d.ts.map +1 -1
- package/dist/modes/acp/events.js.map +1 -1
- package/dist/modes/index.d.ts.map +1 -1
- package/dist/modes/index.js.map +1 -1
- package/dist/modes/interactive/components/armin.d.ts.map +1 -1
- package/dist/modes/interactive/components/armin.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
- package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/daxnuts.d.ts.map +1 -1
- package/dist/modes/interactive/components/daxnuts.js.map +1 -1
- package/dist/modes/interactive/components/diff.d.ts.map +1 -1
- package/dist/modes/interactive/components/diff.js.map +1 -1
- package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
- package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
- package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
- package/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-editor.js.map +1 -1
- package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-input.js.map +1 -1
- package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-selector.js.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/home-screen.d.ts +2 -0
- package/dist/modes/interactive/components/home-screen.d.ts.map +1 -1
- package/dist/modes/interactive/components/home-screen.js +5 -6
- package/dist/modes/interactive/components/home-screen.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -1
- package/dist/modes/interactive/components/markdown-transform.js.map +1 -1
- package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
- package/dist/modes/interactive/components/mermaid.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/prompt-optimization.d.ts.map +1 -1
- package/dist/modes/interactive/components/prompt-optimization.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
- package/dist/modes/interactive/components/status-indicator.js.map +1 -1
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/theme-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/components/trust-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/trust-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -1
- package/dist/modes/interactive/components/visual-truncate.js.map +1 -1
- package/dist/modes/interactive/external-editor.d.ts.map +1 -1
- package/dist/modes/interactive/external-editor.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +19 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +29 -0
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/model-catalog-refresh.d.ts.map +1 -1
- package/dist/modes/interactive/model-catalog-refresh.js.map +1 -1
- package/dist/modes/interactive/model-search.d.ts.map +1 -1
- package/dist/modes/interactive/model-search.js.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts +2 -2
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/json-event.d.ts.map +1 -1
- package/dist/modes/json-event.js.map +1 -1
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/jsonl.d.ts.map +1 -1
- package/dist/modes/rpc/jsonl.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/dist/package-manager-cli.d.ts.map +1 -1
- package/dist/package-manager-cli.js.map +1 -1
- package/dist/rpc-entry.d.ts.map +1 -1
- package/dist/rpc-entry.js +0 -0
- package/dist/rpc-entry.js.map +1 -1
- package/dist/server/attach.d.ts.map +1 -1
- package/dist/server/attach.js.map +1 -1
- package/dist/server/create-harness.d.ts.map +1 -1
- package/dist/server/create-harness.js.map +1 -1
- package/dist/server/extension-ops.d.ts.map +1 -1
- package/dist/server/extension-ops.js.map +1 -1
- package/dist/server/pi-server-service.d.ts.map +1 -1
- package/dist/server/pi-server-service.js.map +1 -1
- package/dist/server/scheduler-tick.d.ts.map +1 -1
- package/dist/server/scheduler-tick.js.map +1 -1
- package/dist/server/serve.d.ts.map +1 -1
- package/dist/server/serve.js.map +1 -1
- package/dist/server/transcript.d.ts.map +1 -1
- package/dist/server/transcript.js.map +1 -1
- package/dist/telegram/api.d.ts +6 -0
- package/dist/telegram/api.d.ts.map +1 -1
- package/dist/telegram/api.js.map +1 -1
- package/dist/telegram/bridge.d.ts.map +1 -1
- package/dist/telegram/bridge.js.map +1 -1
- package/dist/telegram/journal.d.ts.map +1 -1
- package/dist/telegram/journal.js.map +1 -1
- package/dist/telegram/servidor.d.ts.map +1 -1
- package/dist/telegram/servidor.js.map +1 -1
- package/dist/utils/abort.d.ts.map +1 -1
- package/dist/utils/abort.js.map +1 -1
- package/dist/utils/ansi.d.ts.map +1 -1
- package/dist/utils/ansi.js.map +1 -1
- package/dist/utils/changelog.d.ts.map +1 -1
- package/dist/utils/changelog.js.map +1 -1
- package/dist/utils/child-process.d.ts.map +1 -1
- package/dist/utils/child-process.js.map +1 -1
- package/dist/utils/clipboard-image.d.ts.map +1 -1
- package/dist/utils/clipboard-image.js.map +1 -1
- package/dist/utils/clipboard-native.d.ts.map +1 -1
- package/dist/utils/clipboard-native.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/deprecation.d.ts.map +1 -1
- package/dist/utils/deprecation.js.map +1 -1
- package/dist/utils/exif-orientation.d.ts.map +1 -1
- package/dist/utils/exif-orientation.js.map +1 -1
- package/dist/utils/frontmatter.d.ts.map +1 -1
- package/dist/utils/frontmatter.js.map +1 -1
- package/dist/utils/fs-watch.d.ts.map +1 -1
- package/dist/utils/fs-watch.js.map +1 -1
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/html.d.ts.map +1 -1
- package/dist/utils/html.js.map +1 -1
- package/dist/utils/image-convert.d.ts.map +1 -1
- package/dist/utils/image-convert.js.map +1 -1
- package/dist/utils/image-process.d.ts.map +1 -1
- package/dist/utils/image-process.js.map +1 -1
- package/dist/utils/image-resize-core.d.ts.map +1 -1
- package/dist/utils/image-resize-core.js.map +1 -1
- package/dist/utils/image-resize-worker.d.ts.map +1 -1
- package/dist/utils/image-resize-worker.js.map +1 -1
- package/dist/utils/image-resize.d.ts.map +1 -1
- package/dist/utils/image-resize.js.map +1 -1
- package/dist/utils/json.d.ts.map +1 -1
- package/dist/utils/json.js.map +1 -1
- package/dist/utils/management-http.d.ts.map +1 -1
- package/dist/utils/management-http.js.map +1 -1
- package/dist/utils/mime.d.ts.map +1 -1
- package/dist/utils/mime.js.map +1 -1
- package/dist/utils/open-browser.d.ts.map +1 -1
- package/dist/utils/open-browser.js.map +1 -1
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/photon.d.ts.map +1 -1
- package/dist/utils/photon.js.map +1 -1
- package/dist/utils/pi-user-agent.d.ts.map +1 -1
- package/dist/utils/pi-user-agent.js.map +1 -1
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/sleep.d.ts.map +1 -1
- package/dist/utils/sleep.js.map +1 -1
- package/dist/utils/syntax-highlight.d.ts.map +1 -1
- package/dist/utils/syntax-highlight.js.map +1 -1
- package/dist/utils/text.d.ts.map +1 -1
- package/dist/utils/text.js.map +1 -1
- package/dist/utils/tool-result-images.d.ts.map +1 -1
- package/dist/utils/tool-result-images.js.map +1 -1
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js.map +1 -1
- package/dist/utils/version-check.d.ts.map +1 -1
- package/dist/utils/version-check.js.map +1 -1
- package/dist/utils/windows-self-update.d.ts.map +1 -1
- package/dist/utils/windows-self-update.js.map +1 -1
- package/docs/development-fork.md +170 -0
- package/docs/docs.json +25 -0
- package/docs/modules-infraestructura.md +115 -0
- package/docs/modules-motor.md +160 -0
- package/docs/modules-producto.md +179 -0
- package/docs/modules-seguridad.md +158 -0
- package/package.json +113 -113
- package/dist/core/commit/diff.d.ts.map +0 -1
- package/dist/core/commit/diff.js.map +0 -1
- package/dist/core/commit/mensaje.d.ts +0 -80
- package/dist/core/commit/mensaje.d.ts.map +0 -1
- package/dist/core/commit/mensaje.js +0 -207
- package/dist/core/commit/mensaje.js.map +0 -1
- /package/dist/core/{commit → commits}/diff.d.ts +0 -0
- /package/dist/core/{commit → commits}/diff.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/engine.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Ada Intelligence Engine — GoalEngine (modelo contenedor, estilo Claude Code).\n *\n * El goal es un CONTENEDOR de alto nivel: objetivo + doneCriteria + estado +\n * frenos. NO tiene pasos propios — los pasos viven en los workflows dinámicos\n * que desencadena. Cada sub-tarea del goal (tasks) lanza un workflow\n * (`launchWorkflow` inyectable → WorkflowManager). Cuando todas las sub-tareas\n * terminan, el juez verifica los doneCriteria y decide done/continue.\n *\n * Diseño: agnóstico del LLM — `launchWorkflow` (lanza el flujo dinámico de una\n * sub-tarea) y `judge` (juez) son inyectables. Frenos integrados: maxTurns,\n * repeat detector, stop-file (~/.ada-stop), budget, pausa ante decisiones\n * irreversibles.\n */\n\nimport { GoalError } from \"./errors.ts\";\nimport { createGoalState, reduceGoal } from \"./state.ts\";\nimport type {\n\tAskUserQuestion,\n\tEvidenceItem,\n\tGoalAction,\n\tGoalEventListener,\n\tGoalFrenos,\n\tGoalJudgeFn,\n\tGoalPersistence,\n\tGoalReplanFn,\n\tGoalState,\n\tTask,\n\tTaskStatus,\n} from \"./types.ts\";\nimport { DEFAULT_GOAL_FRENOS } from \"./types.ts\";\nimport { workspaceFingerprint } from \"./worktree-fingerprint.ts\";\n\nexport interface GoalEngineOptions {\n\tpersistence: GoalPersistence;\n\t/** Lanza el workflow dinámico de una sub-tarea → runId (goal-contenedor). */\n\tlaunchWorkflow: (input: {\n\t\tgoalId: string;\n\t\tgoal: string;\n\t\ttaskId: string;\n\t\ttaskTitle: string;\n\t\tdoneCriteria: string[];\n\t\tverifyCommand: string;\n\t\tsessionId?: string;\n\t}) => Promise<{ runId: string }>;\n\tjudge: GoalJudgeFn;\n\t/** P1: re-planificación completa tras veredicto continue (opcional). */\n\treplanFn?: GoalReplanFn;\n\tfrenos?: Partial<GoalFrenos>;\n\tonEvent?: GoalEventListener;\n\t/** Comprobador del stop-file (inyectable para tests). */\n\tstopFileExists?: (path: string) => boolean;\n\t/** P5: modo plan-only — no lanzar workflows hasta approve del plan. */\n\tplanOnly?: boolean;\n\t/** Raíz del proyecto para la huella anti-cheat. Default: process.cwd(). */\n\tcwd?: string;\n\t/** Huella del árbol de trabajo (inyectable para tests). */\n\tfingerprint?: (cwd: string) => Promise<string | undefined>;\n\tnow?: () => string;\n}\n\nexport class GoalEngine {\n\tprivate persistence: GoalPersistence;\n\t/** Lock por-goal: nunca dos ticks concurrentes del mismo goal. */\n\tprivate _tickInFlight = new Set<string>();\n\t/** Auto-continuación en vuelo tras `onWorkflowFinished` (ver `settle`). */\n\tprivate _autoTick: Promise<unknown> = Promise.resolve();\n\t/** Temporizadores de `goal_wait(resumeAfterMs)`, uno por goal. */\n\tprivate _waitTimers = new Map<string, ReturnType<typeof setTimeout>>();\n\tprivate launchWorkflow: GoalEngineOptions[\"launchWorkflow\"];\n\tprivate judge: GoalJudgeFn;\n\tprivate replanFn?: GoalReplanFn;\n\tprivate frenos: GoalFrenos;\n\tprivate onEvent?: GoalEventListener;\n\tprivate stopFileExists: (path: string) => boolean;\n\tprivate planOnly: boolean;\n\tprivate cwd: string;\n\tprivate fingerprint: (cwd: string) => Promise<string | undefined>;\n\tprivate now: () => string;\n\t/** cache en memoria: id → estado (el disco es la fuente de verdad). */\n\tprivate cache = new Map<string, GoalState>();\n\n\tconstructor(options: GoalEngineOptions) {\n\t\tthis.persistence = options.persistence;\n\t\tthis.launchWorkflow = options.launchWorkflow;\n\t\tthis.judge = options.judge;\n\t\tthis.replanFn = options.replanFn;\n\t\tthis.frenos = { ...DEFAULT_GOAL_FRENOS, ...options.frenos };\n\t\tthis.onEvent = options.onEvent;\n\t\tthis.stopFileExists = options.stopFileExists ?? ((p) => p !== null && p.length > 0 && fsExists(p));\n\t\tthis.planOnly = options.planOnly ?? false;\n\t\tthis.cwd = options.cwd ?? process.cwd();\n\t\tthis.fingerprint = options.fingerprint ?? workspaceFingerprint;\n\t\tthis.now = options.now ?? (() => new Date().toISOString());\n\t}\n\n\t// ─── Contrato primero ───\n\n\t/** Crea un goal en estado setup (contrato). Devuelve el id para aprobar. */\n\tasync createGoal(input: {\n\t\tgoal: string;\n\t\tdoneCriteria: string[];\n\t\tverifyCommand: string;\n\t\tsessionId?: string;\n\t}): Promise<GoalState> {\n\t\tconst state = createGoalState({ ...input, id: `goal-${Date.now().toString(36)}-${randId()}`, now: this.now() });\n\t\tthis.cache.set(state.id, state);\n\t\tawait this.persistence.save(state);\n\t\tthis.emit(\"goal_update\", { goal: state });\n\t\treturn state;\n\t}\n\n\t/** Añade una tarea al TODO del goal sin reemplazar el plan. */\n\tasync addTask(goalId: string, title: string): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_task_add\", title }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\t/** Aprueba el contrato → el bucle puede arrancar. */\n\tasync approve(goalId: string): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_approve\" }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\t// ─── Bucle ───\n\n\t/**\n\t * Un tick del bucle: se llama cuando el agente principal se ha settleado.\n\t * Solo avanza si: status active, sin waiting, sin stop-file, bajo los\n\t * límites (maxTurns, budget, repeat tolerance).\n\t */\n\tasync tick(goalId: string): Promise<{ advanced: boolean; state: GoalState; reason?: string }> {\n\t\t// Reentrancia: nunca dos ticks concurrentes del mismo goal (el\n\t\t// subagent que ejecuta el turno comparte agentDir y NO re-dispara).\n\t\tif (this._tickInFlight.has(goalId)) {\n\t\t\tconst state = await this.mustLoad(goalId);\n\t\t\treturn { advanced: false, state, reason: \"tick ya en curso\" };\n\t\t}\n\t\tthis._tickInFlight.add(goalId);\n\t\ttry {\n\t\t\treturn await this._tickInner(goalId);\n\t\t} finally {\n\t\t\tthis._tickInFlight.delete(goalId);\n\t\t}\n\t}\n\n\tprivate async _tickInner(goalId: string): Promise<{ advanced: boolean; state: GoalState; reason?: string }> {\n\t\tlet state = await this.mustLoad(goalId);\n\n\t\t// Frenos que detienen el bucle ANTES de gastar un turno.\n\t\tconst brake = this.checkBrakes(state);\n\t\tif (brake) {\n\t\t\tconst { state: next } = reduceGoal(state, brake.action, this.frenos);\n\t\t\tawait this.commit(state, next);\n\t\t\treturn { advanced: false, state: next, reason: brake.reason };\n\t\t}\n\n\t\t// Continuación solo si el bucle está activo.\n\t\tif (state.status !== \"active\") return { advanced: false, state, reason: `status=${state.status}` };\n\n\t\t// ── Modelo contenedor: el goal lanza workflows por sub-tarea ──\n\t\t// 0. ¿Hay sub-tareas con workflow EN MARCHA? → esperar (uno a la vez).\n\t\t// El evento workflow_run_finished marcará la sub-tarea vía onWorkflowFinished.\n\t\tconst runningNow = state.tasks.filter((t) => t.status === \"running\");\n\t\tif (runningNow.length > 0) {\n\t\t\treturn { advanced: false, state, reason: `${runningNow.length} workflow(s) en curso` };\n\t\t}\n\n\t\t// 1. ¿Hay sub-tareas fallidas? → reintento (relanzar el workflow) hasta\n\t\t// la tolerancia; al alcanzarla, el repeat detector ya pausó.\n\t\tconst failedNow = state.tasks.filter((t) => t.status === \"failed\");\n\t\tif (failedNow.length > 0) {\n\t\t\tif (state.repeatedTurns >= this.frenos.repeatTolerance) {\n\t\t\t\treturn { advanced: false, state, reason: \"repeat detector pausado\" };\n\t\t\t}\n\t\t\t// Resetear la primera fallida a pending y CONTINUAR al lanzamiento.\n\t\t\tconst first = failedNow[0];\n\t\t\tconst { state: retry } = reduceGoal(\n\t\t\t\tstate,\n\t\t\t\t{ type: \"goal_task_result\", taskId: first.id, status: \"pending\" as TaskStatus },\n\t\t\t\tthis.frenos,\n\t\t\t);\n\t\t\tstate = retry;\n\t\t\tawait this.commit(state, state);\n\t\t}\n\n\t\t// P5: modo plan-only — no se lanzan workflows automáticamente; el goal\n\t\t// espera aprobación explícita del plan (approve) para cada iteración.\n\t\tif (this.planOnly) {\n\t\t\treturn { advanced: false, state, reason: \"plan-only: esperando approve del plan\" };\n\t\t}\n\n\t\t// 2. ¿Hay sub-tareas sin workflow lanzado? → lanza la siguiente.\n\t\tconst pending = state.tasks.find((t) => t.status === \"pending\" || t.status === \"active\");\n\t\tif (pending) {\n\t\t\tthis.emit(\"goal_agent\", {\n\t\t\t\tgoalId,\n\t\t\t\tagent: { id: `${goalId}:task:${pending.id}`, label: pending.title, detail: \"workflow dinámico\" },\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tconst { runId } = await this.launchWorkflow({\n\t\t\t\t\tgoalId: state.id,\n\t\t\t\t\tgoal: state.goal,\n\t\t\t\t\ttaskId: pending.id,\n\t\t\t\t\ttaskTitle: pending.title,\n\t\t\t\t\tdoneCriteria: state.doneCriteria,\n\t\t\t\t\tverifyCommand: state.verifyCommand,\n\t\t\t\t\tsessionId: state.sessionId,\n\t\t\t\t});\n\t\t\t\t// Marcar la sub-tarea running con su runId.\n\t\t\t\tconst { state: launched } = reduceGoal(\n\t\t\t\t\tstate,\n\t\t\t\t\t{ type: \"goal_task_launched\", taskId: pending.id, workflowRunId: runId },\n\t\t\t\t\tthis.frenos,\n\t\t\t\t);\n\t\t\t\tawait this.commit(state, launched);\n\t\t\t\tthis.emit(\"goal_phase\", { goalId, phase: \"working\" });\n\t\t\t\treturn { advanced: true, state: launched, reason: `workflow ${runId} lanzado para ${pending.title}` };\n\t\t\t} catch (e) {\n\t\t\t\t// El workflow no se pudo lanzar → task failed, el juez decide.\n\t\t\t\tconst { state: failed } = reduceGoal(\n\t\t\t\t\tstate,\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"goal_task_result\",\n\t\t\t\t\t\ttaskId: pending.id,\n\t\t\t\t\t\tstatus: \"failed\",\n\t\t\t\t\t\tsummary: e instanceof Error ? e.message : String(e),\n\t\t\t\t\t},\n\t\t\t\t\tthis.frenos,\n\t\t\t\t);\n\t\t\t\tawait this.commit(state, failed);\n\t\t\t\treturn { advanced: true, state: failed, reason: \"workflow launch failed\" };\n\t\t\t}\n\t\t}\n\n\t\t// 3. Sin sub-tareas pendientes/running → todas done (o plan vacío) → juez.\n\t\tif (state.tasks.length === 0 || state.tasks.every((t) => t.status === \"done\")) {\n\t\t\tconst judged = await this.runJudge(state);\n\t\t\t// P1: veredicto continue → re-planificación completa automática\n\t\t\t// (nueva iteración con plan regenerado) si el freno maxReplans\n\t\t\t// lo permite y hay replanFn. Si no, reintento simple (behavior atual).\n\t\t\tif (judged.status === \"active\" && judged.judge.lastVerdict === \"continue\") {\n\t\t\t\tconst re = await this.autoReplanAfterContinue(judged);\n\t\t\t\tif (re.iteration > judged.iteration) {\n\t\t\t\t\treturn { advanced: true, state: re, reason: `juez continue → iteración ${re.iteration} (replan)` };\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn { advanced: true, state: judged, reason: \"todas las sub-tareas done → juez\" };\n\t\t}\n\n\t\t// 4. Plan incompleto (sub-tareas en otros estados) → esperar.\n\t\treturn { advanced: false, state, reason: \"plan en curso\" };\n\t}\n\n\t/**\n\t * Evento del WorkflowManager: una sub-tarea terminó su workflow.\n\t * Marca la task done/failed, acumula tokens/coste del run en el presupuesto\n\t * del goal (freno budgetTokens/costBudget), y aplica el repeat detector\n\t * (sub-tareas fallidas consecutivas → pause). El siguiente tick decide.\n\t */\n\tasync onWorkflowFinished(\n\t\tworkflowRunId: string,\n\t\tok: boolean,\n\t\tsummary?: string,\n\t\tusage?: { tokens?: number; cost?: number },\n\t): Promise<GoalState | null> {\n\t\t// Buscar el goal cuya sub-tarea corre ese workflow (en memoria).\n\t\tfor (const state of this.cache.values()) {\n\t\t\tconst task = state.tasks.find((t) => t.workflowRunId === workflowRunId);\n\t\t\tif (!task) continue;\n\t\t\tlet next = state;\n\t\t\t// Resultado de la sub-tarea.\n\t\t\tconst { state: afterResult } = reduceGoal(\n\t\t\t\tnext,\n\t\t\t\t{ type: \"goal_task_result\", taskId: task.id, status: ok ? \"done\" : \"failed\", summary },\n\t\t\t\tthis.frenos,\n\t\t\t);\n\t\t\tnext = afterResult;\n\t\t\t// Presupuesto: acumular tokens/coste reales del workflow.\n\t\t\tif (usage && (usage.tokens || usage.cost)) {\n\t\t\t\tnext = {\n\t\t\t\t\t...next,\n\t\t\t\t\ttokensUsed: next.tokensUsed + (usage.tokens ?? 0),\n\t\t\t\t\tcostUsed: next.costUsed + (usage.cost ?? 0),\n\t\t\t\t\tupdatedAt: this.now(),\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Repeat detector: sub-tareas fallidas consecutivas → pause.\n\t\t\tif (!ok) {\n\t\t\t\t// Anti-cheat: ¿cambió algo el agente? Un fallo con el árbol de\n\t\t\t\t// trabajo idéntico al del fallo anterior no es un intento nuevo, es\n\t\t\t\t// el mismo intento. Reintentarlo gasta presupuesto sin información.\n\t\t\t\tconst fingerprint = await this.fingerprint(this.cwd);\n\t\t\t\tconst stalled = fingerprint !== undefined && fingerprint === next.lastFailureFingerprint;\n\t\t\t\tnext = {\n\t\t\t\t\t...next,\n\t\t\t\t\trepeatedTurns: next.repeatedTurns + 1,\n\t\t\t\t\tlastAgentSummary: summary ?? \"workflow fallido\",\n\t\t\t\t\tlastFailureFingerprint: fingerprint ?? next.lastFailureFingerprint,\n\t\t\t\t\tupdatedAt: this.now(),\n\t\t\t\t};\n\t\t\t\tif (stalled) {\n\t\t\t\t\t// El plan es el problema, no el intento: parar y que el replan lo\n\t\t\t\t\t// vea, en vez de agotar la tolerancia repitiendo lo mismo.\n\t\t\t\t\tconst { state: paused } = reduceGoal(\n\t\t\t\t\t\tnext,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"goal_pause\",\n\t\t\t\t\t\t\treason:\n\t\t\t\t\t\t\t\t\"workspace sin cambios desde el fallo anterior — el agente no modificó nada, hace falta replantear\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\tthis.frenos,\n\t\t\t\t\t);\n\t\t\t\t\tnext = paused;\n\t\t\t\t} else if (next.repeatedTurns >= this.frenos.repeatTolerance) {\n\t\t\t\t\tconst { state: paused } = reduceGoal(\n\t\t\t\t\t\tnext,\n\t\t\t\t\t\t{ type: \"goal_pause\", reason: `${this.frenos.repeatTolerance} sub-tareas fallidas seguidas` },\n\t\t\t\t\t\tthis.frenos,\n\t\t\t\t\t);\n\t\t\t\t\tnext = paused;\n\t\t\t\t}\n\t\t\t} else if (next.repeatedTurns > 0 || next.lastFailureFingerprint) {\n\t\t\t\t// Éxito resetea el contador de fallos y la huella.\n\t\t\t\tnext = { ...next, repeatedTurns: 0, lastFailureFingerprint: undefined, updatedAt: this.now() };\n\t\t\t}\n\t\t\tawait this.commit(state, next);\n\t\t\tthis.emit(\"goal_update\", { goal: next });\n\t\t\t// Auto-continuación. Sin esto el goal solo avanza cuando el humano\n\t\t\t// escribe: el único disparador de `tick` es el `agent_settled` de la\n\t\t\t// sesión principal, y el workflow de la sub-tarea corre en una sesión\n\t\t\t// de subagente que está excluida de ese camino. Es decir, un goal de\n\t\t\t// N sub-tareas exigía N mensajes del usuario.\n\t\t\t//\n\t\t\t// Se dispara desde dentro del engine a propósito: el engine solo\n\t\t\t// existe en la sesión principal, así que la propiedad anti-recursión\n\t\t\t// se conserva sin depender de agent-session.\n\t\t\t//\n\t\t\t// El bucle está acotado: `goal_task_launched` incrementa `turnsUsed`\n\t\t\t// (state.ts:133) contra `maxTurns`, los fallos consecutivos cuentan\n\t\t\t// contra `repeatTolerance` (y al alcanzarla el estado ya no es\n\t\t\t// `active`, así que no se re-tickea), y `checkBrakes` evalúa\n\t\t\t// stop-file y presupuestos antes de gastar nada.\n\t\t\tif (next.status === \"active\") {\n\t\t\t\tthis._autoTick = this.tick(next.id).catch(() => {\n\t\t\t\t\t// El tick persiste su propio estado; que falle no debe tumbar\n\t\t\t\t\t// al manejador del evento del workflow.\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn next;\n\t\t}\n\t\treturn null;\n\t}\n\n\t/**\n\t * Espera a la auto-continuación en vuelo. Pensado para tests, que necesitan\n\t * un punto determinista tras `onWorkflowFinished`; en producción el tick es\n\t * fire-and-forget y nadie lo espera.\n\t */\n\tasync settle(): Promise<void> {\n\t\tawait this._autoTick;\n\t}\n\n\t/** Juez obligatorio: revisa SOLO goal + criteria + evidencia citada. */\n\tasync runJudge(state: GoalState): Promise<GoalState> {\n\t\tthis.emit(\"goal_judge\", { goalId: state.id, verdict: \"continue\", reason: \"juez iniciado\" });\n\t\tconst verdict = await this.judge({\n\t\t\tgoal: state.goal,\n\t\t\tdoneCriteria: state.doneCriteria,\n\t\t\tverifyCommand: state.verifyCommand,\n\t\t\tevidence: state.evidence,\n\t\t\tphase: state.phase,\n\t\t});\n\t\tconst { state: next } = reduceGoal(\n\t\t\tstate,\n\t\t\t{ type: \"goal_judge\", verdict: verdict.verdict, reason: verdict.reason, crossModel: verdict.crossModel },\n\t\t\tthis.frenos,\n\t\t);\n\t\tawait this.commit(state, next);\n\t\tthis.emit(\"goal_judge\", { goalId: state.id, verdict: verdict.verdict, reason: verdict.reason });\n\t\treturn next;\n\t}\n\n\t/** Completa el goal con evidencia — exige juez done y evidencia citada. */\n\tasync complete(goalId: string, summary: string, evidence: EvidenceItem[]): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\t// Añadir la evidencia nueva al estado (sin duplicar).\n\t\tlet current = state;\n\t\tif (evidence.length) {\n\t\t\tconst { state: withEv } = reduceGoal(current, { type: \"goal_agent_turn\", summary: \"\", evidence }, this.frenos);\n\t\t\tcurrent = withEv;\n\t\t}\n\t\tconst { state: next, stopLoop } = reduceGoal(current, { type: \"goal_complete\", summary, evidence }, this.frenos);\n\t\tawait this.commit(current, next);\n\t\tif (stopLoop && next.status === \"complete\") {\n\t\t\tthis.emit(\"goal_finished\", { goalId, status: \"complete\", verdict: next.judge.lastVerdict });\n\t\t}\n\t\treturn next;\n\t}\n\n\t// ─── Pausa / bloqueo / preguntas ───\n\n\t/** Reemplaza la checklist completa (tool `todo`). */\n\tasync replaceTasks(goalId: string, tasks: Task[]): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_tasks\", tasks }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\t/**\n\t * P1: re-planificación completa. Genera un nuevo plan con el LLM\n\t * (replanFn) aprendiendo de la evidencia y del último veredicto del juez,\n\t * y arranca la iteración N+1. Sin replanFn → error suave (GoalError).\n\t */\n\tasync replan(goalId: string): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tif (!this.replanFn) throw new GoalError(\"replanFn no está configurado\", \"REPLAN_UNAVAILABLE\");\n\t\t// El motivo de una pausa por anti-cheat (\"el agente no cambió nada\") es\n\t\t// más accionable para replantear que el último veredicto del juez: dice\n\t\t// que el problema es el plan, no la ejecución. Si existe, manda.\n\t\tconst stalledReason = state.waiting?.reason?.includes(\"workspace sin cambios\") ? state.waiting.reason : undefined;\n\t\tconst replanned = await this.replanFn({\n\t\t\tgoal: state.goal,\n\t\t\tdoneCriteria: state.doneCriteria,\n\t\t\tverifyCommand: state.verifyCommand,\n\t\t\tevidence: state.evidence,\n\t\t\tcurrentTasks: state.tasks,\n\t\t\tlastVerdict: state.judge.lastVerdict,\n\t\t\tlastReason: stalledReason ?? state.judge.lastReason,\n\t\t});\n\t\tconst { state: next } = reduceGoal(\n\t\t\tstate,\n\t\t\t{ type: \"goal_replan\", tasks: replanned.tasks, rationale: replanned.rationale },\n\t\t\tthis.frenos,\n\t\t);\n\t\tawait this.commit(state, next);\n\t\tthis.emit(\"goal_update\", { goal: next });\n\t\treturn next;\n\t}\n\n\t/**\n\t * P1: re-planificación automática tras veredicto continue del juez.\n\t * Respeta el freno maxReplans; si se agota o no hay replanFn, hace el\n\t * reintento simple (comportamiento actual).\n\t */\n\tprivate async autoReplanAfterContinue(state: GoalState): Promise<GoalState> {\n\t\tconst maxReplans = this.frenos.maxReplans ?? 3;\n\t\t// El historial cuenta cuántas re-planificaciones ya se hicieron.\n\t\tconst replansDone = state.iterations.filter((it) => it.replanRationale).length;\n\t\tif (replansDone >= maxReplans || !this.replanFn) return state; // reintento simple\n\t\ttry {\n\t\t\treturn await this.replan(state.id);\n\t\t} catch {\n\t\t\treturn state; // fail-open: reintento simple\n\t\t}\n\t}\n\n\tasync pause(goalId: string, reason?: string): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_pause\", reason }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\tasync resume(goalId: string): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_resume\" }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\tasync blocked(goalId: string, reason: string): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_blocked\", reason }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\tasync askUser(goalId: string, reason: string, questions: AskUserQuestion[]): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_questions\", questions, reason }, this.frenos);\n\t\tawait this.commit(state, next);\n\t\tthis.emit(\"goal_question\", { goalId, questions });\n\t\treturn next;\n\t}\n\n\tasync answerQuestions(goalId: string, answers: Record<string, string[]>): Promise<GoalState> {\n\t\tconst state = await this.mustLoad(goalId);\n\t\tconst { state: next } = reduceGoal(state, { type: \"goal_answers\", answers }, this.frenos);\n\t\treturn this.commit(state, next);\n\t}\n\n\t// ─── Consultas ───\n\n\tasync get(goalId: string): Promise<GoalState | null> {\n\t\tconst cached = this.cache.get(goalId);\n\t\tif (cached) return cached;\n\t\tconst loaded = await this.persistence.load(goalId);\n\t\tif (loaded) this.cache.set(goalId, loaded);\n\t\treturn loaded;\n\t}\n\n\tasync list(): Promise<\n\t\tArray<{ id: string; goal: string; status: GoalState[\"status\"]; phase: GoalState[\"phase\"]; updatedAt: string }>\n\t> {\n\t\treturn this.persistence.list();\n\t}\n\n\t// ─── Frenos ───\n\n\tprivate checkBrakes(state: GoalState): { action: GoalAction; reason: string } | null {\n\t\t// ~/.ada-stop: freno de emergencia.\n\t\tif (this.frenos.stopFile && this.stopFileExists(this.frenos.stopFile)) {\n\t\t\treturn {\n\t\t\t\taction: { type: \"goal_pause\", reason: `stop-file presente: ${this.frenos.stopFile}` },\n\t\t\t\treason: \"stop-file\",\n\t\t\t};\n\t\t}\n\t\t// maxTurns.\n\t\tif (state.turnsUsed >= this.frenos.maxTurns) {\n\t\t\treturn {\n\t\t\t\taction: { type: \"goal_blocked\", reason: `máximo de ${this.frenos.maxTurns} turnos alcanzado` },\n\t\t\t\treason: \"maxTurns\",\n\t\t\t};\n\t\t}\n\t\t// Tokens.\n\t\tif (this.frenos.tokenBudget !== null && state.tokensUsed > this.frenos.tokenBudget) {\n\t\t\treturn { action: { type: \"goal_usage_limited\" }, reason: \"token budget\" };\n\t\t}\n\t\t// Coste.\n\t\tif (this.frenos.costBudget !== null && state.costUsed > this.frenos.costBudget) {\n\t\t\treturn { action: { type: \"goal_budget_limited\" }, reason: \"cost budget\" };\n\t\t}\n\t\t// waiting activo (resumeAfterMs: reanudar automáticamente si pasó).\n\t\tif (state.waiting) {\n\t\t\tif (\n\t\t\t\tstate.waiting.resumeAfterMs !== undefined &&\n\t\t\t\tDate.now() >= Date.parse(state.updatedAt) + state.waiting.resumeAfterMs\n\t\t\t) {\n\t\t\t\treturn null; // el tick puede continuar (el resume ocurre en commit)\n\t\t\t}\n\t\t\treturn { action: { type: \"goal_blocked\", reason: state.waiting.reason }, reason: \"waiting\" };\n\t\t}\n\t\treturn null;\n\t}\n\n\tprivate async mustLoad(goalId: string): Promise<GoalState> {\n\t\tconst state = await this.get(goalId);\n\t\tif (!state) throw new GoalError(`Goal no encontrado: ${goalId}`, \"GOAL_NOT_FOUND\");\n\t\treturn state;\n\t}\n\n\tprivate async commit(_before: GoalState, after: GoalState): Promise<GoalState> {\n\t\tthis.cache.set(after.id, after);\n\t\tawait this.persistence.save(after);\n\t\tthis.emit(\"goal_update\", { goal: after });\n\t\tthis.armWaitTimer(after);\n\t\treturn after;\n\t}\n\n\t/**\n\t * Temporizador de `goal_wait(resumeAfterMs)`.\n\t *\n\t * Las dos mitades ya existían: la tool guarda `resumeAfterMs` en\n\t * `state.waiting`, y `checkBrakes` libera el freno cuando el plazo vence.\n\t * Pero nadie re-evaluaba, así que \"espera 30 minutos\" significaba en la\n\t * práctica \"espera a que el humano vuelva a escribir\". Sondear un deploy o\n\t * esperar a CI no funcionaba.\n\t *\n\t * Un despertar espurio es inofensivo: `tick` tiene su lock y `checkBrakes`\n\t * vuelve a decidir.\n\t */\n\tprivate armWaitTimer(state: GoalState): void {\n\t\tconst previous = this._waitTimers.get(state.id);\n\t\tif (previous) {\n\t\t\tclearTimeout(previous);\n\t\t\tthis._waitTimers.delete(state.id);\n\t\t}\n\t\tif (state.status !== \"active\" && state.status !== \"blocked\") return;\n\t\tconst ms = state.waiting?.resumeAfterMs;\n\t\tif (ms === undefined) return;\n\t\tconst remaining = Date.parse(state.updatedAt) + ms - Date.now();\n\t\tconst timer = setTimeout(\n\t\t\t() => {\n\t\t\t\tthis._waitTimers.delete(state.id);\n\t\t\t\tvoid this.tick(state.id).catch(() => {});\n\t\t\t},\n\t\t\tMath.max(0, remaining),\n\t\t);\n\t\t// No mantener vivo el proceso solo por un goal dormido.\n\t\t(timer as unknown as { unref?: () => void }).unref?.();\n\t\tthis._waitTimers.set(state.id, timer);\n\t}\n\n\t/** Cancela los temporizadores pendientes (cierre de sesión, tests). */\n\tdispose(): void {\n\t\tfor (const timer of this._waitTimers.values()) clearTimeout(timer);\n\t\tthis._waitTimers.clear();\n\t}\n\n\tprivate emit<K extends keyof import(\"./types.ts\").GoalEventMap>(\n\t\ttype: K,\n\t\tpayload: import(\"./types.ts\").GoalEventMap[K],\n\t): void {\n\t\tthis.onEvent?.(type, payload);\n\t}\n}\n\n// ─── helpers ───\n\nimport { existsSync } from \"node:fs\";\n\nfunction fsExists(p: string): boolean {\n\ttry {\n\t\treturn existsSync(p);\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction randId(): string {\n\treturn Math.random().toString(36).slice(2, 7);\n}\n\nexport function isBrakeRelevant(reason: string): boolean {\n\treturn [\"stop-file\", \"maxTurns\", \"token budget\", \"cost budget\", \"repeat detector\", \"waiting\"].includes(reason);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/errors.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,MAAM,MAAM,aAAa,GACtB,gBAAgB,GAChB,uBAAuB,GACvB,eAAe,GACf,kBAAkB,GAClB,YAAY,GACZ,kBAAkB,GAClB,oBAAoB,CAAC;AAExB,qBAAa,SAAU,SAAQ,KAAK;IACnC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/errors.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,MAAM,MAAM,aAAa,GACtB,gBAAgB,GAChB,uBAAuB,GACvB,eAAe,GACf,kBAAkB,GAClB,YAAY,GACZ,kBAAkB,GAClB,oBAAoB,CAAC;AAExB,qBAAa,SAAU,SAAQ,KAAK;IACnC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;gBACjB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa;CAKhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/errors.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,SAAU,SAAQ,KAAK;IAC1B,IAAI,CAAgB;IAC7B,YAAY,OAAe,EAAE,IAAmB
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/errors.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,SAAU,SAAQ,KAAK;IAC1B,IAAI,CAAgB;IAC7B,YAAY,OAAe,EAAE,IAAmB;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AAEtD,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrF,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAChF,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjG,YAAY,EACX,eAAe,EACf,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACV,WAAW,EACX,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,UAAU,EACV,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,UAAU,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/index.ts"],"names":[],"mappings":"AAAA,sDAAsD;AAGtD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAErF,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAqBjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI7D,qBAAa,mBAAoB,YAAW,eAAe;IAC1D,OAAO,CAAC,GAAG,CAAS;
|
|
1
|
+
{"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI7D,qBAAa,mBAAoB,YAAW,eAAe;IAC1D,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,MAAM;IAKjB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAU3C,IAAI,IAAI,OAAO,CACpB,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAC9G;IA8BK,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcvC,8CAA8C;IAC9C,OAAO,CAAC,KAAK,CAAC,CAAyB;IACvC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IAI7C,OAAO,CAAC,IAAI;CAGZ;AAED,iEAAiE;AACjE,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAmDxD;AAED,wCAAwC;AACxC,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAI/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/persistence.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Ada Intelligence Engine — persistencia del Goal Engine.\n *\n * Checklist persistente en `<dir>/goals/<id>.md` (ralph-wiggum + rpiv-todo)\n * + snapshot JSON versionado en `<dir>/goals/<id>.json`. Sobrevive a /reload,\n * compactación y resume. Escrituras atómicas (tmp + rename).\n */\n\nimport { mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport type { GoalPersistence, GoalState } from \"./types.ts\";\n\nconst GOAL_STATE_VERSION = 1;\n\nexport class FileGoalPersistence implements GoalPersistence {\n\tprivate dir: string;\n\n\tconstructor(dir: string) {\n\t\tthis.dir = dir;\n\t\tmkdirSync(this.dir, { recursive: true });\n\t}\n\n\tasync save(state: GoalState): Promise<void> {\n\t\tconst snapshot = { version: GOAL_STATE_VERSION, state };\n\t\tconst json = JSON.stringify(snapshot, null, 2);\n\t\tconst md = renderChecklist(state);\n\n\t\tconst jsonPath = this.path(`${state.id}.json`);\n\t\tconst mdPath = this.path(`${state.id}.md`);\n\t\twriteAtomic(jsonPath, json);\n\t\twriteAtomic(mdPath, md);\n\t}\n\n\tasync load(id: string): Promise<GoalState | null> {\n\t\ttry {\n\t\t\tconst raw = readFileSync(this.path(`${id}.json`), \"utf8\");\n\t\t\tconst parsed = JSON.parse(raw) as { version?: number; state: GoalState };\n\t\t\treturn parsed.state;\n\t\t} catch {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tasync list(): Promise<\n\t\tArray<{ id: string; goal: string; status: GoalState[\"status\"]; phase: GoalState[\"phase\"]; updatedAt: string }>\n\t> {\n\t\tconst { readdirSync } = await import(\"node:fs\");\n\t\ttry {\n\t\t\tconst files = readdirSync(this.dir).filter((f) => f.endsWith(\".json\"));\n\t\t\tconst out: Array<{\n\t\t\t\tid: string;\n\t\t\t\tgoal: string;\n\t\t\t\tstatus: GoalState[\"status\"];\n\t\t\t\tphase: GoalState[\"phase\"];\n\t\t\t\tupdatedAt: string;\n\t\t\t}> = [];\n\t\t\tfor (const f of files) {\n\t\t\t\tconst state = await this.load(f.replace(/\\.json$/, \"\"));\n\t\t\t\tif (state) {\n\t\t\t\t\tout.push({\n\t\t\t\t\t\tid: state.id,\n\t\t\t\t\t\tgoal: state.goal,\n\t\t\t\t\t\tstatus: state.status,\n\t\t\t\t\t\tphase: state.phase,\n\t\t\t\t\t\tupdatedAt: state.updatedAt,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tout.sort((a, b) => b.updatedAt.localeCompare(a.updatedAt));\n\t\t\treturn out;\n\t\t} catch {\n\t\t\treturn [];\n\t\t}\n\t}\n\n\tasync remove(id: string): Promise<void> {\n\t\ttry {\n\t\t\trmSync(this.path(`${id}.json`), { force: true });\n\t\t} catch {\n\t\t\t// best-effort\n\t\t}\n\t\ttry {\n\t\t\trmSync(this.path(`${id}.md`), { force: true });\n\t\t} catch {\n\t\t\t// best-effort\n\t\t}\n\t\tthis.cache?.delete(id);\n\t}\n\n\t/** cache opcional para quitar del listado. */\n\tprivate cache?: Map<string, GoalState>;\n\tsetCache(cache: Map<string, GoalState>): void {\n\t\tthis.cache = cache;\n\t}\n\n\tprivate path(name: string): string {\n\t\treturn join(this.dir, name);\n\t}\n}\n\n/** Checklist en markdown — visible y editable por el usuario. */\nexport function renderChecklist(state: GoalState): string {\n\tconst lines: string[] = [];\n\tlines.push(`# Goal: ${state.goal}`);\n\tlines.push(\"\");\n\tlines.push(`- **id**: \\`${state.id}\\``);\n\tlines.push(`- **estado**: ${state.status}`);\n\tlines.push(`- **fase**: ${state.phase}`);\n\tlines.push(`- **turnos**: ${state.turnsUsed}`);\n\tlines.push(`- **creado**: ${state.createdAt}`);\n\tlines.push(\"\");\n\tlines.push(`## Contrato (pi-until-done)`);\n\tlines.push(\"\");\n\tlines.push(`**Hecho cuando:**`);\n\tstate.doneCriteria.forEach((c) => {\n\t\tlines.push(`- [ ] ${c}`);\n\t});\n\tlines.push(\"\");\n\tlines.push(`**Verificar con:** \\`${state.verifyCommand}\\``);\n\tlines.push(\"\");\n\tlines.push(\"## Tareas\");\n\tlines.push(\"\");\n\tif (state.tasks.length === 0) {\n\t\tlines.push(\"_sin plan todavía_\");\n\t} else {\n\t\tfor (const t of state.tasks) {\n\t\t\tconst mark = t.status === \"done\" ? \"x\" : t.status === \"active\" ? \"~\" : \" \";\n\t\t\tlines.push(`- [${mark}] ${t.title}${t.detail ? ` — ${t.detail}` : \"\"}`);\n\t\t}\n\t}\n\tlines.push(\"\");\n\tlines.push(\"## Evidencia\");\n\tlines.push(\"\");\n\tif (state.evidence.length === 0) {\n\t\tlines.push(\"_sin evidencia citada_\");\n\t} else {\n\t\tfor (const e of state.evidence) {\n\t\t\tlines.push(`- **${e.claim}** — ${e.source} (citado por ${e.citedBy})`);\n\t\t}\n\t}\n\tlines.push(\"\");\n\tif (state.judge.lastVerdict) {\n\t\tlines.push(`## Juez: ${state.judge.lastVerdict} — ${state.judge.lastReason ?? \"\"} (${state.judge.model})`);\n\t\tlines.push(\"\");\n\t}\n\tif (state.waiting) {\n\t\tlines.push(`## Esperando: ${state.waiting.reason}`);\n\t\tlines.push(\"\");\n\t}\n\tlines.push(\"---\");\n\tlines.push(`_Actualizado: ${state.updatedAt}_`);\n\treturn lines.join(\"\\n\");\n}\n\n/** Escritura atómica (tmp + rename). */\nexport function writeAtomic(path: string, content: string): void {\n\tconst tmp = `${path}.tmp`;\n\twriteFileSync(tmp, content, \"utf8\");\n\trenameSync(tmp, path);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/persistence.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAyChE;AAqBD,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,KAAK,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CA6BpE;AAGD,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE5D,
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAyChE;AAqBD,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,KAAK,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CA6BpE;AAGD,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE5D,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9C,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAmCT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/prompts.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Ada Intelligence Engine — prompts del Goal Engine.\n *\n * buildGoalWorkPrompt: el agente que trabaja en una fase TDD concreta.\n * buildGoalJudgePrompt: el JUEZ (cross-model recomendado) — revisa SOLO\n * goal + criteria + evidencia citada → {verdict: done|continue, reason}.\n * Sin herramientas: no puede tocar archivos ni afirmar nada que no esté\n * citado en la evidencia (pi-until-done: \"criteria LITERALLY satisfied\").\n */\n\nimport type { GoalWorkInput } from \"./types.ts\";\n\nexport function buildGoalWorkPrompt(input: GoalWorkInput): string {\n\tconst tasks = input.tasks\n\t\t.map(\n\t\t\t(t) =>\n\t\t\t\t`- [${t.status === \"done\" ? \"x\" : t.status === \"active\" ? \"~\" : \" \"}] ${t.title}${t.detail ? ` — ${t.detail}` : \"\"}`,\n\t\t)\n\t\t.join(\"\\n\");\n\tconst evidence =\n\t\tinput.evidence.map((e) => `- ${e.claim} — ${e.source} (citado por ${e.citedBy})`).join(\"\\n\") ||\n\t\t\"_sin evidencia todavía_\";\n\n\treturn [\n\t\t`Estás trabajando en un goal dentro del Ada Intelligence Engine.`,\n\t\t``,\n\t\t`## Goal (verbatim)`,\n\t\tinput.goal,\n\t\t``,\n\t\t`## Fase actual (orden TDD fijo — no puedes saltarte fases)`,\n\t\tinput.phase,\n\t\t``,\n\t\t`## Contrato — Hecho cuando:`,\n\t\tinput.doneCriteria.map((c, i) => `${i + 1}. ${c}`).join(\"\\n\"),\n\t\t``,\n\t\t`## Verificación (comando re-ejecutable)`,\n\t\t`\\`${input.verifyCommand}\\``,\n\t\t``,\n\t\t`## Checklist`,\n\t\ttasks || \"_sin plan todavía_\",\n\t\t``,\n\t\t`## Evidencia citada hasta ahora`,\n\t\tevidence,\n\t\t``,\n\t\t`## Tu tarea en esta fase`,\n\t\tfaseInstruction(input.phase),\n\t\t``,\n\t\t`Turno ${input.turn}/${input.maxTurns}. Trabaja de forma incremental:`,\n\t\t`- Ejecuta los comandos reales (npx, npm, git) para verificar lo que haces.`,\n\t\t`- Cita evidencia con archivo:línea exacta o URL cuando afirmes algo.`,\n\t\t`- No marques nada como hecho sin verificarlo.`,\n\t\t`- Termina con un resumen de 1-3 frases de lo que hiciste en ESTE turno (no del goal completo).`,\n\t].join(\"\\n\");\n}\n\nfunction faseInstruction(phase: string): string {\n\tswitch (phase) {\n\t\tcase \"analysis\":\n\t\t\treturn \"Analiza el estado actual: lee los archivos relevantes, identifica lo que hay que hacer y propón el plan de tareas. No edites todavía.\";\n\t\tcase \"bootstrap\":\n\t\t\treturn \"Prepara el andamiaje: configuración inicial, estructura, dependencias. No escribas tests que fallan ni implementación todavía.\";\n\t\tcase \"red\":\n\t\t\treturn \"Escribe UN test que falle (RED) para el comportamiento más importante del contrato. Ejecútalo y confirma que falla por la razón correcta.\";\n\t\tcase \"green\":\n\t\t\treturn \"Implementa el mínimo necesario para que el test pase (GREEN). Ejecuta el test y confirma que pasa.\";\n\t\tcase \"refactor\":\n\t\t\treturn \"Refactoriza sin cambiar comportamiento: todos los tests deben seguir pasando. Elimina duplicación.\";\n\t\tcase \"verify\":\n\t\t\treturn \"Verificación final: ejecuta el comando de verificación del contrato y todos los tests. Reúne la evidencia para el juez.\";\n\t\tdefault:\n\t\t\treturn \"Continúa el trabajo según el contrato.\";\n\t}\n}\n\nexport interface JudgePromptInput {\n\tgoal: string;\n\tdoneCriteria: string[];\n\tverifyCommand: string;\n\tevidence: Array<{ claim: string; source: string; citedBy: string }>;\n\tphase: string;\n}\n\nexport function buildGoalJudgePrompt(input: JudgePromptInput): string {\n\tconst criteria = input.doneCriteria.map((c, i) => `${i + 1}. ${c}`).join(\"\\n\");\n\tconst evidence =\n\t\tinput.evidence.map((e) => `- ${e.claim} — ${e.source} (citado por ${e.citedBy})`).join(\"\\n\") ||\n\t\t\"_NO HAY EVIDENCIA_\";\n\treturn [\n\t\t`Eres el JUEZ de un goal. Tu única tarea: decidir si el goal está COMPLETO.`,\n\t\t``,\n\t\t`## Goal`,\n\t\tinput.goal,\n\t\t``,\n\t\t`## Criterios de hechura (deben cumplirse LITERALMENTE)`,\n\t\tcriteria,\n\t\t``,\n\t\t`## Comando de verificación`,\n\t\t`\\`${input.verifyCommand}\\``,\n\t\t``,\n\t\t`## Evidencia citada (la ÚNICA fuente de verdad — no puedes suponer nada)`,\n\t\tevidence,\n\t\t``,\n\t\t`## Reglas`,\n\t\t`1. Solo puedes evaluar lo que la evidencia demuestra. Un \"hecho\" sin cita archivo:línea o URL NO cuenta.`,\n\t\t`2. Rechaza señales proxy: decir \"se ha completado\" sin prueba no es suficiente.`,\n\t\t`3. Si TODOS los criterios están satisfechos con evidencia citada → verdict \"done\".`,\n\t\t`4. Si falta alguno o la evidencia no es concluyente → verdict \"continue\" y explica EXACTAMENTE qué falta.`,\n\t\t`5. Nunca des \"done\" por cortesía: los criterios se cumplen literalmente o no.`,\n\t\t``,\n\t\t`Responde SOLO con JSON: {\"verdict\": \"done\" | \"continue\", \"reason\": \"explicación concisa\"}`,\n\t].join(\"\\n\");\n}\n\n// Re-export para el wiring del resource-loader.\nexport type { GoalJudgeFn, GoalReplanFn } from \"./types.ts\";\n\n/** Prompt de re-planificación (P1): nuevo plan completo tras continue. */\nexport function buildGoalReplanPrompt(input: {\n\tgoal: string;\n\tdoneCriteria: string[];\n\tverifyCommand: string;\n\tevidence: { claim: string; source: string }[];\n\tcurrentTasks: string[];\n\tlastReason?: string;\n}): string {\n\tconst criteria = input.doneCriteria.map((c, i) => `${i + 1}. ${c}`).join(\"\\n\");\n\tconst evidence = input.evidence.map((e) => `- ${e.claim} — ${e.source}`).join(\"\\n\") || \"_NO HAY EVIDENCIA_\";\n\tconst current = input.currentTasks.length\n\t\t? input.currentTasks.map((t, i) => `${i + 1}. ${t}`).join(\"\\n\")\n\t\t: \"_SIN PLAN_\";\n\treturn [\n\t\t`Eres el PLANIFICADOR de un goal. Debes generar un NUEVO plan de sub-tareas completo para lograr el goal, aprendiendo de la iteración anterior.`,\n\t\t``,\n\t\t`## Goal`,\n\t\tinput.goal,\n\t\t``,\n\t\t`## Criterios de hechura (contrato literal)`,\n\t\tcriteria,\n\t\t``,\n\t\t`## Comando de verificación`,\n\t\t`\\`${input.verifyCommand}\\``,\n\t\t``,\n\t\t`## Plan actual (que NO logró el goal)`,\n\t\tcurrent,\n\t\t``,\n\t\t`## Por qué falló según el juez`,\n\t\tinput.lastReason ?? \"_sin razón_\",\n\t\t``,\n\t\t`## Evidencia acumulada (lo que ya se sabe)`,\n\t\tevidence,\n\t\t``,\n\t\t`## Reglas`,\n\t\t`1. Genera un plan DIFERENTE al actual: ataca la causa raíz del fallo (ver por qué falló). No repitas las mismas sub-tareas con otros nombres.`,\n\t\t`2. Máximo 6 sub-tareas, cada una verificable e independiente en lo posible.`,\n\t\t`3. No pidas permisos ni aprobaciones inline: el plan se aprueba fuera.`,\n\t\t`4. Si el plan actual coincide con el nuevo, el juez no debería volver a fallar por lo mismo.`,\n\t\t``,\n\t\t`Responde SOLO con JSON: {\"tasks\": [{\"title\": \"sub-tarea 1\"}, ...], \"rationale\": \"por qué este plan nuevo sí logra el goal\"}`,\n\t].join(\"\\n\");\n}\n"]}
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/prompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAgB,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AAE/G,eAAO,MAAM,UAAU,EAAE,SAAS,EAA4E,CAAC;AAE/G,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAGrD;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,SAAS,CAsBZ;AAMD,MAAM,WAAW,YAAY;IAC5B,KAAK,EAAE,SAAS,CAAC;IACjB,2CAA2C;IAC3C,MAAM,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,OAAO,EAAE,CAAA;SAAE,CAAC;QACjD,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC;KACzB,CAAC,CAAC;IACH,yDAAwD;IACxD,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,qFAAoF;AACpF,wBAAgB,UAAU,CACzB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,UAOR,GACC,YAAY,CAmWd","sourcesContent":["/**\n * Ada Intelligence Engine — Goal Engine reducer (puro).\n *\n * Reducer determinista: todas las transiciones de estado pasan por aquí.\n * Reglas de seguridad integradas:\n * - El goal se rota (nuevo id) al editar/reanudar → un turno viejo (id viejo)\n * no puede completar el goal nuevo (guards anti-duplicados).\n * - Las fases TDD son un orden FIJO (código, no elección del modelo).\n * - `goal_complete` exige evidencia citada y juez con verdict done.\n * - Un turno vacío/idéntico incrementa repeatedTurns → pause a la tolerancia.\n */\n\nimport type { EvidenceItem, GoalAction, GoalFrenos, GoalPhase, GoalState, Task, TaskStatus } from \"./types.ts\";\n\nexport const TDD_PHASES: GoalPhase[] = [\"analysis\", \"bootstrap\", \"red\", \"green\", \"refactor\", \"verify\", \"done\"];\n\nexport function nextPhase(phase: GoalPhase): GoalPhase {\n\tconst i = TDD_PHASES.indexOf(phase);\n\treturn i >= 0 && i < TDD_PHASES.length - 1 ? TDD_PHASES[i + 1] : phase;\n}\n\n/** Crea un goal en estado setup (contrato primero, sin trabajo). */\nexport function createGoalState(input: {\n\tgoal: string;\n\tdoneCriteria: string[];\n\tverifyCommand: string;\n\tid?: string;\n\tnow?: string;\n\tsessionId?: string;\n}): GoalState {\n\treturn {\n\t\tid: input.id ?? `goal-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 7)}`,\n\t\tgoal: input.goal,\n\t\tsessionId: input.sessionId,\n\t\tphase: \"analysis\",\n\t\tstatus: \"setup\",\n\t\tdoneCriteria: input.doneCriteria,\n\t\tverifyCommand: input.verifyCommand,\n\t\ttasks: [],\n\t\titeration: 1,\n\t\titerations: [],\n\t\tevidence: [],\n\t\tjudge: { model: null },\n\t\tturnsUsed: 0,\n\t\ttokensUsed: 0,\n\t\tcostUsed: 0,\n\t\trepeatedTurns: 0,\n\t\tlastAgentSummary: \"\",\n\t\tcreatedAt: input.now ?? new Date().toISOString(),\n\t\tupdatedAt: input.now ?? new Date().toISOString(),\n\t};\n}\n\nfunction taskFrom(action: { taskId: string; status: TaskStatus }, tasks: Task[]): Task | undefined {\n\treturn tasks.find((t) => t.id === action.taskId);\n}\n\nexport interface ReduceResult {\n\tstate: GoalState;\n\t/** Transiciones que la UI debe conocer. */\n\tevents: Array<{\n\t\tphase?: GoalPhase;\n\t\tpaused?: boolean;\n\t\treplan?: { iteration: number; tasks: unknown[] };\n\t\ttasksChanged?: unknown[];\n\t}>;\n\t/** true si el bucle debe detenerse tras esta acción. */\n\tstopLoop: boolean;\n}\n\n/** Reduce una acción sobre el estado. Devuelve nuevo estado + eventos derivados. */\nexport function reduceGoal(\n\tstate: GoalState,\n\taction: GoalAction,\n\t_frenos: GoalFrenos = {\n\t\tmaxTurns: 25,\n\t\trepeatTolerance: 3,\n\t\tstopFile: null,\n\t\ttokenBudget: null,\n\t\tcostBudget: null,\n\t\taskBefore: [],\n\t},\n): ReduceResult {\n\tconst events: ReduceResult[\"events\"] = [];\n\tconst stopLoop = false;\n\n\tswitch (action.type) {\n\t\tcase \"goal_approve\": {\n\t\t\tif (state.status !== \"setup\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"active\", updatedAt: now() },\n\t\t\t\tevents: [{ phase: \"analysis\" }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_add\": {\n\t\t\t// TODO personalizado: añade una tarea sin reemplazar el plan.\n\t\t\tconst title = action.title.trim();\n\t\t\tif (!title) return { state, events, stopLoop };\n\t\t\tconst newTask: Task = {\n\t\t\t\tid: `task-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 6)}`,\n\t\t\t\ttitle,\n\t\t\t\tstatus: \"pending\",\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks: [...state.tasks, newTask], updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_tasks\": {\n\t\t\t// Solo planificar en planning/active; reemplaza el plan.\n\t\t\tif (state.status !== \"active\" && state.status !== \"planning\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks: action.tasks, status: \"active\", updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_launched\": {\n\t\t\t// El workflow dinámico de la sub-tarea está en marcha (un turno gastado).\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: state.tasks.map((t) =>\n\t\t\t\t\t\tt.id === action.taskId\n\t\t\t\t\t\t\t? { ...t, status: \"running\" as TaskStatus, workflowRunId: action.workflowRunId }\n\t\t\t\t\t\t\t: t,\n\t\t\t\t\t),\n\t\t\t\t\tturnsUsed: state.turnsUsed + 1,\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_result\": {\n\t\t\t// El workflow de la sub-tarea terminó (done/failed) con resumen.\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: state.tasks.map((t) =>\n\t\t\t\t\t\tt.id === action.taskId\n\t\t\t\t\t\t\t? { ...t, status: action.status, resultSummary: action.summary ?? t.resultSummary }\n\t\t\t\t\t\t\t: t,\n\t\t\t\t\t),\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_replan\": {\n\t\t\t// P1: re-planificación completa. Nueva iteración, nuevo plan,\n\t\t\t// historial anexado. Solo si el contrato está aprobado y el plan\n\t\t\t// cambia materialmente (o no hay plan).\n\t\t\tconst clean = action.tasks\n\t\t\t\t.filter((t) => t.title?.trim())\n\t\t\t\t.map((t, i) => ({\n\t\t\t\t\tid: `task-${Date.now().toString(36)}-${i}-${Math.random().toString(36).slice(2, 5)}`,\n\t\t\t\t\ttitle: t.title.trim(),\n\t\t\t\t\tstatus: \"pending\" as TaskStatus,\n\t\t\t\t}));\n\t\t\tconst samePlan =\n\t\t\t\tstate.tasks.length === clean.length &&\n\t\t\t\tstate.tasks.length > 0 &&\n\t\t\t\tstate.tasks.every((t, i) => t.title.trim() === clean[i]?.title);\n\t\t\t// Sin cambio real del plan → no iterar (evita loops vacíos).\n\t\t\tif (samePlan) return { state, events, stopLoop: true };\n\t\t\tconst record = {\n\t\t\t\titeration: state.iteration,\n\t\t\t\tplan: state.tasks.map((t) => ({ ...t })),\n\t\t\t\tverdict: state.judge.lastVerdict,\n\t\t\t\treason: state.judge.lastReason ?? state.replanRationale,\n\t\t\t\treplanRationale: action.rationale,\n\t\t\t\ttokensUsed: state.tokensUsed,\n\t\t\t\tcostUsed: state.costUsed,\n\t\t\t\ttimestamp: now(),\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: clean,\n\t\t\t\t\titeration: state.iteration + 1,\n\t\t\t\t\titerations: [...state.iterations, record],\n\t\t\t\t\treplanRationale: action.rationale,\n\t\t\t\t\trepeatedTurns: 0, // plan nuevo → reset del repeat detector\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents: [{ replan: { iteration: state.iteration + 1, tasks: clean } }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_remove\": {\n\t\t\t// P2: quitar una sub-tarea (no ejecutada).\n\t\t\tconst target = state.tasks.find((t) => t.id === action.taskId);\n\t\t\t// No se puede quitar una sub-tarea con workflow en marcha aquí\n\t\t\t// (el manager la aborta primero vía goal_task_result).\n\t\t\tif (!target || target.status === \"running\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: state.tasks.filter((t) => t.id !== action.taskId),\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents: [{ tasksChanged: state.tasks.filter((t) => t.id !== action.taskId) }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_move\": {\n\t\t\t// P2: reordenar (arriba/abajo) en cualquier fase.\n\t\t\tconst idx = state.tasks.findIndex((t) => t.id === action.taskId);\n\t\t\tif (idx === -1) return { state, events, stopLoop };\n\t\t\tconst target = idx + (action.dir === \"up\" ? -1 : 1);\n\t\t\tif (target < 0 || target >= state.tasks.length) return { state, events, stopLoop };\n\t\t\tconst tasks = [...state.tasks];\n\t\t\t[tasks[idx], tasks[target]] = [tasks[target], tasks[idx]];\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks, updatedAt: now() },\n\t\t\t\tevents: [{ tasksChanged: tasks }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_update\": {\n\t\t\tconst task = taskFrom(action, state.tasks);\n\t\t\tif (!task) return { state, events, stopLoop };\n\t\t\tconst tasks = state.tasks.map((t) => (t.id === action.taskId ? { ...t, status: action.status } : t));\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_phase\": {\n\t\t\t// Orden fijo TDD: solo avanzar a la siguiente fase.\n\t\t\tif (action.phase !== nextPhase(state.phase)) return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, phase: action.phase, updatedAt: now() },\n\t\t\t\tevents: [{ phase: action.phase }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_agent_turn\": {\n\t\t\t// El turno del agente: incrementa contadores, detecta repetición.\n\t\t\tconst summary = action.summary ?? \"\";\n\t\t\tconst repeated = summary.trim().length === 0 || summary === state.lastAgentSummary;\n\t\t\tconst repeatedTurns = repeated ? state.repeatedTurns + 1 : 0;\n\t\t\tconst turnsUsed = state.turnsUsed + 1;\n\t\t\tlet next: GoalState = {\n\t\t\t\t...state,\n\t\t\t\tturnsUsed,\n\t\t\t\trepeatedTurns,\n\t\t\t\tlastAgentSummary: summary,\n\t\t\t\ttokensUsed: state.tokensUsed + (action.tokens ?? 0),\n\t\t\t\tcostUsed: state.costUsed + (action.cost ?? 0),\n\t\t\t\tupdatedAt: now(),\n\t\t\t};\n\t\t\tif (action.evidence?.length) {\n\t\t\t\t// No duplicar evidencia idéntica.\n\t\t\t\tconst existing = new Set(state.evidence.map((e) => `${e.claim}|${e.source}`));\n\t\t\t\tconst fresh = action.evidence.filter((e) => !existing.has(`${e.claim}|${e.source}`));\n\t\t\t\tnext = { ...next, evidence: [...state.evidence, ...fresh] };\n\t\t\t}\n\t\t\tif (action.tasks?.length) {\n\t\t\t\tconst tasks = next.tasks.map((t) => {\n\t\t\t\t\tconst u = action.tasks!.find((x) => x.taskId === t.id);\n\t\t\t\t\treturn u ? { ...t, status: u.status } : t;\n\t\t\t\t});\n\t\t\t\tnext = { ...next, tasks };\n\t\t\t}\n\t\t\treturn { state: next, events, stopLoop };\n\t\t}\n\n\t\tcase \"goal_pause\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"paused\",\n\t\t\t\t\twaiting: { reason: action.reason ?? \"pausado por el usuario\" },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_resume\": {\n\t\t\tif (state.status !== \"paused\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"active\", waiting: undefined, repeatedTurns: 0, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_blocked\": {\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"blocked\", waiting: { reason: action.reason }, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_wait\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"paused\",\n\t\t\t\t\twaiting: { reason: action.reason, resumeAfterMs: action.resumeAfterMs },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_questions\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"blocked\",\n\t\t\t\t\tpendingQuestions: action.questions,\n\t\t\t\t\twaiting: { reason: action.reason },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_answers\": {\n\t\t\t// Las respuestas limpian el bloqueo y reactivan.\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"active\", pendingQuestions: undefined, waiting: undefined, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_usage_limited\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"usage_limited\",\n\t\t\t\t\twaiting: { reason: \"Presupuesto de tokens agotado\" },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_budget_limited\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"budget_limited\",\n\t\t\t\t\twaiting: { reason: \"Presupuesto de coste agotado\" },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_judge\": {\n\t\t\t// Al veredictar se anexa la iteración actual al historial (P3):\n\t\t\t// veredicto + razón en el registro de la iteración en curso.\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tjudge: {\n\t\t\t\t\t\tmodel: action.crossModel ? \"cross\" : \"same\",\n\t\t\t\t\t\tlastVerdict: action.verdict,\n\t\t\t\t\t\tlastReason: action.reason,\n\t\t\t\t\t},\n\t\t\t\t\titerations: state.iterations.map((it) =>\n\t\t\t\t\t\tit.iteration === state.iteration ? { ...it, verdict: action.verdict, reason: action.reason } : it,\n\t\t\t\t\t),\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_complete\": {\n\t\t\t// JUEZ OBLIGATORIO (pi-until-done): sin veredicto done NO hay\n\t\t\t// completación — continue bloquea done; nunca bypass.\n\t\t\tif (state.status === \"complete\") return { state, events, stopLoop: true };\n\t\t\tif (state.judge.lastVerdict !== \"done\") {\n\t\t\t\treturn {\n\t\t\t\t\tstate: {\n\t\t\t\t\t\t...state,\n\t\t\t\t\t\twaiting: { reason: \"goal_complete requiere veredicto done del juez (sin bypass)\" },\n\t\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t\t},\n\t\t\t\t\tevents,\n\t\t\t\t\tstopLoop: true,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Evidencia citada obligatoria (archivo:línea / URL).\n\t\t\tif (action.evidence.length === 0 && state.evidence.length === 0) {\n\t\t\t\treturn {\n\t\t\t\t\tstate: { ...state, waiting: { reason: \"goal_complete exige evidencia citada\" }, updatedAt: now() },\n\t\t\t\t\tevents,\n\t\t\t\t\tstopLoop: true,\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst merged: EvidenceItem[] = mergeEvidence(state.evidence, action.evidence);\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"complete\",\n\t\t\t\t\tphase: \"done\",\n\t\t\t\t\tevidence: merged,\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t\twaiting: undefined,\n\t\t\t\t},\n\t\t\t\tevents: [{ phase: \"done\" }],\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tdefault:\n\t\t\treturn { state, events, stopLoop };\n\t}\n}\n\nfunction mergeEvidence(a: EvidenceItem[], b: EvidenceItem[]): EvidenceItem[] {\n\tconst seen = new Set(a.map((e) => `${e.claim}|${e.source}`));\n\treturn [...a, ...b.filter((e) => !seen.has(`${e.claim}|${e.source}`))];\n}\n\nfunction now(): string {\n\treturn new Date().toISOString();\n}\n"]}
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAgB,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AAE/G,eAAO,MAAM,UAAU,EAAE,SAAS,EAA4E,CAAC;AAE/G,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAGrD;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,SAAS,CAsBZ;AAMD,MAAM,WAAW,YAAY;IAC5B,KAAK,EAAE,SAAS,CAAC;IACjB,2CAA2C;IAC3C,MAAM,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,OAAO,EAAE,CAAA;SAAE,CAAC;QACjD,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC;KACzB,CAAC,CAAC;IACH,wDAAwD;IACxD,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CACzB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,UAOR,GACC,YAAY,CAmWd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/state.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Ada Intelligence Engine — Goal Engine reducer (puro).\n *\n * Reducer determinista: todas las transiciones de estado pasan por aquí.\n * Reglas de seguridad integradas:\n * - El goal se rota (nuevo id) al editar/reanudar → un turno viejo (id viejo)\n * no puede completar el goal nuevo (guards anti-duplicados).\n * - Las fases TDD son un orden FIJO (código, no elección del modelo).\n * - `goal_complete` exige evidencia citada y juez con verdict done.\n * - Un turno vacío/idéntico incrementa repeatedTurns → pause a la tolerancia.\n */\n\nimport type { EvidenceItem, GoalAction, GoalFrenos, GoalPhase, GoalState, Task, TaskStatus } from \"./types.ts\";\n\nexport const TDD_PHASES: GoalPhase[] = [\"analysis\", \"bootstrap\", \"red\", \"green\", \"refactor\", \"verify\", \"done\"];\n\nexport function nextPhase(phase: GoalPhase): GoalPhase {\n\tconst i = TDD_PHASES.indexOf(phase);\n\treturn i >= 0 && i < TDD_PHASES.length - 1 ? TDD_PHASES[i + 1] : phase;\n}\n\n/** Crea un goal en estado setup (contrato primero, sin trabajo). */\nexport function createGoalState(input: {\n\tgoal: string;\n\tdoneCriteria: string[];\n\tverifyCommand: string;\n\tid?: string;\n\tnow?: string;\n\tsessionId?: string;\n}): GoalState {\n\treturn {\n\t\tid: input.id ?? `goal-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 7)}`,\n\t\tgoal: input.goal,\n\t\tsessionId: input.sessionId,\n\t\tphase: \"analysis\",\n\t\tstatus: \"setup\",\n\t\tdoneCriteria: input.doneCriteria,\n\t\tverifyCommand: input.verifyCommand,\n\t\ttasks: [],\n\t\titeration: 1,\n\t\titerations: [],\n\t\tevidence: [],\n\t\tjudge: { model: null },\n\t\tturnsUsed: 0,\n\t\ttokensUsed: 0,\n\t\tcostUsed: 0,\n\t\trepeatedTurns: 0,\n\t\tlastAgentSummary: \"\",\n\t\tcreatedAt: input.now ?? new Date().toISOString(),\n\t\tupdatedAt: input.now ?? new Date().toISOString(),\n\t};\n}\n\nfunction taskFrom(action: { taskId: string; status: TaskStatus }, tasks: Task[]): Task | undefined {\n\treturn tasks.find((t) => t.id === action.taskId);\n}\n\nexport interface ReduceResult {\n\tstate: GoalState;\n\t/** Transiciones que la UI debe conocer. */\n\tevents: Array<{\n\t\tphase?: GoalPhase;\n\t\tpaused?: boolean;\n\t\treplan?: { iteration: number; tasks: unknown[] };\n\t\ttasksChanged?: unknown[];\n\t}>;\n\t/** true si el bucle debe detenerse tras esta acción. */\n\tstopLoop: boolean;\n}\n\n/** Reduce una acción sobre el estado. Devuelve nuevo estado + eventos derivados. */\nexport function reduceGoal(\n\tstate: GoalState,\n\taction: GoalAction,\n\t_frenos: GoalFrenos = {\n\t\tmaxTurns: 25,\n\t\trepeatTolerance: 3,\n\t\tstopFile: null,\n\t\ttokenBudget: null,\n\t\tcostBudget: null,\n\t\taskBefore: [],\n\t},\n): ReduceResult {\n\tconst events: ReduceResult[\"events\"] = [];\n\tconst stopLoop = false;\n\n\tswitch (action.type) {\n\t\tcase \"goal_approve\": {\n\t\t\tif (state.status !== \"setup\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"active\", updatedAt: now() },\n\t\t\t\tevents: [{ phase: \"analysis\" }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_add\": {\n\t\t\t// TODO personalizado: añade una tarea sin reemplazar el plan.\n\t\t\tconst title = action.title.trim();\n\t\t\tif (!title) return { state, events, stopLoop };\n\t\t\tconst newTask: Task = {\n\t\t\t\tid: `task-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 6)}`,\n\t\t\t\ttitle,\n\t\t\t\tstatus: \"pending\",\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks: [...state.tasks, newTask], updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_tasks\": {\n\t\t\t// Solo planificar en planning/active; reemplaza el plan.\n\t\t\tif (state.status !== \"active\" && state.status !== \"planning\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks: action.tasks, status: \"active\", updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_launched\": {\n\t\t\t// El workflow dinámico de la sub-tarea está en marcha (un turno gastado).\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: state.tasks.map((t) =>\n\t\t\t\t\t\tt.id === action.taskId\n\t\t\t\t\t\t\t? { ...t, status: \"running\" as TaskStatus, workflowRunId: action.workflowRunId }\n\t\t\t\t\t\t\t: t,\n\t\t\t\t\t),\n\t\t\t\t\tturnsUsed: state.turnsUsed + 1,\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_result\": {\n\t\t\t// El workflow de la sub-tarea terminó (done/failed) con resumen.\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: state.tasks.map((t) =>\n\t\t\t\t\t\tt.id === action.taskId\n\t\t\t\t\t\t\t? { ...t, status: action.status, resultSummary: action.summary ?? t.resultSummary }\n\t\t\t\t\t\t\t: t,\n\t\t\t\t\t),\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_replan\": {\n\t\t\t// P1: re-planificación completa. Nueva iteración, nuevo plan,\n\t\t\t// historial anexado. Solo si el contrato está aprobado y el plan\n\t\t\t// cambia materialmente (o no hay plan).\n\t\t\tconst clean = action.tasks\n\t\t\t\t.filter((t) => t.title?.trim())\n\t\t\t\t.map((t, i) => ({\n\t\t\t\t\tid: `task-${Date.now().toString(36)}-${i}-${Math.random().toString(36).slice(2, 5)}`,\n\t\t\t\t\ttitle: t.title.trim(),\n\t\t\t\t\tstatus: \"pending\" as TaskStatus,\n\t\t\t\t}));\n\t\t\tconst samePlan =\n\t\t\t\tstate.tasks.length === clean.length &&\n\t\t\t\tstate.tasks.length > 0 &&\n\t\t\t\tstate.tasks.every((t, i) => t.title.trim() === clean[i]?.title);\n\t\t\t// Sin cambio real del plan → no iterar (evita loops vacíos).\n\t\t\tif (samePlan) return { state, events, stopLoop: true };\n\t\t\tconst record = {\n\t\t\t\titeration: state.iteration,\n\t\t\t\tplan: state.tasks.map((t) => ({ ...t })),\n\t\t\t\tverdict: state.judge.lastVerdict,\n\t\t\t\treason: state.judge.lastReason ?? state.replanRationale,\n\t\t\t\treplanRationale: action.rationale,\n\t\t\t\ttokensUsed: state.tokensUsed,\n\t\t\t\tcostUsed: state.costUsed,\n\t\t\t\ttimestamp: now(),\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: clean,\n\t\t\t\t\titeration: state.iteration + 1,\n\t\t\t\t\titerations: [...state.iterations, record],\n\t\t\t\t\treplanRationale: action.rationale,\n\t\t\t\t\trepeatedTurns: 0, // plan nuevo → reset del repeat detector\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents: [{ replan: { iteration: state.iteration + 1, tasks: clean } }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_remove\": {\n\t\t\t// P2: quitar una sub-tarea (no ejecutada).\n\t\t\tconst target = state.tasks.find((t) => t.id === action.taskId);\n\t\t\t// No se puede quitar una sub-tarea con workflow en marcha aquí\n\t\t\t// (el manager la aborta primero vía goal_task_result).\n\t\t\tif (!target || target.status === \"running\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\ttasks: state.tasks.filter((t) => t.id !== action.taskId),\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents: [{ tasksChanged: state.tasks.filter((t) => t.id !== action.taskId) }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_move\": {\n\t\t\t// P2: reordenar (arriba/abajo) en cualquier fase.\n\t\t\tconst idx = state.tasks.findIndex((t) => t.id === action.taskId);\n\t\t\tif (idx === -1) return { state, events, stopLoop };\n\t\t\tconst target = idx + (action.dir === \"up\" ? -1 : 1);\n\t\t\tif (target < 0 || target >= state.tasks.length) return { state, events, stopLoop };\n\t\t\tconst tasks = [...state.tasks];\n\t\t\t[tasks[idx], tasks[target]] = [tasks[target], tasks[idx]];\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks, updatedAt: now() },\n\t\t\t\tevents: [{ tasksChanged: tasks }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_task_update\": {\n\t\t\tconst task = taskFrom(action, state.tasks);\n\t\t\tif (!task) return { state, events, stopLoop };\n\t\t\tconst tasks = state.tasks.map((t) => (t.id === action.taskId ? { ...t, status: action.status } : t));\n\t\t\treturn {\n\t\t\t\tstate: { ...state, tasks, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_phase\": {\n\t\t\t// Orden fijo TDD: solo avanzar a la siguiente fase.\n\t\t\tif (action.phase !== nextPhase(state.phase)) return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, phase: action.phase, updatedAt: now() },\n\t\t\t\tevents: [{ phase: action.phase }],\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_agent_turn\": {\n\t\t\t// El turno del agente: incrementa contadores, detecta repetición.\n\t\t\tconst summary = action.summary ?? \"\";\n\t\t\tconst repeated = summary.trim().length === 0 || summary === state.lastAgentSummary;\n\t\t\tconst repeatedTurns = repeated ? state.repeatedTurns + 1 : 0;\n\t\t\tconst turnsUsed = state.turnsUsed + 1;\n\t\t\tlet next: GoalState = {\n\t\t\t\t...state,\n\t\t\t\tturnsUsed,\n\t\t\t\trepeatedTurns,\n\t\t\t\tlastAgentSummary: summary,\n\t\t\t\ttokensUsed: state.tokensUsed + (action.tokens ?? 0),\n\t\t\t\tcostUsed: state.costUsed + (action.cost ?? 0),\n\t\t\t\tupdatedAt: now(),\n\t\t\t};\n\t\t\tif (action.evidence?.length) {\n\t\t\t\t// No duplicar evidencia idéntica.\n\t\t\t\tconst existing = new Set(state.evidence.map((e) => `${e.claim}|${e.source}`));\n\t\t\t\tconst fresh = action.evidence.filter((e) => !existing.has(`${e.claim}|${e.source}`));\n\t\t\t\tnext = { ...next, evidence: [...state.evidence, ...fresh] };\n\t\t\t}\n\t\t\tif (action.tasks?.length) {\n\t\t\t\tconst tasks = next.tasks.map((t) => {\n\t\t\t\t\tconst u = action.tasks!.find((x) => x.taskId === t.id);\n\t\t\t\t\treturn u ? { ...t, status: u.status } : t;\n\t\t\t\t});\n\t\t\t\tnext = { ...next, tasks };\n\t\t\t}\n\t\t\treturn { state: next, events, stopLoop };\n\t\t}\n\n\t\tcase \"goal_pause\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"paused\",\n\t\t\t\t\twaiting: { reason: action.reason ?? \"pausado por el usuario\" },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_resume\": {\n\t\t\tif (state.status !== \"paused\") return { state, events, stopLoop };\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"active\", waiting: undefined, repeatedTurns: 0, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_blocked\": {\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"blocked\", waiting: { reason: action.reason }, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_wait\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"paused\",\n\t\t\t\t\twaiting: { reason: action.reason, resumeAfterMs: action.resumeAfterMs },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_questions\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"blocked\",\n\t\t\t\t\tpendingQuestions: action.questions,\n\t\t\t\t\twaiting: { reason: action.reason },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_answers\": {\n\t\t\t// Las respuestas limpian el bloqueo y reactivan.\n\t\t\treturn {\n\t\t\t\tstate: { ...state, status: \"active\", pendingQuestions: undefined, waiting: undefined, updatedAt: now() },\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_usage_limited\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"usage_limited\",\n\t\t\t\t\twaiting: { reason: \"Presupuesto de tokens agotado\" },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_budget_limited\": {\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"budget_limited\",\n\t\t\t\t\twaiting: { reason: \"Presupuesto de coste agotado\" },\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_judge\": {\n\t\t\t// Al veredictar se anexa la iteración actual al historial (P3):\n\t\t\t// veredicto + razón en el registro de la iteración en curso.\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tjudge: {\n\t\t\t\t\t\tmodel: action.crossModel ? \"cross\" : \"same\",\n\t\t\t\t\t\tlastVerdict: action.verdict,\n\t\t\t\t\t\tlastReason: action.reason,\n\t\t\t\t\t},\n\t\t\t\t\titerations: state.iterations.map((it) =>\n\t\t\t\t\t\tit.iteration === state.iteration ? { ...it, verdict: action.verdict, reason: action.reason } : it,\n\t\t\t\t\t),\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t},\n\t\t\t\tevents,\n\t\t\t\tstopLoop,\n\t\t\t};\n\t\t}\n\n\t\tcase \"goal_complete\": {\n\t\t\t// JUEZ OBLIGATORIO (pi-until-done): sin veredicto done NO hay\n\t\t\t// completación — continue bloquea done; nunca bypass.\n\t\t\tif (state.status === \"complete\") return { state, events, stopLoop: true };\n\t\t\tif (state.judge.lastVerdict !== \"done\") {\n\t\t\t\treturn {\n\t\t\t\t\tstate: {\n\t\t\t\t\t\t...state,\n\t\t\t\t\t\twaiting: { reason: \"goal_complete requiere veredicto done del juez (sin bypass)\" },\n\t\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t\t},\n\t\t\t\t\tevents,\n\t\t\t\t\tstopLoop: true,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Evidencia citada obligatoria (archivo:línea / URL).\n\t\t\tif (action.evidence.length === 0 && state.evidence.length === 0) {\n\t\t\t\treturn {\n\t\t\t\t\tstate: { ...state, waiting: { reason: \"goal_complete exige evidencia citada\" }, updatedAt: now() },\n\t\t\t\t\tevents,\n\t\t\t\t\tstopLoop: true,\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst merged: EvidenceItem[] = mergeEvidence(state.evidence, action.evidence);\n\t\t\treturn {\n\t\t\t\tstate: {\n\t\t\t\t\t...state,\n\t\t\t\t\tstatus: \"complete\",\n\t\t\t\t\tphase: \"done\",\n\t\t\t\t\tevidence: merged,\n\t\t\t\t\tupdatedAt: now(),\n\t\t\t\t\twaiting: undefined,\n\t\t\t\t},\n\t\t\t\tevents: [{ phase: \"done\" }],\n\t\t\t\tstopLoop: true,\n\t\t\t};\n\t\t}\n\n\t\tdefault:\n\t\t\treturn { state, events, stopLoop };\n\t}\n}\n\nfunction mergeEvidence(a: EvidenceItem[], b: EvidenceItem[]): EvidenceItem[] {\n\tconst seen = new Set(a.map((e) => `${e.claim}|${e.source}`));\n\treturn [...a, ...b.filter((e) => !seen.has(`${e.claim}|${e.source}`))];\n}\n\nfunction now(): string {\n\treturn new Date().toISOString();\n}\n"]}
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,CAAC,MAAM,UAAU,GAAgB,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAE/G,MAAM,UAAU,SAAS,CAAC,KAAgB;IACzC,MAAM,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACxE,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,eAAe,CAAC,KAO/B;IACA,OAAO;QACN,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC3F,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,OAAO;QACf,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;QACtB,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,CAAC;QACX,aAAa,EAAE,CAAC;QAChB,gBAAgB,EAAE,EAAE;QACpB,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAChD,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KAChD,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,MAA8C,EAAE,KAAa;IAC9E,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC;AAeD,oFAAoF;AACpF,MAAM,UAAU,UAAU,CACzB,KAAgB,EAChB,MAAkB,EAClB,UAAsB;IACrB,QAAQ,EAAE,EAAE;IACZ,eAAe,EAAE,CAAC;IAClB,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,IAAI;IACjB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,EAAE;CACb;IAED,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC;IAEvB,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,cAAc,CAAC,CAAC,CAAC;YACrB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YACjE,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBACvD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;gBAC/B,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACtB,8DAA8D;YAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAS;gBACrB,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;gBAC/E,KAAK;gBACL,MAAM,EAAE,SAAS;aACjB,CAAC;YACF,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBACvE,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,yDAAyD;YACzD,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YACjG,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC5E,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;YAC3B,0EAA0E;YAC1E,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5B,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM;wBACrB,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAuB,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE;wBAChF,CAAC,CAAC,CAAC,CACJ;oBACD,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC;oBAC9B,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACzB,iEAAiE;YACjE,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5B,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM;wBACrB,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,aAAa,EAAE;wBACnF,CAAC,CAAC,CAAC,CACJ;oBACD,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACpB,8DAA8D;YAC9D,iEAAiE;YACjE,wCAAwC;YACxC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK;iBACxB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;iBAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACf,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;gBACpF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;gBACrB,MAAM,EAAE,SAAuB;aAC/B,CAAC,CAAC,CAAC;YACL,MAAM,QAAQ,GACb,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;gBACnC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBACtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACjE,6DAA6D;YAC7D,IAAI,QAAQ;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW;gBAChC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,eAAe;gBACvD,eAAe,EAAE,MAAM,CAAC,SAAS;gBACjC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,SAAS,EAAE,GAAG,EAAE;aAChB,CAAC;YACF,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC;oBAC9B,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;oBACzC,eAAe,EAAE,MAAM,CAAC,SAAS;oBACjC,aAAa,EAAE,CAAC,EAAE,yCAAyC;oBAC3D,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACtE,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACzB,2CAA2C;YAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;YAC/D,+DAA+D;YAC/D,uDAAuD;YACvD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC/E,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC;oBACxD,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7E,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACvB,kDAAkD;YAClD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;YACjE,IAAI,GAAG,KAAK,CAAC,CAAC;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YACnF,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1D,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC5C,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;gBACjC,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,IAAI;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrG,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC5C,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,oDAAoD;YACpD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAChF,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC1D,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjC,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACxB,kEAAkE;YAClE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,CAAC,gBAAgB,CAAC;YACnF,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACtC,IAAI,IAAI,GAAc;gBACrB,GAAG,KAAK;gBACR,SAAS;gBACT,aAAa;gBACb,gBAAgB,EAAE,OAAO;gBACzB,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;gBACnD,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;gBAC7C,SAAS,EAAE,GAAG,EAAE;aAChB,CAAC;YACF,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAC7B,kCAAkC;gBAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC9E,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACrF,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;YAC7D,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;gBAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBAClC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBACvD,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBACH,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;YAC3B,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC1C,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,wBAAwB,EAAE;oBAC9D,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACpB,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAClE,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC7F,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACrB,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBAC5F,MAAM;gBACN,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED,KAAK,WAAW,CAAC,CAAC,CAAC;YAClB,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE;oBACvE,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACvB,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,MAAM,EAAE,SAAS;oBACjB,gBAAgB,EAAE,MAAM,CAAC,SAAS;oBAClC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;oBAClC,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACrB,iDAAiD;YACjD,OAAO;gBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;gBACxG,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;YAC3B,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,MAAM,EAAE,eAAe;oBACvB,OAAO,EAAE,EAAE,MAAM,EAAE,+BAA+B,EAAE;oBACpD,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED,KAAK,qBAAqB,CAAC,CAAC,CAAC;YAC5B,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,EAAE,MAAM,EAAE,8BAA8B,EAAE;oBACnD,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,gEAAgE;YAChE,6DAA6D;YAC7D,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,KAAK,EAAE;wBACN,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;wBAC3C,WAAW,EAAE,MAAM,CAAC,OAAO;wBAC3B,UAAU,EAAE,MAAM,CAAC,MAAM;qBACzB;oBACD,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACvC,EAAE,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CACjG;oBACD,SAAS,EAAE,GAAG,EAAE;iBAChB;gBACD,MAAM;gBACN,QAAQ;aACR,CAAC;QACH,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACtB,8DAA8D;YAC9D,sDAAsD;YACtD,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC1E,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;gBACxC,OAAO;oBACN,KAAK,EAAE;wBACN,GAAG,KAAK;wBACR,OAAO,EAAE,EAAE,MAAM,EAAE,6DAA6D,EAAE;wBAClF,SAAS,EAAE,GAAG,EAAE;qBAChB;oBACD,MAAM;oBACN,QAAQ,EAAE,IAAI;iBACd,CAAC;YACH,CAAC;YACD,sDAAsD;YACtD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjE,OAAO;oBACN,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,sCAAsC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;oBAClG,MAAM;oBACN,QAAQ,EAAE,IAAI;iBACd,CAAC;YACH,CAAC;YACD,MAAM,MAAM,GAAmB,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9E,OAAO;gBACN,KAAK,EAAE;oBACN,GAAG,KAAK;oBACR,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,MAAM;oBACb,QAAQ,EAAE,MAAM;oBAChB,SAAS,EAAE,GAAG,EAAE;oBAChB,OAAO,EAAE,SAAS;iBAClB;gBACD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;gBAC3B,QAAQ,EAAE,IAAI;aACd,CAAC;QACH,CAAC;QAED;YACC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACrC,CAAC;AACF,CAAC;AAED,SAAS,aAAa,CAAC,CAAiB,EAAE,CAAiB;IAC1D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,GAAG;IACX,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAqC,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf;AAYD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,cAAc,CAuC1G;AAED,wEAAuE;AACvE,wBAAgB,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,cAAc,EAAE,CAuKhE;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIpF;AAED,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,cAAc,EAAE,CAS3G","sourcesContent":["/**\n * Ada Intelligence Engine — tools del Goal Engine.\n *\n * Herramientas que el agente usa durante un goal: goal_complete (con\n * evidencia), goal_blocked, goal_wait, todo (checklist), ask_user_question\n * (cuestionario tipado, pi-ask-user). Se registran en la sesión activa del\n * goal; su estado vive en el GoalEngine (inyectado como \"engine\").\n */\n\nimport { Type } from \"typebox\";\nimport type { AgentToolResult, ExtensionContext, ToolDefinition } from \"../../extensions/types.ts\";\nimport type { GoalEngine } from \"./engine.ts\";\n\nexport interface GoalToolContext {\n\tengine: GoalEngine;\n\tgoalId: string;\n}\n\ntype OkResult = AgentToolResult<undefined>;\n\nfunction ok(_content: string, extra: Record<string, unknown> = {}): OkResult {\n\treturn { details: undefined, content: [{ type: \"text\", text: JSON.stringify({ ok: true, ...extra }) }] };\n}\n\nfunction notOk(error: string): OkResult {\n\treturn { details: undefined, content: [{ type: \"text\", text: JSON.stringify({ ok: false, error }) }] };\n}\n\n/**\n * goal_new — Crea el contrato de un goal (estado setup). Tool de SESIÓN:\n * no depende de un goal activo (a diferencia de goalTools). El agente la usa\n * cuando el usuario pide \"crea un goal para X\" en lenguaje natural.\n */\nexport function createGoalNewTool(engine: GoalEngine, sessionId?: () => string | undefined): ToolDefinition {\n\treturn {\n\t\tname: \"goal_new\",\n\t\tlabel: \"Crear goal\",\n\t\tdescription:\n\t\t\t\"Crea el contrato de un goal del Ada Intelligence Engine en estado setup. El goal NO arranca hasta que el usuario lo aprueba (/goal approve <id> o la tool goal_approve). Usa doneCriteria medibles y verifyCommand ejecutable.\",\n\t\tpromptSnippet: \"Crea un goal con contrato (goal_new)\",\n\t\tpromptGuidelines: [\n\t\t\t\"Define doneCriteria observables y medibles (nunca vagas).\",\n\t\t\t\"El goal queda en setup hasta aprobarse — indícalo al usuario.\",\n\t\t],\n\t\tparameters: Type.Object({\n\t\t\tgoal: Type.String({ description: \"El objetivo verbatim\" }),\n\t\t\tdoneCriteria: Type.Array(Type.String(), { description: \"Criterios medibles de hechura\" }),\n\t\t\tverifyCommand: Type.String({ description: \"Comando de verificación (o string vacío)\" }),\n\t\t}),\n\t\tasync execute(_toolCallId: string, input: { goal: string; doneCriteria: string[]; verifyCommand: string }) {\n\t\t\tconst state = await engine.createGoal({\n\t\t\t\tgoal: input.goal,\n\t\t\t\tdoneCriteria: Array.isArray(input.doneCriteria) ? input.doneCriteria : [],\n\t\t\t\tverifyCommand: input.verifyCommand ?? \"\",\n\t\t\t\tsessionId: sessionId ? sessionId() : undefined,\n\t\t\t});\n\t\t\treturn {\n\t\t\t\tdetails: undefined,\n\t\t\t\tcontent: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\ttext: JSON.stringify({\n\t\t\t\t\t\t\tok: true,\n\t\t\t\t\t\t\tgoalId: state.id,\n\t\t\t\t\t\t\tstatus: state.status,\n\t\t\t\t\t\t\tmessage: `Contrato creado: ${state.id}. Apruebalo con /goal approve ${state.id}`,\n\t\t\t\t\t\t}),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t};\n\t\t},\n\t};\n}\n\n/** Todas las tools del Goal Engine para una sesión con goal activo. */\nexport function goalTools(ctx: GoalToolContext): ToolDefinition[] {\n\tconst { engine, goalId } = ctx;\n\n\treturn [\n\t\t{\n\t\t\tname: \"goal_complete\",\n\t\t\tlabel: \"Completar goal\",\n\t\t\tdescription:\n\t\t\t\t\"Declara el goal como completado. EXIGE evidencia citada (archivo:línea o URL) por cada criterio de hechura. Solo funciona si el juez ya emitió veredicto done — sin juez, sin completación.\",\n\t\t\tpromptSnippet: \"Completa el goal con evidencia citada (goal_complete)\",\n\t\t\tpromptGuidelines: [\n\t\t\t\t\"Nunca completes un goal sin evidencia citada archivo:línea o URL.\",\n\t\t\t\t\"Si el juez no ha dado done, sigue trabajando en lugar de forzar la completación.\",\n\t\t\t],\n\t\t\tparameters: Type.Object({\n\t\t\t\tsummary: Type.String({ description: \"Resumen de lo realizado\" }),\n\t\t\t\tevidence: Type.Array(\n\t\t\t\t\tType.Object({\n\t\t\t\t\t\tclaim: Type.String({ description: \"Afirmación verificable\" }),\n\t\t\t\t\t\tsource: Type.String({ description: \"archivo:línea, URL o comando que lo prueba\" }),\n\t\t\t\t\t}),\n\t\t\t\t\t{ description: \"Evidencia citada por cada criterio\" },\n\t\t\t\t),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: { summary: string; evidence: Array<{ claim: string; source: string }> },\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.complete(\n\t\t\t\t\tgoalId,\n\t\t\t\t\tinput.summary,\n\t\t\t\t\tinput.evidence.map((e) => ({ ...e, citedBy: \"agent\" })),\n\t\t\t\t);\n\t\t\t\treturn state.status === \"complete\"\n\t\t\t\t\t? ok(\"goal completado\", { status: state.status })\n\t\t\t\t\t: notOk(state.waiting?.reason ?? \"no completado\");\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"goal_blocked\",\n\t\t\tlabel: \"Bloquear goal\",\n\t\t\tdescription: \"Marca el goal como bloqueado con un motivo (necesita intervención del usuario).\",\n\t\t\tpromptSnippet: \"Bloquea el goal con motivo (goal_blocked)\",\n\t\t\tparameters: Type.Object({\n\t\t\t\treason: Type.String({ description: \"Motivo del bloqueo\" }),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: { reason: string },\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.blocked(goalId, input.reason);\n\t\t\t\treturn ok(\"goal bloqueado\", { status: state.status });\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"goal_wait\",\n\t\t\tlabel: \"Esperar\",\n\t\t\tdescription: \"Pausa el goal hasta que pase un tiempo o el usuario reanude.\",\n\t\t\tpromptSnippet: \"Pausa el goal (goal_wait)\",\n\t\t\tparameters: Type.Object({\n\t\t\t\treason: Type.String({ description: \"Por qué espera\" }),\n\t\t\t\tresumeAfterMs: Type.Optional(Type.Number({ description: \"Reanudar tras N ms\" })),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: { reason: string; resumeAfterMs?: number },\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.pause(goalId, input.reason);\n\t\t\t\treturn ok(\"goal pausado\", { status: state.status, resumeAfterMs: input.resumeAfterMs ?? null });\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"todo\",\n\t\t\tlabel: \"Checklist de tareas\",\n\t\t\tdescription:\n\t\t\t\t\"Reemplaza o actualiza la checklist de tareas del goal. Cada tarea: id estable (kebab-case), título, estado (pending|active|done). Se muestra en el panel en vivo.\",\n\t\t\tpromptSnippet: \"Actualiza la checklist del goal (todo)\",\n\t\t\tparameters: Type.Object({\n\t\t\t\ttasks: Type.Array(\n\t\t\t\t\tType.Object({\n\t\t\t\t\t\tid: Type.String({ description: \"id estable, kebab-case\" }),\n\t\t\t\t\t\ttitle: Type.String(),\n\t\t\t\t\t\tstatus: Type.Union([Type.Literal(\"pending\"), Type.Literal(\"active\"), Type.Literal(\"done\")]),\n\t\t\t\t\t\tdetail: Type.Optional(Type.String()),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: {\n\t\t\t\t\ttasks: Array<{ id: string; title: string; status: \"pending\" | \"active\" | \"done\"; detail?: string }>;\n\t\t\t\t},\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.get(goalId);\n\t\t\t\tif (!state) return notOk(\"goal no encontrado\");\n\t\t\t\tawait engine.replaceTasks(goalId, input.tasks);\n\t\t\t\treturn ok(\"checklist actualizada\", { count: input.tasks.length });\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"ask_user_question\",\n\t\t\tlabel: \"Preguntar al usuario\",\n\t\t\tdescription:\n\t\t\t\t\"Cuando una decisión es ambigua o irreversible, pregunta al usuario con un cuestionario tipado (hasta 4 preguntas; single-select, multi-select o freeform). El goal se bloquea hasta que responda.\",\n\t\t\tpromptSnippet: \"Pregunta al usuario antes de decidir (ask_user_question)\",\n\t\t\tpromptGuidelines: [\n\t\t\t\t\"Usa ask_user_question cuando vayas a adivinar una decisión ambigua o irreversible.\",\n\t\t\t\t\"Máximo 4 preguntas; usa single-select con choices para decisiones cerradas.\",\n\t\t\t],\n\t\t\tparameters: Type.Object({\n\t\t\t\treason: Type.String({ description: \"Contexto de por qué preguntas\" }),\n\t\t\t\tquestions: Type.Array(\n\t\t\t\t\tType.Object({\n\t\t\t\t\t\tquestion: Type.String(),\n\t\t\t\t\t\ttype: Type.Union([\n\t\t\t\t\t\t\tType.Literal(\"single-select\"),\n\t\t\t\t\t\t\tType.Literal(\"multi-select\"),\n\t\t\t\t\t\t\tType.Literal(\"freeform\"),\n\t\t\t\t\t\t]),\n\t\t\t\t\t\tchoices: Type.Optional(Type.Array(Type.String())),\n\t\t\t\t\t\trequired: Type.Optional(Type.Boolean()),\n\t\t\t\t\t}),\n\t\t\t\t\t{ maxItems: 4 },\n\t\t\t\t),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: {\n\t\t\t\t\treason: string;\n\t\t\t\t\tquestions: Array<{\n\t\t\t\t\t\tquestion: string;\n\t\t\t\t\t\ttype: \"single-select\" | \"multi-select\" | \"freeform\";\n\t\t\t\t\t\tchoices?: string[];\n\t\t\t\t\t\trequired?: boolean;\n\t\t\t\t\t}>;\n\t\t\t\t},\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.askUser(\n\t\t\t\t\tgoalId,\n\t\t\t\t\tinput.reason,\n\t\t\t\t\tinput.questions.map((q, i) => ({\n\t\t\t\t\t\tid: `q${i + 1}`,\n\t\t\t\t\t\tquestion: q.question,\n\t\t\t\t\t\ttype: q.type,\n\t\t\t\t\t\tchoices: q.choices,\n\t\t\t\t\t\trequired: q.required,\n\t\t\t\t\t})),\n\t\t\t\t);\n\t\t\t\treturn ok(\"preguntas enviadas — goal bloqueado hasta respuesta\", { status: state.status });\n\t\t\t},\n\t\t},\n\t];\n}\n\n/**\n * goalSessionTools — variante para una SESIÓN: el goalId se resuelve en cada\n * ejecución al goal activo (o se pasa explícito). Permite registrar las tools\n * del goal sin conocer el id en buildRuntime (los goals se crean después).\n */\nexport async function resolveActiveGoalId(engine: GoalEngine): Promise<string | null> {\n\tconst goals = await engine.list().catch(() => []);\n\tconst active = goals.find((g) => g.status === \"active\" || g.status === \"setup\");\n\treturn active?.id ?? null;\n}\n\n/** Registra las tools del Goal Engine resolviendo el goal activo por llamada. */\nexport function goalSessionTools(engine: GoalEngine, sessionId?: () => string | undefined): ToolDefinition[] {\n\tconst staticCtx: GoalToolContext = { engine, goalId: \"\" };\n\t// Reusar las tools estáticas: su ctx.goalId se sobreescribe en cada llama\n\t// re-creando contexto con el goal activo.\n\t// goal_new no depende de goal activo — se registra tal cual.\n\treturn [\n\t\tcreateGoalNewTool(engine, sessionId),\n\t\t...goalTools(staticCtx).map((tool) => wrapResolvingGoal(tool, engine)),\n\t];\n}\n\ntype AnyTool = ToolDefinition<any, any, any>;\n\nfunction wrapResolvingGoal(tool: AnyTool, engine: GoalEngine): AnyTool {\n\tconst execute = tool.execute;\n\treturn {\n\t\t...tool,\n\t\texecute: async (toolCallId, params, signal, onUpdate, ctx) => {\n\t\t\tconst goalId = (await resolveActiveGoalId(engine)) ?? \"\";\n\t\t\tif (!goalId) {\n\t\t\t\treturn {\n\t\t\t\t\tdetails: undefined,\n\t\t\t\t\tcontent: [{ type: \"text\", text: JSON.stringify({ ok: false, error: \"no hay goal activo\" }) }],\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst fresh = goalTools({ engine, goalId }).find((t) => t.name === tool.name);\n\t\t\tif (!fresh || !fresh.execute) {\n\t\t\t\treturn execute(toolCallId, params, signal, onUpdate, ctx);\n\t\t\t}\n\t\t\treturn fresh.execute(toolCallId, params, signal, onUpdate, ctx);\n\t\t},\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAqC,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf;AAYD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,cAAc,CAuC1G;AAED,uEAAuE;AACvE,wBAAgB,SAAS,CAAC,GAAG,EAAE,eAAe,GAAG,cAAc,EAAE,CAuKhE;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIpF;AAED,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,cAAc,EAAE,CAS3G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/tools.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Ada Intelligence Engine — tools del Goal Engine.\n *\n * Herramientas que el agente usa durante un goal: goal_complete (con\n * evidencia), goal_blocked, goal_wait, todo (checklist), ask_user_question\n * (cuestionario tipado, pi-ask-user). Se registran en la sesión activa del\n * goal; su estado vive en el GoalEngine (inyectado como \"engine\").\n */\n\nimport { Type } from \"typebox\";\nimport type { AgentToolResult, ExtensionContext, ToolDefinition } from \"../../extensions/types.ts\";\nimport type { GoalEngine } from \"./engine.ts\";\n\nexport interface GoalToolContext {\n\tengine: GoalEngine;\n\tgoalId: string;\n}\n\ntype OkResult = AgentToolResult<undefined>;\n\nfunction ok(_content: string, extra: Record<string, unknown> = {}): OkResult {\n\treturn { details: undefined, content: [{ type: \"text\", text: JSON.stringify({ ok: true, ...extra }) }] };\n}\n\nfunction notOk(error: string): OkResult {\n\treturn { details: undefined, content: [{ type: \"text\", text: JSON.stringify({ ok: false, error }) }] };\n}\n\n/**\n * goal_new — Crea el contrato de un goal (estado setup). Tool de SESIÓN:\n * no depende de un goal activo (a diferencia de goalTools). El agente la usa\n * cuando el usuario pide \"crea un goal para X\" en lenguaje natural.\n */\nexport function createGoalNewTool(engine: GoalEngine, sessionId?: () => string | undefined): ToolDefinition {\n\treturn {\n\t\tname: \"goal_new\",\n\t\tlabel: \"Crear goal\",\n\t\tdescription:\n\t\t\t\"Crea el contrato de un goal del Ada Intelligence Engine en estado setup. El goal NO arranca hasta que el usuario lo aprueba (/goal approve <id> o la tool goal_approve). Usa doneCriteria medibles y verifyCommand ejecutable.\",\n\t\tpromptSnippet: \"Crea un goal con contrato (goal_new)\",\n\t\tpromptGuidelines: [\n\t\t\t\"Define doneCriteria observables y medibles (nunca vagas).\",\n\t\t\t\"El goal queda en setup hasta aprobarse — indícalo al usuario.\",\n\t\t],\n\t\tparameters: Type.Object({\n\t\t\tgoal: Type.String({ description: \"El objetivo verbatim\" }),\n\t\t\tdoneCriteria: Type.Array(Type.String(), { description: \"Criterios medibles de hechura\" }),\n\t\t\tverifyCommand: Type.String({ description: \"Comando de verificación (o string vacío)\" }),\n\t\t}),\n\t\tasync execute(_toolCallId: string, input: { goal: string; doneCriteria: string[]; verifyCommand: string }) {\n\t\t\tconst state = await engine.createGoal({\n\t\t\t\tgoal: input.goal,\n\t\t\t\tdoneCriteria: Array.isArray(input.doneCriteria) ? input.doneCriteria : [],\n\t\t\t\tverifyCommand: input.verifyCommand ?? \"\",\n\t\t\t\tsessionId: sessionId ? sessionId() : undefined,\n\t\t\t});\n\t\t\treturn {\n\t\t\t\tdetails: undefined,\n\t\t\t\tcontent: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\ttext: JSON.stringify({\n\t\t\t\t\t\t\tok: true,\n\t\t\t\t\t\t\tgoalId: state.id,\n\t\t\t\t\t\t\tstatus: state.status,\n\t\t\t\t\t\t\tmessage: `Contrato creado: ${state.id}. Apruebalo con /goal approve ${state.id}`,\n\t\t\t\t\t\t}),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t};\n\t\t},\n\t};\n}\n\n/** Todas las tools del Goal Engine para una sesión con goal activo. */\nexport function goalTools(ctx: GoalToolContext): ToolDefinition[] {\n\tconst { engine, goalId } = ctx;\n\n\treturn [\n\t\t{\n\t\t\tname: \"goal_complete\",\n\t\t\tlabel: \"Completar goal\",\n\t\t\tdescription:\n\t\t\t\t\"Declara el goal como completado. EXIGE evidencia citada (archivo:línea o URL) por cada criterio de hechura. Solo funciona si el juez ya emitió veredicto done — sin juez, sin completación.\",\n\t\t\tpromptSnippet: \"Completa el goal con evidencia citada (goal_complete)\",\n\t\t\tpromptGuidelines: [\n\t\t\t\t\"Nunca completes un goal sin evidencia citada archivo:línea o URL.\",\n\t\t\t\t\"Si el juez no ha dado done, sigue trabajando en lugar de forzar la completación.\",\n\t\t\t],\n\t\t\tparameters: Type.Object({\n\t\t\t\tsummary: Type.String({ description: \"Resumen de lo realizado\" }),\n\t\t\t\tevidence: Type.Array(\n\t\t\t\t\tType.Object({\n\t\t\t\t\t\tclaim: Type.String({ description: \"Afirmación verificable\" }),\n\t\t\t\t\t\tsource: Type.String({ description: \"archivo:línea, URL o comando que lo prueba\" }),\n\t\t\t\t\t}),\n\t\t\t\t\t{ description: \"Evidencia citada por cada criterio\" },\n\t\t\t\t),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: { summary: string; evidence: Array<{ claim: string; source: string }> },\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.complete(\n\t\t\t\t\tgoalId,\n\t\t\t\t\tinput.summary,\n\t\t\t\t\tinput.evidence.map((e) => ({ ...e, citedBy: \"agent\" })),\n\t\t\t\t);\n\t\t\t\treturn state.status === \"complete\"\n\t\t\t\t\t? ok(\"goal completado\", { status: state.status })\n\t\t\t\t\t: notOk(state.waiting?.reason ?? \"no completado\");\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"goal_blocked\",\n\t\t\tlabel: \"Bloquear goal\",\n\t\t\tdescription: \"Marca el goal como bloqueado con un motivo (necesita intervención del usuario).\",\n\t\t\tpromptSnippet: \"Bloquea el goal con motivo (goal_blocked)\",\n\t\t\tparameters: Type.Object({\n\t\t\t\treason: Type.String({ description: \"Motivo del bloqueo\" }),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: { reason: string },\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.blocked(goalId, input.reason);\n\t\t\t\treturn ok(\"goal bloqueado\", { status: state.status });\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"goal_wait\",\n\t\t\tlabel: \"Esperar\",\n\t\t\tdescription: \"Pausa el goal hasta que pase un tiempo o el usuario reanude.\",\n\t\t\tpromptSnippet: \"Pausa el goal (goal_wait)\",\n\t\t\tparameters: Type.Object({\n\t\t\t\treason: Type.String({ description: \"Por qué espera\" }),\n\t\t\t\tresumeAfterMs: Type.Optional(Type.Number({ description: \"Reanudar tras N ms\" })),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: { reason: string; resumeAfterMs?: number },\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.pause(goalId, input.reason);\n\t\t\t\treturn ok(\"goal pausado\", { status: state.status, resumeAfterMs: input.resumeAfterMs ?? null });\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"todo\",\n\t\t\tlabel: \"Checklist de tareas\",\n\t\t\tdescription:\n\t\t\t\t\"Reemplaza o actualiza la checklist de tareas del goal. Cada tarea: id estable (kebab-case), título, estado (pending|active|done). Se muestra en el panel en vivo.\",\n\t\t\tpromptSnippet: \"Actualiza la checklist del goal (todo)\",\n\t\t\tparameters: Type.Object({\n\t\t\t\ttasks: Type.Array(\n\t\t\t\t\tType.Object({\n\t\t\t\t\t\tid: Type.String({ description: \"id estable, kebab-case\" }),\n\t\t\t\t\t\ttitle: Type.String(),\n\t\t\t\t\t\tstatus: Type.Union([Type.Literal(\"pending\"), Type.Literal(\"active\"), Type.Literal(\"done\")]),\n\t\t\t\t\t\tdetail: Type.Optional(Type.String()),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: {\n\t\t\t\t\ttasks: Array<{ id: string; title: string; status: \"pending\" | \"active\" | \"done\"; detail?: string }>;\n\t\t\t\t},\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.get(goalId);\n\t\t\t\tif (!state) return notOk(\"goal no encontrado\");\n\t\t\t\tawait engine.replaceTasks(goalId, input.tasks);\n\t\t\t\treturn ok(\"checklist actualizada\", { count: input.tasks.length });\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: \"ask_user_question\",\n\t\t\tlabel: \"Preguntar al usuario\",\n\t\t\tdescription:\n\t\t\t\t\"Cuando una decisión es ambigua o irreversible, pregunta al usuario con un cuestionario tipado (hasta 4 preguntas; single-select, multi-select o freeform). El goal se bloquea hasta que responda.\",\n\t\t\tpromptSnippet: \"Pregunta al usuario antes de decidir (ask_user_question)\",\n\t\t\tpromptGuidelines: [\n\t\t\t\t\"Usa ask_user_question cuando vayas a adivinar una decisión ambigua o irreversible.\",\n\t\t\t\t\"Máximo 4 preguntas; usa single-select con choices para decisiones cerradas.\",\n\t\t\t],\n\t\t\tparameters: Type.Object({\n\t\t\t\treason: Type.String({ description: \"Contexto de por qué preguntas\" }),\n\t\t\t\tquestions: Type.Array(\n\t\t\t\t\tType.Object({\n\t\t\t\t\t\tquestion: Type.String(),\n\t\t\t\t\t\ttype: Type.Union([\n\t\t\t\t\t\t\tType.Literal(\"single-select\"),\n\t\t\t\t\t\t\tType.Literal(\"multi-select\"),\n\t\t\t\t\t\t\tType.Literal(\"freeform\"),\n\t\t\t\t\t\t]),\n\t\t\t\t\t\tchoices: Type.Optional(Type.Array(Type.String())),\n\t\t\t\t\t\trequired: Type.Optional(Type.Boolean()),\n\t\t\t\t\t}),\n\t\t\t\t\t{ maxItems: 4 },\n\t\t\t\t),\n\t\t\t}),\n\t\t\tasync execute(\n\t\t\t\t_toolCallId: string,\n\t\t\t\tinput: {\n\t\t\t\t\treason: string;\n\t\t\t\t\tquestions: Array<{\n\t\t\t\t\t\tquestion: string;\n\t\t\t\t\t\ttype: \"single-select\" | \"multi-select\" | \"freeform\";\n\t\t\t\t\t\tchoices?: string[];\n\t\t\t\t\t\trequired?: boolean;\n\t\t\t\t\t}>;\n\t\t\t\t},\n\t\t\t\t_signal: AbortSignal | undefined,\n\t\t\t\t_onUpdate: unknown,\n\t\t\t\t_ctx: ExtensionContext,\n\t\t\t): Promise<OkResult> {\n\t\t\t\tconst state = await engine.askUser(\n\t\t\t\t\tgoalId,\n\t\t\t\t\tinput.reason,\n\t\t\t\t\tinput.questions.map((q, i) => ({\n\t\t\t\t\t\tid: `q${i + 1}`,\n\t\t\t\t\t\tquestion: q.question,\n\t\t\t\t\t\ttype: q.type,\n\t\t\t\t\t\tchoices: q.choices,\n\t\t\t\t\t\trequired: q.required,\n\t\t\t\t\t})),\n\t\t\t\t);\n\t\t\t\treturn ok(\"preguntas enviadas — goal bloqueado hasta respuesta\", { status: state.status });\n\t\t\t},\n\t\t},\n\t];\n}\n\n/**\n * goalSessionTools — variante para una SESIÓN: el goalId se resuelve en cada\n * ejecución al goal activo (o se pasa explícito). Permite registrar las tools\n * del goal sin conocer el id en buildRuntime (los goals se crean después).\n */\nexport async function resolveActiveGoalId(engine: GoalEngine): Promise<string | null> {\n\tconst goals = await engine.list().catch(() => []);\n\tconst active = goals.find((g) => g.status === \"active\" || g.status === \"setup\");\n\treturn active?.id ?? null;\n}\n\n/** Registra las tools del Goal Engine resolviendo el goal activo por llamada. */\nexport function goalSessionTools(engine: GoalEngine, sessionId?: () => string | undefined): ToolDefinition[] {\n\tconst staticCtx: GoalToolContext = { engine, goalId: \"\" };\n\t// Reusar las tools estáticas: su ctx.goalId se sobreescribe en cada llama\n\t// re-creando contexto con el goal activo.\n\t// goal_new no depende de goal activo — se registra tal cual.\n\treturn [\n\t\tcreateGoalNewTool(engine, sessionId),\n\t\t...goalTools(staticCtx).map((tool) => wrapResolvingGoal(tool, engine)),\n\t];\n}\n\ntype AnyTool = ToolDefinition<any, any, any>;\n\nfunction wrapResolvingGoal(tool: AnyTool, engine: GoalEngine): AnyTool {\n\tconst execute = tool.execute;\n\treturn {\n\t\t...tool,\n\t\texecute: async (toolCallId, params, signal, onUpdate, ctx) => {\n\t\t\tconst goalId = (await resolveActiveGoalId(engine)) ?? \"\";\n\t\t\tif (!goalId) {\n\t\t\t\treturn {\n\t\t\t\t\tdetails: undefined,\n\t\t\t\t\tcontent: [{ type: \"text\", text: JSON.stringify({ ok: false, error: \"no hay goal activo\" }) }],\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst fresh = goalTools({ engine, goalId }).find((t) => t.name === tool.name);\n\t\t\tif (!fresh || !fresh.execute) {\n\t\t\t\treturn execute(toolCallId, params, signal, onUpdate, ctx);\n\t\t\t}\n\t\t\treturn fresh.execute(toolCallId, params, signal, onUpdate, ctx);\n\t\t},\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../../src/core/workflows/goal-engine/tools.ts"],"names":[],"mappings":"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"}
|