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,663 +1,663 @@
|
|
|
1
|
-
# Database Integration Analysis for Expansion Pack
|
|
2
|
-
|
|
3
|
-
> Task ID: db-
|
|
4
|
-
> Agent: DB Sage (Database Architect)
|
|
5
|
-
> Version: 1.0.0
|
|
6
|
-
|
|
7
|
-
## Execution Modes
|
|
8
|
-
|
|
9
|
-
**Choose your execution mode:**
|
|
10
|
-
|
|
11
|
-
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
12
|
-
- Autonomous decision making with logging
|
|
13
|
-
- Minimal user interaction
|
|
14
|
-
- **Best for:** Simple, deterministic tasks
|
|
15
|
-
|
|
16
|
-
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
17
|
-
- Explicit decision checkpoints
|
|
18
|
-
- Educational explanations
|
|
19
|
-
- **Best for:** Learning, complex decisions
|
|
20
|
-
|
|
21
|
-
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
22
|
-
- Task analysis phase (identify all ambiguities)
|
|
23
|
-
- Zero ambiguity execution
|
|
24
|
-
- **Best for:** Ambiguous requirements, critical work
|
|
25
|
-
|
|
26
|
-
**Parameter:** `mode` (optional, default: `interactive`)
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## Task Definition (AIOS Task Format V1.0)
|
|
31
|
-
|
|
32
|
-
```yaml
|
|
33
|
-
task: dbExpansionPackIntegration()
|
|
34
|
-
responsável: Dara (Sage)
|
|
35
|
-
responsavel_type: Agente
|
|
36
|
-
atomic_layer: Strategy
|
|
37
|
-
|
|
38
|
-
**Entrada:**
|
|
39
|
-
- campo: query
|
|
40
|
-
tipo: string
|
|
41
|
-
origem: User Input
|
|
42
|
-
obrigatório: true
|
|
43
|
-
validação: Valid SQL query
|
|
44
|
-
|
|
45
|
-
- campo: params
|
|
46
|
-
tipo: object
|
|
47
|
-
origem: User Input
|
|
48
|
-
obrigatório: false
|
|
49
|
-
validação: Query parameters
|
|
50
|
-
|
|
51
|
-
- campo: connection
|
|
52
|
-
tipo: object
|
|
53
|
-
origem: config
|
|
54
|
-
obrigatório: true
|
|
55
|
-
validação: Valid PostgreSQL connection via Supabase
|
|
56
|
-
|
|
57
|
-
**Saída:**
|
|
58
|
-
- campo: query_result
|
|
59
|
-
tipo: array
|
|
60
|
-
destino: Memory
|
|
61
|
-
persistido: false
|
|
62
|
-
|
|
63
|
-
- campo: records_affected
|
|
64
|
-
tipo: number
|
|
65
|
-
destino: Return value
|
|
66
|
-
persistido: false
|
|
67
|
-
|
|
68
|
-
- campo: execution_time
|
|
69
|
-
tipo: number
|
|
70
|
-
destino: Memory
|
|
71
|
-
persistido: false
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Pre-Conditions
|
|
77
|
-
|
|
78
|
-
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
79
|
-
|
|
80
|
-
**Checklist:**
|
|
81
|
-
|
|
82
|
-
```yaml
|
|
83
|
-
pre-conditions:
|
|
84
|
-
- [ ] Database connection established; query syntax valid
|
|
85
|
-
tipo: pre-condition
|
|
86
|
-
blocker: true
|
|
87
|
-
validação: |
|
|
88
|
-
Check database connection established; query syntax valid
|
|
89
|
-
error_message: "Pre-condition failed: Database connection established; query syntax valid"
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
---
|
|
93
|
-
|
|
94
|
-
## Post-Conditions
|
|
95
|
-
|
|
96
|
-
**Purpose:** Validate execution success AFTER task completes
|
|
97
|
-
|
|
98
|
-
**Checklist:**
|
|
99
|
-
|
|
100
|
-
```yaml
|
|
101
|
-
post-conditions:
|
|
102
|
-
- [ ] Query executed; results returned; transaction committed
|
|
103
|
-
tipo: post-condition
|
|
104
|
-
blocker: true
|
|
105
|
-
validação: |
|
|
106
|
-
Verify query executed; results returned; transaction committed
|
|
107
|
-
error_message: "Post-condition failed: Query executed; results returned; transaction committed"
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
## Acceptance Criteria
|
|
113
|
-
|
|
114
|
-
**Purpose:** Definitive pass/fail criteria for task completion
|
|
115
|
-
|
|
116
|
-
**Checklist:**
|
|
117
|
-
|
|
118
|
-
```yaml
|
|
119
|
-
acceptance-criteria:
|
|
120
|
-
- [ ] Data persisted correctly; constraints respected; no orphaned data
|
|
121
|
-
tipo: acceptance-criterion
|
|
122
|
-
blocker: true
|
|
123
|
-
validação: |
|
|
124
|
-
Assert data persisted correctly; constraints respected; no orphaned data
|
|
125
|
-
error_message: "Acceptance criterion not met: Data persisted correctly; constraints respected; no orphaned data"
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
## Tools
|
|
131
|
-
|
|
132
|
-
**External/shared resources used by this task:**
|
|
133
|
-
|
|
134
|
-
- **Tool:** neo4j-driver
|
|
135
|
-
- **Purpose:** Neo4j database connection and query execution
|
|
136
|
-
- **Source:** npm: neo4j-driver
|
|
137
|
-
|
|
138
|
-
- **Tool:** query-validator
|
|
139
|
-
- **Purpose:** Cypher query syntax validation
|
|
140
|
-
- **Source:** .aios-core/utils/db-query-validator.js
|
|
141
|
-
|
|
142
|
-
---
|
|
143
|
-
|
|
144
|
-
## Scripts
|
|
145
|
-
|
|
146
|
-
**Agent-specific code for this task:**
|
|
147
|
-
|
|
148
|
-
- **Script:** db-query.js
|
|
149
|
-
- **Purpose:** Execute Neo4j queries with error handling
|
|
150
|
-
- **Language:** JavaScript
|
|
151
|
-
- **Location:** .aios-core/scripts/db-query.js
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
## Error Handling
|
|
156
|
-
|
|
157
|
-
**Strategy:** retry
|
|
158
|
-
|
|
159
|
-
**Common Errors:**
|
|
160
|
-
|
|
161
|
-
1. **Error:** Connection Failed
|
|
162
|
-
- **Cause:** Unable to connect to Neo4j database
|
|
163
|
-
- **Resolution:** Check connection string, credentials, network
|
|
164
|
-
- **Recovery:** Retry with exponential backoff (max 3 attempts)
|
|
165
|
-
|
|
166
|
-
2. **Error:** Query Syntax Error
|
|
167
|
-
- **Cause:** Invalid Cypher query syntax
|
|
168
|
-
- **Resolution:** Validate query syntax before execution
|
|
169
|
-
- **Recovery:** Return detailed syntax error, suggest fix
|
|
170
|
-
|
|
171
|
-
3. **Error:** Transaction Rollback
|
|
172
|
-
- **Cause:** Query violates constraints or timeout
|
|
173
|
-
- **Resolution:** Review query logic and constraints
|
|
174
|
-
- **Recovery:** Automatic rollback, preserve data integrity
|
|
175
|
-
|
|
176
|
-
---
|
|
177
|
-
|
|
178
|
-
## Performance
|
|
179
|
-
|
|
180
|
-
**Expected Metrics:**
|
|
181
|
-
|
|
182
|
-
```yaml
|
|
183
|
-
duration_expected: 5-20 min (estimated)
|
|
184
|
-
cost_estimated: $0.003-0.015
|
|
185
|
-
token_usage: ~2,000-8,000 tokens
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
**Optimization Notes:**
|
|
189
|
-
- Iterative analysis with depth limits; cache intermediate results; batch similar operations
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
## Metadata
|
|
194
|
-
|
|
195
|
-
```yaml
|
|
196
|
-
story: N/A
|
|
197
|
-
version: 1.0.0
|
|
198
|
-
dependencies:
|
|
199
|
-
- N/A
|
|
200
|
-
tags:
|
|
201
|
-
- database
|
|
202
|
-
- infrastructure
|
|
203
|
-
updated_at: 2025-11-17
|
|
204
|
-
```
|
|
205
|
-
|
|
206
|
-
---
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
## Description
|
|
210
|
-
|
|
211
|
-
Analyze an expansion pack's data requirements and design database integration strategy. Maps pack inputs/outputs/state to database schema, proposes tables/relationships, and generates migration plan.
|
|
212
|
-
|
|
213
|
-
## Prerequisites
|
|
214
|
-
|
|
215
|
-
- Expansion pack installed and accessible
|
|
216
|
-
- Database connection configured (*env-check passed)
|
|
217
|
-
- Current schema documented or accessible
|
|
218
|
-
|
|
219
|
-
## Workflow
|
|
220
|
-
|
|
221
|
-
### Step 1: Identify Target Expansion Pack
|
|
222
|
-
|
|
223
|
-
**Elicit from user:**
|
|
224
|
-
- Which expansion pack? (mmos, creator-os, innerlens, etc.)
|
|
225
|
-
- Path to expansion pack directory
|
|
226
|
-
|
|
227
|
-
**Actions:**
|
|
228
|
-
- Verify pack exists and has config.yaml
|
|
229
|
-
- Load pack metadata (name, version, description)
|
|
230
|
-
|
|
231
|
-
---
|
|
232
|
-
|
|
233
|
-
### Step 2: Audit Expansion Pack Data Flows
|
|
234
|
-
|
|
235
|
-
**Scan pack structure for data touchpoints:**
|
|
236
|
-
|
|
237
|
-
```bash
|
|
238
|
-
# Look for data indicators
|
|
239
|
-
- Config files (*.yaml, *.json, .env.example)
|
|
240
|
-
- Input directories (sources/, inputs/, uploads/)
|
|
241
|
-
- Output directories (outputs/, generated/, artifacts/)
|
|
242
|
-
- State files (state.json, .cache/, db/)
|
|
243
|
-
- Scripts that read/write data
|
|
244
|
-
- API endpoints that handle data
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
**Document findings:**
|
|
248
|
-
|
|
249
|
-
```yaml
|
|
250
|
-
expansion_pack_audit:
|
|
251
|
-
name: mmos
|
|
252
|
-
version: 2.0.0
|
|
253
|
-
|
|
254
|
-
data_inputs:
|
|
255
|
-
- type: user_interview_transcript
|
|
256
|
-
format: markdown
|
|
257
|
-
location: sources/interviews/
|
|
258
|
-
volume: ~50 files per mind
|
|
259
|
-
|
|
260
|
-
- type: configuration
|
|
261
|
-
format: yaml
|
|
262
|
-
location: config/mind-config.yaml
|
|
263
|
-
fields: [name, personality_type, communication_style]
|
|
264
|
-
|
|
265
|
-
data_outputs:
|
|
266
|
-
- type: cognitive_model
|
|
267
|
-
format: yaml
|
|
268
|
-
location: outputs/minds/{slug}/analysis/
|
|
269
|
-
persistence_need: high (reusable artifact)
|
|
270
|
-
|
|
271
|
-
- type: system_prompt
|
|
272
|
-
format: markdown
|
|
273
|
-
location: outputs/minds/{slug}/system_prompts/
|
|
274
|
-
persistence_need: high (versioned, queryable)
|
|
275
|
-
|
|
276
|
-
- type: knowledge_chunks
|
|
277
|
-
format: json
|
|
278
|
-
location: outputs/minds/{slug}/kb/
|
|
279
|
-
persistence_need: high (searchable, referenceable)
|
|
280
|
-
|
|
281
|
-
state_requirements:
|
|
282
|
-
- processing_status: [pending, in_progress, completed, failed]
|
|
283
|
-
- last_run_timestamp
|
|
284
|
-
- version_tracking
|
|
285
|
-
- validation_scores
|
|
286
|
-
|
|
287
|
-
relationships:
|
|
288
|
-
- One mind → many system_prompts (versioned)
|
|
289
|
-
- One mind → many knowledge_chunks
|
|
290
|
-
- One user → many minds
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
---
|
|
294
|
-
|
|
295
|
-
### Step 3: Analyze Current Database Schema
|
|
296
|
-
|
|
297
|
-
**Connect to database and inspect:**
|
|
298
|
-
|
|
299
|
-
```sql
|
|
300
|
-
-- List all tables
|
|
301
|
-
SELECT table_name, table_type
|
|
302
|
-
FROM information_schema.tables
|
|
303
|
-
WHERE table_schema = 'public';
|
|
304
|
-
|
|
305
|
-
-- Check for related tables
|
|
306
|
-
SELECT * FROM pg_tables WHERE schemaname = 'public';
|
|
307
|
-
|
|
308
|
-
-- Look for existing patterns
|
|
309
|
-
-- Users, projects, assets, metadata tables?
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
**Document current schema:**
|
|
313
|
-
|
|
314
|
-
```yaml
|
|
315
|
-
current_schema:
|
|
316
|
-
tables:
|
|
317
|
-
- name: users
|
|
318
|
-
has_auth: true
|
|
319
|
-
fields: [id, email, created_at]
|
|
320
|
-
|
|
321
|
-
- name: projects
|
|
322
|
-
fields: [id, user_id, name, type, created_at]
|
|
323
|
-
foreign_keys: [user_id → users.id]
|
|
324
|
-
|
|
325
|
-
patterns_found:
|
|
326
|
-
- Multi-tenancy via user_id
|
|
327
|
-
- UUID primary keys
|
|
328
|
-
- created_at/updated_at timestamps
|
|
329
|
-
- RLS enabled on most tables
|
|
330
|
-
```
|
|
331
|
-
|
|
332
|
-
---
|
|
333
|
-
|
|
334
|
-
### Step 4: Design Integration Schema
|
|
335
|
-
|
|
336
|
-
**Map pack data to database tables:**
|
|
337
|
-
|
|
338
|
-
```yaml
|
|
339
|
-
proposed_schema:
|
|
340
|
-
new_tables:
|
|
341
|
-
|
|
342
|
-
# MMOS example
|
|
343
|
-
- name: minds
|
|
344
|
-
purpose: Store cognitive clone definitions
|
|
345
|
-
fields:
|
|
346
|
-
- id: uuid PRIMARY KEY
|
|
347
|
-
- user_id: uuid REFERENCES users(id)
|
|
348
|
-
- slug: text UNIQUE NOT NULL
|
|
349
|
-
- name: text NOT NULL
|
|
350
|
-
- personality_type: text
|
|
351
|
-
- status: mind_status_enum
|
|
352
|
-
- version: integer DEFAULT 1
|
|
353
|
-
- created_at: timestamptz
|
|
354
|
-
- updated_at: timestamptz
|
|
355
|
-
indexes:
|
|
356
|
-
- (user_id, slug) UNIQUE
|
|
357
|
-
- (status) WHERE status = 'active'
|
|
358
|
-
rls: "Users can only access their own minds"
|
|
359
|
-
|
|
360
|
-
- name: mind_system_prompts
|
|
361
|
-
purpose: Version-controlled system prompts
|
|
362
|
-
fields:
|
|
363
|
-
- id: uuid PRIMARY KEY
|
|
364
|
-
- mind_id: uuid REFERENCES minds(id) ON DELETE CASCADE
|
|
365
|
-
- version: integer NOT NULL
|
|
366
|
-
- prompt_type: text (generalista, specialist, etc.)
|
|
367
|
-
- content: text NOT NULL
|
|
368
|
-
- metadata: jsonb
|
|
369
|
-
- created_at: timestamptz
|
|
370
|
-
indexes:
|
|
371
|
-
- (mind_id, version, prompt_type) UNIQUE
|
|
372
|
-
rls: "Inherit from minds table via mind_id"
|
|
373
|
-
|
|
374
|
-
- name: mind_knowledge_chunks
|
|
375
|
-
purpose: RAG-ready knowledge base
|
|
376
|
-
fields:
|
|
377
|
-
- id: uuid PRIMARY KEY
|
|
378
|
-
- mind_id: uuid REFERENCES minds(id) ON DELETE CASCADE
|
|
379
|
-
- chunk_text: text NOT NULL
|
|
380
|
-
- embedding: vector(1536) # OpenAI embeddings
|
|
381
|
-
- metadata: jsonb (source_file, chunk_index, etc.)
|
|
382
|
-
- created_at: timestamptz
|
|
383
|
-
indexes:
|
|
384
|
-
- (mind_id)
|
|
385
|
-
- GiST (embedding vector_cosine_ops) # For similarity search
|
|
386
|
-
rls: "Inherit from minds table"
|
|
387
|
-
|
|
388
|
-
modified_tables: []
|
|
389
|
-
|
|
390
|
-
enums:
|
|
391
|
-
- name: mind_status_enum
|
|
392
|
-
values: [pending, processing, completed, failed, archived]
|
|
393
|
-
|
|
394
|
-
functions:
|
|
395
|
-
- name: search_mind_knowledge(mind_id uuid, query_embedding vector)
|
|
396
|
-
purpose: Vector similarity search for RAG
|
|
397
|
-
returns: TABLE(chunk_id uuid, chunk_text text, similarity float)
|
|
398
|
-
```
|
|
399
|
-
|
|
400
|
-
---
|
|
401
|
-
|
|
402
|
-
### Step 5: Validate Integration Design
|
|
403
|
-
|
|
404
|
-
**Run checks:**
|
|
405
|
-
|
|
406
|
-
- [ ] All pack outputs have storage strategy
|
|
407
|
-
- [ ] All pack inputs can be referenced (user uploads → table?)
|
|
408
|
-
- [ ] State requirements mapped to fields
|
|
409
|
-
- [ ] Foreign keys enforce relationships
|
|
410
|
-
- [ ] RLS policies defined for all tables
|
|
411
|
-
- [ ] Indexes support expected queries (list minds, search KB, version lookup)
|
|
412
|
-
- [ ] No orphaned data (CASCADE on deletes)
|
|
413
|
-
- [ ] Follows existing schema patterns (user_id, timestamps, etc.)
|
|
414
|
-
|
|
415
|
-
**KISS Gate check:**
|
|
416
|
-
|
|
417
|
-
- Is database even needed? (If pack works fine with filesystem, stop here)
|
|
418
|
-
- What problem does this solve? (searchability? multi-user? versioning?)
|
|
419
|
-
- Can existing tables be extended instead? (e.g., generic `projects` table?)
|
|
420
|
-
- Minimum viable schema? (Start with 1 table, expand later if needed)
|
|
421
|
-
|
|
422
|
-
---
|
|
423
|
-
|
|
424
|
-
### Step 6: Generate Migration Plan
|
|
425
|
-
|
|
426
|
-
**Create migration strategy:**
|
|
427
|
-
|
|
428
|
-
```yaml
|
|
429
|
-
migration_plan:
|
|
430
|
-
phase_1_foundation:
|
|
431
|
-
- Create enums (mind_status_enum)
|
|
432
|
-
- Create base table (minds)
|
|
433
|
-
- Add RLS policies to minds
|
|
434
|
-
- Create seed data (test mind)
|
|
435
|
-
|
|
436
|
-
phase_2_extensions:
|
|
437
|
-
- Create related tables (mind_system_prompts, mind_knowledge_chunks)
|
|
438
|
-
- Add foreign keys
|
|
439
|
-
- Add indexes
|
|
440
|
-
- Enable RLS on related tables
|
|
441
|
-
|
|
442
|
-
phase_3_functions:
|
|
443
|
-
- Create vector search function
|
|
444
|
-
- Create helper views (active_minds, latest_prompts)
|
|
445
|
-
|
|
446
|
-
rollback_strategy:
|
|
447
|
-
- Snapshot before each phase
|
|
448
|
-
- Rollback scripts generated
|
|
449
|
-
- Test on staging first
|
|
450
|
-
|
|
451
|
-
risk_assessment:
|
|
452
|
-
- Low risk: New tables, no existing data affected
|
|
453
|
-
- Medium risk: If modifying existing tables
|
|
454
|
-
- High risk: If changing core auth/users tables
|
|
455
|
-
```
|
|
456
|
-
|
|
457
|
-
**Generate actual migration files:**
|
|
458
|
-
|
|
459
|
-
```bash
|
|
460
|
-
# Use template to generate
|
|
461
|
-
*create-migration-plan
|
|
462
|
-
|
|
463
|
-
# Then scaffold files
|
|
464
|
-
supabase/migrations/20251027_001_create_minds_table.sql
|
|
465
|
-
supabase/migrations/20251027_002_create_mind_prompts_table.sql
|
|
466
|
-
supabase/migrations/20251027_003_create_mind_kb_table.sql
|
|
467
|
-
supabase/migrations/20251027_004_add_vector_search.sql
|
|
468
|
-
```
|
|
469
|
-
|
|
470
|
-
---
|
|
471
|
-
|
|
472
|
-
### Step 7: Generate Integration Documentation
|
|
473
|
-
|
|
474
|
-
**Create docs/mmos/database-integration.md:**
|
|
475
|
-
|
|
476
|
-
```markdown
|
|
477
|
-
# MMOS Database Integration
|
|
478
|
-
|
|
479
|
-
## Overview
|
|
480
|
-
MMOS cognitive clones are now persisted in Supabase with full RLS, versioning, and vector search.
|
|
481
|
-
|
|
482
|
-
## Schema
|
|
483
|
-
|
|
484
|
-
### minds table
|
|
485
|
-
- Stores core mind definition
|
|
486
|
-
- One per cognitive clone
|
|
487
|
-
- User-scoped via RLS
|
|
488
|
-
|
|
489
|
-
### mind_system_prompts table
|
|
490
|
-
- Version-controlled prompts
|
|
491
|
-
- Many per mind
|
|
492
|
-
- Allows A/B testing and rollback
|
|
493
|
-
|
|
494
|
-
### mind_knowledge_chunks table
|
|
495
|
-
- RAG-ready knowledge base
|
|
496
|
-
- Vector embeddings for similarity search
|
|
497
|
-
- Efficient retrieval during clone interaction
|
|
498
|
-
|
|
499
|
-
## Usage
|
|
500
|
-
|
|
501
|
-
### Creating a mind
|
|
502
|
-
```sql
|
|
503
|
-
INSERT INTO minds (user_id, slug, name, personality_type)
|
|
504
|
-
VALUES (auth.uid(), 'joao-lozano', 'João Lozano', 'ENTJ');
|
|
505
|
-
```
|
|
506
|
-
|
|
507
|
-
### Storing system prompt
|
|
508
|
-
```sql
|
|
509
|
-
INSERT INTO mind_system_prompts (mind_id, version, prompt_type, content)
|
|
510
|
-
VALUES (:mind_id, 1, 'generalista', :prompt_content);
|
|
511
|
-
```
|
|
512
|
-
|
|
513
|
-
### Searching knowledge base
|
|
514
|
-
```sql
|
|
515
|
-
SELECT * FROM search_mind_knowledge(
|
|
516
|
-
:mind_id,
|
|
517
|
-
:query_embedding::vector(1536)
|
|
518
|
-
)
|
|
519
|
-
LIMIT 10;
|
|
520
|
-
```
|
|
521
|
-
|
|
522
|
-
## Migration Path
|
|
523
|
-
|
|
524
|
-
1. Run migrations in order (see supabase/migrations/)
|
|
525
|
-
2. Backfill existing minds from outputs/ directory
|
|
526
|
-
3. Update MMOS scripts to read/write database
|
|
527
|
-
4. Keep filesystem outputs as backup during transition
|
|
528
|
-
```
|
|
529
|
-
|
|
530
|
-
---
|
|
531
|
-
|
|
532
|
-
### Step 8: Output Integration Report
|
|
533
|
-
|
|
534
|
-
**Generate
|
|
535
|
-
|
|
536
|
-
```yaml
|
|
537
|
-
integration_analysis:
|
|
538
|
-
expansion_pack: mmos
|
|
539
|
-
database: supabase_production
|
|
540
|
-
analysis_date: 2025-10-27
|
|
541
|
-
analyst: DB Sage
|
|
542
|
-
|
|
543
|
-
summary:
|
|
544
|
-
recommendation: "Integrate with database"
|
|
545
|
-
rationale: |
|
|
546
|
-
- Multi-user access required (MMOS will be SaaS)
|
|
547
|
-
- Version tracking needed (system prompt evolution)
|
|
548
|
-
- Vector search needed (RAG for clone responses)
|
|
549
|
-
- Filesystem alone cannot support these requirements
|
|
550
|
-
|
|
551
|
-
tables_added: 3
|
|
552
|
-
tables_modified: 0
|
|
553
|
-
migration_risk: low
|
|
554
|
-
estimated_effort: 4 hours (design + migrate + test)
|
|
555
|
-
|
|
556
|
-
schema_design:
|
|
557
|
-
file: docs/mmos/database-schema.yaml
|
|
558
|
-
erd: docs/mmos/database-erd.png (generate with *create-schema)
|
|
559
|
-
|
|
560
|
-
migration_plan:
|
|
561
|
-
file: docs/mmos/migration-plan.yaml
|
|
562
|
-
migrations_directory: supabase/migrations/
|
|
563
|
-
rollback_scripts: supabase/rollback/
|
|
564
|
-
|
|
565
|
-
next_steps:
|
|
566
|
-
- [ ] Review schema design with team
|
|
567
|
-
- [ ] Approve migration plan
|
|
568
|
-
- [ ] Run *snapshot baseline
|
|
569
|
-
- [ ] Execute migrations (*migrate)
|
|
570
|
-
- [ ] Test integration (*smoke-test)
|
|
571
|
-
- [ ] Update MMOS scripts to use database
|
|
572
|
-
- [ ] Deploy to staging
|
|
573
|
-
- [ ] Monitor for 48h
|
|
574
|
-
- [ ] Deploy to production
|
|
575
|
-
```
|
|
576
|
-
|
|
577
|
-
---
|
|
578
|
-
|
|
579
|
-
## Success Criteria
|
|
580
|
-
|
|
581
|
-
- [ ] Expansion pack data flows fully documented
|
|
582
|
-
- [ ] Current schema analyzed
|
|
583
|
-
- [ ] Integration schema designed (follows patterns, has RLS)
|
|
584
|
-
- [ ] KISS Gate validation passed (database is actually needed)
|
|
585
|
-
- [ ] Migration plan generated with rollback strategy
|
|
586
|
-
- [ ] Integration documentation created
|
|
587
|
-
- [ ] Report generated with clear next steps
|
|
588
|
-
|
|
589
|
-
---
|
|
590
|
-
|
|
591
|
-
## Output Files
|
|
592
|
-
|
|
593
|
-
```
|
|
594
|
-
|
|
595
|
-
├── database-integration-report.yaml ← Main output
|
|
596
|
-
├── data-flow-audit.yaml ← Step 2 findings
|
|
597
|
-
└── schema-design.yaml ← Step 4 design
|
|
598
|
-
|
|
599
|
-
docs/{pack-name}/
|
|
600
|
-
├── database-integration.md ← Usage guide
|
|
601
|
-
├── database-schema.yaml ← Schema definition
|
|
602
|
-
└── migration-plan.yaml ← Migration strategy
|
|
603
|
-
|
|
604
|
-
supabase/migrations/
|
|
605
|
-
└── 2025MMDD_NNN_{pack}_*.sql ← Ready to apply
|
|
606
|
-
```
|
|
607
|
-
|
|
608
|
-
---
|
|
609
|
-
|
|
610
|
-
## Examples
|
|
611
|
-
|
|
612
|
-
### CreatorOS Integration
|
|
613
|
-
|
|
614
|
-
```yaml
|
|
615
|
-
# CreatorOS generates courses → needs to store:
|
|
616
|
-
# - Course metadata (title, description, status)
|
|
617
|
-
# - Curriculum structure (modules, lessons)
|
|
618
|
-
# - Generated content (video scripts, quizzes)
|
|
619
|
-
# - User progress (if multi-user platform)
|
|
620
|
-
|
|
621
|
-
proposed_schema:
|
|
622
|
-
- courses table (id, user_id, slug, title, status)
|
|
623
|
-
- course_modules table (id, course_id, order, title)
|
|
624
|
-
- course_lessons table (id, module_id, order, title, content_type)
|
|
625
|
-
- course_content table (id, lesson_id, content, generated_at)
|
|
626
|
-
```
|
|
627
|
-
|
|
628
|
-
### InnerLens Integration
|
|
629
|
-
|
|
630
|
-
```yaml
|
|
631
|
-
# InnerLens does psychometric assessments → needs to store:
|
|
632
|
-
# - Assessment definitions (Big5, MBTI, etc.)
|
|
633
|
-
# - User responses (answers, timestamps)
|
|
634
|
-
# - Computed results (personality profiles)
|
|
635
|
-
|
|
636
|
-
proposed_schema:
|
|
637
|
-
- assessments table (id, name, type, questions_jsonb)
|
|
638
|
-
- user_assessments table (id, user_id, assessment_id, completed_at)
|
|
639
|
-
- assessment_responses table (id, user_assessment_id, question_id, response)
|
|
640
|
-
- assessment_results table (id, user_assessment_id, results_jsonb)
|
|
641
|
-
```
|
|
642
|
-
|
|
643
|
-
---
|
|
644
|
-
|
|
645
|
-
## Notes
|
|
646
|
-
|
|
647
|
-
- **Always run KISS Gate validation** - database might not be needed
|
|
648
|
-
- **Follow existing patterns** - don't reinvent (user_id, timestamps, RLS)
|
|
649
|
-
- **Start minimal** - can always add tables later
|
|
650
|
-
- **Think about queries** - indexes should match access patterns
|
|
651
|
-
- **Plan for scale** - vector search, partitioning if needed
|
|
652
|
-
- **RLS from day 1** - security cannot be retrofitted easily
|
|
653
|
-
- **Document everything** - future maintainers will thank you
|
|
654
|
-
|
|
655
|
-
---
|
|
656
|
-
|
|
657
|
-
## Related Tasks
|
|
658
|
-
|
|
659
|
-
- `*validate-kiss` - Run before this task (MANDATORY)
|
|
660
|
-
- `*create-schema` - Generate full schema documentation with ERD
|
|
661
|
-
- `*create-migration-plan` - Generate detailed migration strategy
|
|
662
|
-
- `*migrate` - Execute the actual migrations
|
|
663
|
-
- `*smoke-test` - Validate integration after migration
|
|
1
|
+
# Database Integration Analysis for Expansion Pack
|
|
2
|
+
|
|
3
|
+
> Task ID: db-Squad-integration
|
|
4
|
+
> Agent: DB Sage (Database Architect)
|
|
5
|
+
> Version: 1.0.0
|
|
6
|
+
|
|
7
|
+
## Execution Modes
|
|
8
|
+
|
|
9
|
+
**Choose your execution mode:**
|
|
10
|
+
|
|
11
|
+
### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
|
|
12
|
+
- Autonomous decision making with logging
|
|
13
|
+
- Minimal user interaction
|
|
14
|
+
- **Best for:** Simple, deterministic tasks
|
|
15
|
+
|
|
16
|
+
### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
|
|
17
|
+
- Explicit decision checkpoints
|
|
18
|
+
- Educational explanations
|
|
19
|
+
- **Best for:** Learning, complex decisions
|
|
20
|
+
|
|
21
|
+
### 3. Pre-Flight Planning - Comprehensive Upfront Planning
|
|
22
|
+
- Task analysis phase (identify all ambiguities)
|
|
23
|
+
- Zero ambiguity execution
|
|
24
|
+
- **Best for:** Ambiguous requirements, critical work
|
|
25
|
+
|
|
26
|
+
**Parameter:** `mode` (optional, default: `interactive`)
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Task Definition (AIOS Task Format V1.0)
|
|
31
|
+
|
|
32
|
+
```yaml
|
|
33
|
+
task: dbExpansionPackIntegration()
|
|
34
|
+
responsável: Dara (Sage)
|
|
35
|
+
responsavel_type: Agente
|
|
36
|
+
atomic_layer: Strategy
|
|
37
|
+
|
|
38
|
+
**Entrada:**
|
|
39
|
+
- campo: query
|
|
40
|
+
tipo: string
|
|
41
|
+
origem: User Input
|
|
42
|
+
obrigatório: true
|
|
43
|
+
validação: Valid SQL query
|
|
44
|
+
|
|
45
|
+
- campo: params
|
|
46
|
+
tipo: object
|
|
47
|
+
origem: User Input
|
|
48
|
+
obrigatório: false
|
|
49
|
+
validação: Query parameters
|
|
50
|
+
|
|
51
|
+
- campo: connection
|
|
52
|
+
tipo: object
|
|
53
|
+
origem: config
|
|
54
|
+
obrigatório: true
|
|
55
|
+
validação: Valid PostgreSQL connection via Supabase
|
|
56
|
+
|
|
57
|
+
**Saída:**
|
|
58
|
+
- campo: query_result
|
|
59
|
+
tipo: array
|
|
60
|
+
destino: Memory
|
|
61
|
+
persistido: false
|
|
62
|
+
|
|
63
|
+
- campo: records_affected
|
|
64
|
+
tipo: number
|
|
65
|
+
destino: Return value
|
|
66
|
+
persistido: false
|
|
67
|
+
|
|
68
|
+
- campo: execution_time
|
|
69
|
+
tipo: number
|
|
70
|
+
destino: Memory
|
|
71
|
+
persistido: false
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Pre-Conditions
|
|
77
|
+
|
|
78
|
+
**Purpose:** Validate prerequisites BEFORE task execution (blocking)
|
|
79
|
+
|
|
80
|
+
**Checklist:**
|
|
81
|
+
|
|
82
|
+
```yaml
|
|
83
|
+
pre-conditions:
|
|
84
|
+
- [ ] Database connection established; query syntax valid
|
|
85
|
+
tipo: pre-condition
|
|
86
|
+
blocker: true
|
|
87
|
+
validação: |
|
|
88
|
+
Check database connection established; query syntax valid
|
|
89
|
+
error_message: "Pre-condition failed: Database connection established; query syntax valid"
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Post-Conditions
|
|
95
|
+
|
|
96
|
+
**Purpose:** Validate execution success AFTER task completes
|
|
97
|
+
|
|
98
|
+
**Checklist:**
|
|
99
|
+
|
|
100
|
+
```yaml
|
|
101
|
+
post-conditions:
|
|
102
|
+
- [ ] Query executed; results returned; transaction committed
|
|
103
|
+
tipo: post-condition
|
|
104
|
+
blocker: true
|
|
105
|
+
validação: |
|
|
106
|
+
Verify query executed; results returned; transaction committed
|
|
107
|
+
error_message: "Post-condition failed: Query executed; results returned; transaction committed"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Acceptance Criteria
|
|
113
|
+
|
|
114
|
+
**Purpose:** Definitive pass/fail criteria for task completion
|
|
115
|
+
|
|
116
|
+
**Checklist:**
|
|
117
|
+
|
|
118
|
+
```yaml
|
|
119
|
+
acceptance-criteria:
|
|
120
|
+
- [ ] Data persisted correctly; constraints respected; no orphaned data
|
|
121
|
+
tipo: acceptance-criterion
|
|
122
|
+
blocker: true
|
|
123
|
+
validação: |
|
|
124
|
+
Assert data persisted correctly; constraints respected; no orphaned data
|
|
125
|
+
error_message: "Acceptance criterion not met: Data persisted correctly; constraints respected; no orphaned data"
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## Tools
|
|
131
|
+
|
|
132
|
+
**External/shared resources used by this task:**
|
|
133
|
+
|
|
134
|
+
- **Tool:** neo4j-driver
|
|
135
|
+
- **Purpose:** Neo4j database connection and query execution
|
|
136
|
+
- **Source:** npm: neo4j-driver
|
|
137
|
+
|
|
138
|
+
- **Tool:** query-validator
|
|
139
|
+
- **Purpose:** Cypher query syntax validation
|
|
140
|
+
- **Source:** .aios-core/utils/db-query-validator.js
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Scripts
|
|
145
|
+
|
|
146
|
+
**Agent-specific code for this task:**
|
|
147
|
+
|
|
148
|
+
- **Script:** db-query.js
|
|
149
|
+
- **Purpose:** Execute Neo4j queries with error handling
|
|
150
|
+
- **Language:** JavaScript
|
|
151
|
+
- **Location:** .aios-core/scripts/db-query.js
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Error Handling
|
|
156
|
+
|
|
157
|
+
**Strategy:** retry
|
|
158
|
+
|
|
159
|
+
**Common Errors:**
|
|
160
|
+
|
|
161
|
+
1. **Error:** Connection Failed
|
|
162
|
+
- **Cause:** Unable to connect to Neo4j database
|
|
163
|
+
- **Resolution:** Check connection string, credentials, network
|
|
164
|
+
- **Recovery:** Retry with exponential backoff (max 3 attempts)
|
|
165
|
+
|
|
166
|
+
2. **Error:** Query Syntax Error
|
|
167
|
+
- **Cause:** Invalid Cypher query syntax
|
|
168
|
+
- **Resolution:** Validate query syntax before execution
|
|
169
|
+
- **Recovery:** Return detailed syntax error, suggest fix
|
|
170
|
+
|
|
171
|
+
3. **Error:** Transaction Rollback
|
|
172
|
+
- **Cause:** Query violates constraints or timeout
|
|
173
|
+
- **Resolution:** Review query logic and constraints
|
|
174
|
+
- **Recovery:** Automatic rollback, preserve data integrity
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## Performance
|
|
179
|
+
|
|
180
|
+
**Expected Metrics:**
|
|
181
|
+
|
|
182
|
+
```yaml
|
|
183
|
+
duration_expected: 5-20 min (estimated)
|
|
184
|
+
cost_estimated: $0.003-0.015
|
|
185
|
+
token_usage: ~2,000-8,000 tokens
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
**Optimization Notes:**
|
|
189
|
+
- Iterative analysis with depth limits; cache intermediate results; batch similar operations
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Metadata
|
|
194
|
+
|
|
195
|
+
```yaml
|
|
196
|
+
story: N/A
|
|
197
|
+
version: 1.0.0
|
|
198
|
+
dependencies:
|
|
199
|
+
- N/A
|
|
200
|
+
tags:
|
|
201
|
+
- database
|
|
202
|
+
- infrastructure
|
|
203
|
+
updated_at: 2025-11-17
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
## Description
|
|
210
|
+
|
|
211
|
+
Analyze an expansion pack's data requirements and design database integration strategy. Maps pack inputs/outputs/state to database schema, proposes tables/relationships, and generates migration plan.
|
|
212
|
+
|
|
213
|
+
## Prerequisites
|
|
214
|
+
|
|
215
|
+
- Expansion pack installed and accessible
|
|
216
|
+
- Database connection configured (*env-check passed)
|
|
217
|
+
- Current schema documented or accessible
|
|
218
|
+
|
|
219
|
+
## Workflow
|
|
220
|
+
|
|
221
|
+
### Step 1: Identify Target Expansion Pack
|
|
222
|
+
|
|
223
|
+
**Elicit from user:**
|
|
224
|
+
- Which expansion pack? (mmos, creator-os, innerlens, etc.)
|
|
225
|
+
- Path to expansion pack directory
|
|
226
|
+
|
|
227
|
+
**Actions:**
|
|
228
|
+
- Verify pack exists and has config.yaml
|
|
229
|
+
- Load pack metadata (name, version, description)
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
### Step 2: Audit Expansion Pack Data Flows
|
|
234
|
+
|
|
235
|
+
**Scan pack structure for data touchpoints:**
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
# Look for data indicators
|
|
239
|
+
- Config files (*.yaml, *.json, .env.example)
|
|
240
|
+
- Input directories (sources/, inputs/, uploads/)
|
|
241
|
+
- Output directories (outputs/, generated/, artifacts/)
|
|
242
|
+
- State files (state.json, .cache/, db/)
|
|
243
|
+
- Scripts that read/write data
|
|
244
|
+
- API endpoints that handle data
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
**Document findings:**
|
|
248
|
+
|
|
249
|
+
```yaml
|
|
250
|
+
expansion_pack_audit:
|
|
251
|
+
name: mmos
|
|
252
|
+
version: 2.0.0
|
|
253
|
+
|
|
254
|
+
data_inputs:
|
|
255
|
+
- type: user_interview_transcript
|
|
256
|
+
format: markdown
|
|
257
|
+
location: sources/interviews/
|
|
258
|
+
volume: ~50 files per mind
|
|
259
|
+
|
|
260
|
+
- type: configuration
|
|
261
|
+
format: yaml
|
|
262
|
+
location: config/mind-config.yaml
|
|
263
|
+
fields: [name, personality_type, communication_style]
|
|
264
|
+
|
|
265
|
+
data_outputs:
|
|
266
|
+
- type: cognitive_model
|
|
267
|
+
format: yaml
|
|
268
|
+
location: outputs/minds/{slug}/analysis/
|
|
269
|
+
persistence_need: high (reusable artifact)
|
|
270
|
+
|
|
271
|
+
- type: system_prompt
|
|
272
|
+
format: markdown
|
|
273
|
+
location: outputs/minds/{slug}/system_prompts/
|
|
274
|
+
persistence_need: high (versioned, queryable)
|
|
275
|
+
|
|
276
|
+
- type: knowledge_chunks
|
|
277
|
+
format: json
|
|
278
|
+
location: outputs/minds/{slug}/kb/
|
|
279
|
+
persistence_need: high (searchable, referenceable)
|
|
280
|
+
|
|
281
|
+
state_requirements:
|
|
282
|
+
- processing_status: [pending, in_progress, completed, failed]
|
|
283
|
+
- last_run_timestamp
|
|
284
|
+
- version_tracking
|
|
285
|
+
- validation_scores
|
|
286
|
+
|
|
287
|
+
relationships:
|
|
288
|
+
- One mind → many system_prompts (versioned)
|
|
289
|
+
- One mind → many knowledge_chunks
|
|
290
|
+
- One user → many minds
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
### Step 3: Analyze Current Database Schema
|
|
296
|
+
|
|
297
|
+
**Connect to database and inspect:**
|
|
298
|
+
|
|
299
|
+
```sql
|
|
300
|
+
-- List all tables
|
|
301
|
+
SELECT table_name, table_type
|
|
302
|
+
FROM information_schema.tables
|
|
303
|
+
WHERE table_schema = 'public';
|
|
304
|
+
|
|
305
|
+
-- Check for related tables
|
|
306
|
+
SELECT * FROM pg_tables WHERE schemaname = 'public';
|
|
307
|
+
|
|
308
|
+
-- Look for existing patterns
|
|
309
|
+
-- Users, projects, assets, metadata tables?
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
**Document current schema:**
|
|
313
|
+
|
|
314
|
+
```yaml
|
|
315
|
+
current_schema:
|
|
316
|
+
tables:
|
|
317
|
+
- name: users
|
|
318
|
+
has_auth: true
|
|
319
|
+
fields: [id, email, created_at]
|
|
320
|
+
|
|
321
|
+
- name: projects
|
|
322
|
+
fields: [id, user_id, name, type, created_at]
|
|
323
|
+
foreign_keys: [user_id → users.id]
|
|
324
|
+
|
|
325
|
+
patterns_found:
|
|
326
|
+
- Multi-tenancy via user_id
|
|
327
|
+
- UUID primary keys
|
|
328
|
+
- created_at/updated_at timestamps
|
|
329
|
+
- RLS enabled on most tables
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
---
|
|
333
|
+
|
|
334
|
+
### Step 4: Design Integration Schema
|
|
335
|
+
|
|
336
|
+
**Map pack data to database tables:**
|
|
337
|
+
|
|
338
|
+
```yaml
|
|
339
|
+
proposed_schema:
|
|
340
|
+
new_tables:
|
|
341
|
+
|
|
342
|
+
# MMOS example
|
|
343
|
+
- name: minds
|
|
344
|
+
purpose: Store cognitive clone definitions
|
|
345
|
+
fields:
|
|
346
|
+
- id: uuid PRIMARY KEY
|
|
347
|
+
- user_id: uuid REFERENCES users(id)
|
|
348
|
+
- slug: text UNIQUE NOT NULL
|
|
349
|
+
- name: text NOT NULL
|
|
350
|
+
- personality_type: text
|
|
351
|
+
- status: mind_status_enum
|
|
352
|
+
- version: integer DEFAULT 1
|
|
353
|
+
- created_at: timestamptz
|
|
354
|
+
- updated_at: timestamptz
|
|
355
|
+
indexes:
|
|
356
|
+
- (user_id, slug) UNIQUE
|
|
357
|
+
- (status) WHERE status = 'active'
|
|
358
|
+
rls: "Users can only access their own minds"
|
|
359
|
+
|
|
360
|
+
- name: mind_system_prompts
|
|
361
|
+
purpose: Version-controlled system prompts
|
|
362
|
+
fields:
|
|
363
|
+
- id: uuid PRIMARY KEY
|
|
364
|
+
- mind_id: uuid REFERENCES minds(id) ON DELETE CASCADE
|
|
365
|
+
- version: integer NOT NULL
|
|
366
|
+
- prompt_type: text (generalista, specialist, etc.)
|
|
367
|
+
- content: text NOT NULL
|
|
368
|
+
- metadata: jsonb
|
|
369
|
+
- created_at: timestamptz
|
|
370
|
+
indexes:
|
|
371
|
+
- (mind_id, version, prompt_type) UNIQUE
|
|
372
|
+
rls: "Inherit from minds table via mind_id"
|
|
373
|
+
|
|
374
|
+
- name: mind_knowledge_chunks
|
|
375
|
+
purpose: RAG-ready knowledge base
|
|
376
|
+
fields:
|
|
377
|
+
- id: uuid PRIMARY KEY
|
|
378
|
+
- mind_id: uuid REFERENCES minds(id) ON DELETE CASCADE
|
|
379
|
+
- chunk_text: text NOT NULL
|
|
380
|
+
- embedding: vector(1536) # OpenAI embeddings
|
|
381
|
+
- metadata: jsonb (source_file, chunk_index, etc.)
|
|
382
|
+
- created_at: timestamptz
|
|
383
|
+
indexes:
|
|
384
|
+
- (mind_id)
|
|
385
|
+
- GiST (embedding vector_cosine_ops) # For similarity search
|
|
386
|
+
rls: "Inherit from minds table"
|
|
387
|
+
|
|
388
|
+
modified_tables: []
|
|
389
|
+
|
|
390
|
+
enums:
|
|
391
|
+
- name: mind_status_enum
|
|
392
|
+
values: [pending, processing, completed, failed, archived]
|
|
393
|
+
|
|
394
|
+
functions:
|
|
395
|
+
- name: search_mind_knowledge(mind_id uuid, query_embedding vector)
|
|
396
|
+
purpose: Vector similarity search for RAG
|
|
397
|
+
returns: TABLE(chunk_id uuid, chunk_text text, similarity float)
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
---
|
|
401
|
+
|
|
402
|
+
### Step 5: Validate Integration Design
|
|
403
|
+
|
|
404
|
+
**Run checks:**
|
|
405
|
+
|
|
406
|
+
- [ ] All pack outputs have storage strategy
|
|
407
|
+
- [ ] All pack inputs can be referenced (user uploads → table?)
|
|
408
|
+
- [ ] State requirements mapped to fields
|
|
409
|
+
- [ ] Foreign keys enforce relationships
|
|
410
|
+
- [ ] RLS policies defined for all tables
|
|
411
|
+
- [ ] Indexes support expected queries (list minds, search KB, version lookup)
|
|
412
|
+
- [ ] No orphaned data (CASCADE on deletes)
|
|
413
|
+
- [ ] Follows existing schema patterns (user_id, timestamps, etc.)
|
|
414
|
+
|
|
415
|
+
**KISS Gate check:**
|
|
416
|
+
|
|
417
|
+
- Is database even needed? (If pack works fine with filesystem, stop here)
|
|
418
|
+
- What problem does this solve? (searchability? multi-user? versioning?)
|
|
419
|
+
- Can existing tables be extended instead? (e.g., generic `projects` table?)
|
|
420
|
+
- Minimum viable schema? (Start with 1 table, expand later if needed)
|
|
421
|
+
|
|
422
|
+
---
|
|
423
|
+
|
|
424
|
+
### Step 6: Generate Migration Plan
|
|
425
|
+
|
|
426
|
+
**Create migration strategy:**
|
|
427
|
+
|
|
428
|
+
```yaml
|
|
429
|
+
migration_plan:
|
|
430
|
+
phase_1_foundation:
|
|
431
|
+
- Create enums (mind_status_enum)
|
|
432
|
+
- Create base table (minds)
|
|
433
|
+
- Add RLS policies to minds
|
|
434
|
+
- Create seed data (test mind)
|
|
435
|
+
|
|
436
|
+
phase_2_extensions:
|
|
437
|
+
- Create related tables (mind_system_prompts, mind_knowledge_chunks)
|
|
438
|
+
- Add foreign keys
|
|
439
|
+
- Add indexes
|
|
440
|
+
- Enable RLS on related tables
|
|
441
|
+
|
|
442
|
+
phase_3_functions:
|
|
443
|
+
- Create vector search function
|
|
444
|
+
- Create helper views (active_minds, latest_prompts)
|
|
445
|
+
|
|
446
|
+
rollback_strategy:
|
|
447
|
+
- Snapshot before each phase
|
|
448
|
+
- Rollback scripts generated
|
|
449
|
+
- Test on staging first
|
|
450
|
+
|
|
451
|
+
risk_assessment:
|
|
452
|
+
- Low risk: New tables, no existing data affected
|
|
453
|
+
- Medium risk: If modifying existing tables
|
|
454
|
+
- High risk: If changing core auth/users tables
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
**Generate actual migration files:**
|
|
458
|
+
|
|
459
|
+
```bash
|
|
460
|
+
# Use template to generate
|
|
461
|
+
*create-migration-plan
|
|
462
|
+
|
|
463
|
+
# Then scaffold files
|
|
464
|
+
supabase/migrations/20251027_001_create_minds_table.sql
|
|
465
|
+
supabase/migrations/20251027_002_create_mind_prompts_table.sql
|
|
466
|
+
supabase/migrations/20251027_003_create_mind_kb_table.sql
|
|
467
|
+
supabase/migrations/20251027_004_add_vector_search.sql
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
---
|
|
471
|
+
|
|
472
|
+
### Step 7: Generate Integration Documentation
|
|
473
|
+
|
|
474
|
+
**Create docs/mmos/database-integration.md:**
|
|
475
|
+
|
|
476
|
+
```markdown
|
|
477
|
+
# MMOS Database Integration
|
|
478
|
+
|
|
479
|
+
## Overview
|
|
480
|
+
MMOS cognitive clones are now persisted in Supabase with full RLS, versioning, and vector search.
|
|
481
|
+
|
|
482
|
+
## Schema
|
|
483
|
+
|
|
484
|
+
### minds table
|
|
485
|
+
- Stores core mind definition
|
|
486
|
+
- One per cognitive clone
|
|
487
|
+
- User-scoped via RLS
|
|
488
|
+
|
|
489
|
+
### mind_system_prompts table
|
|
490
|
+
- Version-controlled prompts
|
|
491
|
+
- Many per mind
|
|
492
|
+
- Allows A/B testing and rollback
|
|
493
|
+
|
|
494
|
+
### mind_knowledge_chunks table
|
|
495
|
+
- RAG-ready knowledge base
|
|
496
|
+
- Vector embeddings for similarity search
|
|
497
|
+
- Efficient retrieval during clone interaction
|
|
498
|
+
|
|
499
|
+
## Usage
|
|
500
|
+
|
|
501
|
+
### Creating a mind
|
|
502
|
+
```sql
|
|
503
|
+
INSERT INTO minds (user_id, slug, name, personality_type)
|
|
504
|
+
VALUES (auth.uid(), 'joao-lozano', 'João Lozano', 'ENTJ');
|
|
505
|
+
```
|
|
506
|
+
|
|
507
|
+
### Storing system prompt
|
|
508
|
+
```sql
|
|
509
|
+
INSERT INTO mind_system_prompts (mind_id, version, prompt_type, content)
|
|
510
|
+
VALUES (:mind_id, 1, 'generalista', :prompt_content);
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
### Searching knowledge base
|
|
514
|
+
```sql
|
|
515
|
+
SELECT * FROM search_mind_knowledge(
|
|
516
|
+
:mind_id,
|
|
517
|
+
:query_embedding::vector(1536)
|
|
518
|
+
)
|
|
519
|
+
LIMIT 10;
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
## Migration Path
|
|
523
|
+
|
|
524
|
+
1. Run migrations in order (see supabase/migrations/)
|
|
525
|
+
2. Backfill existing minds from outputs/ directory
|
|
526
|
+
3. Update MMOS scripts to read/write database
|
|
527
|
+
4. Keep filesystem outputs as backup during transition
|
|
528
|
+
```
|
|
529
|
+
|
|
530
|
+
---
|
|
531
|
+
|
|
532
|
+
### Step 8: Output Integration Report
|
|
533
|
+
|
|
534
|
+
**Generate Squads/{pack-name}/database-integration-report.yaml:**
|
|
535
|
+
|
|
536
|
+
```yaml
|
|
537
|
+
integration_analysis:
|
|
538
|
+
expansion_pack: mmos
|
|
539
|
+
database: supabase_production
|
|
540
|
+
analysis_date: 2025-10-27
|
|
541
|
+
analyst: DB Sage
|
|
542
|
+
|
|
543
|
+
summary:
|
|
544
|
+
recommendation: "Integrate with database"
|
|
545
|
+
rationale: |
|
|
546
|
+
- Multi-user access required (MMOS will be SaaS)
|
|
547
|
+
- Version tracking needed (system prompt evolution)
|
|
548
|
+
- Vector search needed (RAG for clone responses)
|
|
549
|
+
- Filesystem alone cannot support these requirements
|
|
550
|
+
|
|
551
|
+
tables_added: 3
|
|
552
|
+
tables_modified: 0
|
|
553
|
+
migration_risk: low
|
|
554
|
+
estimated_effort: 4 hours (design + migrate + test)
|
|
555
|
+
|
|
556
|
+
schema_design:
|
|
557
|
+
file: docs/mmos/database-schema.yaml
|
|
558
|
+
erd: docs/mmos/database-erd.png (generate with *create-schema)
|
|
559
|
+
|
|
560
|
+
migration_plan:
|
|
561
|
+
file: docs/mmos/migration-plan.yaml
|
|
562
|
+
migrations_directory: supabase/migrations/
|
|
563
|
+
rollback_scripts: supabase/rollback/
|
|
564
|
+
|
|
565
|
+
next_steps:
|
|
566
|
+
- [ ] Review schema design with team
|
|
567
|
+
- [ ] Approve migration plan
|
|
568
|
+
- [ ] Run *snapshot baseline
|
|
569
|
+
- [ ] Execute migrations (*migrate)
|
|
570
|
+
- [ ] Test integration (*smoke-test)
|
|
571
|
+
- [ ] Update MMOS scripts to use database
|
|
572
|
+
- [ ] Deploy to staging
|
|
573
|
+
- [ ] Monitor for 48h
|
|
574
|
+
- [ ] Deploy to production
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
---
|
|
578
|
+
|
|
579
|
+
## Success Criteria
|
|
580
|
+
|
|
581
|
+
- [ ] Expansion pack data flows fully documented
|
|
582
|
+
- [ ] Current schema analyzed
|
|
583
|
+
- [ ] Integration schema designed (follows patterns, has RLS)
|
|
584
|
+
- [ ] KISS Gate validation passed (database is actually needed)
|
|
585
|
+
- [ ] Migration plan generated with rollback strategy
|
|
586
|
+
- [ ] Integration documentation created
|
|
587
|
+
- [ ] Report generated with clear next steps
|
|
588
|
+
|
|
589
|
+
---
|
|
590
|
+
|
|
591
|
+
## Output Files
|
|
592
|
+
|
|
593
|
+
```
|
|
594
|
+
Squads/{pack-name}/
|
|
595
|
+
├── database-integration-report.yaml ← Main output
|
|
596
|
+
├── data-flow-audit.yaml ← Step 2 findings
|
|
597
|
+
└── schema-design.yaml ← Step 4 design
|
|
598
|
+
|
|
599
|
+
docs/{pack-name}/
|
|
600
|
+
├── database-integration.md ← Usage guide
|
|
601
|
+
├── database-schema.yaml ← Schema definition
|
|
602
|
+
└── migration-plan.yaml ← Migration strategy
|
|
603
|
+
|
|
604
|
+
supabase/migrations/
|
|
605
|
+
└── 2025MMDD_NNN_{pack}_*.sql ← Ready to apply
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
---
|
|
609
|
+
|
|
610
|
+
## Examples
|
|
611
|
+
|
|
612
|
+
### CreatorOS Integration
|
|
613
|
+
|
|
614
|
+
```yaml
|
|
615
|
+
# CreatorOS generates courses → needs to store:
|
|
616
|
+
# - Course metadata (title, description, status)
|
|
617
|
+
# - Curriculum structure (modules, lessons)
|
|
618
|
+
# - Generated content (video scripts, quizzes)
|
|
619
|
+
# - User progress (if multi-user platform)
|
|
620
|
+
|
|
621
|
+
proposed_schema:
|
|
622
|
+
- courses table (id, user_id, slug, title, status)
|
|
623
|
+
- course_modules table (id, course_id, order, title)
|
|
624
|
+
- course_lessons table (id, module_id, order, title, content_type)
|
|
625
|
+
- course_content table (id, lesson_id, content, generated_at)
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
### InnerLens Integration
|
|
629
|
+
|
|
630
|
+
```yaml
|
|
631
|
+
# InnerLens does psychometric assessments → needs to store:
|
|
632
|
+
# - Assessment definitions (Big5, MBTI, etc.)
|
|
633
|
+
# - User responses (answers, timestamps)
|
|
634
|
+
# - Computed results (personality profiles)
|
|
635
|
+
|
|
636
|
+
proposed_schema:
|
|
637
|
+
- assessments table (id, name, type, questions_jsonb)
|
|
638
|
+
- user_assessments table (id, user_id, assessment_id, completed_at)
|
|
639
|
+
- assessment_responses table (id, user_assessment_id, question_id, response)
|
|
640
|
+
- assessment_results table (id, user_assessment_id, results_jsonb)
|
|
641
|
+
```
|
|
642
|
+
|
|
643
|
+
---
|
|
644
|
+
|
|
645
|
+
## Notes
|
|
646
|
+
|
|
647
|
+
- **Always run KISS Gate validation** - database might not be needed
|
|
648
|
+
- **Follow existing patterns** - don't reinvent (user_id, timestamps, RLS)
|
|
649
|
+
- **Start minimal** - can always add tables later
|
|
650
|
+
- **Think about queries** - indexes should match access patterns
|
|
651
|
+
- **Plan for scale** - vector search, partitioning if needed
|
|
652
|
+
- **RLS from day 1** - security cannot be retrofitted easily
|
|
653
|
+
- **Document everything** - future maintainers will thank you
|
|
654
|
+
|
|
655
|
+
---
|
|
656
|
+
|
|
657
|
+
## Related Tasks
|
|
658
|
+
|
|
659
|
+
- `*validate-kiss` - Run before this task (MANDATORY)
|
|
660
|
+
- `*create-schema` - Generate full schema documentation with ERD
|
|
661
|
+
- `*create-migration-plan` - Generate detailed migration strategy
|
|
662
|
+
- `*migrate` - Execute the actual migrations
|
|
663
|
+
- `*smoke-test` - Validate integration after migration
|