aios-core 2.1.6 → 2.2.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/.aios-core/core/README.md +229 -229
- package/.aios-core/core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/core/data/aios-kb.md +923 -923
- package/.aios-core/core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/core/docs/component-creation-guide.md +457 -457
- package/.aios-core/core/docs/session-update-pattern.md +307 -307
- package/.aios-core/core/docs/template-syntax.md +266 -266
- package/.aios-core/core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/core/elicitation/elicitation-engine.js +1 -1
- package/.aios-core/core/index.esm.js +42 -42
- package/.aios-core/core/index.js +1 -1
- package/.aios-core/core/migration/migration-config.yaml +83 -83
- package/.aios-core/core/migration/module-mapping.yaml +89 -89
- package/.aios-core/core/quality-gates/layer2-pr-automation.js +1 -1
- package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -86
- package/.aios-core/core/registry/README.md +179 -179
- package/.aios-core/core/utils/security-utils.js +1 -1
- package/.aios-core/core-config.yaml +391 -382
- package/.aios-core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/data/aios-kb.md +923 -923
- package/.aios-core/data/technical-preferences.md +3 -3
- package/.aios-core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/development/README.md +142 -142
- package/.aios-core/development/agent-teams/team-all.yaml +15 -15
- package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -18
- package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -10
- package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -13
- package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -155
- package/.aios-core/development/agents/aios-master.md +339 -339
- package/.aios-core/development/agents/analyst.md +195 -195
- package/.aios-core/development/agents/architect.md +359 -359
- package/.aios-core/development/agents/data-engineer.md +468 -468
- package/.aios-core/development/agents/dev.md +390 -390
- package/.aios-core/development/agents/devops.md +398 -398
- package/.aios-core/development/agents/pm.md +198 -198
- package/.aios-core/development/agents/po.md +256 -256
- package/.aios-core/development/agents/qa.md +312 -312
- package/.aios-core/development/agents/sm.md +220 -220
- package/.aios-core/development/agents/ux-design-expert.md +451 -451
- package/.aios-core/development/scripts/greeting-config-cli.js +85 -85
- package/.aios-core/development/tasks/add-mcp.md +319 -319
- package/.aios-core/development/tasks/advanced-elicitation.md +318 -318
- package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +341 -341
- package/.aios-core/development/tasks/analyze-framework.md +696 -696
- package/.aios-core/development/tasks/analyze-performance.md +637 -637
- package/.aios-core/development/tasks/apply-qa-fixes.md +340 -340
- package/.aios-core/development/tasks/architect-analyze-impact.md +826 -826
- package/.aios-core/development/tasks/audit-codebase.md +429 -429
- package/.aios-core/development/tasks/audit-tailwind-config.md +270 -270
- package/.aios-core/development/tasks/audit-utilities.md +358 -358
- package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -286
- package/.aios-core/development/tasks/brownfield-create-epic.md +485 -485
- package/.aios-core/development/tasks/brownfield-create-story.md +356 -356
- package/.aios-core/development/tasks/build-component.md +478 -478
- package/.aios-core/development/tasks/calculate-roi.md +455 -455
- package/.aios-core/development/tasks/ci-cd-configuration.md +764 -764
- package/.aios-core/development/tasks/cleanup-utilities.md +670 -670
- package/.aios-core/development/tasks/collaborative-edit.md +1108 -1108
- package/.aios-core/development/tasks/compose-molecule.md +284 -284
- package/.aios-core/development/tasks/consolidate-patterns.md +414 -414
- package/.aios-core/development/tasks/correct-course.md +279 -279
- package/.aios-core/development/tasks/create-agent.md +321 -321
- package/.aios-core/development/tasks/create-brownfield-story.md +726 -726
- package/.aios-core/development/tasks/create-deep-research-prompt.md +498 -498
- package/.aios-core/development/tasks/create-doc.md +316 -316
- package/.aios-core/development/tasks/create-next-story.md +774 -774
- package/.aios-core/development/tasks/create-suite.md +283 -283
- package/.aios-core/development/tasks/create-task.md +371 -371
- package/.aios-core/development/tasks/create-workflow.md +370 -370
- package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -572
- package/.aios-core/development/tasks/db-apply-migration.md +381 -381
- package/.aios-core/development/tasks/db-bootstrap.md +642 -642
- package/.aios-core/development/tasks/db-domain-modeling.md +693 -693
- package/.aios-core/development/tasks/db-dry-run.md +293 -293
- package/.aios-core/development/tasks/db-env-check.md +260 -260
- package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -663
- package/.aios-core/development/tasks/db-explain.md +631 -631
- package/.aios-core/development/tasks/db-impersonate.md +495 -495
- package/.aios-core/development/tasks/db-load-csv.md +593 -593
- package/.aios-core/development/tasks/db-policy-apply.md +653 -653
- package/.aios-core/development/tasks/db-rls-audit.md +411 -411
- package/.aios-core/development/tasks/db-rollback.md +739 -739
- package/.aios-core/development/tasks/db-run-sql.md +613 -613
- package/.aios-core/development/tasks/db-schema-audit.md +1011 -1011
- package/.aios-core/development/tasks/db-seed.md +390 -390
- package/.aios-core/development/tasks/db-smoke-test.md +351 -351
- package/.aios-core/development/tasks/db-snapshot.md +569 -569
- package/.aios-core/development/tasks/db-supabase-setup.md +712 -712
- package/.aios-core/development/tasks/db-verify-order.md +515 -515
- package/.aios-core/development/tasks/deprecate-component.md +956 -956
- package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -318
- package/.aios-core/development/tasks/dev-backlog-debt.md +469 -469
- package/.aios-core/development/tasks/dev-develop-story.md +846 -846
- package/.aios-core/development/tasks/dev-improve-code-quality.md +872 -872
- package/.aios-core/development/tasks/dev-optimize-performance.md +1033 -1033
- package/.aios-core/development/tasks/dev-suggest-refactoring.md +870 -870
- package/.aios-core/development/tasks/dev-validate-next-story.md +348 -348
- package/.aios-core/development/tasks/document-project.md +552 -552
- package/.aios-core/development/tasks/environment-bootstrap.md +1311 -1311
- package/.aios-core/development/tasks/execute-checklist.md +301 -301
- package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -274
- package/.aios-core/development/tasks/extend-pattern.md +269 -269
- package/.aios-core/development/tasks/extract-tokens.md +467 -467
- package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -518
- package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +260 -260
- package/.aios-core/development/tasks/generate-documentation.md +284 -284
- package/.aios-core/development/tasks/generate-migration-strategy.md +522 -522
- package/.aios-core/development/tasks/generate-shock-report.md +501 -501
- package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -427
- package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -733
- package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -374
- package/.aios-core/development/tasks/github-devops-version-management.md +483 -483
- package/.aios-core/development/tasks/improve-self.md +822 -822
- package/.aios-core/development/tasks/index-docs.md +387 -387
- package/.aios-core/development/tasks/init-project-status.md +506 -506
- package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -314
- package/.aios-core/development/tasks/kb-mode-interaction.md +283 -283
- package/.aios-core/development/tasks/learn-patterns.md +900 -900
- package/.aios-core/development/tasks/mcp-workflow.md +437 -437
- package/.aios-core/development/tasks/modify-agent.md +381 -381
- package/.aios-core/development/tasks/modify-task.md +424 -424
- package/.aios-core/development/tasks/modify-workflow.md +465 -465
- package/.aios-core/development/tasks/po-backlog-add.md +370 -370
- package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -523
- package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -540
- package/.aios-core/development/tasks/po-pull-story.md +316 -316
- package/.aios-core/development/tasks/po-stories-index.md +351 -351
- package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -457
- package/.aios-core/development/tasks/po-sync-story.md +303 -303
- package/.aios-core/development/tasks/pr-automation.md +701 -701
- package/.aios-core/development/tasks/propose-modification.md +842 -842
- package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -425
- package/.aios-core/development/tasks/qa-gate.md +373 -373
- package/.aios-core/development/tasks/qa-generate-tests.md +1174 -1174
- package/.aios-core/development/tasks/qa-nfr-assess.md +557 -557
- package/.aios-core/development/tasks/qa-review-proposal.md +1157 -1157
- package/.aios-core/development/tasks/qa-review-story.md +682 -682
- package/.aios-core/development/tasks/qa-risk-profile.md +566 -566
- package/.aios-core/development/tasks/qa-run-tests.md +277 -277
- package/.aios-core/development/tasks/qa-test-design.md +387 -387
- package/.aios-core/development/tasks/qa-trace-requirements.md +476 -476
- package/.aios-core/development/tasks/release-management.md +723 -723
- package/.aios-core/development/tasks/security-audit.md +554 -554
- package/.aios-core/development/tasks/security-scan.md +790 -790
- package/.aios-core/development/tasks/setup-database.md +741 -741
- package/.aios-core/development/tasks/setup-design-system.md +462 -462
- package/.aios-core/development/tasks/setup-github.md +874 -874
- package/.aios-core/development/tasks/setup-llm-routing.md +1 -1
- package/.aios-core/development/tasks/setup-mcp-docker.md +584 -584
- package/.aios-core/development/tasks/setup-project-docs.md +1 -1
- package/.aios-core/development/tasks/shard-doc.md +537 -537
- package/.aios-core/development/tasks/sm-create-next-story.md +480 -480
- package/.aios-core/development/tasks/sync-documentation.md +864 -864
- package/.aios-core/development/tasks/tailwind-upgrade.md +294 -294
- package/.aios-core/development/tasks/test-as-user.md +621 -621
- package/.aios-core/development/tasks/test-validation-task.md +171 -171
- package/.aios-core/development/tasks/undo-last.md +346 -346
- package/.aios-core/development/tasks/update-manifest.md +409 -409
- package/.aios-core/development/tasks/ux-create-wireframe.md +617 -617
- package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -672
- package/.aios-core/development/tasks/ux-user-research.md +559 -559
- package/.aios-core/development/tasks/validate-next-story.md +422 -422
- package/.aios-core/development/workflows/README.md +83 -83
- package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -297
- package/.aios-core/development/workflows/brownfield-service.yaml +187 -187
- package/.aios-core/development/workflows/brownfield-ui.yaml +197 -197
- package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -333
- package/.aios-core/development/workflows/greenfield-service.yaml +206 -206
- package/.aios-core/development/workflows/greenfield-ui.yaml +235 -235
- package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/docs/component-creation-guide.md +457 -457
- package/.aios-core/docs/session-update-pattern.md +307 -307
- package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -572
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -185
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -354
- package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -1963
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -821
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -1190
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -439
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -1339
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -5398
- package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -697
- package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -511
- package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -556
- package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -210
- package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -550
- package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -1414
- package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -523
- package/.aios-core/docs/template-syntax.md +266 -266
- package/.aios-core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/index.esm.js +15 -15
- package/.aios-core/index.js +1 -1
- package/.aios-core/infrastructure/README.md +126 -126
- package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -59
- package/.aios-core/infrastructure/scripts/approval-workflow.js +1 -1
- package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
- package/.aios-core/infrastructure/scripts/component-generator.js +3 -3
- package/.aios-core/infrastructure/scripts/component-metadata.js +1 -1
- package/.aios-core/infrastructure/scripts/component-search.js +1 -1
- package/.aios-core/infrastructure/scripts/coverage-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/framework-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/improvement-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +26 -13
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.sh +108 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.sh +65 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.sh +16 -0
- package/.aios-core/infrastructure/scripts/llm-routing/usage-tracker/index.js +549 -0
- package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/performance-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -134
- package/.aios-core/infrastructure/scripts/repository-detector.js +3 -3
- package/.aios-core/infrastructure/scripts/template-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/template-validator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-generator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/transaction-manager.js +1 -1
- package/.aios-core/infrastructure/scripts/usage-analytics.js +1 -1
- package/.aios-core/infrastructure/scripts/visual-impact-generator.js +2 -2
- package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -109
- package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -621
- package/.aios-core/infrastructure/tools/README.md +222 -222
- package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -200
- package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -260
- package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -224
- package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -261
- package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -127
- package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -534
- package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -78
- package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -180
- package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -930
- package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -551
- package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -808
- package/.aios-core/install-manifest.yaml +347 -347
- package/.aios-core/product/README.md +56 -56
- package/.aios-core/product/checklists/accessibility-wcag-checklist.md +80 -0
- package/.aios-core/product/checklists/architect-checklist.md +443 -443
- package/.aios-core/product/checklists/change-checklist.md +182 -182
- package/.aios-core/product/checklists/component-quality-checklist.md +74 -0
- package/.aios-core/product/checklists/database-design-checklist.md +119 -119
- package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -97
- package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -99
- package/.aios-core/product/checklists/migration-readiness-checklist.md +75 -0
- package/.aios-core/product/checklists/pattern-audit-checklist.md +88 -0
- package/.aios-core/product/checklists/pm-checklist.md +375 -375
- package/.aios-core/product/checklists/po-master-checklist.md +441 -441
- package/.aios-core/product/checklists/pre-push-checklist.md +108 -108
- package/.aios-core/product/checklists/release-checklist.md +122 -122
- package/.aios-core/product/checklists/story-dod-checklist.md +101 -101
- package/.aios-core/product/checklists/story-draft-checklist.md +215 -215
- package/.aios-core/product/data/atomic-design-principles.md +108 -0
- package/.aios-core/product/data/brainstorming-techniques.md +36 -36
- package/.aios-core/product/data/consolidation-algorithms.md +142 -0
- package/.aios-core/product/data/database-best-practices.md +182 -0
- package/.aios-core/product/data/design-token-best-practices.md +107 -0
- package/.aios-core/product/data/elicitation-methods.md +134 -134
- package/.aios-core/product/data/integration-patterns.md +207 -0
- package/.aios-core/product/data/migration-safety-guide.md +329 -0
- package/.aios-core/product/data/mode-selection-best-practices.md +471 -471
- package/.aios-core/product/data/postgres-tuning-guide.md +300 -0
- package/.aios-core/product/data/rls-security-patterns.md +333 -0
- package/.aios-core/product/data/roi-calculation-guide.md +142 -0
- package/.aios-core/product/data/supabase-patterns.md +330 -0
- package/.aios-core/product/data/test-levels-framework.md +148 -148
- package/.aios-core/product/data/test-priorities-matrix.md +174 -174
- package/.aios-core/product/data/wcag-compliance-guide.md +267 -0
- package/.aios-core/product/templates/1mcp-config.yaml +225 -225
- package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -63
- package/.aios-core/product/templates/activation-instructions-template.md +258 -258
- package/.aios-core/product/templates/agent-template.yaml +120 -120
- package/.aios-core/product/templates/architecture-tmpl.yaml +650 -650
- package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +155 -155
- package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +475 -475
- package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +279 -279
- package/.aios-core/product/templates/changelog-template.md +134 -134
- package/.aios-core/product/templates/command-rationalization-matrix.md +152 -152
- package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +292 -292
- package/.aios-core/product/templates/design-story-tmpl.yaml +587 -587
- package/.aios-core/product/templates/ds-artifact-analysis.md +70 -70
- package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +205 -205
- package/.aios-core/product/templates/front-end-spec-tmpl.yaml +348 -348
- package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +804 -804
- package/.aios-core/product/templates/github-pr-template.md +67 -67
- package/.aios-core/product/templates/gordon-mcp.yaml +140 -140
- package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -221
- package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -84
- package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -92
- package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -85
- package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -86
- package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -104
- package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -80
- package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -53
- package/.aios-core/product/templates/market-research-tmpl.yaml +251 -251
- package/.aios-core/product/templates/mcp-workflow.js +271 -271
- package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -1022
- package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -524
- package/.aios-core/product/templates/personalized-agent-template.md +258 -258
- package/.aios-core/product/templates/personalized-checklist-template.md +340 -340
- package/.aios-core/product/templates/personalized-task-template-v2.md +905 -905
- package/.aios-core/product/templates/personalized-task-template.md +344 -344
- package/.aios-core/product/templates/personalized-template-file.yaml +322 -322
- package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -460
- package/.aios-core/product/templates/prd-tmpl.yaml +201 -201
- package/.aios-core/product/templates/project-brief-tmpl.yaml +220 -220
- package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -240
- package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -1203
- package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -428
- package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -219
- package/.aios-core/product/templates/story-tmpl.yaml +331 -331
- package/.aios-core/product/templates/task-execution-report.md +495 -495
- package/.aios-core/product/templates/task-template.md +122 -122
- package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -395
- package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -305
- package/.aios-core/product/templates/workflow-template.yaml +133 -133
- package/.aios-core/scripts/README.md +354 -354
- package/.aios-core/scripts/aios-doc-template.md +325 -325
- package/.aios-core/scripts/elicitation-engine.js +1 -1
- package/.aios-core/scripts/test-template-system.js +1 -1
- package/.aios-core/scripts/workflow-management.md +69 -69
- package/.aios-core/user-guide.md +1413 -1413
- package/.aios-core/working-in-the-brownfield.md +361 -361
- package/LICENSE +1 -1
- package/README.md +702 -703
- package/bin/aios-init-old.js +3 -3
- package/bin/aios-init-v4.js +1 -1
- package/bin/aios-init.backup-v1.1.4.js +1 -1
- package/bin/aios-init.js +3 -3
- package/bin/aios.js +279 -279
- package/bin/utils/install-errors.js +339 -339
- package/bin/utils/install-transaction.js +445 -445
- package/index.d.ts +18 -18
- package/index.esm.js +20 -20
- package/index.js +6 -6
- package/package.json +8 -10
- package/packages/installer/src/config/templates/env-template.js +27 -4
- package/packages/installer/src/detection/detect-project-type.js +81 -81
- package/packages/installer/tests/integration/wizard-detection.test.js +8 -6
- package/packages/installer/tests/unit/env-template.test.js +8 -8
- package/src/config/ide-configs.js +1 -1
- package/src/wizard/feedback.js +2 -2
- package/src/wizard/index.js +1 -1
- package/src/wizard/validation/report-generator.js +1 -1
- package/src/wizard/validation/troubleshooting-system.js +13 -13
- package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +0 -122
- package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +0 -89
- package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +0 -780
- package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +0 -950
- package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +0 -425
- package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +0 -132
- package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +0 -381
- package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +0 -203
- package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +0 -24
- package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +0 -51
- package/.aios-core/tasks/find-component.md.legacy +0 -391
- package/.aios-core/tasks/generate-commit-message.md.legacy +0 -426
- package/.aios-core/tasks/generate-migration.md.legacy +0 -382
- package/.aios-core/tasks/rollback-modification.md.legacy +0 -307
- package/.aios-core/tasks/update-tests.md.legacy +0 -283
|
@@ -1,351 +1,351 @@
|
|
|
1
|
-
# Task: DB Smoke Test
|
|
2
|
-
|
|
3
|
-
**Purpose**: Run post-migration validation checks
|
|
4
|
-
|
|
5
|
-
**Elicit**: false
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Process
|
|
10
|
-
|
|
11
|
-
## Execution Modes
|
|
12
|
-
|
|
13
|
-
**Choose your execution mode:**
|
|
14
|
-
|
|
15
|
-
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
16
|
-
- Autonomous decision making with logging
|
|
17
|
-
- Minimal user interaction
|
|
18
|
-
- **Best for:** Simple, deterministic tasks
|
|
19
|
-
|
|
20
|
-
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
21
|
-
- Explicit decision checkpoints
|
|
22
|
-
- Educational explanations
|
|
23
|
-
- **Best for:** Learning, complex decisions
|
|
24
|
-
|
|
25
|
-
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
26
|
-
- Task analysis phase (identify all ambiguities)
|
|
27
|
-
- Zero ambiguity execution
|
|
28
|
-
- **Best for:** Ambiguous requirements, critical work
|
|
29
|
-
|
|
30
|
-
**Parameter:** `mode` (optional, default: `interactive`)
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Task Definition (AIOS Task Format V1.0)
|
|
35
|
-
|
|
36
|
-
```yaml
|
|
37
|
-
task: dbSmokeTest()
|
|
38
|
-
responsável: Dara (Sage)
|
|
39
|
-
responsavel_type: Agente
|
|
40
|
-
atomic_layer: Config
|
|
41
|
-
|
|
42
|
-
**Entrada:**
|
|
43
|
-
- campo: query
|
|
44
|
-
tipo: string
|
|
45
|
-
origem: User Input
|
|
46
|
-
obrigatório: true
|
|
47
|
-
validação: Valid SQL query
|
|
48
|
-
|
|
49
|
-
- campo: params
|
|
50
|
-
tipo: object
|
|
51
|
-
origem: User Input
|
|
52
|
-
obrigatório: false
|
|
53
|
-
validação: Query parameters
|
|
54
|
-
|
|
55
|
-
- campo: connection
|
|
56
|
-
tipo: object
|
|
57
|
-
origem: config
|
|
58
|
-
obrigatório: true
|
|
59
|
-
validação: Valid PostgreSQL connection via Supabase
|
|
60
|
-
|
|
61
|
-
**Saída:**
|
|
62
|
-
- campo: query_result
|
|
63
|
-
tipo: array
|
|
64
|
-
destino: Memory
|
|
65
|
-
persistido: false
|
|
66
|
-
|
|
67
|
-
- campo: records_affected
|
|
68
|
-
tipo: number
|
|
69
|
-
destino: Return value
|
|
70
|
-
persistido: false
|
|
71
|
-
|
|
72
|
-
- campo: execution_time
|
|
73
|
-
tipo: number
|
|
74
|
-
destino: Memory
|
|
75
|
-
persistido: false
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## Pre-Conditions
|
|
81
|
-
|
|
82
|
-
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
83
|
-
|
|
84
|
-
**Checklist:**
|
|
85
|
-
|
|
86
|
-
```yaml
|
|
87
|
-
pre-conditions:
|
|
88
|
-
- [ ] Database connection established; query syntax valid
|
|
89
|
-
tipo: pre-condition
|
|
90
|
-
blocker: true
|
|
91
|
-
validação: |
|
|
92
|
-
Check database connection established; query syntax valid
|
|
93
|
-
error_message: "Pre-condition failed: Database connection established; query syntax valid"
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
---
|
|
97
|
-
|
|
98
|
-
## Post-Conditions
|
|
99
|
-
|
|
100
|
-
**Purpose:** Validate execution success AFTER task completes
|
|
101
|
-
|
|
102
|
-
**Checklist:**
|
|
103
|
-
|
|
104
|
-
```yaml
|
|
105
|
-
post-conditions:
|
|
106
|
-
- [ ] Query executed; results returned; transaction committed
|
|
107
|
-
tipo: post-condition
|
|
108
|
-
blocker: true
|
|
109
|
-
validação: |
|
|
110
|
-
Verify query executed; results returned; transaction committed
|
|
111
|
-
error_message: "Post-condition failed: Query executed; results returned; transaction committed"
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
---
|
|
115
|
-
|
|
116
|
-
## Acceptance Criteria
|
|
117
|
-
|
|
118
|
-
**Purpose:** Definitive pass/fail criteria for task completion
|
|
119
|
-
|
|
120
|
-
**Checklist:**
|
|
121
|
-
|
|
122
|
-
```yaml
|
|
123
|
-
acceptance-criteria:
|
|
124
|
-
- [ ] Data persisted correctly; constraints respected; no orphaned data
|
|
125
|
-
tipo: acceptance-criterion
|
|
126
|
-
blocker: true
|
|
127
|
-
validação: |
|
|
128
|
-
Assert data persisted correctly; constraints respected; no orphaned data
|
|
129
|
-
error_message: "Acceptance criterion not met: Data persisted correctly; constraints respected; no orphaned data"
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
---
|
|
133
|
-
|
|
134
|
-
## Tools
|
|
135
|
-
|
|
136
|
-
**External/shared resources used by this task:**
|
|
137
|
-
|
|
138
|
-
- **Tool:** supabase
|
|
139
|
-
- **Purpose:** PostgreSQL database connection via Supabase client
|
|
140
|
-
- **Source:** @supabase/supabase-js
|
|
141
|
-
|
|
142
|
-
- **Tool:** query-validator
|
|
143
|
-
- **Purpose:** SQL query syntax validation
|
|
144
|
-
- **Source:** .aios-core/utils/db-query-validator.js
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
## Scripts
|
|
149
|
-
|
|
150
|
-
**Agent-specific code for this task:**
|
|
151
|
-
|
|
152
|
-
- **Script:** db-query.js
|
|
153
|
-
- **Purpose:** Execute PostgreSQL queries with error handling via Supabase
|
|
154
|
-
- **Language:** JavaScript
|
|
155
|
-
- **Location:** .aios-core/scripts/db-query.js
|
|
156
|
-
|
|
157
|
-
---
|
|
158
|
-
|
|
159
|
-
## Error Handling
|
|
160
|
-
|
|
161
|
-
**Strategy:** retry
|
|
162
|
-
|
|
163
|
-
**Common Errors:**
|
|
164
|
-
|
|
165
|
-
1. **Error:** Connection Failed
|
|
166
|
-
- **Cause:** Unable to connect to Neo4j database
|
|
167
|
-
- **Resolution:** Check connection string, credentials, network
|
|
168
|
-
- **Recovery:** Retry with exponential backoff (max 3 attempts)
|
|
169
|
-
|
|
170
|
-
2. **Error:** Query Syntax Error
|
|
171
|
-
- **Cause:** Invalid Cypher query syntax
|
|
172
|
-
- **Resolution:** Validate query syntax before execution
|
|
173
|
-
- **Recovery:** Return detailed syntax error, suggest fix
|
|
174
|
-
|
|
175
|
-
3. **Error:** Transaction Rollback
|
|
176
|
-
- **Cause:** Query violates constraints or timeout
|
|
177
|
-
- **Resolution:** Review query logic and constraints
|
|
178
|
-
- **Recovery:** Automatic rollback, preserve data integrity
|
|
179
|
-
|
|
180
|
-
---
|
|
181
|
-
|
|
182
|
-
## Performance
|
|
183
|
-
|
|
184
|
-
**Expected Metrics:**
|
|
185
|
-
|
|
186
|
-
```yaml
|
|
187
|
-
duration_expected: 2-10 min (estimated)
|
|
188
|
-
cost_estimated: $0.001-0.008
|
|
189
|
-
token_usage: ~800-2,500 tokens
|
|
190
|
-
```
|
|
191
|
-
|
|
192
|
-
**Optimization Notes:**
|
|
193
|
-
- Validate configuration early; use atomic writes; implement rollback checkpoints
|
|
194
|
-
|
|
195
|
-
---
|
|
196
|
-
|
|
197
|
-
## Metadata
|
|
198
|
-
|
|
199
|
-
```yaml
|
|
200
|
-
story: N/A
|
|
201
|
-
version: 1.0.0
|
|
202
|
-
dependencies:
|
|
203
|
-
- N/A
|
|
204
|
-
tags:
|
|
205
|
-
- database
|
|
206
|
-
- infrastructure
|
|
207
|
-
updated_at: 2025-11-17
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
---
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
### 1. Locate Smoke Test File
|
|
214
|
-
|
|
215
|
-
Check for smoke test in this order:
|
|
216
|
-
|
|
217
|
-
1. `supabase/tests/smoke/v_current.sql` (project-specific)
|
|
218
|
-
2. `supabase/tests/smoke_test.sql` (project-specific)
|
|
219
|
-
3. `.aios-core/product/templates/tmpl-smoke-test.sql` (template)
|
|
220
|
-
|
|
221
|
-
### 2. Run Smoke Test
|
|
222
|
-
|
|
223
|
-
```bash
|
|
224
|
-
SMOKE_TEST=""
|
|
225
|
-
|
|
226
|
-
if [ -f "supabase/tests/smoke/v_current.sql" ]; then
|
|
227
|
-
SMOKE_TEST="supabase/tests/smoke/v_current.sql"
|
|
228
|
-
elif [ -f "supabase/tests/smoke_test.sql" ]; then
|
|
229
|
-
SMOKE_TEST="supabase/tests/smoke_test.sql"
|
|
230
|
-
elif [ -f ".aios-core/product/templates/tmpl-smoke-test.sql" ]; then
|
|
231
|
-
SMOKE_TEST=".aios-core/product/templates/tmpl-smoke-test.sql"
|
|
232
|
-
else
|
|
233
|
-
echo "❌ No smoke test file found"
|
|
234
|
-
exit 1
|
|
235
|
-
fi
|
|
236
|
-
|
|
237
|
-
echo "Running smoke test: $SMOKE_TEST"
|
|
238
|
-
psql "$SUPABASE_DB_URL" -v ON_ERROR_STOP=1 -f "$SMOKE_TEST"
|
|
239
|
-
```
|
|
240
|
-
|
|
241
|
-
### 3. Report Results
|
|
242
|
-
|
|
243
|
-
**If successful:**
|
|
244
|
-
```
|
|
245
|
-
✅ Smoke Test Passed
|
|
246
|
-
|
|
247
|
-
Checks completed:
|
|
248
|
-
✓ Table count validation
|
|
249
|
-
✓ Policy count validation
|
|
250
|
-
✓ Function existence checks
|
|
251
|
-
✓ Basic query sanity
|
|
252
|
-
```
|
|
253
|
-
|
|
254
|
-
**If failed:**
|
|
255
|
-
```
|
|
256
|
-
❌ Smoke Test Failed
|
|
257
|
-
|
|
258
|
-
Review errors above and:
|
|
259
|
-
1. Check migration completeness
|
|
260
|
-
2. Verify RLS policies installed
|
|
261
|
-
3. Confirm functions created
|
|
262
|
-
4. Consider rollback if critical
|
|
263
|
-
```
|
|
264
|
-
|
|
265
|
-
---
|
|
266
|
-
|
|
267
|
-
## What Is Tested
|
|
268
|
-
|
|
269
|
-
Basic smoke tests typically check:
|
|
270
|
-
|
|
271
|
-
### Schema Objects
|
|
272
|
-
- Expected tables exist
|
|
273
|
-
- Expected views exist
|
|
274
|
-
- Expected functions exist
|
|
275
|
-
- Expected triggers exist
|
|
276
|
-
|
|
277
|
-
### RLS Coverage
|
|
278
|
-
- RLS enabled on sensitive tables
|
|
279
|
-
- Policies exist and are named correctly
|
|
280
|
-
- Basic RLS queries don't error
|
|
281
|
-
|
|
282
|
-
### Data Integrity
|
|
283
|
-
- Foreign keys valid
|
|
284
|
-
- Check constraints valid
|
|
285
|
-
- Sample queries return expected results
|
|
286
|
-
|
|
287
|
-
### Performance
|
|
288
|
-
- Basic queries complete in reasonable time
|
|
289
|
-
- No missing indexes on FKs
|
|
290
|
-
|
|
291
|
-
---
|
|
292
|
-
|
|
293
|
-
## Creating Custom Smoke Tests
|
|
294
|
-
|
|
295
|
-
Create `supabase/tests/smoke/v_X_Y_Z.sql`:
|
|
296
|
-
|
|
297
|
-
```sql
|
|
298
|
-
-- Smoke Test for v1.2.0
|
|
299
|
-
SET client_min_messages = warning;
|
|
300
|
-
|
|
301
|
-
-- Table count
|
|
302
|
-
SELECT COUNT(*) AS tables FROM information_schema.tables
|
|
303
|
-
WHERE table_schema='public';
|
|
304
|
-
-- Expected: 15
|
|
305
|
-
|
|
306
|
-
-- RLS enabled
|
|
307
|
-
SELECT tablename FROM pg_tables
|
|
308
|
-
WHERE schemaname='public' AND rowsecurity = false;
|
|
309
|
-
-- Expected: empty (all tables have RLS)
|
|
310
|
-
|
|
311
|
-
-- Critical functions exist
|
|
312
|
-
SELECT proname FROM pg_proc
|
|
313
|
-
WHERE pronamespace = 'public'::regnamespace
|
|
314
|
-
AND proname IN ('function1', 'function2');
|
|
315
|
-
-- Expected: 2 rows
|
|
316
|
-
|
|
317
|
-
-- Sample data query
|
|
318
|
-
SELECT COUNT(*) FROM users WHERE deleted_at IS NULL;
|
|
319
|
-
-- Expected: > 0
|
|
320
|
-
|
|
321
|
-
-- RLS sanity (doesn't error)
|
|
322
|
-
SET LOCAL request.jwt.claims = '{"sub":"00000000-0000-0000-0000-000000000000","role":"authenticated"}';
|
|
323
|
-
SELECT 1 FROM protected_table LIMIT 1;
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
---
|
|
327
|
-
|
|
328
|
-
## Best Practices
|
|
329
|
-
|
|
330
|
-
1. **Version-specific tests** - Name by schema version
|
|
331
|
-
2. **Fast execution** - Under 5 seconds
|
|
332
|
-
3. **No side effects** - Read-only queries
|
|
333
|
-
4. **Clear expectations** - Document expected results
|
|
334
|
-
5. **Fail fast** - Use ON_ERROR_STOP
|
|
335
|
-
|
|
336
|
-
---
|
|
337
|
-
|
|
338
|
-
## Next Steps After Pass
|
|
339
|
-
|
|
340
|
-
✓ Migration validated
|
|
341
|
-
→ Update migration log
|
|
342
|
-
→ Run RLS audit: `*rls-audit`
|
|
343
|
-
→ Check performance: `*analyze-hotpaths`
|
|
344
|
-
|
|
345
|
-
## Next Steps After Fail
|
|
346
|
-
|
|
347
|
-
❌ Migration issues detected
|
|
348
|
-
→ Review errors
|
|
349
|
-
→ Consider rollback: `*rollback {snapshot}`
|
|
350
|
-
→ Fix migration
|
|
351
|
-
→ Retry
|
|
1
|
+
# Task: DB Smoke Test
|
|
2
|
+
|
|
3
|
+
**Purpose**: Run post-migration validation checks
|
|
4
|
+
|
|
5
|
+
**Elicit**: false
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Process
|
|
10
|
+
|
|
11
|
+
## Execution Modes
|
|
12
|
+
|
|
13
|
+
**Choose your execution mode:**
|
|
14
|
+
|
|
15
|
+
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
16
|
+
- Autonomous decision making with logging
|
|
17
|
+
- Minimal user interaction
|
|
18
|
+
- **Best for:** Simple, deterministic tasks
|
|
19
|
+
|
|
20
|
+
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
21
|
+
- Explicit decision checkpoints
|
|
22
|
+
- Educational explanations
|
|
23
|
+
- **Best for:** Learning, complex decisions
|
|
24
|
+
|
|
25
|
+
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
26
|
+
- Task analysis phase (identify all ambiguities)
|
|
27
|
+
- Zero ambiguity execution
|
|
28
|
+
- **Best for:** Ambiguous requirements, critical work
|
|
29
|
+
|
|
30
|
+
**Parameter:** `mode` (optional, default: `interactive`)
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Task Definition (AIOS Task Format V1.0)
|
|
35
|
+
|
|
36
|
+
```yaml
|
|
37
|
+
task: dbSmokeTest()
|
|
38
|
+
responsável: Dara (Sage)
|
|
39
|
+
responsavel_type: Agente
|
|
40
|
+
atomic_layer: Config
|
|
41
|
+
|
|
42
|
+
**Entrada:**
|
|
43
|
+
- campo: query
|
|
44
|
+
tipo: string
|
|
45
|
+
origem: User Input
|
|
46
|
+
obrigatório: true
|
|
47
|
+
validação: Valid SQL query
|
|
48
|
+
|
|
49
|
+
- campo: params
|
|
50
|
+
tipo: object
|
|
51
|
+
origem: User Input
|
|
52
|
+
obrigatório: false
|
|
53
|
+
validação: Query parameters
|
|
54
|
+
|
|
55
|
+
- campo: connection
|
|
56
|
+
tipo: object
|
|
57
|
+
origem: config
|
|
58
|
+
obrigatório: true
|
|
59
|
+
validação: Valid PostgreSQL connection via Supabase
|
|
60
|
+
|
|
61
|
+
**Saída:**
|
|
62
|
+
- campo: query_result
|
|
63
|
+
tipo: array
|
|
64
|
+
destino: Memory
|
|
65
|
+
persistido: false
|
|
66
|
+
|
|
67
|
+
- campo: records_affected
|
|
68
|
+
tipo: number
|
|
69
|
+
destino: Return value
|
|
70
|
+
persistido: false
|
|
71
|
+
|
|
72
|
+
- campo: execution_time
|
|
73
|
+
tipo: number
|
|
74
|
+
destino: Memory
|
|
75
|
+
persistido: false
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Pre-Conditions
|
|
81
|
+
|
|
82
|
+
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
83
|
+
|
|
84
|
+
**Checklist:**
|
|
85
|
+
|
|
86
|
+
```yaml
|
|
87
|
+
pre-conditions:
|
|
88
|
+
- [ ] Database connection established; query syntax valid
|
|
89
|
+
tipo: pre-condition
|
|
90
|
+
blocker: true
|
|
91
|
+
validação: |
|
|
92
|
+
Check database connection established; query syntax valid
|
|
93
|
+
error_message: "Pre-condition failed: Database connection established; query syntax valid"
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Post-Conditions
|
|
99
|
+
|
|
100
|
+
**Purpose:** Validate execution success AFTER task completes
|
|
101
|
+
|
|
102
|
+
**Checklist:**
|
|
103
|
+
|
|
104
|
+
```yaml
|
|
105
|
+
post-conditions:
|
|
106
|
+
- [ ] Query executed; results returned; transaction committed
|
|
107
|
+
tipo: post-condition
|
|
108
|
+
blocker: true
|
|
109
|
+
validação: |
|
|
110
|
+
Verify query executed; results returned; transaction committed
|
|
111
|
+
error_message: "Post-condition failed: Query executed; results returned; transaction committed"
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Acceptance Criteria
|
|
117
|
+
|
|
118
|
+
**Purpose:** Definitive pass/fail criteria for task completion
|
|
119
|
+
|
|
120
|
+
**Checklist:**
|
|
121
|
+
|
|
122
|
+
```yaml
|
|
123
|
+
acceptance-criteria:
|
|
124
|
+
- [ ] Data persisted correctly; constraints respected; no orphaned data
|
|
125
|
+
tipo: acceptance-criterion
|
|
126
|
+
blocker: true
|
|
127
|
+
validação: |
|
|
128
|
+
Assert data persisted correctly; constraints respected; no orphaned data
|
|
129
|
+
error_message: "Acceptance criterion not met: Data persisted correctly; constraints respected; no orphaned data"
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Tools
|
|
135
|
+
|
|
136
|
+
**External/shared resources used by this task:**
|
|
137
|
+
|
|
138
|
+
- **Tool:** supabase
|
|
139
|
+
- **Purpose:** PostgreSQL database connection via Supabase client
|
|
140
|
+
- **Source:** @supabase/supabase-js
|
|
141
|
+
|
|
142
|
+
- **Tool:** query-validator
|
|
143
|
+
- **Purpose:** SQL query syntax validation
|
|
144
|
+
- **Source:** .aios-core/utils/db-query-validator.js
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## Scripts
|
|
149
|
+
|
|
150
|
+
**Agent-specific code for this task:**
|
|
151
|
+
|
|
152
|
+
- **Script:** db-query.js
|
|
153
|
+
- **Purpose:** Execute PostgreSQL queries with error handling via Supabase
|
|
154
|
+
- **Language:** JavaScript
|
|
155
|
+
- **Location:** .aios-core/scripts/db-query.js
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Error Handling
|
|
160
|
+
|
|
161
|
+
**Strategy:** retry
|
|
162
|
+
|
|
163
|
+
**Common Errors:**
|
|
164
|
+
|
|
165
|
+
1. **Error:** Connection Failed
|
|
166
|
+
- **Cause:** Unable to connect to Neo4j database
|
|
167
|
+
- **Resolution:** Check connection string, credentials, network
|
|
168
|
+
- **Recovery:** Retry with exponential backoff (max 3 attempts)
|
|
169
|
+
|
|
170
|
+
2. **Error:** Query Syntax Error
|
|
171
|
+
- **Cause:** Invalid Cypher query syntax
|
|
172
|
+
- **Resolution:** Validate query syntax before execution
|
|
173
|
+
- **Recovery:** Return detailed syntax error, suggest fix
|
|
174
|
+
|
|
175
|
+
3. **Error:** Transaction Rollback
|
|
176
|
+
- **Cause:** Query violates constraints or timeout
|
|
177
|
+
- **Resolution:** Review query logic and constraints
|
|
178
|
+
- **Recovery:** Automatic rollback, preserve data integrity
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Performance
|
|
183
|
+
|
|
184
|
+
**Expected Metrics:**
|
|
185
|
+
|
|
186
|
+
```yaml
|
|
187
|
+
duration_expected: 2-10 min (estimated)
|
|
188
|
+
cost_estimated: $0.001-0.008
|
|
189
|
+
token_usage: ~800-2,500 tokens
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
**Optimization Notes:**
|
|
193
|
+
- Validate configuration early; use atomic writes; implement rollback checkpoints
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## Metadata
|
|
198
|
+
|
|
199
|
+
```yaml
|
|
200
|
+
story: N/A
|
|
201
|
+
version: 1.0.0
|
|
202
|
+
dependencies:
|
|
203
|
+
- N/A
|
|
204
|
+
tags:
|
|
205
|
+
- database
|
|
206
|
+
- infrastructure
|
|
207
|
+
updated_at: 2025-11-17
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
### 1. Locate Smoke Test File
|
|
214
|
+
|
|
215
|
+
Check for smoke test in this order:
|
|
216
|
+
|
|
217
|
+
1. `supabase/tests/smoke/v_current.sql` (project-specific)
|
|
218
|
+
2. `supabase/tests/smoke_test.sql` (project-specific)
|
|
219
|
+
3. `.aios-core/product/templates/tmpl-smoke-test.sql` (template)
|
|
220
|
+
|
|
221
|
+
### 2. Run Smoke Test
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
SMOKE_TEST=""
|
|
225
|
+
|
|
226
|
+
if [ -f "supabase/tests/smoke/v_current.sql" ]; then
|
|
227
|
+
SMOKE_TEST="supabase/tests/smoke/v_current.sql"
|
|
228
|
+
elif [ -f "supabase/tests/smoke_test.sql" ]; then
|
|
229
|
+
SMOKE_TEST="supabase/tests/smoke_test.sql"
|
|
230
|
+
elif [ -f ".aios-core/product/templates/tmpl-smoke-test.sql" ]; then
|
|
231
|
+
SMOKE_TEST=".aios-core/product/templates/tmpl-smoke-test.sql"
|
|
232
|
+
else
|
|
233
|
+
echo "❌ No smoke test file found"
|
|
234
|
+
exit 1
|
|
235
|
+
fi
|
|
236
|
+
|
|
237
|
+
echo "Running smoke test: $SMOKE_TEST"
|
|
238
|
+
psql "$SUPABASE_DB_URL" -v ON_ERROR_STOP=1 -f "$SMOKE_TEST"
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### 3. Report Results
|
|
242
|
+
|
|
243
|
+
**If successful:**
|
|
244
|
+
```
|
|
245
|
+
✅ Smoke Test Passed
|
|
246
|
+
|
|
247
|
+
Checks completed:
|
|
248
|
+
✓ Table count validation
|
|
249
|
+
✓ Policy count validation
|
|
250
|
+
✓ Function existence checks
|
|
251
|
+
✓ Basic query sanity
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**If failed:**
|
|
255
|
+
```
|
|
256
|
+
❌ Smoke Test Failed
|
|
257
|
+
|
|
258
|
+
Review errors above and:
|
|
259
|
+
1. Check migration completeness
|
|
260
|
+
2. Verify RLS policies installed
|
|
261
|
+
3. Confirm functions created
|
|
262
|
+
4. Consider rollback if critical
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## What Is Tested
|
|
268
|
+
|
|
269
|
+
Basic smoke tests typically check:
|
|
270
|
+
|
|
271
|
+
### Schema Objects
|
|
272
|
+
- Expected tables exist
|
|
273
|
+
- Expected views exist
|
|
274
|
+
- Expected functions exist
|
|
275
|
+
- Expected triggers exist
|
|
276
|
+
|
|
277
|
+
### RLS Coverage
|
|
278
|
+
- RLS enabled on sensitive tables
|
|
279
|
+
- Policies exist and are named correctly
|
|
280
|
+
- Basic RLS queries don't error
|
|
281
|
+
|
|
282
|
+
### Data Integrity
|
|
283
|
+
- Foreign keys valid
|
|
284
|
+
- Check constraints valid
|
|
285
|
+
- Sample queries return expected results
|
|
286
|
+
|
|
287
|
+
### Performance
|
|
288
|
+
- Basic queries complete in reasonable time
|
|
289
|
+
- No missing indexes on FKs
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
293
|
+
## Creating Custom Smoke Tests
|
|
294
|
+
|
|
295
|
+
Create `supabase/tests/smoke/v_X_Y_Z.sql`:
|
|
296
|
+
|
|
297
|
+
```sql
|
|
298
|
+
-- Smoke Test for v1.2.0
|
|
299
|
+
SET client_min_messages = warning;
|
|
300
|
+
|
|
301
|
+
-- Table count
|
|
302
|
+
SELECT COUNT(*) AS tables FROM information_schema.tables
|
|
303
|
+
WHERE table_schema='public';
|
|
304
|
+
-- Expected: 15
|
|
305
|
+
|
|
306
|
+
-- RLS enabled
|
|
307
|
+
SELECT tablename FROM pg_tables
|
|
308
|
+
WHERE schemaname='public' AND rowsecurity = false;
|
|
309
|
+
-- Expected: empty (all tables have RLS)
|
|
310
|
+
|
|
311
|
+
-- Critical functions exist
|
|
312
|
+
SELECT proname FROM pg_proc
|
|
313
|
+
WHERE pronamespace = 'public'::regnamespace
|
|
314
|
+
AND proname IN ('function1', 'function2');
|
|
315
|
+
-- Expected: 2 rows
|
|
316
|
+
|
|
317
|
+
-- Sample data query
|
|
318
|
+
SELECT COUNT(*) FROM users WHERE deleted_at IS NULL;
|
|
319
|
+
-- Expected: > 0
|
|
320
|
+
|
|
321
|
+
-- RLS sanity (doesn't error)
|
|
322
|
+
SET LOCAL request.jwt.claims = '{"sub":"00000000-0000-0000-0000-000000000000","role":"authenticated"}';
|
|
323
|
+
SELECT 1 FROM protected_table LIMIT 1;
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
|
|
328
|
+
## Best Practices
|
|
329
|
+
|
|
330
|
+
1. **Version-specific tests** - Name by schema version
|
|
331
|
+
2. **Fast execution** - Under 5 seconds
|
|
332
|
+
3. **No side effects** - Read-only queries
|
|
333
|
+
4. **Clear expectations** - Document expected results
|
|
334
|
+
5. **Fail fast** - Use ON_ERROR_STOP
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
338
|
+
## Next Steps After Pass
|
|
339
|
+
|
|
340
|
+
✓ Migration validated
|
|
341
|
+
→ Update migration log
|
|
342
|
+
→ Run RLS audit: `*rls-audit`
|
|
343
|
+
→ Check performance: `*analyze-hotpaths`
|
|
344
|
+
|
|
345
|
+
## Next Steps After Fail
|
|
346
|
+
|
|
347
|
+
❌ Migration issues detected
|
|
348
|
+
→ Review errors
|
|
349
|
+
→ Consider rollback: `*rollback {snapshot}`
|
|
350
|
+
→ Fix migration
|
|
351
|
+
→ Retry
|