aiox-core 5.0.3 → 5.0.4
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/.aiox-core/core/execution/predictive-pipeline.js +1283 -0
- package/.aiox-core/core/memory/decision-memory.js +564 -0
- package/.aiox-core/data/entity-registry.yaml +1068 -1028
- package/.aiox-core/data/registry-update-log.jsonl +2 -2
- package/.aiox-core/development/templates/service-template/README.md.hbs +158 -158
- package/.aiox-core/development/templates/service-template/__tests__/index.test.ts.hbs +237 -237
- package/.aiox-core/development/templates/service-template/client.ts.hbs +403 -403
- package/.aiox-core/development/templates/service-template/errors.ts.hbs +182 -182
- package/.aiox-core/development/templates/service-template/index.ts.hbs +120 -120
- package/.aiox-core/development/templates/service-template/package.json.hbs +87 -87
- package/.aiox-core/development/templates/service-template/types.ts.hbs +145 -145
- package/.aiox-core/development/templates/squad-template/LICENSE +21 -21
- package/.aiox-core/infrastructure/templates/aiox-sync.yaml.template +182 -182
- package/.aiox-core/infrastructure/templates/coderabbit.yaml.template +279 -279
- package/.aiox-core/infrastructure/templates/github-workflows/ci.yml.template +169 -169
- package/.aiox-core/infrastructure/templates/github-workflows/pr-automation.yml.template +330 -330
- package/.aiox-core/infrastructure/templates/github-workflows/release.yml.template +196 -196
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-aiox-base.tmpl +63 -63
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +18 -18
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-node.tmpl +85 -85
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-python.tmpl +145 -145
- package/.aiox-core/install-manifest.yaml +63 -55
- package/.aiox-core/local-config.yaml.template +71 -71
- package/.aiox-core/monitor/hooks/lib/__init__.py +1 -1
- package/.aiox-core/monitor/hooks/lib/enrich.py +58 -58
- package/.aiox-core/monitor/hooks/lib/send_event.py +47 -47
- package/.aiox-core/monitor/hooks/notification.py +29 -29
- package/.aiox-core/monitor/hooks/post_tool_use.py +45 -45
- package/.aiox-core/monitor/hooks/pre_compact.py +29 -29
- package/.aiox-core/monitor/hooks/pre_tool_use.py +40 -40
- package/.aiox-core/monitor/hooks/stop.py +29 -29
- package/.aiox-core/monitor/hooks/subagent_stop.py +29 -29
- package/.aiox-core/monitor/hooks/user_prompt_submit.py +38 -38
- package/.aiox-core/product/templates/adr.hbs +125 -125
- package/.aiox-core/product/templates/dbdr.hbs +241 -241
- package/.aiox-core/product/templates/epic.hbs +212 -212
- package/.aiox-core/product/templates/pmdr.hbs +186 -186
- package/.aiox-core/product/templates/prd-v2.0.hbs +216 -216
- package/.aiox-core/product/templates/prd.hbs +201 -201
- package/.aiox-core/product/templates/story.hbs +263 -263
- package/.aiox-core/product/templates/task.hbs +170 -170
- package/.aiox-core/product/templates/tmpl-comment-on-examples.sql +158 -158
- package/.aiox-core/product/templates/tmpl-migration-script.sql +91 -91
- package/.aiox-core/product/templates/tmpl-rls-granular-policies.sql +104 -104
- package/.aiox-core/product/templates/tmpl-rls-kiss-policy.sql +10 -10
- package/.aiox-core/product/templates/tmpl-rls-roles.sql +135 -135
- package/.aiox-core/product/templates/tmpl-rls-simple.sql +77 -77
- package/.aiox-core/product/templates/tmpl-rls-tenant.sql +152 -152
- package/.aiox-core/product/templates/tmpl-rollback-script.sql +77 -77
- package/.aiox-core/product/templates/tmpl-seed-data.sql +140 -140
- package/.aiox-core/product/templates/tmpl-smoke-test.sql +16 -16
- package/.aiox-core/product/templates/tmpl-staging-copy-merge.sql +139 -139
- package/.aiox-core/product/templates/tmpl-stored-proc.sql +140 -140
- package/.aiox-core/product/templates/tmpl-trigger.sql +152 -152
- package/.aiox-core/product/templates/tmpl-view-materialized.sql +133 -133
- package/.aiox-core/product/templates/tmpl-view.sql +177 -177
- package/.aiox-core/scripts/pm.sh +0 -0
- package/.claude/hooks/enforce-architecture-first.py +196 -196
- package/.claude/hooks/mind-clone-governance.py +192 -192
- package/.claude/hooks/read-protection.py +151 -151
- package/.claude/hooks/slug-validation.py +176 -176
- package/.claude/hooks/sql-governance.py +182 -182
- package/.claude/hooks/write-path-validation.py +194 -194
- package/LICENSE +33 -33
- package/bin/aiox-graph.js +0 -0
- package/bin/aiox-minimal.js +0 -0
- package/bin/aiox.js +0 -0
- package/package.json +1 -1
- package/packages/aiox-install/bin/aiox-install.js +0 -0
- package/packages/aiox-install/bin/edmcp.js +0 -0
- package/packages/aiox-pro-cli/bin/aiox-pro.js +0 -0
- package/packages/installer/src/wizard/pro-setup.js +28 -0
- package/pro/README.md +66 -66
- package/pro/feature-registry.yaml +225 -223
- package/pro/license/license-api.js +701 -679
- package/pro/package.json +39 -39
- package/pro/pro-config.yaml +63 -63
- package/pro/squads/README.md +24 -24
- package/pro/squads/design/HEADLINE.md +3 -3
- package/pro/squads/design/README.md +109 -109
- package/pro/squads/design/agents/brad-frost.md +1097 -1097
- package/pro/squads/design/agents/dan-mall.md +857 -857
- package/pro/squads/design/agents/dave-malouf.md +2272 -2272
- package/pro/squads/design/agents/design-chief.md +114 -114
- package/pro/squads/design/agents/ds-foundations-lead.md +194 -194
- package/pro/squads/design/agents/ds-token-architect.md +361 -361
- package/pro/squads/design/agents/nano-banana-generator.md +162 -162
- package/pro/squads/design/agents/storybook-expert.md +809 -809
- package/pro/squads/design/checklists/atomic-refactor-checklist.md +299 -299
- package/pro/squads/design/checklists/component-adaptation-checklist.md +81 -81
- package/pro/squads/design/checklists/design-fidelity-checklist.md +283 -283
- package/pro/squads/design/checklists/design-handoff-checklist.md +55 -55
- package/pro/squads/design/checklists/design-team-health-checklist.md +454 -454
- package/pro/squads/design/checklists/designops-maturity-checklist.md +518 -518
- package/pro/squads/design/checklists/ds-a11y-release-gate-checklist.md +45 -45
- package/pro/squads/design/checklists/ds-accessibility-wcag-checklist.md +147 -147
- package/pro/squads/design/checklists/ds-component-quality-checklist.md +150 -150
- package/pro/squads/design/checklists/ds-critical-eye-review-checklist.md +147 -147
- package/pro/squads/design/checklists/ds-migration-readiness-checklist.md +99 -99
- package/pro/squads/design/checklists/ds-pattern-audit-checklist.md +164 -164
- package/pro/squads/design/checklists/reading-accessibility-checklist.md +275 -275
- package/pro/squads/design/checklists/token-mapping-checklist.md +107 -107
- package/pro/squads/design/config/coding-standards.md +286 -286
- package/pro/squads/design/config/source-tree.md +59 -59
- package/pro/squads/design/config/tech-stack.md +48 -48
- package/pro/squads/design/config.yaml +204 -204
- package/pro/squads/design/data/agentic-design-systems-guide.md +46 -46
- package/pro/squads/design/data/agentic-ds-principles.md +100 -100
- package/pro/squads/design/data/atomic-design-principles.md +108 -108
- package/pro/squads/design/data/atomic-refactor-rules.md +582 -582
- package/pro/squads/design/data/base-component-specs.md +972 -972
- package/pro/squads/design/data/brad-frost-analysis-extract-implicit.yaml +270 -270
- package/pro/squads/design/data/brad-frost-analysis-find-0.8.yaml +176 -176
- package/pro/squads/design/data/brad-frost-analysis-qa-report.yaml +168 -168
- package/pro/squads/design/data/brad-frost-dna.yaml +713 -713
- package/pro/squads/design/data/capability-tools.yaml +124 -124
- package/pro/squads/design/data/component-adaptation-changelog.md +318 -318
- package/pro/squads/design/data/consolidation-algorithms.md +168 -168
- package/pro/squads/design/data/critical-eye-scoring-rules.yaml +240 -240
- package/pro/squads/design/data/design-token-best-practices.md +107 -107
- package/pro/squads/design/data/design-tokens-spec.yaml +418 -418
- package/pro/squads/design/data/ds-reference-architectures.md +93 -93
- package/pro/squads/design/data/f2-qa-report.md +168 -168
- package/pro/squads/design/data/f3-derived-components-changelog.md +100 -100
- package/pro/squads/design/data/f3-qa-report.md +208 -208
- package/pro/squads/design/data/figma-base-components-raw.md +101 -101
- package/pro/squads/design/data/figma-tokens-raw.md +1548 -1548
- package/pro/squads/design/data/fluent2-design-principles.md +114 -114
- package/pro/squads/design/data/high-retention-reading-guide.md +349 -349
- package/pro/squads/design/data/integration-patterns.md +207 -207
- package/pro/squads/design/data/internal-quality-chain.yaml +48 -48
- package/pro/squads/design/data/motion-tokens-guide.md +202 -202
- package/pro/squads/design/data/roi-calculation-guide.md +142 -142
- package/pro/squads/design/data/token-mapping-reference.md +213 -213
- package/pro/squads/design/data/w3c-dtcg-spec-reference.md +149 -149
- package/pro/squads/design/data/wcag-compliance-guide.md +267 -267
- package/pro/squads/design/docs/AUDIT_REPORT.md +97 -97
- package/pro/squads/design/docs/DS-CURATION-PIPELINE-PROPOSAL.md +577 -577
- package/pro/squads/design/docs/UPGRADE_PLAN.md +618 -618
- package/pro/squads/design/docs/brad-frost-research-validation.md +372 -372
- package/pro/squads/design/docs/dave-malouf-research-validation.md +391 -391
- package/pro/squads/design/docs/tool-discovery-report.md +87 -87
- package/pro/squads/design/docs/tool-integration-plan.md +44 -44
- package/pro/squads/design/protocols/ai-first-governance.md +56 -56
- package/pro/squads/design/protocols/governance-execution-boundary.md +59 -59
- package/pro/squads/design/protocols/handoff.md +60 -60
- package/pro/squads/design/rules/.claude-rules.md +88 -88
- package/pro/squads/design/scripts/design-system/curate_colors.cjs +447 -447
- package/pro/squads/design/scripts/design-system/curate_components.cjs +217 -217
- package/pro/squads/design/scripts/design-system/curate_radius.cjs +190 -190
- package/pro/squads/design/scripts/design-system/curate_shadows.cjs +208 -208
- package/pro/squads/design/scripts/design-system/curate_spacing.cjs +243 -243
- package/pro/squads/design/scripts/design-system/curate_typography.cjs +404 -404
- package/pro/squads/design/scripts/design-system/design-system-metadata.test.js +49 -49
- package/pro/squads/design/scripts/design-system/design_manifest_lib.cjs +142 -142
- package/pro/squads/design/scripts/design-system/fetch_page_images.cjs +195 -195
- package/pro/squads/design/scripts/design-system/generate_components_metadata.cjs +114 -114
- package/pro/squads/design/scripts/design-system/generate_curation_report.cjs +258 -258
- package/pro/squads/design/scripts/design-system/generate_tokens.cjs +342 -342
- package/pro/squads/design/scripts/design-system/sync_design_manifest.cjs +27 -27
- package/pro/squads/design/scripts/design-system/test_mcp_tools.cjs +232 -232
- package/pro/squads/design/scripts/design-system/validate_components_metadata.cjs +96 -96
- package/pro/squads/design/scripts/design-system/validate_curation.cjs +226 -226
- package/pro/squads/design/scripts/design-system/validate_design_manifest_drift.cjs +72 -72
- package/pro/squads/design/scripts/design-system/validate_mcp_skeleton.cjs +38 -38
- package/pro/squads/design/scripts/design-system/validate_registry.cjs +186 -186
- package/pro/squads/design/scripts/design-system/validate_task_checklist_bindings.cjs +78 -78
- package/pro/squads/design/scripts/dissect-artifact.cjs +806 -806
- package/pro/squads/design/scripts/validate-a11y-integration.cjs +40 -40
- package/pro/squads/design/scripts/validate-design-squad.py +411 -411
- package/pro/squads/design/squad.yaml +714 -714
- package/pro/squads/design/tasks/a11y-audit.md +340 -340
- package/pro/squads/design/tasks/aria-audit.md +525 -525
- package/pro/squads/design/tasks/atomic-refactor-execute.md +391 -391
- package/pro/squads/design/tasks/atomic-refactor-plan.md +262 -262
- package/pro/squads/design/tasks/audit-reading-experience.md +350 -350
- package/pro/squads/design/tasks/audit-tailwind-config.md +101 -101
- package/pro/squads/design/tasks/bootstrap-shadcn-library.md +96 -96
- package/pro/squads/design/tasks/bundle-audit.md +245 -245
- package/pro/squads/design/tasks/contrast-matrix.md +373 -373
- package/pro/squads/design/tasks/create-doc.md +135 -135
- package/pro/squads/design/tasks/dead-code-detection.md +329 -329
- package/pro/squads/design/tasks/design-compare.md +414 -414
- package/pro/squads/design/tasks/design-process-optimization.md +407 -407
- package/pro/squads/design/tasks/design-review-orchestration.md +99 -99
- package/pro/squads/design/tasks/design-team-scaling.md +407 -407
- package/pro/squads/design/tasks/design-tooling-audit.md +404 -404
- package/pro/squads/design/tasks/design-triage.md +89 -89
- package/pro/squads/design/tasks/designops-maturity-assessment.md +364 -364
- package/pro/squads/design/tasks/designops-metrics-setup.md +465 -465
- package/pro/squads/design/tasks/ds-agentic-audit.md +100 -100
- package/pro/squads/design/tasks/ds-agentic-setup.md +103 -103
- package/pro/squads/design/tasks/ds-audit-codebase.md +273 -273
- package/pro/squads/design/tasks/ds-build-component.md +349 -349
- package/pro/squads/design/tasks/ds-build-mcp-server.md +84 -84
- package/pro/squads/design/tasks/ds-calculate-roi.md +282 -282
- package/pro/squads/design/tasks/ds-compose-molecule.md +106 -106
- package/pro/squads/design/tasks/ds-consolidate-patterns.md +253 -253
- package/pro/squads/design/tasks/ds-context-contract.md +194 -194
- package/pro/squads/design/tasks/ds-critical-eye-compare.md +130 -130
- package/pro/squads/design/tasks/ds-critical-eye-decide.md +139 -139
- package/pro/squads/design/tasks/ds-critical-eye-inventory.md +111 -111
- package/pro/squads/design/tasks/ds-critical-eye-report.md +101 -101
- package/pro/squads/design/tasks/ds-critical-eye-score.md +109 -109
- package/pro/squads/design/tasks/ds-designops.md +99 -99
- package/pro/squads/design/tasks/ds-extend-pattern.md +91 -91
- package/pro/squads/design/tasks/ds-extract-tokens.md +312 -312
- package/pro/squads/design/tasks/ds-figma-pipeline.md +95 -95
- package/pro/squads/design/tasks/ds-fluent-audit.md +105 -105
- package/pro/squads/design/tasks/ds-fluent-build.md +110 -110
- package/pro/squads/design/tasks/ds-generate-ai-metadata.md +81 -81
- package/pro/squads/design/tasks/ds-generate-cursor-rules.md +74 -74
- package/pro/squads/design/tasks/ds-generate-documentation.md +101 -101
- package/pro/squads/design/tasks/ds-generate-migration-strategy.md +331 -331
- package/pro/squads/design/tasks/ds-generate-shock-report.md +323 -323
- package/pro/squads/design/tasks/ds-govern-a11y-compliance.md +93 -93
- package/pro/squads/design/tasks/ds-governance.md +187 -187
- package/pro/squads/design/tasks/ds-health-metrics.md +278 -278
- package/pro/squads/design/tasks/ds-integrate-squad.md +130 -130
- package/pro/squads/design/tasks/ds-integrate-workspace.md +100 -100
- package/pro/squads/design/tasks/ds-legacy-modernization.md +302 -302
- package/pro/squads/design/tasks/ds-mcp-status.md +65 -65
- package/pro/squads/design/tasks/ds-motion-audit.md +118 -118
- package/pro/squads/design/tasks/ds-multi-framework.md +96 -96
- package/pro/squads/design/tasks/ds-parallelization-gate.md +246 -246
- package/pro/squads/design/tasks/ds-query.md +90 -90
- package/pro/squads/design/tasks/ds-rebuild-artifact.md +369 -369
- package/pro/squads/design/tasks/ds-reverse-engineer.md +194 -194
- package/pro/squads/design/tasks/ds-scan-artifact.md +131 -131
- package/pro/squads/design/tasks/ds-setup-design-system.md +297 -297
- package/pro/squads/design/tasks/ds-sync-registry.md +287 -287
- package/pro/squads/design/tasks/ds-theme-multi-brand.md +90 -90
- package/pro/squads/design/tasks/ds-token-modes.md +108 -108
- package/pro/squads/design/tasks/ds-token-w3c-extract.md +105 -105
- package/pro/squads/design/tasks/ds-validate-ai-readiness.md +69 -69
- package/pro/squads/design/tasks/ds-visual-regression.md +130 -130
- package/pro/squads/design/tasks/execute-checklist.md +141 -141
- package/pro/squads/design/tasks/export-design-tokens-dtcg.md +97 -97
- package/pro/squads/design/tasks/f1-apply-foundations.md +154 -154
- package/pro/squads/design/tasks/f1-ingest-figma-tokens.md +130 -130
- package/pro/squads/design/tasks/f1-map-tokens-to-shadcn.md +145 -145
- package/pro/squads/design/tasks/f1-qa-foundations.md +95 -95
- package/pro/squads/design/tasks/f2-adapt-shadcn-components.md +155 -155
- package/pro/squads/design/tasks/f2-ingest-base-components.md +148 -148
- package/pro/squads/design/tasks/f2-qa-base-components.md +98 -98
- package/pro/squads/design/tasks/f3-derive-components.md +145 -145
- package/pro/squads/design/tasks/f3-qa-derived-components.md +101 -101
- package/pro/squads/design/tasks/focus-order-audit.md +450 -450
- package/pro/squads/design/tasks/sb-brownfield-migrate.md +367 -367
- package/pro/squads/design/tasks/sb-brownfield-scan.md +318 -318
- package/pro/squads/design/tasks/sb-configure.md +230 -230
- package/pro/squads/design/tasks/sb-expand-shadcn.md +213 -213
- package/pro/squads/design/tasks/sb-generate-all-stories.md +288 -288
- package/pro/squads/design/tasks/sb-install.md +152 -152
- package/pro/squads/design/tasks/sb-sync-workspace.md +239 -239
- package/pro/squads/design/tasks/sb-verify.md +203 -203
- package/pro/squads/design/tasks/tailwind-upgrade.md +117 -117
- package/pro/squads/design/tasks/token-usage-analytics.md +262 -262
- package/pro/squads/design/tasks/ux-rewrite-sixth-grade.md +82 -82
- package/pro/squads/design/tasks/validate-design-fidelity.md +222 -222
- package/pro/squads/design/templates/agent-template.yaml +46 -46
- package/pro/squads/design/templates/clone-mind-template.md +352 -352
- package/pro/squads/design/templates/component-prompt-injection-tmpl.md +236 -236
- package/pro/squads/design/templates/component-visual-spec-tmpl.md +378 -378
- package/pro/squads/design/templates/critical-eye-cycle-report-tmpl.md +165 -165
- package/pro/squads/design/templates/design-fidelity-report-tmpl.md +155 -155
- package/pro/squads/design/templates/ds-ai-component-metadata-schema-tmpl.json +138 -138
- package/pro/squads/design/templates/ds-artifact-analysis.md +70 -70
- package/pro/squads/design/templates/ds-health-report-tmpl.md +236 -236
- package/pro/squads/design/templates/ds-migration-strategy-tmpl.md +524 -524
- package/pro/squads/design/templates/ds-state-persistence-tmpl.yaml +194 -194
- package/pro/squads/design/templates/ds-tokens-schema-tmpl.yaml +139 -139
- package/pro/squads/design/templates/migration-strategy-tmpl.md +524 -524
- package/pro/squads/design/templates/reading-design-tokens.css +26 -26
- package/pro/squads/design/templates/state-persistence-tmpl.yaml +219 -219
- package/pro/squads/design/templates/tokens-schema-tmpl.yaml +305 -305
- package/pro/squads/design/workflows/agentic-readiness.yaml +83 -83
- package/pro/squads/design/workflows/audit-only.yaml +198 -198
- package/pro/squads/design/workflows/brownfield-complete.yaml +257 -257
- package/pro/squads/design/workflows/critical-eye.yaml +184 -184
- package/pro/squads/design/workflows/dtcg-tokens-governance.yaml +64 -64
- package/pro/squads/design/workflows/foundations-pipeline.yaml +192 -192
- package/pro/squads/design/workflows/greenfield-new.yaml +192 -192
- package/pro/squads/design/workflows/motion-quality.yaml +65 -65
- package/pro/squads/design/workflows/self-healing-workflow.yaml +237 -237
- package/pro/squads/design/workflows/storybook-brownfield-migration.yaml +400 -400
- package/pro/squads/design/workflows/storybook-full-setup.yaml +280 -280
- package/pro/squads/mmos-squad/minds/alex_hormozi/artifacts/ARQUITETURA_COGNITIVA_DE_ALEX_HORMOZI_EXTRA/303/207/303/203O_COMPLETA.md +215 -0
- package/pro/squads/mmos-squad/minds/alex_hormozi/artifacts/A_Rotina_de_Alta_Performance_de_Alex_Hormozi_Arquitetura,_Motiva/303/247/303/265es_e_Replica/303/247/303/243o.md +309 -0
- package/pro/squads/mmos-squad/minds/alex_hormozi/artifacts/O_sistema_completo_de_cria/303/247/303/243o_de_conte/303/272do_de_Alex_Hormozi.md +416 -0
- package/pro/squads/mmos-squad/minds/alex_hormozi/artifacts/Processo_Cria/303/247/303/243o_Conte/303/272do_Hormozi.md +0 -0
- package/pro/squads/mmos-squad/minds/brad_frost/.backup/2026-01-13/artifacts/DECIS/303/225ES_ESTRAT/303/211GICAS_DE_DESIGN_SYSTEMS_(2022_2025).md +1038 -0
- package/pro/squads/mmos-squad/minds/brad_frost/.backup/2026-01-13/artifacts/FRAMEWORK_COMPLETO_DE_IMPLEMENTA/303/207/303/203O_ATOMIC_DESIGN.md +797 -0
- package/pro/squads/mmos-squad/minds/brad_frost/.backup/2026-01-13/artifacts/O_Cemit/303/251rio_de_Design_Systems.md +447 -0
- package/pro/squads/mmos-squad/minds/brad_frost/.backup/2026-01-13/artifacts/PRINC/303/215PIOS_DE_RACIOC/303/215NIO.md +190 -0
- package/pro/squads/mmos-squad/minds/brad_frost/artifacts/DECIS/303/225ES_ESTRAT/303/211GICAS_DE_DESIGN_SYSTEMS_(2022_2025).md +1038 -0
- package/pro/squads/mmos-squad/minds/brad_frost/artifacts/FRAMEWORK_COMPLETO_DE_IMPLEMENTA/303/207/303/203O_ATOMIC_DESIGN.md +797 -0
- package/pro/squads/mmos-squad/minds/brad_frost/artifacts/O_Cemit/303/251rio_de_Design_Systems.md +447 -0
- package/pro/squads/mmos-squad/minds/brad_frost/artifacts/PRINC/303/215PIOS_DE_RACIOC/303/215NIO.md +190 -0
- package/pro/squads/mmos-squad/minds/elon_musk/artifacts/AN/303/201LISE_PSICOM/303/211TRICA_PROFUNDA_ELON_MUSK.md +291 -0
- package/pro/squads/mmos-squad/minds/elon_musk/artifacts/ASSINATURA_LINGU/303/215STICA_ELON_MUSK.md +485 -0
- package/pro/squads/mmos-squad/minds/elon_musk/artifacts/A_Arquitetura_Mental_de_Elon_Musk_Uma_An/303/241lise_Sistem/303/241tica_dos_Frameworks_de_Pensamento.md +907 -0
- package/pro/squads/mmos-squad/minds/elon_musk/artifacts/Dossi/303/252_Estrat/303/251gico_A_Arquitetura_Psicol/303/263gica_de_Elon_Musk.md +252 -0
- package/pro/squads/mmos-squad/minds/elon_musk/artifacts/Os_Padr/303/265es_de_Leitura_de_Elon_Musk_e_Sua_Influ/303/252ncia_Sistem/303/241tica.md +287 -0
- package/pro/squads/mmos-squad/minds/elon_musk/artifacts/Uma_an/303/241lise_psicol/303/263gica_abrangente.md +187 -0
- package/pro/squads/mmos-squad/minds/eugene_schwartz/artifacts/AN/303/201LISE_PSICOM/303/211TRICA_PROFUNDA_EUGENE_M._SCHWARTZ.md +790 -0
- package/pro/squads/mmos-squad/minds/eugene_schwartz/artifacts/An/303/241lise_Completa_Eugene_Schwartz_Arquitetura_Cognitiva_DEEP.md +210 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/5H_EXTRA/303/207/303/203O_COGNITIVA_COMPLETA_PEDRO_VAL/303/211RIO_LOPEZ.md +226 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/AN/303/201LISE_COMPARATIVA_REVISADA_PEDRO_VAL/303/211RIO_LOPEZ.md +246 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/AN/303/201LISE_LINGU/303/215STICA_CARIOCA_PEDRO_VAL/303/211RIO_LOPEZ.md +274 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/AN/303/201LISE_PSICOM/303/211TRICA_DEFINITIVA_PEDRO_VAL/303/211RIO_LOPEZ.md +821 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/AN/303/201LISE_PSICOM/303/211TRICA_PROFUNDA_PEDRO_VAL/303/211RIO.md +1844 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/C/303/201LCULO_DE_RARIDADE_ESTAT/303/215STICA_PEDRO_VAL/303/211RIO_LOPEZ.md +154 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/EXTRA/303/207/303/203O_PEDRO_VAL/303/211RIO.md +237 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/MAPEAMENTO_LINGU/303/215STICO_PROFUNDO.md +161 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/META_AXIOMAS_DE_PEDRO_VAL/303/211RIO.md +256 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/SISTEMA_IMUNOL/303/223GICO_COGNITIVO_PEDRO_VAL/303/211RIO_LOPEZ.md +586 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/SISTEMA_IMUNOL/303/223GICO_COGNITIVO_V2_/342/200/224_CLONE_IA.md +452 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/TABELA_COMPARATIVA_AN/303/201LISE_COMPLETA_DOS_CLONES_IA.md +102 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/WHATSAPP_PADR/303/225ES_LINGU/303/215STICOS_PEDRO_VAL/303/211RIO_LOPEZ.md +286 -0
- package/pro/squads/mmos-squad/minds/pedro_valerio/sources/artifacts_v1.6/heur/303/255sticas_de_decis/303/243o_e_algoritmos_mentais_/303/272nicos.md +268 -0
- package/pro/squads/mmos-squad/minds/ray_kurzweil/sources/books/PROTOCOLO_COMPLETO_DE_INTERROGA/303/207/303/203O_-_NAVAL_RAVIKANT.md +3624 -0
- package/pro/squads/mmos-squad/minds/steve_jobs/artifacts/FRAMEWORK_COMPLETO_DE_IMPLEMENTA/303/207/303/203O_JOBS.md +488 -0
- package/pro/squads/mmos-squad/minds/steve_jobs/artifacts/Framework_Cabe/303/247a_Steve.md +257 -0
- package/pro/squads/mmos-squad/minds/steve_jobs/artifacts/Relat/303/263rio_Abrangente_sobre_Steve_Jobs_para_Cria/303/247/303/243o_de_Clone_de_IA.md +370 -0
- package/pro/squads/mmos-squad/minds/steve_jobs/artifacts/Steve_Jobs_An/303/241lise_Psicol/303/263gica_Profunda_e_Valida/303/247/303/243o_Comportamental.md +65 -0
- package/pro/squads/squad-creator-pro/HEADLINE.md +3 -3
- package/pro/squads/squad-creator-pro/agents/oalanicolas.md +438 -438
- package/pro/squads/squad-creator-pro/agents/squad-chief.md +1651 -1651
- package/pro/squads/squad-creator-pro/agents/thiago_finch.md +976 -976
- package/pro/squads/squad-creator-pro/assessments/axioma-assessment-wf-create-squad.yaml +325 -325
- package/pro/squads/squad-creator-pro/checklists/create-agent-checklist.md +184 -184
- package/pro/squads/squad-creator-pro/checklists/create-squad-checklist.md +219 -219
- package/pro/squads/squad-creator-pro/checklists/create-workflow-checklist.md +224 -224
- package/pro/squads/squad-creator-pro/checklists/mental-model-integration-checklist.md +95 -95
- package/pro/squads/squad-creator-pro/checklists/squad-overview-checklist.md +393 -393
- package/pro/squads/squad-creator-pro/config/model-routing.yaml +693 -693
- package/pro/squads/squad-creator-pro/config/scoring-rubric.yaml +199 -199
- package/pro/squads/squad-creator-pro/config.yaml +35 -35
- package/pro/squads/squad-creator-pro/data/internal-infrastructure-library.yaml +99 -99
- package/pro/squads/squad-creator-pro/data/mental-model-task-matrix.yaml +692 -692
- package/pro/squads/squad-creator-pro/docs/ADR-001-model-tier-qualification.md +344 -344
- package/pro/squads/squad-creator-pro/docs/AGENT-COLLABORATION.md +609 -609
- package/pro/squads/squad-creator-pro/docs/MIGRATION-PLAN-AGENT-CONFORMITY.md +861 -861
- package/pro/squads/squad-creator-pro/docs/MODEL-TIER-QUALIFICATION.md +337 -337
- package/pro/squads/squad-creator-pro/docs/optimize-v4-proposal.md +354 -354
- package/pro/squads/squad-creator-pro/docs/task-optimization-framework.md +229 -229
- package/pro/squads/squad-creator-pro/minds/oalanicolas/heuristics/AN_KE_010.md +240 -240
- package/pro/squads/squad-creator-pro/protocols/ai-first-governance.md +63 -63
- package/pro/squads/squad-creator-pro/scripts/assess-sources.sh +443 -443
- package/pro/squads/squad-creator-pro/scripts/clone-review.sh +394 -394
- package/pro/squads/squad-creator-pro/scripts/create-agent-preflight.py +243 -243
- package/pro/squads/squad-creator-pro/scripts/cross-provider/compare-results.js +281 -281
- package/pro/squads/squad-creator-pro/scripts/cross-provider/cross-provider-runner.js +462 -462
- package/pro/squads/squad-creator-pro/scripts/fidelity-score.sh +519 -519
- package/pro/squads/squad-creator-pro/scripts/generate-squad-guide.js +558 -558
- package/pro/squads/squad-creator-pro/scripts/lib/config-loader.js +151 -151
- package/pro/squads/squad-creator-pro/scripts/model-tier-validator.cjs +369 -369
- package/pro/squads/squad-creator-pro/scripts/model-usage-logger.cjs +245 -245
- package/pro/squads/squad-creator-pro/scripts/modernization-score.sh +308 -308
- package/pro/squads/squad-creator-pro/scripts/scaffold-squad.cjs +281 -281
- package/pro/squads/squad-creator-pro/scripts/security_scanner.py +378 -378
- package/pro/squads/squad-creator-pro/scripts/squad-context-loader.cjs +205 -205
- package/pro/squads/squad-creator-pro/scripts/squad-state-manager.cjs +451 -451
- package/pro/squads/squad-creator-pro/scripts/squad-workflow-runner.cjs +471 -471
- package/pro/squads/squad-creator-pro/scripts/squad_utils.py +261 -261
- package/pro/squads/squad-creator-pro/scripts/tests/run_bash_tests.sh +29 -29
- package/pro/squads/squad-creator-pro/scripts/tests/test_assess_sources.sh +216 -216
- package/pro/squads/squad-creator-pro/scripts/tests/test_clone_review.sh +239 -239
- package/pro/squads/squad-creator-pro/scripts/tests/test_coherence_validator.py +212 -212
- package/pro/squads/squad-creator-pro/scripts/tests/test_fidelity_score.sh +298 -298
- package/pro/squads/squad-creator-pro/scripts/tests/test_modernization_score.sh +211 -211
- package/pro/squads/squad-creator-pro/scripts/tests/test_security_scanner.py +354 -354
- package/pro/squads/squad-creator-pro/scripts/tests/test_validate_clone.sh +252 -252
- package/pro/squads/squad-creator-pro/squad.yaml +36 -36
- package/pro/squads/squad-creator-pro/tasks/an-compare-outputs.md +354 -354
- package/pro/squads/squad-creator-pro/tasks/create-squad.md +933 -933
- package/pro/squads/squad-creator-pro/tasks/detect-squad-context.md +81 -81
- package/pro/squads/squad-creator-pro/tasks/lookup-model.md +78 -78
- package/pro/squads/squad-creator-pro/tasks/next-squad.md +487 -487
- package/pro/squads/squad-creator-pro/tasks/optimize-workflow.md +851 -851
- package/pro/squads/squad-creator-pro/tasks/parallel-discovery.md +58 -58
- package/pro/squads/squad-creator-pro/tasks/pv-axioma-assessment-wf-clone-mind.yaml +256 -256
- package/pro/squads/squad-creator-pro/tasks/qualify-task.md +265 -265
- package/pro/squads/squad-creator-pro/tasks/reexecute-squad-phase.md +64 -64
- package/pro/squads/squad-creator-pro/tasks/smoke-test-model-routing.md +167 -167
- package/pro/squads/squad-creator-pro/tasks/squad-overview.md +683 -683
- package/pro/squads/squad-creator-pro/tasks/validate-final-artifacts.md +80 -80
- package/pro/squads/squad-creator-pro/templates/orchestrator-tmpl.md +74 -74
- package/pro/squads/squad-creator-pro/test-cases/BATCH-PROGRESS.md +268 -268
- package/pro/squads/squad-creator-pro/test-cases/QUALIFICATION-DASHBOARD.yaml +13 -13
- package/pro/squads/squad-creator-pro/test-cases/_template.yaml +147 -147
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/ASSESSMENT-SUMMARY.md +275 -275
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/ASSESSMENT_SUMMARY.md +140 -140
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/CHECKPOINT_MATRIX.md +202 -202
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/EXECUTION-REPORT.md +413 -413
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/EXECUTION_NOTES.md +358 -358
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/README-v2.2.2.md +299 -299
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/README.md +320 -320
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/TEST-REPORT-v2.1.md +351 -351
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/VERIFICATION-CHECKLIST.txt +247 -247
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/formal-qualification-report.yaml +389 -389
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/haiku-output.yaml +366 -366
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/haiku-v2.1-output.yaml +452 -452
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/haiku-v2.2.1-output.yaml +281 -281
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/haiku-v2.2.2-output.yaml +332 -332
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/opus-baseline.yaml +517 -517
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/qualification-report.yaml +213 -213
- package/pro/squads/squad-creator-pro/test-cases/an-assess-sources/test-case.yaml +69 -69
- package/pro/squads/squad-creator-pro/test-cases/an-clone-review/haiku-round-1.yaml +213 -213
- package/pro/squads/squad-creator-pro/test-cases/an-clone-review/opus-baseline.yaml +566 -566
- package/pro/squads/squad-creator-pro/test-cases/an-clone-review/qualification-report.yaml +82 -82
- package/pro/squads/squad-creator-pro/test-cases/an-design-clone/test-case.yaml +102 -102
- package/pro/squads/squad-creator-pro/test-cases/an-extract-dna/test-case.yaml +105 -105
- package/pro/squads/squad-creator-pro/test-cases/an-fidelity-score/haiku-round-1.yaml +262 -262
- package/pro/squads/squad-creator-pro/test-cases/an-fidelity-score/opus-baseline.yaml +266 -266
- package/pro/squads/squad-creator-pro/test-cases/an-fidelity-score/qualification-report.yaml +94 -94
- package/pro/squads/squad-creator-pro/test-cases/an-validate-clone/haiku-round-1.yaml +282 -282
- package/pro/squads/squad-creator-pro/test-cases/an-validate-clone/opus-baseline.yaml +470 -470
- package/pro/squads/squad-creator-pro/test-cases/an-validate-clone/qualification-report.yaml +106 -106
- package/pro/squads/squad-creator-pro/test-cases/collect-sources/test-case.yaml +105 -105
- package/pro/squads/squad-creator-pro/test-cases/create-task/test-case.yaml +104 -104
- package/pro/squads/squad-creator-pro/test-cases/cross-provider/DASHBOARD.yaml +11 -11
- package/pro/squads/squad-creator-pro/test-cases/pv-audit/test-case.yaml +106 -106
- package/pro/squads/squad-creator-pro/test-cases/pv-axioma-assessment/haiku-output.yaml +209 -209
- package/pro/squads/squad-creator-pro/test-cases/pv-axioma-assessment/opus-baseline.yaml +96 -96
- package/pro/squads/squad-creator-pro/test-cases/pv-axioma-assessment/sonnet-output.yaml +30 -30
- package/pro/squads/squad-creator-pro/test-cases/pv-axioma-assessment/test-case.yaml +129 -129
- package/pro/squads/squad-creator-pro/test-cases/pv-modernization-score/comparison-round-1.yaml +242 -242
- package/pro/squads/squad-creator-pro/test-cases/pv-modernization-score/haiku-round-1.yaml +393 -393
- package/pro/squads/squad-creator-pro/test-cases/pv-modernization-score/opus-baseline.yaml +488 -488
- package/pro/squads/squad-creator-pro/test-cases/pv-modernization-score/qualification-report.yaml +74 -74
- package/pro/squads/squad-creator-pro/test-cases/qa-after-creation/haiku-round-1.yaml +292 -292
- package/pro/squads/squad-creator-pro/test-cases/qa-after-creation/opus-baseline.yaml +603 -603
- package/pro/squads/squad-creator-pro/test-cases/qa-after-creation/qualification-report.yaml +97 -97
- package/pro/squads/squad-creator-pro/test-cases/smoke-test-model-routing/test-case.yaml +100 -100
- package/pro/squads/squad-creator-pro/test-cases/upgrade-squad/test-case.yaml +106 -106
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/comparison-round-1.yaml +223 -223
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/haiku-round-1-MINE.yaml +36 -36
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/haiku-round-1.yaml +193 -193
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/haiku-round-2.yaml +303 -303
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/haiku-round-3-v4-task.yaml +149 -149
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/opus-baseline.yaml +529 -529
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/opus-round-3-v4-task.yaml +132 -132
- package/pro/squads/squad-creator-pro/test-cases/validate-squad/qualification-report.yaml +104 -104
- package/pro/squads/squad-creator-pro/test-cases/wf-clone-mind/haiku-output-v2-calibrated.yaml +200 -200
- package/pro/squads/squad-creator-pro/test-cases/wf-clone-mind/haiku-output.yaml +183 -183
- package/pro/squads/squad-creator-pro/test-cases/wf-clone-mind/opus-baseline.yaml +112 -112
- package/pro/squads/squad-creator-pro/workflows/create-squad.yaml +348 -348
- package/pro/squads/squad-creator-pro/workflows/modules/module-discovery.yaml +16 -16
- package/pro/squads/squad-creator-pro/workflows/modules/module-integration.yaml +16 -16
- package/pro/squads/squad-creator-pro/workflows/modules/module-quality-gates.yaml +15 -15
- package/pro/squads/squad-creator-pro/workflows/wf-brownfield-upgrade-squad.yaml +46 -46
- package/pro/squads/squad-creator-pro/workflows/wf-context-aware-create-squad.yaml +47 -47
- package/pro/squads/squad-creator-pro/workflows/wf-create-squad.yaml +1619 -1619
- package/pro/squads/squad-creator-pro/workflows/wf-cross-provider-qualification.yaml +711 -711
- package/pro/squads/squad-creator-pro/workflows/wf-model-tier-qualification.yaml +800 -800
- package/pro/squads/squad-creator-pro/workflows/wf-optimize-squad.yaml +684 -684
- package/scripts/check-markdown-links.py +352 -352
- package/scripts/dashboard-parallel-dev.sh +0 -0
- package/scripts/dashboard-parallel-phase3.sh +0 -0
- package/scripts/dashboard-parallel-phase4.sh +0 -0
- package/scripts/install-monitor-hooks.sh +0 -0
- package/.claude/hooks/code-intel-pretool.cjs +0 -107
- package/docs/guides/aios-workflows/README.md +0 -247
- package/docs/guides/aios-workflows/bob-orchestrator-workflow.md +0 -1536
- package/scripts/glue/README.md +0 -355
- package/scripts/glue/compose-agent-prompt.cjs +0 -362
|
@@ -1,367 +1,367 @@
|
|
|
1
|
-
# Migrate Brownfield Components
|
|
2
|
-
|
|
3
|
-
**Task ID:** `sb-brownfield-migrate`
|
|
4
|
-
**Pattern:** HO-TP-001 (Task Anatomy Standard)
|
|
5
|
-
**Version:** 1.0.0
|
|
6
|
-
**Last Updated:** 2026-02-25
|
|
7
|
-
|
|
8
|
-
## Task Anatomy
|
|
9
|
-
|
|
10
|
-
| Field | Value |
|
|
11
|
-
|-------|-------|
|
|
12
|
-
| **task_name** | Migrate Brownfield Components |
|
|
13
|
-
| **status** | `pending` |
|
|
14
|
-
| **responsible_executor** | @storybook-expert |
|
|
15
|
-
| **execution_type** | `Agent` |
|
|
16
|
-
| **input** | Component inventory, migration plan, dependency graph, target project |
|
|
17
|
-
| **output** | Story files for all brownfield components, adaptation report |
|
|
18
|
-
| **action_items** | 8 steps |
|
|
19
|
-
| **acceptance_criteria** | 6 criteria |
|
|
20
|
-
|
|
21
|
-
## Overview
|
|
22
|
-
|
|
23
|
-
Execute the migration plan produced by `sb-brownfield-scan`. For each component in dependency order: analyze its API, adapt it for Storybook isolation (mock providers, stub data, handle side effects), and generate a `.stories.tsx` file. Handles components ranging from simple atoms to complex organisms with context dependencies.
|
|
24
|
-
|
|
25
|
-
Supports two migration modes:
|
|
26
|
-
- **Same-project:** Components stay where they are, stories are added co-located
|
|
27
|
-
- **Cross-project:** Components are copied/adapted from source to target project
|
|
28
|
-
|
|
29
|
-
## Input
|
|
30
|
-
|
|
31
|
-
- **component_inventory** (JSON)
|
|
32
|
-
- Description: Full inventory from sb-brownfield-scan
|
|
33
|
-
- Required: Yes
|
|
34
|
-
- Source: `outputs/design-system/{project}/brownfield/component-inventory.json`
|
|
35
|
-
- **migration_plan** (Markdown)
|
|
36
|
-
- Description: Phased migration plan
|
|
37
|
-
- Required: Yes
|
|
38
|
-
- Source: `outputs/design-system/{project}/brownfield/migration-plan.md`
|
|
39
|
-
- **dependency_graph** (JSON)
|
|
40
|
-
- Description: Component dependency tree
|
|
41
|
-
- Required: Yes
|
|
42
|
-
- Source: `outputs/design-system/{project}/brownfield/dependency-graph.json`
|
|
43
|
-
- **migration_mode** (enum)
|
|
44
|
-
- Description: How to handle the migration
|
|
45
|
-
- Required: No
|
|
46
|
-
- Default: `same-project`
|
|
47
|
-
- Options:
|
|
48
|
-
- `same-project` — Add stories co-located with existing components
|
|
49
|
-
- `cross-project` — Copy components to target project, then add stories
|
|
50
|
-
- **target_path** (string)
|
|
51
|
-
- Description: Where to write stories (and components in cross-project mode)
|
|
52
|
-
- Required: Only for cross-project mode
|
|
53
|
-
- Default: Same directory as component
|
|
54
|
-
- **phase_filter** (string)
|
|
55
|
-
- Description: Which phases to execute (e.g., "1", "1-3", "all")
|
|
56
|
-
- Required: No
|
|
57
|
-
- Default: `all`
|
|
58
|
-
- **category_filter** (string)
|
|
59
|
-
- Description: Which category to migrate (e.g., "ui", "agents", "all")
|
|
60
|
-
- Required: No
|
|
61
|
-
- Default: `all`
|
|
62
|
-
- **component_filter** (string)
|
|
63
|
-
- Description: Specific component name to migrate
|
|
64
|
-
- Required: No
|
|
65
|
-
|
|
66
|
-
## Output
|
|
67
|
-
|
|
68
|
-
- **story_files** (list)
|
|
69
|
-
- Description: Generated `.stories.tsx` files
|
|
70
|
-
- Destination: Co-located with components or in target_path
|
|
71
|
-
- **adaptation_report** (Markdown)
|
|
72
|
-
- Description: Report of adaptations made per component
|
|
73
|
-
- Destination: `outputs/design-system/{project}/brownfield/adaptation-report.md`
|
|
74
|
-
- **mock_files** (list)
|
|
75
|
-
- Description: Mock/stub files created for context dependencies
|
|
76
|
-
- Destination: `.storybook/mocks/` or story decorators
|
|
77
|
-
|
|
78
|
-
## Action Items
|
|
79
|
-
|
|
80
|
-
### Step 1: Load Migration Context
|
|
81
|
-
|
|
82
|
-
- [ ] Read `component_inventory.json`
|
|
83
|
-
- [ ] Read `migration_plan.md`
|
|
84
|
-
- [ ] Read `dependency_graph.json`
|
|
85
|
-
- [ ] Apply filters (phase, category, component) to determine scope
|
|
86
|
-
- [ ] Report: "Migrating {N} components in {phases} phases"
|
|
87
|
-
|
|
88
|
-
### Step 2: Prepare Storybook Environment
|
|
89
|
-
|
|
90
|
-
If target project doesn't have Storybook yet:
|
|
91
|
-
- [ ] Run `sb-install` task (or delegate to workflow)
|
|
92
|
-
- [ ] Run `sb-configure` task
|
|
93
|
-
|
|
94
|
-
If Storybook exists:
|
|
95
|
-
- [ ] Verify `.storybook/main.ts` stories glob covers component locations
|
|
96
|
-
- [ ] Update glob if needed to include brownfield component paths
|
|
97
|
-
|
|
98
|
-
### Step 3: Process Phase by Phase
|
|
99
|
-
|
|
100
|
-
For each phase in the migration plan (respecting dependency order):
|
|
101
|
-
|
|
102
|
-
```
|
|
103
|
-
Phase 1 (atoms) → Phase 2 (molecules) → Phase 3 (organisms) → ...
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
Within each phase, process components in order of "most depended-on first" to maximize unblocking.
|
|
107
|
-
|
|
108
|
-
### Step 4: Analyze Each Component
|
|
109
|
-
|
|
110
|
-
For each component, determine story strategy based on complexity:
|
|
111
|
-
|
|
112
|
-
**4a. Simple Components (atoms, complexity 1-2)**
|
|
113
|
-
Strategy: Args-driven stories, minimal setup
|
|
114
|
-
```
|
|
115
|
-
Read component → extract props → generate meta + Default + Variants + Gallery
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
**4b. Composite Components (molecules, complexity 3-5)**
|
|
119
|
-
Strategy: Render function stories with composition
|
|
120
|
-
```
|
|
121
|
-
Read component → identify sub-components → compose render → add interaction stories
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
**4c. Complex Components (organisms, complexity 6-8)**
|
|
125
|
-
Strategy: Render function + decorators for context
|
|
126
|
-
```
|
|
127
|
-
Read component → identify context deps → create mock providers → compose stories
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
**4d. Context-Dependent Components (complexity 8+)**
|
|
131
|
-
Strategy: Full isolation with mocks and stubs
|
|
132
|
-
|
|
133
|
-
Identify and handle:
|
|
134
|
-
- **Router dependency:** Wrap with `MemoryRouter` or mock `useRouter`
|
|
135
|
-
- **Auth context:** Provide mock user object
|
|
136
|
-
- **API calls:** Mock with `msw` handlers or `fn()` stubs
|
|
137
|
-
- **Global state:** Provide mock store/context
|
|
138
|
-
- **Feature flags:** Provide default flag values
|
|
139
|
-
|
|
140
|
-
Create decorator or wrapper:
|
|
141
|
-
```typescript
|
|
142
|
-
// .storybook/decorators/with-providers.tsx
|
|
143
|
-
export const withProviders = (Story) => (
|
|
144
|
-
<MockAuthProvider user={mockUser}>
|
|
145
|
-
<MockRouterProvider>
|
|
146
|
-
<Story />
|
|
147
|
-
</MockRouterProvider>
|
|
148
|
-
</MockAuthProvider>
|
|
149
|
-
);
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
### Step 5: Generate Story Files
|
|
153
|
-
|
|
154
|
-
For each component, generate story following CSF3 conventions:
|
|
155
|
-
|
|
156
|
-
```typescript
|
|
157
|
-
import type { Meta, StoryObj } from "{framework_adapter}";
|
|
158
|
-
import { {Component} } from "{import_path}";
|
|
159
|
-
// Additional imports for sub-components, icons, etc.
|
|
160
|
-
|
|
161
|
-
const meta = {
|
|
162
|
-
title: "{Category}/{ComponentName}",
|
|
163
|
-
component: {Component},
|
|
164
|
-
tags: ["autodocs"],
|
|
165
|
-
// parameters: { layout: "padded" } for layout components
|
|
166
|
-
// decorators: [withProviders] for context-dependent components
|
|
167
|
-
} satisfies Meta<typeof {Component}>;
|
|
168
|
-
|
|
169
|
-
export default meta;
|
|
170
|
-
type Story = StoryObj<typeof meta>;
|
|
171
|
-
|
|
172
|
-
export const Default: Story = { /* ... */ };
|
|
173
|
-
// Variant stories, gallery, interaction tests as needed
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
**Title hierarchy for brownfield:**
|
|
177
|
-
|
|
178
|
-
| Atomic Level | Title Pattern | Example |
|
|
179
|
-
|-------------|---------------|---------|
|
|
180
|
-
| Atom | `Base Components/{Name}` | `Base Components/GlassButton` |
|
|
181
|
-
| Molecule | `Components/{Name}` | `Components/SearchBar` |
|
|
182
|
-
| Organism | `Features/{Category}/{Name}` | `Features/Agents/AgentCard` |
|
|
183
|
-
| Template | `Templates/{Name}` | `Templates/DashboardLayout` |
|
|
184
|
-
| Page | `Pages/{Name}` | `Pages/AgentExplorer` |
|
|
185
|
-
|
|
186
|
-
### Step 6: Handle Cross-Project Migration (if applicable)
|
|
187
|
-
|
|
188
|
-
When `migration_mode=cross-project`:
|
|
189
|
-
|
|
190
|
-
**6a. Copy component file to target:**
|
|
191
|
-
```bash
|
|
192
|
-
cp {source_path}/{component}.tsx {target_path}/components/{category}/{component}.tsx
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
**6b. Adapt imports:**
|
|
196
|
-
- Rewrite relative imports to match new location
|
|
197
|
-
- Replace project-specific aliases (`@/` → new project alias)
|
|
198
|
-
- Verify all dependencies exist in target project
|
|
199
|
-
- Install missing npm packages
|
|
200
|
-
|
|
201
|
-
**6c. Resolve missing dependencies:**
|
|
202
|
-
- If component imports another component not yet in target → flag as blocked
|
|
203
|
-
- If component imports a util/hook → copy that too
|
|
204
|
-
- Track all copied files in adaptation_report
|
|
205
|
-
|
|
206
|
-
### Step 7: Verify Each Phase
|
|
207
|
-
|
|
208
|
-
After completing each phase:
|
|
209
|
-
|
|
210
|
-
- [ ] `npm run typecheck` — zero errors from new story files
|
|
211
|
-
- [ ] `npm run lint` — zero errors from new story files
|
|
212
|
-
- [ ] Storybook renders new stories without crashes
|
|
213
|
-
|
|
214
|
-
If errors found:
|
|
215
|
-
- Fix in the current phase before proceeding to next
|
|
216
|
-
- Document fixes in adaptation_report
|
|
217
|
-
|
|
218
|
-
### Step 8: Generate Adaptation Report
|
|
219
|
-
|
|
220
|
-
```markdown
|
|
221
|
-
# Brownfield Migration Report
|
|
222
|
-
|
|
223
|
-
## Summary
|
|
224
|
-
- **Total components scanned:** 95
|
|
225
|
-
- **Components migrated:** 95
|
|
226
|
-
- **Stories generated:** 95
|
|
227
|
-
- **Phases completed:** 10/10
|
|
228
|
-
- **Adaptations required:** 23
|
|
229
|
-
|
|
230
|
-
## Phase Results
|
|
231
|
-
|
|
232
|
-
### Phase 1: Atoms (18 components)
|
|
233
|
-
| Component | Story | Adaptations | Status |
|
|
234
|
-
|-----------|-------|-------------|--------|
|
|
235
|
-
| GlassButton | glass-button.stories.tsx | None | OK |
|
|
236
|
-
| Badge | badge.stories.tsx | None | OK |
|
|
237
|
-
...
|
|
238
|
-
|
|
239
|
-
### Phase 3: Organisms (30 components)
|
|
240
|
-
| Component | Story | Adaptations | Status |
|
|
241
|
-
|-----------|-------|-------------|--------|
|
|
242
|
-
| AgentCard | agent-card.stories.tsx | Mock: useAgentData hook | OK |
|
|
243
|
-
| ChatContainer | chat-container.stories.tsx | Mock: WebSocket, AuthContext | OK |
|
|
244
|
-
...
|
|
245
|
-
|
|
246
|
-
## Adaptations Applied
|
|
247
|
-
1. **AgentCard** — Mocked `useAgentData` hook with static fixture data
|
|
248
|
-
2. **ChatContainer** — Created `withChatProviders` decorator for WebSocket + Auth
|
|
249
|
-
3. **KanbanBoard** — Mocked drag-and-drop context (dnd-kit)
|
|
250
|
-
...
|
|
251
|
-
|
|
252
|
-
## Mock Files Created
|
|
253
|
-
- `.storybook/mocks/auth-provider.tsx`
|
|
254
|
-
- `.storybook/mocks/router-provider.tsx`
|
|
255
|
-
- `.storybook/mocks/agent-data.ts`
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
## Acceptance Criteria
|
|
259
|
-
|
|
260
|
-
- [ ] **AC-1:** Every component in the migration plan has a `.stories.tsx` file
|
|
261
|
-
- [ ] **AC-2:** Stories follow CSF3 with `satisfies Meta<typeof Component>`
|
|
262
|
-
- [ ] **AC-3:** `npm run typecheck` — zero errors
|
|
263
|
-
- [ ] **AC-4:** `npm run lint` — zero errors
|
|
264
|
-
- [ ] **AC-5:** All context-dependent components have mock decorators
|
|
265
|
-
- [ ] **AC-6:** Adaptation report documents every adaptation made
|
|
266
|
-
|
|
267
|
-
## Quality Gate
|
|
268
|
-
|
|
269
|
-
```yaml
|
|
270
|
-
quality_gate:
|
|
271
|
-
id: "SB-BF-QG-001"
|
|
272
|
-
name: "Brownfield Migration Gate"
|
|
273
|
-
placement: "exit"
|
|
274
|
-
type: "hybrid"
|
|
275
|
-
severity: "blocking"
|
|
276
|
-
|
|
277
|
-
criteria:
|
|
278
|
-
- check: "coverage_ratio"
|
|
279
|
-
field: "stories_generated / components_in_plan"
|
|
280
|
-
value: 1.0
|
|
281
|
-
operator: ">="
|
|
282
|
-
weight: 40
|
|
283
|
-
- check: "typecheck"
|
|
284
|
-
field: "typecheck_exit_code"
|
|
285
|
-
value: 0
|
|
286
|
-
operator: "=="
|
|
287
|
-
weight: 25
|
|
288
|
-
- check: "lint"
|
|
289
|
-
field: "lint_exit_code"
|
|
290
|
-
value: 0
|
|
291
|
-
operator: "=="
|
|
292
|
-
weight: 25
|
|
293
|
-
- check: "adaptation_documented"
|
|
294
|
-
field: "all_adaptations_in_report"
|
|
295
|
-
value: true
|
|
296
|
-
operator: "=="
|
|
297
|
-
weight: 10
|
|
298
|
-
|
|
299
|
-
thresholds:
|
|
300
|
-
pass: 100
|
|
301
|
-
review: 80
|
|
302
|
-
fail: 79
|
|
303
|
-
```
|
|
304
|
-
|
|
305
|
-
## Error Handling
|
|
306
|
-
|
|
307
|
-
### Component Crashes in Storybook
|
|
308
|
-
- **Trigger:** Component throws error without required context/provider
|
|
309
|
-
- **Detection:** Storybook shows error overlay
|
|
310
|
-
- **Recovery:** Identify missing context, create mock decorator, retry
|
|
311
|
-
- **Prevention:** Step 4 context analysis should catch most cases
|
|
312
|
-
|
|
313
|
-
### Import Resolution Fails (Cross-Project)
|
|
314
|
-
- **Trigger:** Copied component imports module not in target project
|
|
315
|
-
- **Detection:** TypeScript "Cannot find module" error
|
|
316
|
-
- **Recovery:** Copy missing dependency, or install npm package, or create stub
|
|
317
|
-
- **Prevention:** Step 6c dependency resolution
|
|
318
|
-
|
|
319
|
-
### Component Has Side Effects
|
|
320
|
-
- **Trigger:** Component makes API calls, mutates global state on mount
|
|
321
|
-
- **Detection:** Network errors or state warnings in Storybook console
|
|
322
|
-
- **Recovery:** Mock API calls with `msw` or `fn()`, provide inert context
|
|
323
|
-
- **Prevention:** Step 4 complexity analysis flags side effects
|
|
324
|
-
|
|
325
|
-
### Drag-and-Drop / Canvas / WebGL Components
|
|
326
|
-
- **Trigger:** Components using canvas, WebGL, or complex DOM APIs
|
|
327
|
-
- **Detection:** Blank render or "not supported" errors
|
|
328
|
-
- **Recovery:** Skip render stories, create visual-only stories with screenshots
|
|
329
|
-
- **Prevention:** Flag in inventory with `migration_notes: ["requires-canvas-mock"]`
|
|
330
|
-
|
|
331
|
-
## Dependencies
|
|
332
|
-
|
|
333
|
-
### Depends On (Upstream)
|
|
334
|
-
- `sb-brownfield-scan` - Scan Brownfield Components
|
|
335
|
-
- Required output: component_inventory, migration_plan, dependency_graph
|
|
336
|
-
|
|
337
|
-
### Required By (Downstream)
|
|
338
|
-
- `sb-verify` - Verify Storybook Setup
|
|
339
|
-
- Uses output: story_files
|
|
340
|
-
|
|
341
|
-
## Handoff
|
|
342
|
-
|
|
343
|
-
| Attribute | Value |
|
|
344
|
-
|-----------|-------|
|
|
345
|
-
| **Next Task** | `sb-verify` |
|
|
346
|
-
| **Trigger** | All phases completed, adaptation report generated |
|
|
347
|
-
| **Executor** | @storybook-expert |
|
|
348
|
-
|
|
349
|
-
### Handoff Package
|
|
350
|
-
- **story_files**: List of all generated story file paths
|
|
351
|
-
- **mock_files**: List of mock/decorator files created
|
|
352
|
-
- **adaptation_report**: Full adaptation report
|
|
353
|
-
- **coverage**: Stories generated vs total components
|
|
354
|
-
|
|
355
|
-
## Veto Conditions
|
|
356
|
-
|
|
357
|
-
- Migrating organisms before their atom/molecule dependencies have stories
|
|
358
|
-
- Skipping context analysis for components with hooks
|
|
359
|
-
- Not documenting adaptations in the report
|
|
360
|
-
- Cross-project migration without resolving all import dependencies
|
|
361
|
-
|
|
362
|
-
---
|
|
363
|
-
|
|
364
|
-
_Task Version: 1.0.0_
|
|
365
|
-
_Pattern: HO-TP-001 (Task Anatomy Standard)_
|
|
366
|
-
_Last Updated: 2026-02-25_
|
|
367
|
-
_Compliant: Yes_
|
|
1
|
+
# Migrate Brownfield Components
|
|
2
|
+
|
|
3
|
+
**Task ID:** `sb-brownfield-migrate`
|
|
4
|
+
**Pattern:** HO-TP-001 (Task Anatomy Standard)
|
|
5
|
+
**Version:** 1.0.0
|
|
6
|
+
**Last Updated:** 2026-02-25
|
|
7
|
+
|
|
8
|
+
## Task Anatomy
|
|
9
|
+
|
|
10
|
+
| Field | Value |
|
|
11
|
+
|-------|-------|
|
|
12
|
+
| **task_name** | Migrate Brownfield Components |
|
|
13
|
+
| **status** | `pending` |
|
|
14
|
+
| **responsible_executor** | @storybook-expert |
|
|
15
|
+
| **execution_type** | `Agent` |
|
|
16
|
+
| **input** | Component inventory, migration plan, dependency graph, target project |
|
|
17
|
+
| **output** | Story files for all brownfield components, adaptation report |
|
|
18
|
+
| **action_items** | 8 steps |
|
|
19
|
+
| **acceptance_criteria** | 6 criteria |
|
|
20
|
+
|
|
21
|
+
## Overview
|
|
22
|
+
|
|
23
|
+
Execute the migration plan produced by `sb-brownfield-scan`. For each component in dependency order: analyze its API, adapt it for Storybook isolation (mock providers, stub data, handle side effects), and generate a `.stories.tsx` file. Handles components ranging from simple atoms to complex organisms with context dependencies.
|
|
24
|
+
|
|
25
|
+
Supports two migration modes:
|
|
26
|
+
- **Same-project:** Components stay where they are, stories are added co-located
|
|
27
|
+
- **Cross-project:** Components are copied/adapted from source to target project
|
|
28
|
+
|
|
29
|
+
## Input
|
|
30
|
+
|
|
31
|
+
- **component_inventory** (JSON)
|
|
32
|
+
- Description: Full inventory from sb-brownfield-scan
|
|
33
|
+
- Required: Yes
|
|
34
|
+
- Source: `outputs/design-system/{project}/brownfield/component-inventory.json`
|
|
35
|
+
- **migration_plan** (Markdown)
|
|
36
|
+
- Description: Phased migration plan
|
|
37
|
+
- Required: Yes
|
|
38
|
+
- Source: `outputs/design-system/{project}/brownfield/migration-plan.md`
|
|
39
|
+
- **dependency_graph** (JSON)
|
|
40
|
+
- Description: Component dependency tree
|
|
41
|
+
- Required: Yes
|
|
42
|
+
- Source: `outputs/design-system/{project}/brownfield/dependency-graph.json`
|
|
43
|
+
- **migration_mode** (enum)
|
|
44
|
+
- Description: How to handle the migration
|
|
45
|
+
- Required: No
|
|
46
|
+
- Default: `same-project`
|
|
47
|
+
- Options:
|
|
48
|
+
- `same-project` — Add stories co-located with existing components
|
|
49
|
+
- `cross-project` — Copy components to target project, then add stories
|
|
50
|
+
- **target_path** (string)
|
|
51
|
+
- Description: Where to write stories (and components in cross-project mode)
|
|
52
|
+
- Required: Only for cross-project mode
|
|
53
|
+
- Default: Same directory as component
|
|
54
|
+
- **phase_filter** (string)
|
|
55
|
+
- Description: Which phases to execute (e.g., "1", "1-3", "all")
|
|
56
|
+
- Required: No
|
|
57
|
+
- Default: `all`
|
|
58
|
+
- **category_filter** (string)
|
|
59
|
+
- Description: Which category to migrate (e.g., "ui", "agents", "all")
|
|
60
|
+
- Required: No
|
|
61
|
+
- Default: `all`
|
|
62
|
+
- **component_filter** (string)
|
|
63
|
+
- Description: Specific component name to migrate
|
|
64
|
+
- Required: No
|
|
65
|
+
|
|
66
|
+
## Output
|
|
67
|
+
|
|
68
|
+
- **story_files** (list)
|
|
69
|
+
- Description: Generated `.stories.tsx` files
|
|
70
|
+
- Destination: Co-located with components or in target_path
|
|
71
|
+
- **adaptation_report** (Markdown)
|
|
72
|
+
- Description: Report of adaptations made per component
|
|
73
|
+
- Destination: `outputs/design-system/{project}/brownfield/adaptation-report.md`
|
|
74
|
+
- **mock_files** (list)
|
|
75
|
+
- Description: Mock/stub files created for context dependencies
|
|
76
|
+
- Destination: `.storybook/mocks/` or story decorators
|
|
77
|
+
|
|
78
|
+
## Action Items
|
|
79
|
+
|
|
80
|
+
### Step 1: Load Migration Context
|
|
81
|
+
|
|
82
|
+
- [ ] Read `component_inventory.json`
|
|
83
|
+
- [ ] Read `migration_plan.md`
|
|
84
|
+
- [ ] Read `dependency_graph.json`
|
|
85
|
+
- [ ] Apply filters (phase, category, component) to determine scope
|
|
86
|
+
- [ ] Report: "Migrating {N} components in {phases} phases"
|
|
87
|
+
|
|
88
|
+
### Step 2: Prepare Storybook Environment
|
|
89
|
+
|
|
90
|
+
If target project doesn't have Storybook yet:
|
|
91
|
+
- [ ] Run `sb-install` task (or delegate to workflow)
|
|
92
|
+
- [ ] Run `sb-configure` task
|
|
93
|
+
|
|
94
|
+
If Storybook exists:
|
|
95
|
+
- [ ] Verify `.storybook/main.ts` stories glob covers component locations
|
|
96
|
+
- [ ] Update glob if needed to include brownfield component paths
|
|
97
|
+
|
|
98
|
+
### Step 3: Process Phase by Phase
|
|
99
|
+
|
|
100
|
+
For each phase in the migration plan (respecting dependency order):
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
Phase 1 (atoms) → Phase 2 (molecules) → Phase 3 (organisms) → ...
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Within each phase, process components in order of "most depended-on first" to maximize unblocking.
|
|
107
|
+
|
|
108
|
+
### Step 4: Analyze Each Component
|
|
109
|
+
|
|
110
|
+
For each component, determine story strategy based on complexity:
|
|
111
|
+
|
|
112
|
+
**4a. Simple Components (atoms, complexity 1-2)**
|
|
113
|
+
Strategy: Args-driven stories, minimal setup
|
|
114
|
+
```
|
|
115
|
+
Read component → extract props → generate meta + Default + Variants + Gallery
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
**4b. Composite Components (molecules, complexity 3-5)**
|
|
119
|
+
Strategy: Render function stories with composition
|
|
120
|
+
```
|
|
121
|
+
Read component → identify sub-components → compose render → add interaction stories
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**4c. Complex Components (organisms, complexity 6-8)**
|
|
125
|
+
Strategy: Render function + decorators for context
|
|
126
|
+
```
|
|
127
|
+
Read component → identify context deps → create mock providers → compose stories
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**4d. Context-Dependent Components (complexity 8+)**
|
|
131
|
+
Strategy: Full isolation with mocks and stubs
|
|
132
|
+
|
|
133
|
+
Identify and handle:
|
|
134
|
+
- **Router dependency:** Wrap with `MemoryRouter` or mock `useRouter`
|
|
135
|
+
- **Auth context:** Provide mock user object
|
|
136
|
+
- **API calls:** Mock with `msw` handlers or `fn()` stubs
|
|
137
|
+
- **Global state:** Provide mock store/context
|
|
138
|
+
- **Feature flags:** Provide default flag values
|
|
139
|
+
|
|
140
|
+
Create decorator or wrapper:
|
|
141
|
+
```typescript
|
|
142
|
+
// .storybook/decorators/with-providers.tsx
|
|
143
|
+
export const withProviders = (Story) => (
|
|
144
|
+
<MockAuthProvider user={mockUser}>
|
|
145
|
+
<MockRouterProvider>
|
|
146
|
+
<Story />
|
|
147
|
+
</MockRouterProvider>
|
|
148
|
+
</MockAuthProvider>
|
|
149
|
+
);
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Step 5: Generate Story Files
|
|
153
|
+
|
|
154
|
+
For each component, generate story following CSF3 conventions:
|
|
155
|
+
|
|
156
|
+
```typescript
|
|
157
|
+
import type { Meta, StoryObj } from "{framework_adapter}";
|
|
158
|
+
import { {Component} } from "{import_path}";
|
|
159
|
+
// Additional imports for sub-components, icons, etc.
|
|
160
|
+
|
|
161
|
+
const meta = {
|
|
162
|
+
title: "{Category}/{ComponentName}",
|
|
163
|
+
component: {Component},
|
|
164
|
+
tags: ["autodocs"],
|
|
165
|
+
// parameters: { layout: "padded" } for layout components
|
|
166
|
+
// decorators: [withProviders] for context-dependent components
|
|
167
|
+
} satisfies Meta<typeof {Component}>;
|
|
168
|
+
|
|
169
|
+
export default meta;
|
|
170
|
+
type Story = StoryObj<typeof meta>;
|
|
171
|
+
|
|
172
|
+
export const Default: Story = { /* ... */ };
|
|
173
|
+
// Variant stories, gallery, interaction tests as needed
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
**Title hierarchy for brownfield:**
|
|
177
|
+
|
|
178
|
+
| Atomic Level | Title Pattern | Example |
|
|
179
|
+
|-------------|---------------|---------|
|
|
180
|
+
| Atom | `Base Components/{Name}` | `Base Components/GlassButton` |
|
|
181
|
+
| Molecule | `Components/{Name}` | `Components/SearchBar` |
|
|
182
|
+
| Organism | `Features/{Category}/{Name}` | `Features/Agents/AgentCard` |
|
|
183
|
+
| Template | `Templates/{Name}` | `Templates/DashboardLayout` |
|
|
184
|
+
| Page | `Pages/{Name}` | `Pages/AgentExplorer` |
|
|
185
|
+
|
|
186
|
+
### Step 6: Handle Cross-Project Migration (if applicable)
|
|
187
|
+
|
|
188
|
+
When `migration_mode=cross-project`:
|
|
189
|
+
|
|
190
|
+
**6a. Copy component file to target:**
|
|
191
|
+
```bash
|
|
192
|
+
cp {source_path}/{component}.tsx {target_path}/components/{category}/{component}.tsx
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
**6b. Adapt imports:**
|
|
196
|
+
- Rewrite relative imports to match new location
|
|
197
|
+
- Replace project-specific aliases (`@/` → new project alias)
|
|
198
|
+
- Verify all dependencies exist in target project
|
|
199
|
+
- Install missing npm packages
|
|
200
|
+
|
|
201
|
+
**6c. Resolve missing dependencies:**
|
|
202
|
+
- If component imports another component not yet in target → flag as blocked
|
|
203
|
+
- If component imports a util/hook → copy that too
|
|
204
|
+
- Track all copied files in adaptation_report
|
|
205
|
+
|
|
206
|
+
### Step 7: Verify Each Phase
|
|
207
|
+
|
|
208
|
+
After completing each phase:
|
|
209
|
+
|
|
210
|
+
- [ ] `npm run typecheck` — zero errors from new story files
|
|
211
|
+
- [ ] `npm run lint` — zero errors from new story files
|
|
212
|
+
- [ ] Storybook renders new stories without crashes
|
|
213
|
+
|
|
214
|
+
If errors found:
|
|
215
|
+
- Fix in the current phase before proceeding to next
|
|
216
|
+
- Document fixes in adaptation_report
|
|
217
|
+
|
|
218
|
+
### Step 8: Generate Adaptation Report
|
|
219
|
+
|
|
220
|
+
```markdown
|
|
221
|
+
# Brownfield Migration Report
|
|
222
|
+
|
|
223
|
+
## Summary
|
|
224
|
+
- **Total components scanned:** 95
|
|
225
|
+
- **Components migrated:** 95
|
|
226
|
+
- **Stories generated:** 95
|
|
227
|
+
- **Phases completed:** 10/10
|
|
228
|
+
- **Adaptations required:** 23
|
|
229
|
+
|
|
230
|
+
## Phase Results
|
|
231
|
+
|
|
232
|
+
### Phase 1: Atoms (18 components)
|
|
233
|
+
| Component | Story | Adaptations | Status |
|
|
234
|
+
|-----------|-------|-------------|--------|
|
|
235
|
+
| GlassButton | glass-button.stories.tsx | None | OK |
|
|
236
|
+
| Badge | badge.stories.tsx | None | OK |
|
|
237
|
+
...
|
|
238
|
+
|
|
239
|
+
### Phase 3: Organisms (30 components)
|
|
240
|
+
| Component | Story | Adaptations | Status |
|
|
241
|
+
|-----------|-------|-------------|--------|
|
|
242
|
+
| AgentCard | agent-card.stories.tsx | Mock: useAgentData hook | OK |
|
|
243
|
+
| ChatContainer | chat-container.stories.tsx | Mock: WebSocket, AuthContext | OK |
|
|
244
|
+
...
|
|
245
|
+
|
|
246
|
+
## Adaptations Applied
|
|
247
|
+
1. **AgentCard** — Mocked `useAgentData` hook with static fixture data
|
|
248
|
+
2. **ChatContainer** — Created `withChatProviders` decorator for WebSocket + Auth
|
|
249
|
+
3. **KanbanBoard** — Mocked drag-and-drop context (dnd-kit)
|
|
250
|
+
...
|
|
251
|
+
|
|
252
|
+
## Mock Files Created
|
|
253
|
+
- `.storybook/mocks/auth-provider.tsx`
|
|
254
|
+
- `.storybook/mocks/router-provider.tsx`
|
|
255
|
+
- `.storybook/mocks/agent-data.ts`
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
## Acceptance Criteria
|
|
259
|
+
|
|
260
|
+
- [ ] **AC-1:** Every component in the migration plan has a `.stories.tsx` file
|
|
261
|
+
- [ ] **AC-2:** Stories follow CSF3 with `satisfies Meta<typeof Component>`
|
|
262
|
+
- [ ] **AC-3:** `npm run typecheck` — zero errors
|
|
263
|
+
- [ ] **AC-4:** `npm run lint` — zero errors
|
|
264
|
+
- [ ] **AC-5:** All context-dependent components have mock decorators
|
|
265
|
+
- [ ] **AC-6:** Adaptation report documents every adaptation made
|
|
266
|
+
|
|
267
|
+
## Quality Gate
|
|
268
|
+
|
|
269
|
+
```yaml
|
|
270
|
+
quality_gate:
|
|
271
|
+
id: "SB-BF-QG-001"
|
|
272
|
+
name: "Brownfield Migration Gate"
|
|
273
|
+
placement: "exit"
|
|
274
|
+
type: "hybrid"
|
|
275
|
+
severity: "blocking"
|
|
276
|
+
|
|
277
|
+
criteria:
|
|
278
|
+
- check: "coverage_ratio"
|
|
279
|
+
field: "stories_generated / components_in_plan"
|
|
280
|
+
value: 1.0
|
|
281
|
+
operator: ">="
|
|
282
|
+
weight: 40
|
|
283
|
+
- check: "typecheck"
|
|
284
|
+
field: "typecheck_exit_code"
|
|
285
|
+
value: 0
|
|
286
|
+
operator: "=="
|
|
287
|
+
weight: 25
|
|
288
|
+
- check: "lint"
|
|
289
|
+
field: "lint_exit_code"
|
|
290
|
+
value: 0
|
|
291
|
+
operator: "=="
|
|
292
|
+
weight: 25
|
|
293
|
+
- check: "adaptation_documented"
|
|
294
|
+
field: "all_adaptations_in_report"
|
|
295
|
+
value: true
|
|
296
|
+
operator: "=="
|
|
297
|
+
weight: 10
|
|
298
|
+
|
|
299
|
+
thresholds:
|
|
300
|
+
pass: 100
|
|
301
|
+
review: 80
|
|
302
|
+
fail: 79
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
## Error Handling
|
|
306
|
+
|
|
307
|
+
### Component Crashes in Storybook
|
|
308
|
+
- **Trigger:** Component throws error without required context/provider
|
|
309
|
+
- **Detection:** Storybook shows error overlay
|
|
310
|
+
- **Recovery:** Identify missing context, create mock decorator, retry
|
|
311
|
+
- **Prevention:** Step 4 context analysis should catch most cases
|
|
312
|
+
|
|
313
|
+
### Import Resolution Fails (Cross-Project)
|
|
314
|
+
- **Trigger:** Copied component imports module not in target project
|
|
315
|
+
- **Detection:** TypeScript "Cannot find module" error
|
|
316
|
+
- **Recovery:** Copy missing dependency, or install npm package, or create stub
|
|
317
|
+
- **Prevention:** Step 6c dependency resolution
|
|
318
|
+
|
|
319
|
+
### Component Has Side Effects
|
|
320
|
+
- **Trigger:** Component makes API calls, mutates global state on mount
|
|
321
|
+
- **Detection:** Network errors or state warnings in Storybook console
|
|
322
|
+
- **Recovery:** Mock API calls with `msw` or `fn()`, provide inert context
|
|
323
|
+
- **Prevention:** Step 4 complexity analysis flags side effects
|
|
324
|
+
|
|
325
|
+
### Drag-and-Drop / Canvas / WebGL Components
|
|
326
|
+
- **Trigger:** Components using canvas, WebGL, or complex DOM APIs
|
|
327
|
+
- **Detection:** Blank render or "not supported" errors
|
|
328
|
+
- **Recovery:** Skip render stories, create visual-only stories with screenshots
|
|
329
|
+
- **Prevention:** Flag in inventory with `migration_notes: ["requires-canvas-mock"]`
|
|
330
|
+
|
|
331
|
+
## Dependencies
|
|
332
|
+
|
|
333
|
+
### Depends On (Upstream)
|
|
334
|
+
- `sb-brownfield-scan` - Scan Brownfield Components
|
|
335
|
+
- Required output: component_inventory, migration_plan, dependency_graph
|
|
336
|
+
|
|
337
|
+
### Required By (Downstream)
|
|
338
|
+
- `sb-verify` - Verify Storybook Setup
|
|
339
|
+
- Uses output: story_files
|
|
340
|
+
|
|
341
|
+
## Handoff
|
|
342
|
+
|
|
343
|
+
| Attribute | Value |
|
|
344
|
+
|-----------|-------|
|
|
345
|
+
| **Next Task** | `sb-verify` |
|
|
346
|
+
| **Trigger** | All phases completed, adaptation report generated |
|
|
347
|
+
| **Executor** | @storybook-expert |
|
|
348
|
+
|
|
349
|
+
### Handoff Package
|
|
350
|
+
- **story_files**: List of all generated story file paths
|
|
351
|
+
- **mock_files**: List of mock/decorator files created
|
|
352
|
+
- **adaptation_report**: Full adaptation report
|
|
353
|
+
- **coverage**: Stories generated vs total components
|
|
354
|
+
|
|
355
|
+
## Veto Conditions
|
|
356
|
+
|
|
357
|
+
- Migrating organisms before their atom/molecule dependencies have stories
|
|
358
|
+
- Skipping context analysis for components with hooks
|
|
359
|
+
- Not documenting adaptations in the report
|
|
360
|
+
- Cross-project migration without resolving all import dependencies
|
|
361
|
+
|
|
362
|
+
---
|
|
363
|
+
|
|
364
|
+
_Task Version: 1.0.0_
|
|
365
|
+
_Pattern: HO-TP-001 (Task Anatomy Standard)_
|
|
366
|
+
_Last Updated: 2026-02-25_
|
|
367
|
+
_Compliant: Yes_
|