@jaimevalasek/aioson 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +595 -595
- package/CODE_OF_CONDUCT.md +12 -12
- package/CONTRIBUTING.md +13 -13
- package/LICENSE +661 -661
- package/README.md +919 -919
- package/bin/aioson.js +4 -4
- package/docs/design-previews/aurora-command-ui-website.html +884 -884
- package/docs/design-previews/aurora-command-ui.html +682 -682
- package/docs/design-previews/bold-editorial-ui-website.html +658 -658
- package/docs/design-previews/bold-editorial-ui.html +717 -717
- package/docs/design-previews/clean-saas-ui-website.html +1202 -1202
- package/docs/design-previews/clean-saas-ui.html +549 -549
- package/docs/design-previews/cognitive-core-ui-website.html +1009 -1009
- package/docs/design-previews/cognitive-core-ui.html +463 -463
- package/docs/design-previews/glassmorphism-ui-website.html +572 -572
- package/docs/design-previews/glassmorphism-ui.html +886 -886
- package/docs/design-previews/index.html +699 -699
- package/docs/design-previews/interface-design-website.html +1187 -1187
- package/docs/design-previews/interface-design.html +513 -513
- package/docs/design-previews/neo-brutalist-ui-website.html +621 -621
- package/docs/design-previews/neo-brutalist-ui.html +797 -797
- package/docs/design-previews/premium-command-center-ui-website.html +1217 -1217
- package/docs/design-previews/premium-command-center-ui.html +552 -552
- package/docs/design-previews/pt.squarespace.com-homepage.html +889 -889
- package/docs/design-previews/warm-craft-ui-website.html +684 -684
- package/docs/design-previews/warm-craft-ui.html +739 -739
- package/docs/en/1-understand/ecosystem-map.md +228 -0
- package/docs/en/1-understand/glossary.md +288 -0
- package/docs/en/1-understand/what-is-aioson.md +94 -0
- package/docs/en/1-understand/why-it-exists.md +106 -0
- package/docs/en/2-start/existing-project.md +246 -0
- package/docs/en/2-start/first-project.md +307 -0
- package/docs/en/2-start/initial-decisions.md +223 -0
- package/docs/en/3-recipes/README.md +28 -0
- package/docs/en/3-recipes/continuity-between-sessions.md +303 -0
- package/docs/en/3-recipes/from-idea-to-prd-via-briefing.md +235 -0
- package/docs/en/3-recipes/full-feature-with-sheldon.md +338 -0
- package/docs/en/4-agents/README.md +56 -0
- package/docs/en/5-reference/README.md +60 -0
- package/docs/en/{cli-reference.md → 5-reference/cli-reference.md} +639 -464
- package/docs/en/{i18n.md → 5-reference/i18n.md} +52 -52
- package/docs/en/{json-schemas.md → 5-reference/json-schemas.md} +41 -41
- package/docs/en/{mcp.md → 5-reference/mcp.md} +56 -56
- package/docs/en/{parallel.md → 5-reference/parallel.md} +82 -82
- package/docs/en/{qa-browser.md → 5-reference/qa-browser.md} +339 -339
- package/docs/en/{release-flow.md → 5-reference/release-flow.md} +22 -22
- package/docs/en/{release-notes-template.md → 5-reference/release-notes-template.md} +41 -41
- package/docs/en/{release.md → 5-reference/release.md} +28 -28
- package/docs/en/{schemas → 5-reference/schemas}/agent-prompt.schema.json +17 -17
- package/docs/en/{schemas → 5-reference/schemas}/agents.schema.json +32 -32
- package/docs/en/{schemas → 5-reference/schemas}/context-validate.schema.json +36 -36
- package/docs/en/{schemas → 5-reference/schemas}/doctor.schema.json +89 -89
- package/docs/en/{schemas → 5-reference/schemas}/error.schema.json +24 -24
- package/docs/en/{schemas → 5-reference/schemas}/i18n-add.schema.json +15 -15
- package/docs/en/{schemas → 5-reference/schemas}/index.json +126 -126
- package/docs/en/{schemas → 5-reference/schemas}/info.schema.json +39 -39
- package/docs/en/{schemas → 5-reference/schemas}/init.schema.json +48 -48
- package/docs/en/{schemas → 5-reference/schemas}/install.schema.json +60 -60
- package/docs/en/{schemas → 5-reference/schemas}/locale-apply.schema.json +30 -30
- package/docs/en/{schemas → 5-reference/schemas}/mcp-doctor.schema.json +95 -95
- package/docs/en/{schemas → 5-reference/schemas}/mcp-init.schema.json +122 -122
- package/docs/en/{schemas → 5-reference/schemas}/package-test.schema.json +24 -24
- package/docs/en/{schemas → 5-reference/schemas}/parallel-assign.schema.json +66 -66
- package/docs/en/{schemas → 5-reference/schemas}/parallel-doctor.schema.json +122 -122
- package/docs/en/{schemas → 5-reference/schemas}/parallel-guard.schema.json +63 -63
- package/docs/en/{schemas → 5-reference/schemas}/parallel-init.schema.json +53 -53
- package/docs/en/{schemas → 5-reference/schemas}/parallel-merge.schema.json +84 -84
- package/docs/en/{schemas → 5-reference/schemas}/parallel-status.schema.json +184 -184
- package/docs/en/{schemas → 5-reference/schemas}/setup-context.schema.json +39 -39
- package/docs/en/{schemas → 5-reference/schemas}/smoke.schema.json +23 -23
- package/docs/en/{schemas → 5-reference/schemas}/update.schema.json +48 -48
- package/docs/en/{schemas → 5-reference/schemas}/workflow-plan.schema.json +30 -30
- package/docs/en/{squad-dashboard.md → 5-reference/squad-dashboard.md} +372 -372
- package/docs/en/{web3.md → 5-reference/web3.md} +54 -54
- package/docs/en/README.md +115 -0
- package/docs/en/active-learning-loop/README.md +117 -0
- package/docs/en/active-learning-loop/active-learning-loop.md +117 -0
- package/docs/en/active-learning-loop/cli-commands.md +320 -0
- package/docs/en/active-learning-loop/diagrams.md +225 -0
- package/docs/en/active-learning-loop/doctor-checks.md +151 -0
- package/docs/en/active-learning-loop/how-to-use.md +313 -0
- package/docs/en/active-learning-loop/troubleshooting.md +283 -0
- package/docs/en/deyvin-subtask-scout/README.md +109 -0
- package/docs/en/deyvin-subtask-scout/cli-commands.md +248 -0
- package/docs/en/deyvin-subtask-scout/diagrams.md +124 -0
- package/docs/en/deyvin-subtask-scout/how-to-use.md +221 -0
- package/docs/en/deyvin-subtask-scout/sub-task-scout.md +115 -0
- package/docs/en/deyvin-subtask-scout/troubleshooting.md +184 -0
- package/docs/integrations/apps-publish-marketplace.md +94 -94
- package/docs/integrations/sdlc-genius-boundary.md +76 -76
- package/docs/integrations/sdlc-genius-eval-matrix.md +75 -75
- package/docs/integrations/sdlc-genius-install-checklist.md +93 -93
- package/docs/integrations/sdlc-genius-review-samples.md +86 -86
- package/docs/openclaw-bridge.md +308 -308
- package/docs/pt/1-entender/glossario.md +288 -0
- package/docs/pt/1-entender/mapa-do-ecossistema.md +228 -0
- package/docs/pt/1-entender/o-que-e-aioson.md +94 -0
- package/docs/pt/1-entender/por-que-existe.md +107 -0
- package/docs/pt/2-comecar/decisoes-iniciais.md +223 -0
- package/docs/pt/2-comecar/primeiro-projeto.md +307 -0
- package/docs/pt/2-comecar/projeto-existente.md +245 -0
- package/docs/pt/3-receitas/README.md +28 -0
- package/docs/pt/3-receitas/app-saas-do-zero.md +324 -0
- package/docs/pt/3-receitas/auditoria-seguranca.md +254 -0
- package/docs/pt/3-receitas/clonar-design-de-site.md +211 -0
- package/docs/pt/3-receitas/continuidade-entre-sessoes.md +303 -0
- package/docs/pt/3-receitas/da-ideia-ao-prd-via-briefing.md +234 -0
- package/docs/pt/3-receitas/feature-completa-com-sheldon.md +338 -0
- package/docs/pt/3-receitas/integracao-em-codebase-grande.md +243 -0
- package/docs/pt/3-receitas/landing-page.md +281 -0
- package/docs/pt/3-receitas/plans-externos-para-product.md +191 -0
- package/docs/pt/3-receitas/publicar-no-aioson-com.md +219 -0
- package/docs/pt/3-receitas/refatoracao-grande.md +251 -0
- package/docs/pt/4-agentes/README.md +65 -0
- package/docs/pt/4-agentes/analyst.md +111 -0
- package/docs/pt/4-agentes/architect.md +113 -0
- package/docs/pt/4-agentes/briefing.md +95 -0
- package/docs/pt/4-agentes/committer.md +108 -0
- package/docs/pt/4-agentes/copywriter.md +279 -0
- package/docs/pt/4-agentes/design-hybrid-forge.md +116 -0
- package/docs/pt/4-agentes/dev.md +136 -0
- package/docs/pt/4-agentes/deyvin.md +99 -0
- package/docs/pt/4-agentes/discover.md +122 -0
- package/docs/pt/4-agentes/discovery-design-doc.md +91 -0
- package/docs/pt/4-agentes/genome.md +115 -0
- package/docs/pt/4-agentes/neo.md +93 -0
- package/docs/pt/4-agentes/orache.md +107 -0
- package/docs/pt/4-agentes/orchestrator.md +118 -0
- package/docs/pt/4-agentes/pentester.md +131 -0
- package/docs/pt/4-agentes/pm.md +97 -0
- package/docs/pt/4-agentes/product.md +114 -0
- package/docs/pt/4-agentes/profiler-enricher.md +93 -0
- package/docs/pt/4-agentes/profiler-forge.md +93 -0
- package/docs/pt/4-agentes/profiler-researcher.md +98 -0
- package/docs/pt/4-agentes/qa.md +124 -0
- package/docs/pt/4-agentes/setup.md +104 -0
- package/docs/pt/4-agentes/sheldon.md +95 -0
- package/docs/pt/4-agentes/site-forge.md +104 -0
- package/docs/pt/4-agentes/squad.md +127 -0
- package/docs/pt/4-agentes/tester.md +105 -0
- package/docs/pt/4-agentes/ux-ui.md +110 -0
- package/docs/pt/4-agentes/validator.md +118 -0
- package/docs/pt/5-referencia/README.md +88 -0
- package/docs/pt/5-referencia/agent-chain-continuity.md +124 -0
- package/docs/pt/{agent-sharding.md → 5-referencia/agent-sharding.md} +132 -132
- package/docs/pt/5-referencia/aioson-com-store.md +119 -0
- package/docs/pt/{automacao-squads.md → 5-referencia/automacao-squads.md} +407 -407
- package/docs/pt/{clientes-ai.md → 5-referencia/clientes-ai.md} +300 -290
- package/docs/pt/{comandos-cli.md → 5-referencia/comandos-cli.md} +1823 -1781
- package/docs/pt/{compress-agents.md → 5-referencia/compress-agents.md} +304 -304
- package/docs/pt/{design-docs-governance.md → 5-referencia/design-docs-governance.md} +59 -59
- package/docs/pt/{devlog-pipeline.md → 5-referencia/devlog-pipeline.md} +270 -270
- package/docs/pt/{feature-archive.md → 5-referencia/feature-archive.md} +199 -191
- package/docs/pt/5-referencia/feature-dossier.md +121 -0
- package/docs/pt/{fluxo-artefatos.md → 5-referencia/fluxo-artefatos.md} +179 -178
- package/docs/pt/{genome-3.0-spec.md → 5-referencia/genome-4.0-spec.md} +407 -407
- package/docs/pt/{genome-distribution.md → 5-referencia/genome-distribution.md} +232 -232
- package/docs/pt/{hooks-session-guard.md → 5-referencia/hooks-session-guard.md} +454 -454
- package/docs/pt/{inteligencia-adaptativa.md → 5-referencia/inteligencia-adaptativa.md} +324 -324
- package/docs/pt/5-referencia/live-sessions.md +144 -0
- package/docs/pt/5-referencia/memoria-e-contexto.md +340 -0
- package/docs/pt/{motor-hardening.md → 5-referencia/motor-hardening.md} +493 -492
- package/docs/pt/{output-strategy-delivery.md → 5-referencia/output-strategy-delivery.md} +655 -655
- package/docs/pt/{runner-system.md → 5-referencia/runner-system.md} +113 -113
- package/docs/pt/{runtime-observability.md → 5-referencia/runtime-observability.md} +76 -76
- package/docs/pt/{sandbox.md → 5-referencia/sandbox.md} +125 -125
- package/docs/pt/{sdd-automation-scripts.md → 5-referencia/sdd-automation-scripts.md} +559 -557
- package/docs/pt/5-referencia/sdd-framework.md +115 -0
- package/docs/pt/5-referencia/sdd-planos-e-estrutura.md +321 -0
- package/docs/pt/5-referencia/secure-by-default.md +117 -0
- package/docs/pt/{skills.md → 5-referencia/skills.md} +275 -267
- package/docs/pt/{spec-learnings-pipeline.md → 5-referencia/spec-learnings-pipeline.md} +265 -265
- package/docs/pt/{squad-dashboard.md → 5-referencia/squad-dashboard.md} +373 -373
- package/docs/pt/{web3.md → 5-referencia/web3.md} +797 -797
- package/docs/pt/README.md +111 -125
- package/docs/pt/_arquivo/README.md +130 -0
- package/docs/pt/{advisor-spec.md → _arquivo/advisor-spec.md} +343 -335
- package/docs/pt/{agentes-customizados.md → _arquivo/agentes-customizados.md} +678 -670
- package/docs/pt/{busca-de-contexto.md → _arquivo/busca-de-contexto.md} +136 -129
- package/docs/pt/{cache-de-contexto.md → _arquivo/cache-de-contexto.md} +163 -156
- package/docs/pt/{cenarios.md → _arquivo/cenarios.md} +1282 -1274
- package/docs/pt/{design-hybrid-forge.md → _arquivo/design-hybrid-forge.md} +365 -356
- package/docs/pt/{deyvin.md → _arquivo/deyvin.md} +123 -115
- package/docs/pt/{guia-engineer.md → _arquivo/guia-engineer.md} +234 -226
- package/docs/pt/{inicio-rapido.md → _arquivo/inicio-rapido.md} +261 -251
- package/docs/pt/{memoria-contexto.md → _arquivo/memoria-contexto.md} +262 -255
- package/docs/pt/{monitor-de-contexto.md → _arquivo/monitor-de-contexto.md} +165 -158
- package/docs/pt/{profiler-system.md → _arquivo/profiler-system.md} +222 -214
- package/docs/pt/{recuperacao-de-sessao.md → _arquivo/recuperacao-de-sessao.md} +134 -125
- package/docs/pt/{site-forge.md → _arquivo/site-forge.md} +318 -309
- package/docs/pt/{squad-genome.md → _arquivo/squad-genome.md} +793 -783
- package/docs/pt/active-learning-loop/README.md +117 -0
- package/docs/pt/active-learning-loop/ativo-learning-loop.md +117 -0
- package/docs/pt/active-learning-loop/comandos-cli.md +320 -0
- package/docs/pt/active-learning-loop/como-usar.md +313 -0
- package/docs/pt/active-learning-loop/diagramas.md +225 -0
- package/docs/pt/active-learning-loop/doctor-checks.md +151 -0
- package/docs/pt/active-learning-loop/troubleshooting.md +283 -0
- package/docs/pt/agentes.md +996 -993
- package/docs/pt/deyvin-subtask-scout/README.md +109 -0
- package/docs/pt/deyvin-subtask-scout/comandos-cli.md +248 -0
- package/docs/pt/deyvin-subtask-scout/como-usar.md +221 -0
- package/docs/pt/deyvin-subtask-scout/diagramas.md +124 -0
- package/docs/pt/deyvin-subtask-scout/sub-task-scout.md +113 -0
- package/docs/pt/deyvin-subtask-scout/troubleshooting.md +184 -0
- package/docs/pt/living-memory/README.md +81 -0
- package/docs/pt/living-memory/autonomy-contract.md +206 -0
- package/docs/pt/living-memory/diagramas.md +365 -0
- package/docs/pt/living-memory/memoria-viva.md +141 -0
- package/docs/pt/living-memory/notificacoes-info.md +142 -0
- package/docs/pt/living-memory/reflexao-in-harness.md +218 -0
- package/docs/pt/living-memory/troubleshooting.md +286 -0
- package/docs/testing/genome-2.0-manual-regression.md +23 -23
- package/docs/testing/genome-2.0-matrix.md +36 -36
- package/docs/testing/genome-2.0-rollout.md +184 -184
- package/package.json +51 -51
- package/src/a2a/client.js +165 -165
- package/src/a2a/server.js +223 -223
- package/src/agent-loader.js +280 -280
- package/src/agent-manifests.js +86 -66
- package/src/agents.js +92 -92
- package/src/autonomy-policy.js +163 -139
- package/src/backup-local.js +74 -74
- package/src/backup-provider.js +303 -303
- package/src/brain-query.js +171 -161
- package/src/cli.js +77 -4
- package/src/commands/agent-audit.js +397 -397
- package/src/commands/agent-export-skill.js +229 -229
- package/src/commands/agent-loader.js +85 -85
- package/src/commands/agents.js +273 -255
- package/src/commands/artifact-validate.js +218 -218
- package/src/commands/auth.js +298 -272
- package/src/commands/backup-local-cmd.js +25 -25
- package/src/commands/backup.js +533 -533
- package/src/commands/brain-query.js +44 -44
- package/src/commands/brief-gen.js +405 -405
- package/src/commands/brief-validate.js +65 -65
- package/src/commands/briefing.js +344 -344
- package/src/commands/classify.js +256 -256
- package/src/commands/cloud.js +1767 -1767
- package/src/commands/commit-prepare.js +610 -547
- package/src/commands/compress-agents.js +416 -416
- package/src/commands/config.js +90 -90
- package/src/commands/context-cache.js +90 -90
- package/src/commands/context-compact.js +49 -49
- package/src/commands/context-health.js +187 -177
- package/src/commands/context-load.js +219 -0
- package/src/commands/context-monitor.js +163 -163
- package/src/commands/context-pack.js +45 -45
- package/src/commands/context-search.js +66 -66
- package/src/commands/context-trim.js +183 -183
- package/src/commands/context-validate.js +91 -91
- package/src/commands/design-hybrid-options.js +385 -385
- package/src/commands/detect-test-runner.js +55 -55
- package/src/commands/dev-resume.js +32 -0
- package/src/commands/devlog-export-brains.js +27 -27
- package/src/commands/devlog-process.js +294 -294
- package/src/commands/devlog-watch.js +131 -131
- package/src/commands/doctor.js +123 -123
- package/src/commands/dossier-add-research.js +114 -0
- package/src/commands/dossier-audit.js +222 -0
- package/src/commands/dossier.js +423 -423
- package/src/commands/feature-archive.js +513 -513
- package/src/commands/feature-close.js +554 -270
- package/src/commands/gate-approve.js +198 -198
- package/src/commands/gate-check.js +247 -247
- package/src/commands/genome-doctor.js +489 -198
- package/src/commands/genome-migrate.js +49 -49
- package/src/commands/git-guard.js +170 -170
- package/src/commands/harness.js +307 -121
- package/src/commands/health.js +214 -214
- package/src/commands/hooks-emit.js +253 -253
- package/src/commands/hooks-install.js +347 -347
- package/src/commands/i18n-add.js +56 -56
- package/src/commands/implementation-plan.js +367 -367
- package/src/commands/info.js +41 -41
- package/src/commands/init.js +120 -120
- package/src/commands/install.js +162 -111
- package/src/commands/learning-auto-promote.js +197 -195
- package/src/commands/learning-evolve.js +364 -364
- package/src/commands/learning-export.js +103 -103
- package/src/commands/learning-rollback.js +164 -164
- package/src/commands/learning.js +134 -134
- package/src/commands/live.js +2101 -2082
- package/src/commands/locale-apply.js +54 -54
- package/src/commands/locale-diff.js +25 -25
- package/src/commands/mcp-doctor.js +407 -407
- package/src/commands/mcp-init.js +373 -373
- package/src/commands/memory-archive.js +193 -0
- package/src/commands/memory-reflect-commit.js +148 -0
- package/src/commands/memory-reflect-prepare.js +97 -0
- package/src/commands/memory-restore.js +177 -0
- package/src/commands/memory-search.js +135 -0
- package/src/commands/memory.js +299 -234
- package/src/commands/notify.js +68 -0
- package/src/commands/package-e2e.js +273 -273
- package/src/commands/parallel-assign.js +483 -483
- package/src/commands/parallel-doctor.js +850 -850
- package/src/commands/parallel-guard.js +241 -241
- package/src/commands/parallel-init.js +311 -311
- package/src/commands/parallel-merge.js +299 -299
- package/src/commands/parallel-status.js +434 -434
- package/src/commands/pattern-detect.js +33 -33
- package/src/commands/preflight-context.js +30 -30
- package/src/commands/preflight.js +267 -267
- package/src/commands/pulse-update.js +130 -130
- package/src/commands/qa-doctor.js +185 -185
- package/src/commands/qa-init.js +166 -166
- package/src/commands/qa-report.js +58 -58
- package/src/commands/qa-run.js +873 -873
- package/src/commands/qa-scan.js +337 -337
- package/src/commands/recovery.js +43 -43
- package/src/commands/revision.js +235 -235
- package/src/commands/runner-daemon.js +274 -274
- package/src/commands/runner-plan.js +70 -70
- package/src/commands/runner-queue-from-plan.js +166 -166
- package/src/commands/runner-queue.js +189 -189
- package/src/commands/runner-run.js +129 -129
- package/src/commands/runtime.js +2086 -2067
- package/src/commands/sandbox.js +37 -37
- package/src/commands/scaffold-complete.js +188 -188
- package/src/commands/scan-project.js +1371 -1371
- package/src/commands/scout-commit.js +163 -0
- package/src/commands/scout-prep.js +214 -0
- package/src/commands/scout-validate.js +112 -0
- package/src/commands/security-audit.js +275 -275
- package/src/commands/security-scan.js +376 -376
- package/src/commands/self-implement-loop.js +306 -300
- package/src/commands/session-guard.js +218 -218
- package/src/commands/setup-context.js +699 -699
- package/src/commands/setup.js +178 -178
- package/src/commands/sizing.js +165 -165
- package/src/commands/skill.js +670 -670
- package/src/commands/smoke.js +426 -426
- package/src/commands/spec-checkpoint.js +177 -177
- package/src/commands/spec-status.js +79 -79
- package/src/commands/spec-sync.js +190 -190
- package/src/commands/spec-tasks.js +288 -288
- package/src/commands/squad-agent-create.js +830 -830
- package/src/commands/squad-autorun.js +1220 -1220
- package/src/commands/squad-bus.js +217 -217
- package/src/commands/squad-card.js +149 -149
- package/src/commands/squad-daemon.js +343 -343
- package/src/commands/squad-dashboard.js +39 -39
- package/src/commands/squad-dependency-graph.js +164 -164
- package/src/commands/squad-deploy.js +64 -64
- package/src/commands/squad-doctor.js +460 -460
- package/src/commands/squad-export.js +77 -46
- package/src/commands/squad-investigate.js +314 -314
- package/src/commands/squad-learning.js +209 -209
- package/src/commands/squad-mcp.js +270 -270
- package/src/commands/squad-pipeline.js +343 -343
- package/src/commands/squad-plan.js +361 -361
- package/src/commands/squad-processes.js +56 -56
- package/src/commands/squad-recovery.js +42 -42
- package/src/commands/squad-repair-genomes.js +39 -39
- package/src/commands/squad-review.js +106 -106
- package/src/commands/squad-roi.js +291 -291
- package/src/commands/squad-scaffold.js +56 -56
- package/src/commands/squad-score.js +311 -307
- package/src/commands/squad-status.js +481 -481
- package/src/commands/squad-tool-register.js +157 -157
- package/src/commands/squad-validate.js +438 -438
- package/src/commands/squad-webhook.js +160 -160
- package/src/commands/squad-worker.js +191 -191
- package/src/commands/squad-worktrees.js +75 -75
- package/src/commands/state-save.js +122 -122
- package/src/commands/store-genome.js +667 -304
- package/src/commands/store-skill.js +247 -247
- package/src/commands/store-squad.js +431 -431
- package/src/commands/store-system.js +392 -392
- package/src/commands/sync-agents-preflight.js +176 -0
- package/src/commands/test-agents.js +199 -199
- package/src/commands/tool-capabilities.js +63 -63
- package/src/commands/tool-registry-cmd.js +232 -232
- package/src/commands/update.js +64 -64
- package/src/commands/verify-gate.js +612 -612
- package/src/commands/web-map.js +70 -70
- package/src/commands/web-scrape.js +71 -71
- package/src/commands/workflow-execute.js +730 -730
- package/src/commands/workflow-harden.js +231 -231
- package/src/commands/workflow-heal.js +136 -136
- package/src/commands/workflow-next.js +1279 -1039
- package/src/commands/workflow-plan.js +108 -108
- package/src/commands/workflow-status.js +440 -440
- package/src/commands/workspace.js +144 -144
- package/src/constants.js +413 -384
- package/src/context-cache.js +159 -159
- package/src/context-memory.js +975 -966
- package/src/context-parse-reason.js +22 -22
- package/src/context-search.js +326 -326
- package/src/context-writer.js +197 -197
- package/src/context.js +247 -247
- package/src/delivery-runner.js +319 -319
- package/src/design-variation-catalog.js +503 -503
- package/src/detector.js +261 -261
- package/src/doctor.js +760 -329
- package/src/dossier/codemap-store.js +267 -267
- package/src/dossier/dossier-bootstrap.js +222 -222
- package/src/dossier/dossier-compact.js +159 -159
- package/src/dossier/lock.js +128 -128
- package/src/dossier/research-index-store.js +233 -0
- package/src/dossier/revision-store.js +313 -313
- package/src/dossier/schema.js +162 -155
- package/src/dossier/scout-section.js +127 -0
- package/src/dossier/store.js +406 -400
- package/src/execution-gateway.js +464 -464
- package/src/friction-scanner.js +202 -202
- package/src/genome-files.js +198 -198
- package/src/genome-format.js +442 -442
- package/src/genome-schema.js +238 -238
- package/src/genomes/bindings.js +281 -281
- package/src/genomes.js +500 -500
- package/src/handoff-contract.js +417 -363
- package/src/handoff-validator.js +45 -45
- package/src/harness/circuit-breaker.js +135 -135
- package/src/i18n/index.js +103 -103
- package/src/i18n/messages/en.js +1541 -1434
- package/src/i18n/messages/es.js +1325 -1221
- package/src/i18n/messages/fr.js +1333 -1229
- package/src/i18n/messages/pt-BR.js +1561 -1457
- package/src/i18n/scaffold.js +64 -64
- package/src/install-animation.js +260 -260
- package/src/install-profile.js +127 -127
- package/src/install-wizard.js +475 -475
- package/src/installer-config-merge.js +207 -0
- package/src/installer.js +449 -358
- package/src/learning-loop-archive.js +595 -0
- package/src/learning-loop-doctor.js +217 -0
- package/src/learning-loop-engine.js +254 -0
- package/src/learning-loop-fts5.js +132 -0
- package/src/learning-loop-migration.js +163 -0
- package/src/lib/dev-resume.js +140 -0
- package/src/lib/dossier-telemetry.js +36 -0
- package/src/lib/genomes/compat.js +206 -206
- package/src/lib/genomes/migrate.js +90 -90
- package/src/lib/git-commit-guard.js +751 -691
- package/src/lib/health-check.js +158 -158
- package/src/lib/hook-protocol.js +76 -76
- package/src/lib/llm-content-sanitizer.js +44 -0
- package/src/lib/security/artifact-reader.js +167 -167
- package/src/lib/security/exit-codes.js +51 -51
- package/src/lib/security/findings-writer.js +176 -176
- package/src/lib/security/runtime-events.js +77 -77
- package/src/lib/security/secrets-regex.js +115 -115
- package/src/lib/squads/genome-repair.js +49 -49
- package/src/lib/store/security-scan.js +175 -173
- package/src/lib/terminal-checkbox.js +135 -130
- package/src/lib/terminal-picker.js +447 -0
- package/src/lib/tmux-launcher.js +163 -163
- package/src/lib/tool-capabilities.js +102 -102
- package/src/lib/webhook-server.js +328 -328
- package/src/locales.js +88 -88
- package/src/mcp/apps/squad-dashboard/app.js +163 -163
- package/src/mcp/apps/squad-dashboard/index.html +261 -261
- package/src/mcp/apps/squad-dashboard/mcp-manifest.json +23 -23
- package/src/mcp/resources/squad-state.js +130 -130
- package/src/mcp-connectors/registry.js +602 -602
- package/src/memory-reflect-engine.js +359 -0
- package/src/notify-renderer.js +32 -0
- package/src/onboarding.js +305 -305
- package/src/parallel-workspace.js +756 -756
- package/src/parser.js +66 -66
- package/src/path-guard.js +47 -47
- package/src/permissions-generator.js +400 -0
- package/src/preflight-engine.js +654 -654
- package/src/prompt-tool.js +20 -20
- package/src/qa-html-report.js +472 -472
- package/src/recovery-context-session.js +154 -154
- package/src/runner/cascade.js +97 -97
- package/src/runner/cli-launcher.js +109 -109
- package/src/runner/plan-importer.js +63 -63
- package/src/runner/queue-store.js +159 -159
- package/src/runtime-store.js +2720 -2676
- package/src/sandbox.js +194 -177
- package/src/self-healing.js +142 -142
- package/src/session-handoff.js +295 -187
- package/src/squad/agent-teams-adapter.js +270 -264
- package/src/squad/brief-validator.js +350 -350
- package/src/squad/bus-bridge.js +140 -140
- package/src/squad/context-compactor.js +265 -265
- package/src/squad/cross-ai-synthesizer.js +250 -250
- package/src/squad/external-session.js +180 -180
- package/src/squad/hooks-generator.js +196 -196
- package/src/squad/inter-squad-events.js +175 -175
- package/src/squad/inter-squad.js +74 -74
- package/src/squad/intra-bus.js +345 -345
- package/src/squad/learning-extractor.js +213 -213
- package/src/squad/pattern-detector.js +365 -365
- package/src/squad/preflight-context.js +296 -296
- package/src/squad/recovery-context.js +372 -372
- package/src/squad/reflection.js +365 -365
- package/src/squad/squad-scaffold.js +341 -341
- package/src/squad/state-manager.js +310 -310
- package/src/squad/task-decomposer.js +652 -652
- package/src/squad/verify-gate.js +303 -303
- package/src/squad/worktree-manager.js +114 -114
- package/src/squad-daemon.js +490 -490
- package/src/squad-dashboard/api.js +223 -223
- package/src/squad-dashboard/attachment-handler.js +93 -93
- package/src/squad-dashboard/context-monitor.js +157 -157
- package/src/squad-dashboard/execution-logs.js +115 -115
- package/src/squad-dashboard/hunk-review.js +209 -209
- package/src/squad-dashboard/metrics.js +133 -133
- package/src/squad-dashboard/process-monitor.js +125 -125
- package/src/squad-dashboard/renderer.js +858 -858
- package/src/squad-dashboard/server.js +232 -232
- package/src/squad-dashboard/styles.js +525 -525
- package/src/squad-dashboard/token-tracker.js +99 -99
- package/src/squads/apply-genome.js +21 -21
- package/src/squads/genome-binding-service.js +154 -154
- package/src/sub-task-engine.js +415 -0
- package/src/sub-task-schemas.js +150 -0
- package/src/sub-task-state.js +152 -0
- package/src/sub-task-telemetry.js +69 -0
- package/src/test-briefing.js +226 -226
- package/src/tool-executor.js +94 -94
- package/src/updater.js +39 -39
- package/src/utils.js +49 -49
- package/src/version.js +50 -50
- package/src/web.js +284 -284
- package/src/worker-runner.js +541 -524
- package/src/workflow-gates.js +185 -185
- package/template/.aioson/advisors/.gitkeep +1 -1
- package/template/.aioson/agents/analyst.md +333 -318
- package/template/.aioson/agents/architect.md +325 -305
- package/template/.aioson/agents/{cypher.md → briefing.md} +264 -252
- package/template/.aioson/agents/committer.md +161 -161
- package/template/.aioson/agents/copywriter.md +937 -463
- package/template/.aioson/agents/design-hybrid-forge.md +141 -141
- package/template/.aioson/agents/dev.md +295 -263
- package/template/.aioson/agents/deyvin.md +198 -87
- package/template/.aioson/agents/discover.md +235 -235
- package/template/.aioson/agents/discovery-design-doc.md +56 -29
- package/template/.aioson/agents/genome.md +1904 -364
- package/template/.aioson/agents/manifests/analyst.manifest.json +26 -26
- package/template/.aioson/agents/manifests/architect.manifest.json +23 -23
- package/template/.aioson/agents/manifests/committer.manifest.json +23 -23
- package/template/.aioson/agents/manifests/dev.manifest.json +54 -37
- package/template/.aioson/agents/manifests/deyvin.manifest.json +41 -0
- package/template/.aioson/agents/manifests/orchestrator.manifest.json +30 -30
- package/template/.aioson/agents/manifests/pentester.manifest.json +39 -39
- package/template/.aioson/agents/manifests/pm.manifest.json +26 -26
- package/template/.aioson/agents/manifests/product.manifest.json +23 -23
- package/template/.aioson/agents/manifests/qa.manifest.json +41 -25
- package/template/.aioson/agents/manifests/setup.manifest.json +20 -20
- package/template/.aioson/agents/manifests/ux-ui.manifest.json +24 -24
- package/template/.aioson/agents/neo.md +341 -231
- package/template/.aioson/agents/orache.md +430 -430
- package/template/.aioson/agents/orchestrator.md +274 -263
- package/template/.aioson/agents/pair.md +5 -5
- package/template/.aioson/agents/pentester.md +289 -235
- package/template/.aioson/agents/pm.md +141 -130
- package/template/.aioson/agents/product.md +351 -273
- package/template/.aioson/agents/profiler-enricher.md +331 -331
- package/template/.aioson/agents/profiler-forge.md +212 -212
- package/template/.aioson/agents/profiler-researcher.md +282 -282
- package/template/.aioson/agents/qa.md +432 -342
- package/template/.aioson/agents/setup.md +423 -423
- package/template/.aioson/agents/sheldon.md +259 -197
- package/template/.aioson/agents/site-forge.md +281 -281
- package/template/.aioson/agents/squad.md +160 -156
- package/template/.aioson/agents/tester.md +536 -473
- package/template/.aioson/agents/ux-ui.md +195 -162
- package/template/.aioson/agents/validator.md +101 -69
- package/template/.aioson/brains/README.md +132 -128
- package/template/.aioson/brains/_archived/.gitkeep +0 -0
- package/template/.aioson/brains/_index.json +34 -16
- package/template/.aioson/brains/dev/patterns.brain.json +79 -0
- package/template/.aioson/brains/scripts/query.js +107 -107
- package/template/.aioson/brains/sheldon/architecture-decisions.brain.json +79 -0
- package/template/.aioson/brains/site-forge/visual-patterns.brain.json +205 -205
- package/template/.aioson/config/autonomy-protocol.json +125 -43
- package/template/.aioson/config/learning-loop.json +10 -0
- package/template/.aioson/config/scout-engine.json +1 -0
- package/template/.aioson/config.md +410 -410
- package/template/.aioson/context/_archived/.gitkeep +0 -0
- package/template/.aioson/context/design-doc.md +136 -136
- package/template/.aioson/context/project-map.md +57 -57
- package/template/.aioson/context/project-pulse.md +34 -34
- package/template/.aioson/context/seeds/seed-example.md +27 -27
- package/template/.aioson/context/spec.md.template +54 -54
- package/template/.aioson/context/user-profile.md +42 -42
- package/template/.aioson/design-docs/code-reuse.md +48 -48
- package/template/.aioson/design-docs/componentization.md +47 -47
- package/template/.aioson/design-docs/file-size.md +52 -52
- package/template/.aioson/design-docs/folder-structure.md +51 -51
- package/template/.aioson/design-docs/naming.md +54 -54
- package/template/.aioson/docs/LAYERS.md +89 -89
- package/template/.aioson/docs/README.md +76 -76
- package/template/.aioson/docs/autonomy-protocol.md +80 -0
- package/template/.aioson/docs/briefing/briefing-craft.md +237 -0
- package/template/.aioson/docs/dev/execution-discipline.md +106 -106
- package/template/.aioson/docs/dev/stack-conventions.md +83 -83
- package/template/.aioson/docs/deyvin/continuity-recovery.md +57 -57
- package/template/.aioson/docs/deyvin/debugging-escalation.md +30 -30
- package/template/.aioson/docs/deyvin/pair-execution.md +44 -44
- package/template/.aioson/docs/deyvin/runtime-handoffs.md +36 -36
- package/template/.aioson/docs/example-external-api-context.md +72 -72
- package/template/.aioson/docs/pentester/app-playbooks.md +206 -0
- package/template/.aioson/docs/pentester/llm-supplychain.md +165 -0
- package/template/.aioson/docs/product/conversation-playbook.md +116 -116
- package/template/.aioson/docs/product/prd-contract.md +107 -107
- package/template/.aioson/docs/product/quality-lens.md +57 -57
- package/template/.aioson/docs/product/research-loop.md +65 -65
- package/template/.aioson/docs/sheldon/enrichment-paths.md +134 -134
- package/template/.aioson/docs/sheldon/harness-contract.md +118 -0
- package/template/.aioson/docs/sheldon/quality-lens.md +57 -57
- package/template/.aioson/docs/sheldon/research-loop.md +56 -56
- package/template/.aioson/docs/sheldon/web-intelligence.md +75 -75
- package/template/.aioson/docs/site-forge-build.md +195 -195
- package/template/.aioson/docs/site-forge-extraction.md +135 -135
- package/template/.aioson/docs/site-forge-qa.md +155 -155
- package/template/.aioson/docs/site-forge-recon.md +434 -434
- package/template/.aioson/docs/site-forge-transform.md +249 -249
- package/template/.aioson/docs/squad/content-output.md +91 -91
- package/template/.aioson/docs/squad/creation-flow.md +149 -135
- package/template/.aioson/docs/squad/domain-breadth.md +322 -0
- package/template/.aioson/docs/squad/domain-classification.md +117 -117
- package/template/.aioson/docs/squad/genome-bindings.md +47 -47
- package/template/.aioson/docs/squad/package-contract.md +260 -234
- package/template/.aioson/docs/squad/quality-lens.md +60 -56
- package/template/.aioson/docs/squad/research-loop.md +59 -59
- package/template/.aioson/docs/squad/session-operations.md +117 -117
- package/template/.aioson/docs/squad/workflow-quality.md +165 -165
- package/template/.aioson/docs/tester/coverage-quality.md +351 -0
- package/template/.aioson/docs/ux-ui/accessibility-audit.md +55 -55
- package/template/.aioson/docs/ux-ui/audit-mode.md +86 -86
- package/template/.aioson/docs/ux-ui/component-map.md +35 -35
- package/template/.aioson/docs/ux-ui/design-execution.md +111 -111
- package/template/.aioson/docs/ux-ui/design-gate.md +27 -27
- package/template/.aioson/docs/ux-ui/research-mode.md +39 -39
- package/template/.aioson/docs/ux-ui/site-delivery.md +156 -156
- package/template/.aioson/docs/ux-ui/token-contract.md +57 -57
- package/template/.aioson/genomes/INDEX.md +195 -0
- package/template/.aioson/genomes/copywriting/SKILL.md +137 -0
- package/template/.aioson/genomes/copywriting/manifest.json +140 -0
- package/template/.aioson/genomes/copywriting/references/application-notes.md +145 -0
- package/template/.aioson/genomes/copywriting/references/decision-weights.md +45 -0
- package/template/.aioson/genomes/copywriting/references/frameworks/5-act-narrative.md +184 -0
- package/template/.aioson/genomes/copywriting/references/frameworks/classical-formulas.md +164 -0
- package/template/.aioson/genomes/copywriting/references/frameworks/offer-stack.md +195 -0
- package/template/.aioson/genomes/copywriting/references/frameworks/one-belief.md +135 -0
- package/template/.aioson/genomes/copywriting/references/frameworks/pms-research.md +211 -0
- package/template/.aioson/genomes/copywriting/references/frameworks/two-paths-close.md +190 -0
- package/template/.aioson/genomes/copywriting/references/heuristics.md +114 -0
- package/template/.aioson/genomes/copywriting/references/meta-axioms.md +68 -0
- package/template/.aioson/genomes/copywriting/references/methodology.md +115 -0
- package/template/.aioson/genomes/copywriting-brunson/SKILL.md +133 -0
- package/template/.aioson/genomes/copywriting-brunson/manifest.json +152 -0
- package/template/.aioson/genomes/copywriting-brunson/references/application-notes.md +113 -0
- package/template/.aioson/genomes/copywriting-brunson/references/decision-weights.md +33 -0
- package/template/.aioson/genomes/copywriting-brunson/references/evidence-and-attribution.md +81 -0
- package/template/.aioson/genomes/copywriting-brunson/references/frameworks/6-part-structure.md +136 -0
- package/template/.aioson/genomes/copywriting-brunson/references/frameworks/origin-story.md +121 -0
- package/template/.aioson/genomes/copywriting-brunson/references/frameworks/perfect-webinar-script.md +139 -0
- package/template/.aioson/genomes/copywriting-brunson/references/frameworks/persuasive-storytelling-5-structures.md +164 -0
- package/template/.aioson/genomes/copywriting-brunson/references/frameworks/value-stack.md +136 -0
- package/template/.aioson/genomes/copywriting-brunson/references/frameworks/who-what-why-how.md +110 -0
- package/template/.aioson/genomes/copywriting-brunson/references/meta-axioms.md +36 -0
- package/template/.aioson/genomes/copywriting-brunson/references/methodology.md +112 -0
- package/template/.aioson/git-guard.json +12 -11
- package/template/.aioson/mcp/servers.md +23 -23
- package/template/.aioson/profiler-reports/.gitkeep +1 -1
- package/template/.aioson/rules/README.md +69 -69
- package/template/.aioson/rules/_archived/.gitkeep +0 -0
- package/template/.aioson/rules/agent-language-policy.md +93 -93
- package/template/.aioson/rules/aioson-context-boundary.md +63 -63
- package/template/.aioson/rules/canonical-path-contract.md +47 -47
- package/template/.aioson/rules/data-format-convention.md +74 -74
- package/template/.aioson/rules/disk-first-artifacts.md +44 -44
- package/template/.aioson/rules/example-monetary-values.md +30 -30
- package/template/.aioson/rules/output-brevity.md +44 -44
- package/template/.aioson/rules/prd-section-ownership.md +49 -49
- package/template/.aioson/rules/security-baseline.md +139 -139
- package/template/.aioson/rules/spec-level-ownership.md +61 -61
- package/template/.aioson/rules/squad/README.md +50 -50
- package/template/.aioson/rules/squad-driver-pattern.md +81 -81
- package/template/.aioson/schemas/content-blueprint.schema.json +30 -30
- package/template/.aioson/schemas/genome-meta.schema.json +150 -150
- package/template/.aioson/schemas/genome.schema.json +115 -115
- package/template/.aioson/schemas/readiness.schema.json +27 -27
- package/template/.aioson/schemas/squad-blueprint.schema.json +228 -228
- package/template/.aioson/schemas/squad-manifest.schema.json +874 -874
- package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +243 -243
- package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -293
- package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -827
- package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -250
- package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -585
- package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -365
- package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +482 -482
- package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +387 -387
- package/template/.aioson/skills/design/bold-editorial-ui/SKILL.md +205 -205
- package/template/.aioson/skills/design/bold-editorial-ui/references/art-direction.md +338 -338
- package/template/.aioson/skills/design/bold-editorial-ui/references/components.md +977 -977
- package/template/.aioson/skills/design/bold-editorial-ui/references/dashboards.md +218 -218
- package/template/.aioson/skills/design/bold-editorial-ui/references/design-tokens.md +326 -326
- package/template/.aioson/skills/design/bold-editorial-ui/references/motion.md +461 -461
- package/template/.aioson/skills/design/bold-editorial-ui/references/patterns.md +293 -293
- package/template/.aioson/skills/design/bold-editorial-ui/references/websites.md +352 -352
- package/template/.aioson/skills/design/clean-saas-ui/SKILL.md +210 -210
- package/template/.aioson/skills/design/clean-saas-ui/references/art-direction.md +319 -319
- package/template/.aioson/skills/design/clean-saas-ui/references/components.md +365 -365
- package/template/.aioson/skills/design/clean-saas-ui/references/dashboards.md +196 -196
- package/template/.aioson/skills/design/clean-saas-ui/references/design-tokens.md +244 -244
- package/template/.aioson/skills/design/clean-saas-ui/references/motion.md +235 -235
- package/template/.aioson/skills/design/clean-saas-ui/references/patterns.md +215 -215
- package/template/.aioson/skills/design/clean-saas-ui/references/websites.md +295 -295
- package/template/.aioson/skills/design/cognitive-core-ui/SKILL.md +203 -203
- package/template/.aioson/skills/design/cognitive-core-ui/references/art-direction.md +339 -339
- package/template/.aioson/skills/design/cognitive-core-ui/references/components.md +407 -407
- package/template/.aioson/skills/design/cognitive-core-ui/references/dashboards.md +272 -272
- package/template/.aioson/skills/design/cognitive-core-ui/references/design-tokens.md +524 -524
- package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +279 -279
- package/template/.aioson/skills/design/cognitive-core-ui/references/patterns.md +289 -289
- package/template/.aioson/skills/design/cognitive-core-ui/references/websites.md +437 -437
- package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +222 -222
- package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -159
- package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -498
- package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -236
- package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -274
- package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -355
- package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -198
- package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -307
- package/template/.aioson/skills/design/interface-design/SKILL.md +47 -47
- package/template/.aioson/skills/design/interface-design/references/components-and-states.md +105 -105
- package/template/.aioson/skills/design/interface-design/references/design-directions.md +101 -101
- package/template/.aioson/skills/design/interface-design/references/handoff-and-quality.md +71 -71
- package/template/.aioson/skills/design/interface-design/references/intent-and-domain.md +74 -74
- package/template/.aioson/skills/design/interface-design/references/tokens-and-depth.md +173 -173
- package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +213 -213
- package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -228
- package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -855
- package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -334
- package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -342
- package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -286
- package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -458
- package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -723
- package/template/.aioson/skills/design/premium-command-center-ui/SKILL.md +62 -62
- package/template/.aioson/skills/design/premium-command-center-ui/references/operations.md +74 -74
- package/template/.aioson/skills/design/premium-command-center-ui/references/patterns.md +116 -116
- package/template/.aioson/skills/design/premium-command-center-ui/references/validation.md +47 -47
- package/template/.aioson/skills/design/premium-command-center-ui/references/visual-system.md +215 -215
- package/template/.aioson/skills/design/pt.squarespace.com/.skill-meta.json +31 -31
- package/template/.aioson/skills/design/pt.squarespace.com/SKILL.md +66 -66
- package/template/.aioson/skills/design/pt.squarespace.com/references/components.md +368 -368
- package/template/.aioson/skills/design/pt.squarespace.com/references/design-tokens.md +150 -150
- package/template/.aioson/skills/design/pt.squarespace.com/references/motion.md +270 -270
- package/template/.aioson/skills/design/pt.squarespace.com/references/patterns.md +189 -189
- package/template/.aioson/skills/design/pt.squarespace.com/references/websites.md +165 -165
- package/template/.aioson/skills/design/warm-craft-ui/SKILL.md +209 -209
- package/template/.aioson/skills/design/warm-craft-ui/references/art-direction.md +324 -324
- package/template/.aioson/skills/design/warm-craft-ui/references/components.md +508 -508
- package/template/.aioson/skills/design/warm-craft-ui/references/dashboards.md +223 -223
- package/template/.aioson/skills/design/warm-craft-ui/references/design-tokens.md +374 -374
- package/template/.aioson/skills/design/warm-craft-ui/references/motion.md +356 -356
- package/template/.aioson/skills/design/warm-craft-ui/references/patterns.md +288 -288
- package/template/.aioson/skills/design/warm-craft-ui/references/websites.md +289 -289
- package/template/.aioson/skills/design-system/SKILL.md +92 -92
- package/template/.aioson/skills/design-system/components/SKILL.md +274 -274
- package/template/.aioson/skills/design-system/dashboards/SKILL.md +184 -184
- package/template/.aioson/skills/design-system/foundations/SKILL.md +250 -250
- package/template/.aioson/skills/design-system/motion/SKILL.md +197 -197
- package/template/.aioson/skills/design-system/patterns/SKILL.md +231 -231
- package/template/.aioson/skills/dynamic/README.md +30 -30
- package/template/.aioson/skills/dynamic/cardano-docs.md +16 -16
- package/template/.aioson/skills/dynamic/ethereum-docs.md +17 -17
- package/template/.aioson/skills/dynamic/flux-ui-docs.md +13 -13
- package/template/.aioson/skills/dynamic/laravel-docs.md +41 -41
- package/template/.aioson/skills/dynamic/npm-packages.md +16 -16
- package/template/.aioson/skills/dynamic/solana-docs.md +16 -16
- package/template/.aioson/skills/marketing/references/anti-patterns.md +254 -254
- package/template/.aioson/skills/marketing/references/cta-matrix.md +361 -0
- package/template/.aioson/skills/marketing/references/fascinations.md +192 -192
- package/template/.aioson/skills/marketing/references/five-acts.md +248 -248
- package/template/.aioson/skills/marketing/references/headline-matrix.md +358 -0
- package/template/.aioson/skills/marketing/references/market-intelligence.md +198 -198
- package/template/.aioson/skills/marketing/references/offer-structure.md +203 -203
- package/template/.aioson/skills/marketing/references/one-belief.md +149 -149
- package/template/.aioson/skills/marketing/references/patterns.md +218 -218
- package/template/.aioson/skills/marketing/references/platform-constraints.md +337 -0
- package/template/.aioson/skills/marketing/references/pms-research.md +193 -193
- package/template/.aioson/skills/marketing/vsl-craft.md +385 -385
- package/template/.aioson/skills/premium-visual-design/SKILL.md +83 -83
- package/template/.aioson/skills/premium-visual-design/components/agent-badge.md +92 -92
- package/template/.aioson/skills/premium-visual-design/components/dependency-node.md +102 -102
- package/template/.aioson/skills/premium-visual-design/components/mention-autocomplete.md +136 -136
- package/template/.aioson/skills/premium-visual-design/components/notification-center.md +136 -136
- package/template/.aioson/skills/premium-visual-design/components/review-action-bar.md +188 -188
- package/template/.aioson/skills/premium-visual-design/components/team-switcher.md +131 -131
- package/template/.aioson/skills/premium-visual-design/patterns/agent-message-thread.md +198 -198
- package/template/.aioson/skills/premium-visual-design/patterns/notification-panel.md +275 -275
- package/template/.aioson/skills/premium-visual-design/patterns/review-workflow-ui.md +234 -234
- package/template/.aioson/skills/premium-visual-design/patterns/task-dependency-graph.md +147 -147
- package/template/.aioson/skills/premium-visual-design/tokens/status-extended.md +142 -142
- package/template/.aioson/skills/process/aioson-spec-driven/SKILL.md +46 -46
- package/template/.aioson/skills/process/aioson-spec-driven/references/analyst.md +30 -30
- package/template/.aioson/skills/process/aioson-spec-driven/references/approval-gates.md +109 -109
- package/template/.aioson/skills/process/aioson-spec-driven/references/architect.md +23 -23
- package/template/.aioson/skills/process/aioson-spec-driven/references/artifact-map.md +44 -44
- package/template/.aioson/skills/process/aioson-spec-driven/references/classification-map.md +37 -37
- package/template/.aioson/skills/process/aioson-spec-driven/references/dev.md +47 -47
- package/template/.aioson/skills/process/aioson-spec-driven/references/deyvin.md +27 -27
- package/template/.aioson/skills/process/aioson-spec-driven/references/hardening-lane.md +49 -49
- package/template/.aioson/skills/process/aioson-spec-driven/references/maintenance-and-state.md +101 -101
- package/template/.aioson/skills/process/aioson-spec-driven/references/pm.md +30 -30
- package/template/.aioson/skills/process/aioson-spec-driven/references/product.md +25 -25
- package/template/.aioson/skills/process/aioson-spec-driven/references/qa.md +30 -30
- package/template/.aioson/skills/process/aioson-spec-driven/references/sheldon.md +25 -25
- package/template/.aioson/skills/process/aioson-spec-driven/references/ui-language.md +75 -75
- package/template/.aioson/skills/process/design-hybrid-forge/SKILL.md +147 -147
- package/template/.aioson/skills/process/design-hybrid-forge/references/crossover-protocol.md +221 -221
- package/template/.aioson/skills/process/design-hybrid-forge/references/naming-registry.md +88 -88
- package/template/.aioson/skills/process/design-hybrid-forge/references/output-contract.md +306 -306
- package/template/.aioson/skills/process/design-hybrid-forge/references/pair-compatibility.md +149 -149
- package/template/.aioson/skills/process/design-hybrid-forge/references/quality-gates.md +208 -208
- package/template/.aioson/skills/process/design-hybrid-forge/references/variation-library.md +125 -125
- package/template/.aioson/skills/process/secure-tdd/SKILL.md +97 -97
- package/template/.aioson/skills/process/simplify/SKILL.md +173 -173
- package/template/.aioson/skills/references/premium-command-center-ui/master-application-prompt.md +79 -79
- package/template/.aioson/skills/references/premium-command-center-ui/operational-ux-playbook.md +253 -253
- package/template/.aioson/skills/references/premium-command-center-ui/quality-validation-checklist.md +82 -82
- package/template/.aioson/skills/references/premium-command-center-ui/visual-system-and-component-patterns.md +270 -270
- package/template/.aioson/skills/squad/SKILL.md +58 -58
- package/template/.aioson/skills/squad/formats/catalog.json +15 -15
- package/template/.aioson/skills/squad/formats/content/blog-post.md +47 -47
- package/template/.aioson/skills/squad/formats/content/newsletter.md +47 -47
- package/template/.aioson/skills/squad/formats/creative/podcast-script.md +43 -43
- package/template/.aioson/skills/squad/formats/creative/video-script.md +41 -41
- package/template/.aioson/skills/squad/formats/social/instagram-feed.md +42 -42
- package/template/.aioson/skills/squad/formats/social/linkedin-post.md +42 -42
- package/template/.aioson/skills/squad/formats/social/tiktok.md +39 -39
- package/template/.aioson/skills/squad/formats/social/twitter-thread.md +39 -39
- package/template/.aioson/skills/squad/formats/social/youtube-long.md +47 -47
- package/template/.aioson/skills/squad/formats/social/youtube-shorts.md +39 -39
- package/template/.aioson/skills/squad/patterns/multi-platform-pattern.md +108 -108
- package/template/.aioson/skills/squad/patterns/persona-based-pattern.md +98 -98
- package/template/.aioson/skills/squad/patterns/pipeline-pattern.md +106 -106
- package/template/.aioson/skills/squad/patterns/review-loop-pattern.md +81 -81
- package/template/.aioson/skills/squad/references/checklist-templates.md +122 -122
- package/template/.aioson/skills/squad/references/executor-archetypes.md +123 -123
- package/template/.aioson/skills/squad/references/workflow-templates.md +169 -169
- package/template/.aioson/skills/static/context-budget-guide.md +46 -46
- package/template/.aioson/skills/static/debugging-protocol.md +42 -42
- package/template/.aioson/skills/static/django-patterns.md +342 -342
- package/template/.aioson/skills/static/fastapi-patterns.md +344 -344
- package/template/.aioson/skills/static/filament-patterns.md +267 -267
- package/template/.aioson/skills/static/flux-ui-components.md +262 -262
- package/template/.aioson/skills/static/git-conventions.md +227 -227
- package/template/.aioson/skills/static/git-worktrees.md +36 -36
- package/template/.aioson/skills/static/harness-sensors.md +74 -74
- package/template/.aioson/skills/static/harness-validate/SKILL.md +46 -46
- package/template/.aioson/skills/static/jetstream-setup.md +200 -200
- package/template/.aioson/skills/static/landing-page-deploy.md +192 -192
- package/template/.aioson/skills/static/landing-page-forge.md +730 -730
- package/template/.aioson/skills/static/laravel-conventions.md +491 -491
- package/template/.aioson/skills/static/multi-agent-patterns.md +43 -43
- package/template/.aioson/skills/static/nextjs-patterns.md +321 -321
- package/template/.aioson/skills/static/node-express-patterns.md +317 -317
- package/template/.aioson/skills/static/node-typescript-patterns.md +282 -282
- package/template/.aioson/skills/static/rails-conventions.md +307 -307
- package/template/.aioson/skills/static/react-motion-patterns.md +599 -599
- package/template/.aioson/skills/static/static-html-patterns/checklists.md +43 -43
- package/template/.aioson/skills/static/static-html-patterns/css-tokens.md +609 -609
- package/template/.aioson/skills/static/static-html-patterns/motion.md +193 -193
- package/template/.aioson/skills/static/static-html-patterns/premium.md +711 -711
- package/template/.aioson/skills/static/static-html-patterns/structure.md +209 -209
- package/template/.aioson/skills/static/static-html-patterns/utilities.md +190 -190
- package/template/.aioson/skills/static/static-html-patterns.md +80 -80
- package/template/.aioson/skills/static/tall-stack-patterns.md +286 -286
- package/template/.aioson/skills/static/threejs-patterns.md +929 -929
- package/template/.aioson/skills/static/ui-ux-modern.md +76 -76
- package/template/.aioson/skills/static/web-research-cache.md +115 -115
- package/template/.aioson/skills/static/web3-cardano-patterns.md +337 -337
- package/template/.aioson/skills/static/web3-ethereum-patterns.md +310 -310
- package/template/.aioson/skills/static/web3-security-checklist.md +284 -284
- package/template/.aioson/skills/static/web3-solana-patterns.md +324 -324
- package/template/.aioson/squads/memory.md +5 -5
- package/template/.aioson/tasks/implementation-plan.md +327 -327
- package/template/.aioson/tasks/squad-analyze.md +83 -83
- package/template/.aioson/tasks/squad-create.md +148 -148
- package/template/.aioson/tasks/squad-design.md +206 -206
- package/template/.aioson/tasks/squad-execution-plan.md +279 -279
- package/template/.aioson/tasks/squad-export.md +20 -20
- package/template/.aioson/tasks/squad-extend.md +68 -68
- package/template/.aioson/tasks/squad-investigate.md +57 -57
- package/template/.aioson/tasks/squad-learning-review.md +44 -44
- package/template/.aioson/tasks/squad-output-config.md +177 -177
- package/template/.aioson/tasks/squad-pipeline.md +122 -122
- package/template/.aioson/tasks/squad-profile.md +48 -48
- package/template/.aioson/tasks/squad-refresh.md +236 -0
- package/template/.aioson/tasks/squad-repair.md +85 -85
- package/template/.aioson/tasks/squad-review.md +61 -61
- package/template/.aioson/tasks/squad-task-decompose.md +66 -66
- package/template/.aioson/tasks/squad-validate.md +58 -58
- package/template/.aioson/templates/reflect-prompts/current-state.md +36 -0
- package/template/.aioson/templates/reflect-prompts/how-it-works.md +23 -0
- package/template/.aioson/templates/reflect-prompts/what-it-does.md +21 -0
- package/template/.aioson/templates/squads/content-basic/template.json +21 -21
- package/template/.aioson/templates/squads/digital-marketing-agency/template.json +96 -96
- package/template/.aioson/templates/squads/media-channel/template.json +24 -24
- package/template/.aioson/templates/squads/research-analysis/template.json +22 -22
- package/template/.aioson/templates/squads/software-delivery/template.json +21 -21
- package/template/.claude/commands/aioson/agent/analyst.md +5 -5
- package/template/.claude/commands/aioson/agent/architect.md +5 -5
- package/template/.claude/commands/aioson/agent/briefing.md +5 -0
- package/template/.claude/commands/aioson/agent/committer.md +5 -5
- package/template/.claude/commands/aioson/agent/copywriter.md +5 -5
- package/template/.claude/commands/aioson/agent/design-hybrid-forge.md +5 -5
- package/template/.claude/commands/aioson/agent/dev.md +5 -5
- package/template/.claude/commands/aioson/agent/deyvin.md +5 -5
- package/template/.claude/commands/aioson/agent/discover.md +5 -0
- package/template/.claude/commands/aioson/agent/discovery-design-doc.md +5 -5
- package/template/.claude/commands/aioson/agent/genome.md +5 -5
- package/template/.claude/commands/aioson/agent/neo.md +5 -5
- package/template/.claude/commands/aioson/agent/orache.md +5 -5
- package/template/.claude/commands/aioson/agent/orchestrator.md +5 -5
- package/template/.claude/commands/aioson/agent/pair.md +5 -5
- package/template/.claude/commands/aioson/agent/pentester.md +5 -0
- package/template/.claude/commands/aioson/agent/pm.md +5 -5
- package/template/.claude/commands/aioson/agent/product.md +5 -5
- package/template/.claude/commands/aioson/agent/profiler-enricher.md +5 -5
- package/template/.claude/commands/aioson/agent/profiler-forge.md +5 -5
- package/template/.claude/commands/aioson/agent/profiler-researcher.md +5 -5
- package/template/.claude/commands/aioson/agent/qa.md +5 -5
- package/template/.claude/commands/aioson/agent/setup.md +5 -5
- package/template/.claude/commands/aioson/agent/sheldon.md +5 -5
- package/template/.claude/commands/aioson/agent/site-forge.md +5 -5
- package/template/.claude/commands/aioson/agent/squad.md +5 -5
- package/template/.claude/commands/aioson/agent/tester.md +5 -5
- package/template/.claude/commands/aioson/agent/ux-ui.md +5 -5
- package/template/.claude/commands/aioson/agent/validator.md +5 -5
- package/template/.gemini/GEMINI.md +13 -13
- package/template/.gemini/commands/aios-analyst.toml +7 -7
- package/template/.gemini/commands/aios-architect.toml +8 -8
- package/template/.gemini/commands/aios-committer.toml +7 -7
- package/template/.gemini/commands/aios-copywriter.toml +7 -7
- package/template/.gemini/commands/aios-cypher.toml +7 -7
- package/template/.gemini/commands/aios-dev.toml +9 -9
- package/template/.gemini/commands/aios-deyvin.toml +7 -7
- package/template/.gemini/commands/aios-discover.toml +6 -0
- package/template/.gemini/commands/aios-discovery-design-doc.toml +7 -7
- package/template/.gemini/commands/aios-genome.toml +7 -7
- package/template/.gemini/commands/aios-neo.toml +6 -6
- package/template/.gemini/commands/aios-orache.toml +7 -7
- package/template/.gemini/commands/aios-orchestrator.toml +9 -9
- package/template/.gemini/commands/aios-pair.toml +7 -7
- package/template/.gemini/commands/aios-pm.toml +9 -9
- package/template/.gemini/commands/aios-product.toml +6 -6
- package/template/.gemini/commands/aios-qa.toml +7 -7
- package/template/.gemini/commands/aios-setup.toml +6 -6
- package/template/.gemini/commands/aios-sheldon.toml +7 -7
- package/template/.gemini/commands/aios-site-forge.toml +7 -7
- package/template/.gemini/commands/aios-squad.toml +7 -7
- package/template/.gemini/commands/aios-tester.toml +7 -7
- package/template/.gemini/commands/aios-ux-ui.toml +9 -9
- package/template/.gemini/commands/aios-validator.toml +7 -7
- package/template/AGENTS.md +184 -183
- package/template/CLAUDE.md +98 -97
- package/template/OPENCODE.md +35 -34
- package/template/aioson-models.json +40 -40
- package/template/.aioson/genomes/copywriting.md +0 -204
- package/template/.aioson/genomes/copywriting.meta.json +0 -48
- package/template/.aioson/skills/process/secure-tdd/references/nextjs.md +0 -81
- package/template/.aioson/skills/process/secure-tdd/references/node-express.md +0 -91
- package/template/.aioson/skills/process/secure-tdd/references/planned-stacks.md +0 -33
- package/template/.claude/commands/aioson/agent/cypher.md +0 -5
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
# Como usar o Active Learning Loop
|
|
2
|
+
|
|
3
|
+
> Exemplos concretos. Cada seção resolve uma necessidade real do dia a dia.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Pesquisar um learning existente
|
|
8
|
+
|
|
9
|
+
Você quer saber se o projeto já tem algum learning sobre autenticação antes de criar uma regra nova:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
aioson memory:search "autenticação"
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Saída típica:
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
3 results for "autenticação" (BM25)
|
|
19
|
+
|
|
20
|
+
[1] authn-refresh-token-ttl (promoted)
|
|
21
|
+
Tokens de refresh devem ter TTL de 7 dias máximo conforme decisão em auth-flow feature.
|
|
22
|
+
Evidence: 4 sessions
|
|
23
|
+
|
|
24
|
+
[2] jwt-audience-check (for_review)
|
|
25
|
+
Validar claim 'aud' em todos os endpoints. Encontrado em 2 sessões de security-audit.
|
|
26
|
+
Evidence: 2 sessions
|
|
27
|
+
|
|
28
|
+
[3] oauth-state-param (active)
|
|
29
|
+
State parameter obrigatório em fluxo OAuth para prevenir CSRF.
|
|
30
|
+
Evidence: 3 sessions
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Filtrar só learnings promovidos:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
aioson memory:search "autenticação" --surface=learnings --limit=10
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Buscar em regras também:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
aioson memory:search "autenticação" --surface=all
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Incluir entradas já arquivadas (para auditoria histórica):
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
aioson memory:search "autenticação" --include-archived
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Saída em JSON (para scripts):
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
aioson memory:search "autenticação" --json
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{
|
|
59
|
+
"ok": true,
|
|
60
|
+
"query": "autenticação",
|
|
61
|
+
"results": [
|
|
62
|
+
{
|
|
63
|
+
"id": "authn-refresh-token-ttl",
|
|
64
|
+
"title": "authn-refresh-token-ttl",
|
|
65
|
+
"status": "promoted",
|
|
66
|
+
"score": -2.14,
|
|
67
|
+
"snippet": "Tokens de refresh devem ter TTL de 7 dias..."
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"total": 3
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Nota sobre busca:** a query usa token-AND — cada palavra separada por espaço deve aparecer no documento. `"autenticação JWT"` encontra documentos que contêm ambas as palavras, não necessariamente a frase exata. Operadores como AND/OR/NOT são removidos — é busca por palavras-chave, não linguagem de query.
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## 2. Declarar que um agente carregou uma regra
|
|
79
|
+
|
|
80
|
+
Quando você (ou um agente que você está escrevendo) carrega uma regra no início da sessão, declare isso para o sistema de telemetria:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
aioson context:load --target=rule:authn-rules --agent=dev
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Para carregar vários de uma vez (recomendado — minimiza overhead):
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
aioson context:load --target=rule:authn-rules --agent=dev --batch="jwt-patterns,oauth-state,session-management"
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Associar ao carregamento de uma feature em andamento:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
aioson context:load --target=brain:sheldon-005 --agent=sheldon --feature=authn-flow
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
O comando é tier-1 silencioso — não imprime nada por default. Use `--verbose` se quiser confirmar:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
aioson context:load --target=rule:authn-rules --agent=dev --verbose
|
|
102
|
+
# rule_loaded: authn-rules (agent: dev)
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Use `--json` para integrar em scripts:
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
aioson context:load --target=rule:authn-rules --agent=dev --json
|
|
109
|
+
# {"ok":true,"event":"rule_loaded","target":"authn-rules","agent":"dev"}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 3. O que `feature:close` faz agora
|
|
115
|
+
|
|
116
|
+
O fluxo existente continua igual — a destilação é adicionada ao final:
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
aioson feature:close --slug=authn-flow --verdict=PASS
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Saída esperada (além da saída normal do feature:close):
|
|
123
|
+
|
|
124
|
+
```
|
|
125
|
+
[existente] Gate validation: OK
|
|
126
|
+
[existente] Dossier finalized: .aioson/context/features/authn-flow/
|
|
127
|
+
[existente] features.md updated: authn-flow → PASS
|
|
128
|
+
|
|
129
|
+
ℹ [learning-loop] distillation: 2 promoted, 1 for review, 0 merge candidates
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
O que aconteceu nos bastidores:
|
|
133
|
+
1. Leu a classificação do PRD — SMALL, então prosseguiu.
|
|
134
|
+
2. Adquiriu o lock de distilação em `evolution_log`.
|
|
135
|
+
3. Rodou `learning:auto-promote --feature=authn-flow` — 2 learnings cruzaram o threshold e viraram regras.
|
|
136
|
+
4. 1 learning ficou em `for_review` — ainda não tem evidências suficientes.
|
|
137
|
+
5. Gravou o resultado em `evolution_log` e emitiu o notify.
|
|
138
|
+
|
|
139
|
+
**Desativar por chamada:**
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
aioson feature:close --slug=authn-flow --verdict=PASS --no-distill
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Projeto MICRO** — a destilação é pulada automaticamente, sem necessidade de `--no-distill`:
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
[existente] Gate validation: OK
|
|
149
|
+
...
|
|
150
|
+
ℹ [learning-loop] skipped: MICRO classification
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## 4. Arquivar uma regra obsoleta
|
|
156
|
+
|
|
157
|
+
O `doctor` reportou staleness na regra `legacy-session-cookies`. Você quer arquivá-la:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
# Simule primeiro para ver o que vai acontecer
|
|
161
|
+
aioson memory:archive --id=rule:legacy-session-cookies --reason="substituída por JWT-based auth (feature authn-flow)" --dry-run
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Saída do dry-run:
|
|
165
|
+
|
|
166
|
+
```
|
|
167
|
+
[dry-run] would archive:
|
|
168
|
+
source: .aioson/rules/legacy-session-cookies.md
|
|
169
|
+
dest: .aioson/rules/_archived/2026-05-14/legacy-session-cookies.md
|
|
170
|
+
reason: substituída por JWT-based auth (feature authn-flow)
|
|
171
|
+
evolution_log: 1 entry to close, 1 entry to insert
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Se o dry-run está correto, execute:
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
aioson memory:archive --id=rule:legacy-session-cookies --reason="substituída por JWT-based auth (feature authn-flow)"
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
Saída:
|
|
181
|
+
|
|
182
|
+
```
|
|
183
|
+
⚠ [memory-archive] archiving rule:legacy-session-cookies — legacy-session-cookies.md
|
|
184
|
+
archived: .aioson/rules/_archived/2026-05-14/legacy-session-cookies.md
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
Associar ao fechamento de uma feature (opcional, mas recomendado para rastreabilidade):
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
aioson memory:archive --id=rule:legacy-session-cookies --reason="..." --feature=authn-flow
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## 5. Arquivar um learning ou brain
|
|
196
|
+
|
|
197
|
+
O mesmo comando funciona para os três tipos — `rule`, `learning`, e `brain`:
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
# Arquivar um learning
|
|
201
|
+
aioson memory:archive --id=learning:jwt-draft-1 --reason="superado pela versão promovida em authn-flow"
|
|
202
|
+
|
|
203
|
+
# Arquivar um brain
|
|
204
|
+
aioson memory:archive --id=brain:sheldon-003 --reason="versão 003 foi substituída por sheldon-006"
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## 6. Restaurar um item arquivado
|
|
210
|
+
|
|
211
|
+
Você arquivou a regra `rate-limiting-rules` mas percebeu que ainda é usada:
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
aioson memory:restore --id=rule:rate-limiting-rules
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
Saída:
|
|
218
|
+
|
|
219
|
+
```
|
|
220
|
+
⚠ [memory-restore] restoring rule:rate-limiting-rules
|
|
221
|
+
restored: .aioson/rules/rate-limiting-rules.md
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Com motivo (recomendado para rastreabilidade):
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
aioson memory:restore --id=rule:rate-limiting-rules --reason="regra ainda necessária — removal foi precipitado"
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
Dry-run disponível também:
|
|
231
|
+
|
|
232
|
+
```bash
|
|
233
|
+
aioson memory:restore --id=rule:rate-limiting-rules --dry-run
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
## 7. Verificar o estado do loop via doctor
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
aioson doctor .
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
Se o loop está saudável:
|
|
245
|
+
|
|
246
|
+
```
|
|
247
|
+
[OK] living-memory:rule_staleness
|
|
248
|
+
[OK] living-memory:learning_orphans
|
|
249
|
+
[OK] living-memory:distillation_lag
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
Se há problemas:
|
|
253
|
+
|
|
254
|
+
```
|
|
255
|
+
[WARN] living-memory:rule_staleness (2 stale rules)
|
|
256
|
+
Rule 'legacy-session-cookies' has 0 rule_loaded events in last 7 features.
|
|
257
|
+
Rule 'old-rate-limit-policy' has 0 rule_loaded events in last 7 features.
|
|
258
|
+
Hint: consider archiving:
|
|
259
|
+
aioson memory:archive --id=rule:legacy-session-cookies --reason="..."
|
|
260
|
+
aioson memory:archive --id=rule:old-rate-limit-policy --reason="..."
|
|
261
|
+
|
|
262
|
+
[WARN] living-memory:learning_orphans (1 orphan)
|
|
263
|
+
Learning 'jwt-expiry-pattern' was promoted but its target rule had no rule_loaded after promotion.
|
|
264
|
+
Hint: aioson memory:archive --id=learning:jwt-expiry-pattern --reason="..."
|
|
265
|
+
|
|
266
|
+
[WARN] living-memory:distillation_lag
|
|
267
|
+
8 features closed, 5 auto_distillation events recorded.
|
|
268
|
+
Hint: Run `aioson feature:close --slug=<slug> --verdict=PASS` on pending features,
|
|
269
|
+
or check if distillation is failing silently (see evolution_log).
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
Veja [Doctor checks](./doctor-checks.md) para o que cada check significa e como agir.
|
|
273
|
+
|
|
274
|
+
---
|
|
275
|
+
|
|
276
|
+
## 8. Inspecionar o `evolution_log` diretamente
|
|
277
|
+
|
|
278
|
+
Para auditoria ou troubleshooting, consulte o SQLite diretamente:
|
|
279
|
+
|
|
280
|
+
```bash
|
|
281
|
+
sqlite3 .aioson/runtime/aios.sqlite \
|
|
282
|
+
"SELECT target_type, target_id, event_type, start_at, end_at, reason
|
|
283
|
+
FROM evolution_log
|
|
284
|
+
ORDER BY start_at DESC
|
|
285
|
+
LIMIT 10;"
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
Verificar o lock de distilação ativo:
|
|
289
|
+
|
|
290
|
+
```bash
|
|
291
|
+
sqlite3 .aioson/runtime/aios.sqlite \
|
|
292
|
+
"SELECT feature_slug, start_at, payload_json
|
|
293
|
+
FROM evolution_log
|
|
294
|
+
WHERE event_type='auto_distillation' AND end_at IS NULL;"
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
Histórico de uma regra específica:
|
|
298
|
+
|
|
299
|
+
```bash
|
|
300
|
+
sqlite3 .aioson/runtime/aios.sqlite \
|
|
301
|
+
"SELECT event_type, start_at, end_at, reason, actor
|
|
302
|
+
FROM evolution_log
|
|
303
|
+
WHERE target_type='rule' AND target_id='authn-rules'
|
|
304
|
+
ORDER BY start_at;"
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## Continue lendo
|
|
310
|
+
|
|
311
|
+
- [Referência CLI](./comandos-cli.md) — todos os flags documentados
|
|
312
|
+
- [Doctor checks](./doctor-checks.md) — o que os checks significam e como agir
|
|
313
|
+
- [Troubleshooting](./troubleshooting.md) — problemas conhecidos
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
# Diagramas — Active Learning Loop em ASCII
|
|
2
|
+
|
|
3
|
+
> Fluxos canônicos da feature. ASCII porque renderiza em qualquer terminal, qualquer Markdown viewer, e qualquer diff.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. `feature:close` → destilação → `evolution_log` → `doctor`
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
aioson feature:close --slug=minha-feature --verdict=PASS
|
|
11
|
+
│
|
|
12
|
+
├── [existente] gate validation
|
|
13
|
+
├── [existente] dossier finalize
|
|
14
|
+
├── [existente] features.md update
|
|
15
|
+
│
|
|
16
|
+
└── [NOVO] runHookOnFeatureClose()
|
|
17
|
+
│
|
|
18
|
+
├── Lê PRD frontmatter classification
|
|
19
|
+
│ └── MICRO? → notify "skipped: MICRO classification" → exit 0
|
|
20
|
+
│
|
|
21
|
+
├── Lê features.md status
|
|
22
|
+
│ └── abandoned? → skip silencioso → exit 0
|
|
23
|
+
│
|
|
24
|
+
├── --no-distill passado? → skip → exit 0
|
|
25
|
+
│
|
|
26
|
+
├── Tenta adquirir lock:
|
|
27
|
+
│ INSERT INTO evolution_log
|
|
28
|
+
│ (feature_slug='minha-feature', event_type='auto_distillation',
|
|
29
|
+
│ start_at=now(), end_at=NULL, actor='auto', payload='{"state":"start"}')
|
|
30
|
+
│ └── row ativa já existe? → notify "already in progress" → exit 0
|
|
31
|
+
│
|
|
32
|
+
├── setTimeout(5000ms) → AbortController.abort()
|
|
33
|
+
│
|
|
34
|
+
├── try {
|
|
35
|
+
│ learning:auto-promote --feature=minha-feature
|
|
36
|
+
│ └── retorna { promoted: N, for_review: M }
|
|
37
|
+
│ }
|
|
38
|
+
│ catch (err) {
|
|
39
|
+
│ UPDATE evolution_log SET event_type='distillation_failed',
|
|
40
|
+
│ end_at=now(), payload='{"error":"...", "phase":"auto-promote"}'
|
|
41
|
+
│ // engole exceção — não relança
|
|
42
|
+
│ }
|
|
43
|
+
│
|
|
44
|
+
├── UPDATE evolution_log SET end_at=now(),
|
|
45
|
+
│ payload='{"state":"complete","promoted":N,"review":M,"merge":0,"duration_ms":D}'
|
|
46
|
+
│
|
|
47
|
+
├── aioson notify --level=info --topic=learning-loop
|
|
48
|
+
│ --message="distillation: N promoted, M for review, 0 merge candidates"
|
|
49
|
+
│
|
|
50
|
+
└── exit 0 ← sempre 0, independente de falha na destilação
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 2. Padrão de lock (DD-3 — dois terminais simultâneos)
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
Terminal A Terminal B
|
|
59
|
+
────────────────────────────────── ──────────────────────────────────
|
|
60
|
+
feature:close --slug=X feature:close --slug=X (simultâneo)
|
|
61
|
+
|
|
62
|
+
SELECT 1 FROM evolution_log
|
|
63
|
+
WHERE feature_slug='X'
|
|
64
|
+
AND event_type='auto_distillation'
|
|
65
|
+
AND end_at IS NULL
|
|
66
|
+
→ 0 rows
|
|
67
|
+
|
|
68
|
+
INSERT row (end_at=NULL) → rowid=42
|
|
69
|
+
SELECT 1 ... → 1 row (rowid=42)
|
|
70
|
+
notify "already in progress" → exit 0
|
|
71
|
+
|
|
72
|
+
(distillação roda ~2-3s)
|
|
73
|
+
|
|
74
|
+
UPDATE rowid=42 SET end_at=now()
|
|
75
|
+
notify "N promoted, M for review"
|
|
76
|
+
exit 0
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## 3. `memory:archive` — operação atômica com rollback
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
aioson memory:archive --id=rule:authn --reason="obsoleta após OAuth"
|
|
85
|
+
│
|
|
86
|
+
├── Verifica AIOSON_RUNTIME_HOOK=1 → recusa (tier-2 humano-only)
|
|
87
|
+
│
|
|
88
|
+
├── Resolve path: .aioson/rules/authn.md
|
|
89
|
+
│ └── não existe? → erro: "target not found"
|
|
90
|
+
│
|
|
91
|
+
├── Já arquivada? → noop (idempotente)
|
|
92
|
+
│
|
|
93
|
+
├── aioson notify --level=warn --topic=memory-archive
|
|
94
|
+
│ --message="archiving rule:authn — authn.md"
|
|
95
|
+
│
|
|
96
|
+
├── BEGIN TRANSACTION (SQLite)
|
|
97
|
+
│
|
|
98
|
+
├── move físico:
|
|
99
|
+
│ .aioson/rules/authn.md
|
|
100
|
+
│ → .aioson/rules/_archived/2026-05-14/authn.md
|
|
101
|
+
│ └── erro no move → ROLLBACK → exit 1
|
|
102
|
+
│
|
|
103
|
+
├── INSERT evolution_log (event_type='archived', start_at=now(), end_at=NULL,
|
|
104
|
+
│ target_type='rule', target_id='authn', reason='obsoleta após OAuth',
|
|
105
|
+
│ actor='human', feature_slug=<--feature se passado>)
|
|
106
|
+
│
|
|
107
|
+
├── UPDATE evolution_log SET end_at=now()
|
|
108
|
+
│ WHERE target_id='authn' AND end_at IS NULL AND event_type != 'archived'
|
|
109
|
+
│ (fecha entry ativo anterior)
|
|
110
|
+
│
|
|
111
|
+
├── COMMIT
|
|
112
|
+
│ └── erro no COMMIT → tenta reverter move físico → exit 1
|
|
113
|
+
│
|
|
114
|
+
└── { ok: true, path: "_archived/2026-05-14/authn.md" }
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## 4. Ciclo do `doctor` com os novos checks
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
$ aioson doctor .
|
|
123
|
+
│
|
|
124
|
+
▼
|
|
125
|
+
┌──────────────────────────────────────────────────────────────────┐
|
|
126
|
+
│ runDoctor(targetDir) │
|
|
127
|
+
│ └─ checks[] │
|
|
128
|
+
│ ├─ ... [checks existentes severity='error'] ... │
|
|
129
|
+
│ ├─ living-memory:bootstrap_coverage [severity: warning] │
|
|
130
|
+
│ ├─ living-memory:features_dir [severity: warning] │
|
|
131
|
+
│ ├─ living-memory:claude_commands [severity: warning] │
|
|
132
|
+
│ ├─ living-memory:version_drift [severity: warning] │
|
|
133
|
+
│ ├─ living-memory:permissions_in_sync [severity: warning] │
|
|
134
|
+
│ │ │
|
|
135
|
+
│ ├─ [NOVO] living-memory:rule_staleness [severity: warning]│
|
|
136
|
+
│ │ └─ query: execution_events WHERE event_type='rule_loaded'
|
|
137
|
+
│ │ AND context LIKE 'feature=%' GROUP BY slug
|
|
138
|
+
│ │ → stale se nenhum hit nas últimas N features │
|
|
139
|
+
│ │ │
|
|
140
|
+
│ ├─ [NOVO] living-memory:learning_orphans [severity: warning]│
|
|
141
|
+
│ │ └─ query: project_learnings WHERE status='promoted' │
|
|
142
|
+
│ │ LEFT JOIN execution_events (rule_loaded, after │
|
|
143
|
+
│ │ promoted_at) → orphan se join retorna NULL │
|
|
144
|
+
│ │ │
|
|
145
|
+
│ └─ [NOVO] living-memory:distillation_lag [severity: warning]│
|
|
146
|
+
│ └─ count(features fechadas) vs count(auto_distillation │
|
|
147
|
+
│ em evolution_log) → lag se fechadas > distillations │
|
|
148
|
+
│ │
|
|
149
|
+
│ report.ok = errorCount === 0 │
|
|
150
|
+
│ (warnings somam em failedCount mas não afetam ok) │
|
|
151
|
+
└──────────────────────────────────────────────────────────────────┘
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## 5. Validity-window no `evolution_log`
|
|
157
|
+
|
|
158
|
+
```
|
|
159
|
+
Estado inicial (regra ativa):
|
|
160
|
+
─────────────────────────────────────────────────────────────────
|
|
161
|
+
rowid | target_type | target_id | event_type | start_at | end_at
|
|
162
|
+
1 | 'rule' | 'authn' | 'created' | 2026-01-10 | NULL ← ativo
|
|
163
|
+
|
|
164
|
+
memory:archive roda:
|
|
165
|
+
─────────────────────────────────────────────────────────────────
|
|
166
|
+
rowid | target_type | target_id | event_type | start_at | end_at
|
|
167
|
+
1 | 'rule' | 'authn' | 'created' | 2026-01-10 | 2026-05-14 ← fechado
|
|
168
|
+
2 | 'rule' | 'authn' | 'archived'| 2026-05-14 | NULL ← ativo
|
|
169
|
+
|
|
170
|
+
memory:restore roda:
|
|
171
|
+
─────────────────────────────────────────────────────────────────
|
|
172
|
+
rowid | target_type | target_id | event_type | start_at | end_at
|
|
173
|
+
1 | 'rule' | 'authn' | 'created' | 2026-01-10 | 2026-05-14
|
|
174
|
+
2 | 'rule' | 'authn' | 'archived'| 2026-05-14 | 2026-05-14 ← fechado
|
|
175
|
+
3 | 'rule' | 'authn' | 'restored'| 2026-05-14 | NULL ← ativo
|
|
176
|
+
|
|
177
|
+
Invariante: start_at e reason nunca mudam após INSERT.
|
|
178
|
+
Apenas end_at é atualizado, e só uma vez.
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## 6. FTS5 — fluxo de sincronização e busca
|
|
184
|
+
|
|
185
|
+
```
|
|
186
|
+
project_learnings (tabela normal)
|
|
187
|
+
│
|
|
188
|
+
│ triggers SQL (INSERT, UPDATE, DELETE)
|
|
189
|
+
▼
|
|
190
|
+
project_learnings_fts (virtual table FTS5)
|
|
191
|
+
colunas indexadas: title, evidence
|
|
192
|
+
ranking: BM25 (default)
|
|
193
|
+
│
|
|
194
|
+
│ aioson memory:search "autenticação JWT"
|
|
195
|
+
▼
|
|
196
|
+
Sanitização da query:
|
|
197
|
+
input: "autenticação JWT"
|
|
198
|
+
tokens: ["autenticação", "JWT"]
|
|
199
|
+
FTS5: '"autenticação" "JWT"' ← token-AND, cada token é frase literal
|
|
200
|
+
│
|
|
201
|
+
▼
|
|
202
|
+
SELECT l.*, fts.rank
|
|
203
|
+
FROM project_learnings_fts fts
|
|
204
|
+
JOIN project_learnings l ON l.rowid = fts.rowid
|
|
205
|
+
WHERE fts MATCH '"autenticação" "JWT"'
|
|
206
|
+
AND l.status != 'archived' ← excluídas por default
|
|
207
|
+
ORDER BY fts.rank ← BM25 (menor = mais relevante)
|
|
208
|
+
LIMIT 5
|
|
209
|
+
│
|
|
210
|
+
▼
|
|
211
|
+
Resultado:
|
|
212
|
+
[1] autenticação-jwt-refresh (score: -2.14)
|
|
213
|
+
"Tokens JWT de refresh devem ter TTL de 7 dias..."
|
|
214
|
+
[2] jwt-audience-validation (score: -1.87)
|
|
215
|
+
...
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Continue lendo
|
|
221
|
+
|
|
222
|
+
- [O que é o Active Learning Loop](./ativo-learning-loop.md) — conceito e fases
|
|
223
|
+
- [Como usar](./como-usar.md) — exemplos concretos
|
|
224
|
+
- [Doctor checks](./doctor-checks.md) — o que os checks significam
|
|
225
|
+
- [Troubleshooting](./troubleshooting.md) — problemas conhecidos
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
# Doctor checks — curadoria de memória
|
|
2
|
+
|
|
3
|
+
> Os três novos checks aparecem em `aioson doctor .` com `severity='warning'`. Warnings não afetam `ok=true` — o projeto continua funcionando. Mas cada um representa uma lacuna de curadoria que, se ignorada, torna a memória do projeto menos útil ao longo do tempo.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Como os checks aparecem
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
aioson doctor .
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Quando tudo está saudável:
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
[OK] living-memory:rule_staleness
|
|
17
|
+
[OK] living-memory:learning_orphans
|
|
18
|
+
[OK] living-memory:distillation_lag
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Quando há lacunas:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
[WARN] living-memory:rule_staleness (2 stale rules)
|
|
25
|
+
...
|
|
26
|
+
[WARN] living-memory:learning_orphans (1 orphan)
|
|
27
|
+
...
|
|
28
|
+
[WARN] living-memory:distillation_lag
|
|
29
|
+
...
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Os três checks só rodam em projetos com classificação **SMALL** ou **MEDIUM**. Projetos MICRO optam para fora automaticamente — nenhum dos três será exibido.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## `living-memory:rule_staleness`
|
|
37
|
+
|
|
38
|
+
**O que detecta:** regras (arquivos em `.aioson/rules/`) que não tiveram nenhum evento `rule_loaded` nas últimas N features fechadas.
|
|
39
|
+
|
|
40
|
+
**Por que importa:** se nenhum agente carregou uma regra nas últimas N features, ela provavelmente perdeu relevância — o contexto do projeto mudou, a regra foi superada, ou simplesmente nunca foi usada. Regras obsoletas ocupam espaço no contexto dos agentes sem agregar valor.
|
|
41
|
+
|
|
42
|
+
**Como N é calculado:**
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
N = max(5, ceil(média de dias entre as últimas 5 features / 7))
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Projetos com features frequentes (1 por semana) têm N = 5. Projetos com ritmo mais lento (1 por mês) têm N maior — a janela se expande para cobrir o mesmo período de tempo real.
|
|
49
|
+
|
|
50
|
+
`staleness_window_features_min: 5` em `learning-loop.json` define o piso.
|
|
51
|
+
|
|
52
|
+
**Saída típica:**
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
[WARN] living-memory:rule_staleness (2 stale rules)
|
|
56
|
+
Rule 'legacy-session-cookies' has 0 rule_loaded events in last 7 features.
|
|
57
|
+
Rule 'old-rate-limit-policy' has 0 rule_loaded events in last 7 features.
|
|
58
|
+
Hint:
|
|
59
|
+
aioson memory:archive --id=rule:legacy-session-cookies --reason="<motivo>"
|
|
60
|
+
aioson memory:archive --id=rule:old-rate-limit-policy --reason="<motivo>"
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Como agir:**
|
|
64
|
+
|
|
65
|
+
1. Verifique se a regra ainda é relevante para o projeto atual.
|
|
66
|
+
2. Se não for: use o hint do doctor para arquivar.
|
|
67
|
+
3. Se ainda for relevante mas não está sendo carregada: adicione `context:load` aos agentes que deveriam usá-la.
|
|
68
|
+
4. Se você não tem certeza: arquive com `--dry-run` para ver o impacto antes de executar.
|
|
69
|
+
|
|
70
|
+
**Falso positivo:** o check só funciona quando os agentes estão usando `aioson context:load` para declarar carregamentos. Se seus agentes customizados não fazem isso, o check vai reportar tudo como stale. Solução: adicionar `aioson context:load` ao início das sessões.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## `living-memory:learning_orphans`
|
|
75
|
+
|
|
76
|
+
**O que detecta:** learnings com `status='promoted'` cujo target rule não teve nenhum evento `rule_loaded` após a data de promoção.
|
|
77
|
+
|
|
78
|
+
**Por que importa:** quando um learning é promovido, ele gerou (ou deveria ter gerado) uma regra. Se essa regra nunca foi carregada por nenhum agente desde a promoção, significa uma de duas coisas: ou a regra nunca chegou a ser criada (falha no fluxo de promoção), ou foi criada mas os agentes não a estão consultando. De qualquer forma, é uma lacuna.
|
|
79
|
+
|
|
80
|
+
**Saída típica:**
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
[WARN] living-memory:learning_orphans (1 orphan)
|
|
84
|
+
Learning 'jwt-expiry-pattern' (promoted 2026-04-10) — target rule had no
|
|
85
|
+
rule_loaded events after promotion date.
|
|
86
|
+
Hint:
|
|
87
|
+
aioson memory:archive --id=learning:jwt-expiry-pattern --reason="<motivo>"
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Como agir:**
|
|
91
|
+
|
|
92
|
+
1. Verifique se a regra correspondente existe em `.aioson/rules/`.
|
|
93
|
+
2. Se a regra não existe: o learning foi promovido mas nunca materializou uma regra — crie a regra manualmente ou arquive o learning.
|
|
94
|
+
3. Se a regra existe mas nunca foi carregada: adicione `context:load` onde apropriado, ou arquive a regra se ela não é mais relevante.
|
|
95
|
+
4. Se o learning foi promovido erroneamente: arquive-o.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## `living-memory:distillation_lag`
|
|
100
|
+
|
|
101
|
+
**O que detecta:** projetos onde o número de features fechadas é significativamente maior que o número de eventos `auto_distillation` registrados em `evolution_log`. Threshold: 5+ features fechadas com menos destilações do que fechamentos.
|
|
102
|
+
|
|
103
|
+
**Por que importa:** se `feature:close` está sendo chamado mas a destilação não está rodando, o loop está silenciosamente quebrado. Os learnings estão acumulando sem destilação. Pode ser que `--no-distill` esteja sendo usado consistentemente, que o hook esteja falhando silenciosamente, ou que o projeto tenha migrado para o framework depois de fechar várias features.
|
|
104
|
+
|
|
105
|
+
**Saída típica:**
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
[WARN] living-memory:distillation_lag
|
|
109
|
+
8 features closed, 5 auto_distillation events recorded.
|
|
110
|
+
Hint: check if distillation is failing silently:
|
|
111
|
+
sqlite3 .aioson/runtime/aios.sqlite \
|
|
112
|
+
"SELECT feature_slug, payload_json FROM evolution_log \
|
|
113
|
+
WHERE event_type='distillation_failed' ORDER BY start_at DESC LIMIT 5;"
|
|
114
|
+
Or run distillation manually on recent features.
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
**Como agir:**
|
|
118
|
+
|
|
119
|
+
1. Execute o comando SQLite do hint para ver se há falhas silenciosas registradas.
|
|
120
|
+
2. Se há `distillation_failed`: veja o `payload_json.error_phase` para entender onde está falhando e consulte [Troubleshooting](./troubleshooting.md).
|
|
121
|
+
3. Se não há falhas mas há lag: provavelmente as features foram fechadas com `--no-distill` ou antes de o hook existir. O lag vai diminuir naturalmente à medida que novas features forem fechadas.
|
|
122
|
+
4. Se o projeto é novo no framework mas tinha features antigas: o lag é esperado e vai se resolver.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Resumo rápido
|
|
127
|
+
|
|
128
|
+
| Check | Sinal problemático | Ação imediata |
|
|
129
|
+
|---|---|---|
|
|
130
|
+
| `rule_staleness` | Regra sem `rule_loaded` em N features | Verificar relevância → arquivar ou adicionar `context:load` |
|
|
131
|
+
| `learning_orphans` | Learning promovido, regra nunca carregada | Verificar se regra existe → criar, arquivar learning, ou adicionar `context:load` |
|
|
132
|
+
| `distillation_lag` | Mais features fechadas do que destilações | Inspecionar `distillation_failed` em `evolution_log` |
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Sobre a severidade `warning`
|
|
137
|
+
|
|
138
|
+
Os três checks são `severity='warning'`, não `severity='error'`. Isso significa:
|
|
139
|
+
|
|
140
|
+
- `report.ok` continua `true` mesmo com warnings.
|
|
141
|
+
- `report.failedCount` inclui warnings.
|
|
142
|
+
- Não há `doctor --fix` automático para esses checks — as ações são semânticas e requerem julgamento humano.
|
|
143
|
+
- O hint de cada check inclui o comando exato para executar quando você decidir agir.
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Continue lendo
|
|
148
|
+
|
|
149
|
+
- [Como usar](./como-usar.md) — exemplos de archive e restore
|
|
150
|
+
- [Referência CLI](./comandos-cli.md) — flags de `memory:archive` e `memory:restore`
|
|
151
|
+
- [Troubleshooting](./troubleshooting.md) — lock preso, falhas de destilação
|