create-byan-agent 2.1.0 → 2.1.1
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/API-BYAN-V2.md +741 -0
- package/BMAD-QUICK-REFERENCE.md +370 -0
- package/CHANGELOG-v2.1.0.md +371 -0
- package/LICENSE +21 -0
- package/MIGRATION-v2.0-to-v2.1.md +430 -0
- package/README-BYAN-V2.md +446 -0
- package/README.md +361 -0
- package/package.json +8 -6
- package/.github/agents/bmad-agent-bmad-master.md +0 -40
- package/.github/agents/bmad-agent-bmb-agent-builder.md +0 -15
- package/.github/agents/bmad-agent-bmb-module-builder.md +0 -15
- package/.github/agents/bmad-agent-bmb-workflow-builder.md +0 -15
- package/.github/agents/bmad-agent-bmm-analyst.md +0 -15
- package/.github/agents/bmad-agent-bmm-architect.md +0 -15
- package/.github/agents/bmad-agent-bmm-dev.md +0 -15
- package/.github/agents/bmad-agent-bmm-pm.md +0 -15
- package/.github/agents/bmad-agent-bmm-quick-flow-solo-dev.md +0 -15
- package/.github/agents/bmad-agent-bmm-quinn.md +0 -15
- package/.github/agents/bmad-agent-bmm-sm.md +0 -15
- package/.github/agents/bmad-agent-bmm-tech-writer.md +0 -15
- package/.github/agents/bmad-agent-bmm-ux-designer.md +0 -15
- package/.github/agents/bmad-agent-byan-test.md +0 -32
- package/.github/agents/bmad-agent-byan-v2.md +0 -44
- package/.github/agents/bmad-agent-byan.md +0 -251
- package/.github/agents/bmad-agent-carmack.md +0 -18
- package/.github/agents/bmad-agent-cis-brainstorming-coach.md +0 -15
- package/.github/agents/bmad-agent-cis-creative-problem-solver.md +0 -15
- package/.github/agents/bmad-agent-cis-design-thinking-coach.md +0 -15
- package/.github/agents/bmad-agent-cis-innovation-strategist.md +0 -15
- package/.github/agents/bmad-agent-cis-presentation-master.md +0 -15
- package/.github/agents/bmad-agent-cis-storyteller.md +0 -15
- package/.github/agents/bmad-agent-drawio.md +0 -44
- package/.github/agents/bmad-agent-marc.md +0 -98
- package/.github/agents/bmad-agent-patnote.md +0 -48
- package/.github/agents/bmad-agent-rachid.md +0 -47
- package/.github/agents/bmad-agent-tea-tea.md +0 -15
- package/.github/agents/bmad-agent-test-dynamic.md +0 -21
- package/.github/agents/franck.md +0 -379
- package/README.MD +0 -225
- package/__tests__/byan-v2/context/copilot-context.test.js +0 -327
- package/__tests__/byan-v2/context/session-state.test.js +0 -322
- package/__tests__/byan-v2/dispatcher/complexity-scorer.test.js +0 -358
- package/__tests__/byan-v2/dispatcher/five-whys-analyzer.test.js +0 -473
- package/__tests__/byan-v2/dispatcher/local-executor.test.js +0 -496
- package/__tests__/byan-v2/dispatcher/task-router.test.js +0 -265
- package/__tests__/byan-v2/dispatcher/task-tool-interface.test.js +0 -328
- package/__tests__/byan-v2/generation/agent-profile-validator.test.js +0 -386
- package/__tests__/byan-v2/generation/mantra-validator.test.js +0 -640
- package/__tests__/byan-v2/generation/profile-template.test.js +0 -338
- package/__tests__/byan-v2/integration/active-listening-flow.test.js +0 -577
- package/__tests__/byan-v2/integration/five-whys-flow.test.js +0 -559
- package/__tests__/byan-v2/integration/full-bmad-workflow.test.js +0 -903
- package/__tests__/byan-v2/integration/full-bmad-workflow.test.js.backup +0 -889
- package/__tests__/byan-v2/integration/glossary-flow.test.js +0 -479
- package/__tests__/byan-v2/integration/system-integration.test.js +0 -306
- package/__tests__/byan-v2/integration/voice-integration.test.js +0 -157
- package/__tests__/byan-v2/observability/error-tracker.test.js +0 -461
- package/__tests__/byan-v2/observability/logger.test.js +0 -419
- package/__tests__/byan-v2/observability/metrics-collector.test.js +0 -346
- package/__tests__/byan-v2/orchestrator/active-listener.test.js +0 -694
- package/__tests__/byan-v2/orchestrator/analysis-state.test.js +0 -493
- package/__tests__/byan-v2/orchestrator/generation-state.test.js +0 -518
- package/__tests__/byan-v2/orchestrator/glossary-builder.test.js +0 -464
- package/__tests__/byan-v2/orchestrator/interview-state.test.js +0 -470
- package/__tests__/byan-v2/orchestrator/state-machine.test.js +0 -495
- package/__tests__/cache.test.js +0 -241
- package/__tests__/context.test.js +0 -135
- package/__tests__/dashboard.test.js +0 -444
- package/__tests__/dispatcher.test.js +0 -245
- package/__tests__/integration.test.js +0 -163
- package/__tests__/metrics-collector.test.js +0 -433
- package/__tests__/structured-logger.test.js +0 -358
- package/__tests__/worker-pool.test.js +0 -343
- package/__tests__/workflow-executor.test.js +0 -356
- package/_bmad/_config/agent-manifest.csv +0 -25
- package/_bmad/_config/agents/bmb-agent-builder.customize.yaml +0 -41
- package/_bmad/_config/agents/bmb-module-builder.customize.yaml +0 -41
- package/_bmad/_config/agents/bmb-workflow-builder.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-analyst.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-architect.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-dev.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-pm.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-quick-flow-solo-dev.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-quinn.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-sm.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-tech-writer.customize.yaml +0 -41
- package/_bmad/_config/agents/bmm-ux-designer.customize.yaml +0 -41
- package/_bmad/_config/agents/byan.customize.yaml +0 -29
- package/_bmad/_config/agents/cis-brainstorming-coach.customize.yaml +0 -41
- package/_bmad/_config/agents/cis-creative-problem-solver.customize.yaml +0 -41
- package/_bmad/_config/agents/cis-design-thinking-coach.customize.yaml +0 -41
- package/_bmad/_config/agents/cis-innovation-strategist.customize.yaml +0 -41
- package/_bmad/_config/agents/cis-presentation-master.customize.yaml +0 -41
- package/_bmad/_config/agents/cis-storyteller.customize.yaml +0 -41
- package/_bmad/_config/agents/core-bmad-master.customize.yaml +0 -41
- package/_bmad/_config/agents/tea-tea.customize.yaml +0 -41
- package/_bmad/_config/bmad-help.csv +0 -72
- package/_bmad/_config/files-manifest.csv +0 -607
- package/_bmad/_config/ides/codex.yaml +0 -5
- package/_bmad/_config/manifest.yaml +0 -43
- package/_bmad/_config/task-manifest.csv +0 -9
- package/_bmad/_config/tool-manifest.csv +0 -1
- package/_bmad/_config/workflow-manifest.csv +0 -46
- package/_bmad/_memory/config.yaml +0 -11
- package/_bmad/_memory/storyteller-sidecar/stories-told.md +0 -7
- package/_bmad/_memory/storyteller-sidecar/story-preferences.md +0 -7
- package/_bmad/_memory/tech-writer-sidecar/documentation-standards.md +0 -224
- package/_bmad/bmb/agents/agent-builder.md +0 -59
- package/_bmad/bmb/agents/byan-test.md +0 -116
- package/_bmad/bmb/agents/byan.backup.20260202_212559.md +0 -215
- package/_bmad/bmb/agents/byan.md +0 -215
- package/_bmad/bmb/agents/byan.optimized-v2.md +0 -116
- package/_bmad/bmb/agents/byan.optimized.md +0 -189
- package/_bmad/bmb/agents/drawio.md +0 -359
- package/_bmad/bmb/agents/marc.md +0 -351
- package/_bmad/bmb/agents/module-builder.md +0 -60
- package/_bmad/bmb/agents/patnote.md +0 -495
- package/_bmad/bmb/agents/rachid.md +0 -184
- package/_bmad/bmb/agents/turbo-whisper-integration.md +0 -312
- package/_bmad/bmb/agents/workflow-builder.md +0 -61
- package/_bmad/bmb/config.yaml +0 -12
- package/_bmad/bmb/module-help.csv +0 -13
- package/_bmad/bmb/workflows/agent/data/agent-compilation.md +0 -273
- package/_bmad/bmb/workflows/agent/data/agent-menu-patterns.md +0 -233
- package/_bmad/bmb/workflows/agent/data/agent-metadata.md +0 -208
- package/_bmad/bmb/workflows/agent/data/brainstorm-context.md +0 -146
- package/_bmad/bmb/workflows/agent/data/communication-presets.csv +0 -61
- package/_bmad/bmb/workflows/agent/data/critical-actions.md +0 -120
- package/_bmad/bmb/workflows/agent/data/expert-agent-architecture.md +0 -236
- package/_bmad/bmb/workflows/agent/data/expert-agent-validation.md +0 -174
- package/_bmad/bmb/workflows/agent/data/module-agent-validation.md +0 -126
- package/_bmad/bmb/workflows/agent/data/persona-properties.md +0 -266
- package/_bmad/bmb/workflows/agent/data/principles-crafting.md +0 -292
- package/_bmad/bmb/workflows/agent/data/reference/module-examples/architect.md +0 -68
- package/_bmad/bmb/workflows/agent/data/simple-agent-architecture.md +0 -204
- package/_bmad/bmb/workflows/agent/data/simple-agent-validation.md +0 -133
- package/_bmad/bmb/workflows/agent/data/understanding-agent-types.md +0 -222
- package/_bmad/bmb/workflows/agent/steps-c/step-01-brainstorm.md +0 -128
- package/_bmad/bmb/workflows/agent/steps-c/step-02-discovery.md +0 -170
- package/_bmad/bmb/workflows/agent/steps-c/step-03-type-metadata.md +0 -296
- package/_bmad/bmb/workflows/agent/steps-c/step-04-persona.md +0 -212
- package/_bmad/bmb/workflows/agent/steps-c/step-05-commands-menu.md +0 -178
- package/_bmad/bmb/workflows/agent/steps-c/step-06-activation.md +0 -279
- package/_bmad/bmb/workflows/agent/steps-c/step-07a-build-simple.md +0 -187
- package/_bmad/bmb/workflows/agent/steps-c/step-07b-build-expert.md +0 -201
- package/_bmad/bmb/workflows/agent/steps-c/step-07c-build-module.md +0 -258
- package/_bmad/bmb/workflows/agent/steps-c/step-08-celebrate.md +0 -249
- package/_bmad/bmb/workflows/agent/steps-e/e-01-load-existing.md +0 -221
- package/_bmad/bmb/workflows/agent/steps-e/e-02-discover-edits.md +0 -193
- package/_bmad/bmb/workflows/agent/steps-e/e-03-placeholder.md +0 -1
- package/_bmad/bmb/workflows/agent/steps-e/e-04-type-metadata.md +0 -124
- package/_bmad/bmb/workflows/agent/steps-e/e-05-persona.md +0 -134
- package/_bmad/bmb/workflows/agent/steps-e/e-06-commands-menu.md +0 -122
- package/_bmad/bmb/workflows/agent/steps-e/e-07-activation.md +0 -125
- package/_bmad/bmb/workflows/agent/steps-e/e-08a-edit-simple.md +0 -137
- package/_bmad/bmb/workflows/agent/steps-e/e-08b-edit-expert.md +0 -119
- package/_bmad/bmb/workflows/agent/steps-e/e-08c-edit-module.md +0 -123
- package/_bmad/bmb/workflows/agent/steps-e/e-09-celebrate.md +0 -155
- package/_bmad/bmb/workflows/agent/steps-v/v-01-load-review.md +0 -136
- package/_bmad/bmb/workflows/agent/steps-v/v-02a-validate-metadata.md +0 -116
- package/_bmad/bmb/workflows/agent/steps-v/v-02b-validate-persona.md +0 -124
- package/_bmad/bmb/workflows/agent/steps-v/v-02c-validate-menu.md +0 -145
- package/_bmad/bmb/workflows/agent/steps-v/v-02d-validate-structure.md +0 -136
- package/_bmad/bmb/workflows/agent/steps-v/v-02e-validate-sidecar.md +0 -136
- package/_bmad/bmb/workflows/agent/steps-v/v-03-summary.md +0 -104
- package/_bmad/bmb/workflows/agent/templates/agent-plan.template.md +0 -5
- package/_bmad/bmb/workflows/agent/templates/expert-agent-template/expert-agent.template.md +0 -77
- package/_bmad/bmb/workflows/agent/templates/simple-agent.template.md +0 -72
- package/_bmad/bmb/workflows/agent/workflow.md +0 -123
- package/_bmad/bmb/workflows/byan/data/mantras.yaml +0 -272
- package/_bmad/bmb/workflows/byan/data/templates.yaml +0 -59
- package/_bmad/bmb/workflows/byan/delete-agent-workflow.md +0 -657
- package/_bmad/bmb/workflows/byan/edit-agent-workflow.md +0 -688
- package/_bmad/bmb/workflows/byan/interview-workflow.md +0 -753
- package/_bmad/bmb/workflows/byan/quick-create-workflow.md +0 -450
- package/_bmad/bmb/workflows/byan/templates/base-agent-template.md +0 -79
- package/_bmad/bmb/workflows/byan/validate-agent-workflow.md +0 -676
- package/_bmad/bmb/workflows/module/data/agent-architecture.md +0 -179
- package/_bmad/bmb/workflows/module/data/agent-spec-template.md +0 -79
- package/_bmad/bmb/workflows/module/data/module-installer-standards.md +0 -348
- package/_bmad/bmb/workflows/module/data/module-standards.md +0 -280
- package/_bmad/bmb/workflows/module/data/module-yaml-conventions.md +0 -392
- package/_bmad/bmb/workflows/module/steps-b/step-01-welcome.md +0 -147
- package/_bmad/bmb/workflows/module/steps-b/step-02-spark.md +0 -140
- package/_bmad/bmb/workflows/module/steps-b/step-03-module-type.md +0 -148
- package/_bmad/bmb/workflows/module/steps-b/step-04-vision.md +0 -82
- package/_bmad/bmb/workflows/module/steps-b/step-05-identity.md +0 -96
- package/_bmad/bmb/workflows/module/steps-b/step-06-users.md +0 -85
- package/_bmad/bmb/workflows/module/steps-b/step-07-value.md +0 -75
- package/_bmad/bmb/workflows/module/steps-b/step-08-agents.md +0 -96
- package/_bmad/bmb/workflows/module/steps-b/step-09-workflows.md +0 -82
- package/_bmad/bmb/workflows/module/steps-b/step-10-tools.md +0 -90
- package/_bmad/bmb/workflows/module/steps-b/step-11-scenarios.md +0 -83
- package/_bmad/bmb/workflows/module/steps-b/step-12-creative.md +0 -94
- package/_bmad/bmb/workflows/module/steps-b/step-13-review.md +0 -104
- package/_bmad/bmb/workflows/module/steps-b/step-14-finalize.md +0 -117
- package/_bmad/bmb/workflows/module/steps-c/step-01-load-brief.md +0 -178
- package/_bmad/bmb/workflows/module/steps-c/step-01b-continue.md +0 -83
- package/_bmad/bmb/workflows/module/steps-c/step-02-structure.md +0 -109
- package/_bmad/bmb/workflows/module/steps-c/step-03-config.md +0 -118
- package/_bmad/bmb/workflows/module/steps-c/step-04-installer.md +0 -160
- package/_bmad/bmb/workflows/module/steps-c/step-05-agents.md +0 -167
- package/_bmad/bmb/workflows/module/steps-c/step-06-workflows.md +0 -183
- package/_bmad/bmb/workflows/module/steps-c/step-07-docs.md +0 -402
- package/_bmad/bmb/workflows/module/steps-c/step-08-complete.md +0 -123
- package/_bmad/bmb/workflows/module/steps-e/step-01-load-target.md +0 -81
- package/_bmad/bmb/workflows/module/steps-e/step-02-select-edit.md +0 -77
- package/_bmad/bmb/workflows/module/steps-e/step-03-apply-edit.md +0 -77
- package/_bmad/bmb/workflows/module/steps-e/step-04-review.md +0 -80
- package/_bmad/bmb/workflows/module/steps-e/step-05-confirm.md +0 -75
- package/_bmad/bmb/workflows/module/steps-v/step-01-load-target.md +0 -96
- package/_bmad/bmb/workflows/module/steps-v/step-02-file-structure.md +0 -94
- package/_bmad/bmb/workflows/module/steps-v/step-03-module-yaml.md +0 -99
- package/_bmad/bmb/workflows/module/steps-v/step-04-agent-specs.md +0 -152
- package/_bmad/bmb/workflows/module/steps-v/step-05-workflow-specs.md +0 -152
- package/_bmad/bmb/workflows/module/steps-v/step-06-documentation.md +0 -143
- package/_bmad/bmb/workflows/module/steps-v/step-07-installation.md +0 -113
- package/_bmad/bmb/workflows/module/steps-v/step-08-report.md +0 -197
- package/_bmad/bmb/workflows/module/templates/brief-template.md +0 -154
- package/_bmad/bmb/workflows/module/templates/workflow-spec-template.md +0 -96
- package/_bmad/bmb/workflows/module/workflow.md +0 -100
- package/_bmad/bmb/workflows/turbo-whisper/configure-workflow.md +0 -488
- package/_bmad/bmb/workflows/turbo-whisper/docker-setup-workflow.md +0 -478
- package/_bmad/bmb/workflows/turbo-whisper/install-workflow.md +0 -426
- package/_bmad/bmb/workflows/turbo-whisper/integrate-workflow.md +0 -510
- package/_bmad/bmb/workflows/workflow/data/architecture.md +0 -152
- package/_bmad/bmb/workflows/workflow/data/common-workflow-tools.csv +0 -19
- package/_bmad/bmb/workflows/workflow/data/csv-data-file-standards.md +0 -81
- package/_bmad/bmb/workflows/workflow/data/frontmatter-standards.md +0 -225
- package/_bmad/bmb/workflows/workflow/data/input-discovery-standards.md +0 -269
- package/_bmad/bmb/workflows/workflow/data/intent-vs-prescriptive-spectrum.md +0 -50
- package/_bmad/bmb/workflows/workflow/data/menu-handling-standards.md +0 -167
- package/_bmad/bmb/workflows/workflow/data/output-format-standards.md +0 -188
- package/_bmad/bmb/workflows/workflow/data/step-file-rules.md +0 -235
- package/_bmad/bmb/workflows/workflow/data/step-type-patterns.md +0 -311
- package/_bmad/bmb/workflows/workflow/data/subprocess-optimization-patterns.md +0 -386
- package/_bmad/bmb/workflows/workflow/data/trimodal-workflow-structure.md +0 -209
- package/_bmad/bmb/workflows/workflow/data/workflow-chaining-standards.md +0 -271
- package/_bmad/bmb/workflows/workflow/data/workflow-examples.md +0 -276
- package/_bmad/bmb/workflows/workflow/data/workflow-type-criteria.md +0 -172
- package/_bmad/bmb/workflows/workflow/steps-c/step-00-conversion.md +0 -262
- package/_bmad/bmb/workflows/workflow/steps-c/step-01-discovery.md +0 -194
- package/_bmad/bmb/workflows/workflow/steps-c/step-01b-continuation.md +0 -3
- package/_bmad/bmb/workflows/workflow/steps-c/step-02-classification.md +0 -269
- package/_bmad/bmb/workflows/workflow/steps-c/step-03-requirements.md +0 -282
- package/_bmad/bmb/workflows/workflow/steps-c/step-04-tools.md +0 -281
- package/_bmad/bmb/workflows/workflow/steps-c/step-05-plan-review.md +0 -242
- package/_bmad/bmb/workflows/workflow/steps-c/step-06-design.md +0 -329
- package/_bmad/bmb/workflows/workflow/steps-c/step-07-foundation.md +0 -238
- package/_bmad/bmb/workflows/workflow/steps-c/step-08-build-step-01.md +0 -377
- package/_bmad/bmb/workflows/workflow/steps-c/step-09-build-next-step.md +0 -350
- package/_bmad/bmb/workflows/workflow/steps-c/step-10-confirmation.md +0 -320
- package/_bmad/bmb/workflows/workflow/steps-c/step-11-completion.md +0 -191
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-01-assess-workflow.md +0 -237
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-02-discover-edits.md +0 -248
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-03-fix-validation.md +0 -252
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-04-direct-edit.md +0 -275
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-05-apply-edit.md +0 -154
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-06-validate-after.md +0 -190
- package/_bmad/bmb/workflows/workflow/steps-e/step-e-07-complete.md +0 -206
- package/_bmad/bmb/workflows/workflow/steps-v/step-01-validate-max-mode.md +0 -109
- package/_bmad/bmb/workflows/workflow/steps-v/step-01-validate.md +0 -221
- package/_bmad/bmb/workflows/workflow/steps-v/step-01b-structure.md +0 -152
- package/_bmad/bmb/workflows/workflow/steps-v/step-02-frontmatter-validation.md +0 -199
- package/_bmad/bmb/workflows/workflow/steps-v/step-02b-path-violations.md +0 -265
- package/_bmad/bmb/workflows/workflow/steps-v/step-03-menu-validation.md +0 -164
- package/_bmad/bmb/workflows/workflow/steps-v/step-04-step-type-validation.md +0 -211
- package/_bmad/bmb/workflows/workflow/steps-v/step-05-output-format-validation.md +0 -200
- package/_bmad/bmb/workflows/workflow/steps-v/step-06-validation-design-check.md +0 -195
- package/_bmad/bmb/workflows/workflow/steps-v/step-07-instruction-style-check.md +0 -209
- package/_bmad/bmb/workflows/workflow/steps-v/step-08-collaborative-experience-check.md +0 -199
- package/_bmad/bmb/workflows/workflow/steps-v/step-08b-subprocess-optimization.md +0 -179
- package/_bmad/bmb/workflows/workflow/steps-v/step-09-cohesive-review.md +0 -186
- package/_bmad/bmb/workflows/workflow/steps-v/step-10-report-complete.md +0 -154
- package/_bmad/bmb/workflows/workflow/steps-v/step-11-plan-validation.md +0 -237
- package/_bmad/bmb/workflows/workflow/templates/minimal-output-template.md +0 -11
- package/_bmad/bmb/workflows/workflow/templates/step-01-init-continuable-template.md +0 -241
- package/_bmad/bmb/workflows/workflow/templates/step-1b-template.md +0 -223
- package/_bmad/bmb/workflows/workflow/templates/step-template.md +0 -290
- package/_bmad/bmb/workflows/workflow/templates/workflow-template.md +0 -102
- package/_bmad/bmb/workflows/workflow/workflow.md +0 -109
- package/_bmad/bmm/agents/analyst.md +0 -76
- package/_bmad/bmm/agents/architect.md +0 -58
- package/_bmad/bmm/agents/dev.md +0 -69
- package/_bmad/bmm/agents/expert-merise-agile.md +0 -177
- package/_bmad/bmm/agents/pm.md +0 -72
- package/_bmad/bmm/agents/quick-flow-solo-dev.md +0 -69
- package/_bmad/bmm/agents/quinn.md +0 -92
- package/_bmad/bmm/agents/sm.md +0 -70
- package/_bmad/bmm/agents/tech-writer/tech-writer.md +0 -70
- package/_bmad/bmm/agents/ux-designer.md +0 -57
- package/_bmad/bmm/config.yaml +0 -16
- package/_bmad/bmm/data/project-context-template.md +0 -26
- package/_bmad/bmm/module-help.csv +0 -38
- package/_bmad/bmm/teams/default-party.csv +0 -20
- package/_bmad/bmm/teams/team-fullstack.yaml +0 -12
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +0 -10
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +0 -177
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +0 -161
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +0 -199
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +0 -202
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +0 -205
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +0 -219
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +0 -162
- package/_bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +0 -58
- package/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +0 -137
- package/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +0 -229
- package/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +0 -238
- package/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +0 -206
- package/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +0 -234
- package/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +0 -443
- package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +0 -182
- package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +0 -237
- package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +0 -249
- package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +0 -259
- package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +0 -177
- package/_bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +0 -475
- package/_bmad/bmm/workflows/1-analysis/research/research.template.md +0 -29
- package/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +0 -137
- package/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +0 -239
- package/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +0 -248
- package/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +0 -202
- package/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +0 -239
- package/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +0 -486
- package/_bmad/bmm/workflows/1-analysis/research/workflow.md +0 -173
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +0 -13
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +0 -197
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +0 -11
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +0 -191
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +0 -153
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +0 -224
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +0 -226
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +0 -213
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +0 -207
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +0 -226
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +0 -237
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +0 -228
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +0 -231
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +0 -242
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +0 -217
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +0 -124
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +0 -247
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +0 -208
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +0 -249
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +0 -253
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +0 -168
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +0 -218
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +0 -191
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +0 -209
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +0 -174
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -214
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +0 -228
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +0 -217
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -205
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -243
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +0 -263
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +0 -209
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -264
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +0 -242
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +0 -231
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +0 -10
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/validation-report-prd-workflow.md +0 -433
- package/_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md +0 -150
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +0 -135
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +0 -127
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +0 -190
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +0 -216
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +0 -219
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +0 -234
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +0 -252
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +0 -254
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +0 -224
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +0 -224
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +0 -241
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +0 -248
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +0 -237
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +0 -264
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +0 -171
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -13
- package/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +0 -43
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +0 -190
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +0 -178
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -179
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +0 -139
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -252
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +0 -135
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +0 -4
- package/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +0 -55
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +0 -12
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +0 -11
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +0 -7
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +0 -153
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +0 -164
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +0 -224
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +0 -331
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +0 -318
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +0 -359
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +0 -379
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +0 -359
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +0 -76
- package/_bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +0 -50
- package/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -259
- package/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +0 -233
- package/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +0 -272
- package/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +0 -149
- package/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +0 -57
- package/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +0 -59
- package/_bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -23
- package/_bmad/bmm/workflows/4-implementation/code-review/instructions.xml +0 -227
- package/_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -50
- package/_bmad/bmm/workflows/4-implementation/correct-course/checklist.md +0 -288
- package/_bmad/bmm/workflows/4-implementation/correct-course/instructions.md +0 -206
- package/_bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -58
- package/_bmad/bmm/workflows/4-implementation/create-story/checklist.md +0 -358
- package/_bmad/bmm/workflows/4-implementation/create-story/instructions.xml +0 -345
- package/_bmad/bmm/workflows/4-implementation/create-story/template.md +0 -49
- package/_bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -59
- package/_bmad/bmm/workflows/4-implementation/dev-story/checklist.md +0 -80
- package/_bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +0 -410
- package/_bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -25
- package/_bmad/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1443
- package/_bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -57
- package/_bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -33
- package/_bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -225
- package/_bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
- package/_bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -53
- package/_bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +0 -229
- package/_bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +0 -35
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +0 -176
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +0 -120
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +0 -113
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +0 -113
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +0 -106
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +0 -149
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +0 -50
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +0 -192
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +0 -145
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +0 -128
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +0 -201
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +0 -74
- package/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +0 -79
- package/_bmad/bmm/workflows/document-project/checklist.md +0 -245
- package/_bmad/bmm/workflows/document-project/documentation-requirements.csv +0 -12
- package/_bmad/bmm/workflows/document-project/instructions.md +0 -221
- package/_bmad/bmm/workflows/document-project/templates/deep-dive-template.md +0 -345
- package/_bmad/bmm/workflows/document-project/templates/index-template.md +0 -169
- package/_bmad/bmm/workflows/document-project/templates/project-overview-template.md +0 -103
- package/_bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
- package/_bmad/bmm/workflows/document-project/templates/source-tree-template.md +0 -135
- package/_bmad/bmm/workflows/document-project/workflow.yaml +0 -28
- package/_bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
- package/_bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
- package/_bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
- package/_bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
- package/_bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +0 -90
- package/_bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +0 -127
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +0 -39
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +0 -130
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +0 -26
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +0 -43
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +0 -141
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +0 -26
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +0 -49
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +0 -241
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +0 -26
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +0 -38
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +0 -133
- package/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +0 -26
- package/_bmad/bmm/workflows/generate-project-context/project-context-template.md +0 -21
- package/_bmad/bmm/workflows/generate-project-context/steps/step-01-discover.md +0 -184
- package/_bmad/bmm/workflows/generate-project-context/steps/step-02-generate.md +0 -318
- package/_bmad/bmm/workflows/generate-project-context/steps/step-03-complete.md +0 -278
- package/_bmad/bmm/workflows/generate-project-context/workflow.md +0 -49
- package/_bmad/bmm/workflows/qa/automate/checklist.md +0 -33
- package/_bmad/bmm/workflows/qa/automate/instructions.md +0 -110
- package/_bmad/bmm/workflows/qa/automate/workflow.yaml +0 -47
- package/_bmad/cis/agents/brainstorming-coach.md +0 -61
- package/_bmad/cis/agents/creative-problem-solver.md +0 -61
- package/_bmad/cis/agents/design-thinking-coach.md +0 -61
- package/_bmad/cis/agents/innovation-strategist.md +0 -61
- package/_bmad/cis/agents/presentation-master.md +0 -67
- package/_bmad/cis/agents/storyteller/storyteller.md +0 -58
- package/_bmad/cis/config.yaml +0 -12
- package/_bmad/cis/module-help.csv +0 -6
- package/_bmad/cis/teams/creative-squad.yaml +0 -7
- package/_bmad/cis/teams/default-party.csv +0 -12
- package/_bmad/cis/workflows/README.md +0 -139
- package/_bmad/cis/workflows/design-thinking/README.md +0 -56
- package/_bmad/cis/workflows/design-thinking/design-methods.csv +0 -31
- package/_bmad/cis/workflows/design-thinking/instructions.md +0 -202
- package/_bmad/cis/workflows/design-thinking/template.md +0 -111
- package/_bmad/cis/workflows/design-thinking/workflow.yaml +0 -27
- package/_bmad/cis/workflows/innovation-strategy/README.md +0 -56
- package/_bmad/cis/workflows/innovation-strategy/innovation-frameworks.csv +0 -31
- package/_bmad/cis/workflows/innovation-strategy/instructions.md +0 -276
- package/_bmad/cis/workflows/innovation-strategy/template.md +0 -189
- package/_bmad/cis/workflows/innovation-strategy/workflow.yaml +0 -27
- package/_bmad/cis/workflows/problem-solving/README.md +0 -56
- package/_bmad/cis/workflows/problem-solving/instructions.md +0 -252
- package/_bmad/cis/workflows/problem-solving/solving-methods.csv +0 -31
- package/_bmad/cis/workflows/problem-solving/template.md +0 -165
- package/_bmad/cis/workflows/problem-solving/workflow.yaml +0 -27
- package/_bmad/cis/workflows/storytelling/README.md +0 -58
- package/_bmad/cis/workflows/storytelling/instructions.md +0 -293
- package/_bmad/cis/workflows/storytelling/story-types.csv +0 -26
- package/_bmad/cis/workflows/storytelling/template.md +0 -113
- package/_bmad/cis/workflows/storytelling/workflow.yaml +0 -27
- package/_bmad/core/agents/bmad-master.md +0 -56
- package/_bmad/core/agents/carmack.md +0 -238
- package/_bmad/core/agents/test-dynamic.md +0 -40
- package/_bmad/core/base/bmad-base-agent.md +0 -42
- package/_bmad/core/config.yaml +0 -9
- package/_bmad/core/module-help.csv +0 -9
- package/_bmad/core/resources/excalidraw/README.md +0 -160
- package/_bmad/core/resources/excalidraw/excalidraw-helpers.md +0 -127
- package/_bmad/core/resources/excalidraw/library-loader.md +0 -50
- package/_bmad/core/resources/excalidraw/validate-json-instructions.md +0 -79
- package/_bmad/core/tasks/editorial-review-prose.xml +0 -100
- package/_bmad/core/tasks/editorial-review-structure.xml +0 -209
- package/_bmad/core/tasks/help.md +0 -62
- package/_bmad/core/tasks/index-docs.xml +0 -65
- package/_bmad/core/tasks/review-adversarial-general.xml +0 -48
- package/_bmad/core/tasks/shard-doc.xml +0 -109
- package/_bmad/core/tasks/workflow.xml +0 -235
- package/_bmad/core/workflows/advanced-elicitation/methods.csv +0 -51
- package/_bmad/core/workflows/advanced-elicitation/workflow.xml +0 -117
- package/_bmad/core/workflows/brainstorming/brain-methods.csv +0 -62
- package/_bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +0 -197
- package/_bmad/core/workflows/brainstorming/steps/step-01b-continue.md +0 -122
- package/_bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +0 -225
- package/_bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +0 -237
- package/_bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +0 -209
- package/_bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +0 -264
- package/_bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +0 -399
- package/_bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +0 -303
- package/_bmad/core/workflows/brainstorming/template.md +0 -15
- package/_bmad/core/workflows/brainstorming/workflow.md +0 -58
- package/_bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +0 -138
- package/_bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +0 -187
- package/_bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +0 -157
- package/_bmad/core/workflows/party-mode/workflow.md +0 -194
- package/_bmad/tea/agents/tea.md +0 -71
- package/_bmad/tea/config.yaml +0 -19
- package/_bmad/tea/module-help.csv +0 -10
- package/_bmad/tea/teams/default-party.csv +0 -2
- package/_bmad/tea/testarch/knowledge/adr-quality-readiness-checklist.md +0 -377
- package/_bmad/tea/testarch/knowledge/api-request.md +0 -442
- package/_bmad/tea/testarch/knowledge/api-testing-patterns.md +0 -851
- package/_bmad/tea/testarch/knowledge/auth-session.md +0 -548
- package/_bmad/tea/testarch/knowledge/burn-in.md +0 -273
- package/_bmad/tea/testarch/knowledge/ci-burn-in.md +0 -675
- package/_bmad/tea/testarch/knowledge/component-tdd.md +0 -486
- package/_bmad/tea/testarch/knowledge/contract-testing.md +0 -957
- package/_bmad/tea/testarch/knowledge/data-factories.md +0 -500
- package/_bmad/tea/testarch/knowledge/email-auth.md +0 -721
- package/_bmad/tea/testarch/knowledge/error-handling.md +0 -725
- package/_bmad/tea/testarch/knowledge/feature-flags.md +0 -750
- package/_bmad/tea/testarch/knowledge/file-utils.md +0 -456
- package/_bmad/tea/testarch/knowledge/fixture-architecture.md +0 -401
- package/_bmad/tea/testarch/knowledge/fixtures-composition.md +0 -382
- package/_bmad/tea/testarch/knowledge/intercept-network-call.md +0 -426
- package/_bmad/tea/testarch/knowledge/log.md +0 -426
- package/_bmad/tea/testarch/knowledge/network-error-monitor.md +0 -401
- package/_bmad/tea/testarch/knowledge/network-first.md +0 -486
- package/_bmad/tea/testarch/knowledge/network-recorder.md +0 -527
- package/_bmad/tea/testarch/knowledge/nfr-criteria.md +0 -670
- package/_bmad/tea/testarch/knowledge/overview.md +0 -286
- package/_bmad/tea/testarch/knowledge/playwright-config.md +0 -730
- package/_bmad/tea/testarch/knowledge/probability-impact.md +0 -601
- package/_bmad/tea/testarch/knowledge/recurse.md +0 -421
- package/_bmad/tea/testarch/knowledge/risk-governance.md +0 -615
- package/_bmad/tea/testarch/knowledge/selective-testing.md +0 -732
- package/_bmad/tea/testarch/knowledge/selector-resilience.md +0 -527
- package/_bmad/tea/testarch/knowledge/test-healing-patterns.md +0 -644
- package/_bmad/tea/testarch/knowledge/test-levels-framework.md +0 -473
- package/_bmad/tea/testarch/knowledge/test-priorities-matrix.md +0 -373
- package/_bmad/tea/testarch/knowledge/test-quality.md +0 -664
- package/_bmad/tea/testarch/knowledge/timing-debugging.md +0 -372
- package/_bmad/tea/testarch/knowledge/visual-debugging.md +0 -524
- package/_bmad/tea/testarch/tea-index.csv +0 -35
- package/_bmad/tea/workflows/testarch/README.md +0 -74
- package/_bmad/tea/workflows/testarch/atdd/atdd-checklist-template.md +0 -363
- package/_bmad/tea/workflows/testarch/atdd/checklist.md +0 -374
- package/_bmad/tea/workflows/testarch/atdd/instructions.md +0 -38
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-01-preflight-and-context.md +0 -110
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-02-generation-mode.md +0 -79
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-03-test-strategy.md +0 -76
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-04-generate-tests.md +0 -228
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-04a-subprocess-api-failing.md +0 -215
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-04b-subprocess-e2e-failing.md +0 -212
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-04c-aggregate.md +0 -329
- package/_bmad/tea/workflows/testarch/atdd/steps-c/step-05-validate-and-complete.md +0 -68
- package/_bmad/tea/workflows/testarch/atdd/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/atdd/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/atdd/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/atdd/validation-report-20260127-095021.md +0 -73
- package/_bmad/tea/workflows/testarch/atdd/validation-report-20260127-102401.md +0 -116
- package/_bmad/tea/workflows/testarch/atdd/workflow-plan.md +0 -21
- package/_bmad/tea/workflows/testarch/atdd/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/atdd/workflow.yaml +0 -45
- package/_bmad/tea/workflows/testarch/automate/checklist.md +0 -582
- package/_bmad/tea/workflows/testarch/automate/instructions.md +0 -43
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-01-preflight-and-context.md +0 -127
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-02-identify-targets.md +0 -95
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-03-generate-tests.md +0 -199
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-03a-subprocess-api.md +0 -183
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-e2e.md +0 -181
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-03c-aggregate.md +0 -300
- package/_bmad/tea/workflows/testarch/automate/steps-c/step-04-validate-and-summarize.md +0 -69
- package/_bmad/tea/workflows/testarch/automate/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/automate/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/automate/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/automate/validation-report-20260127-095021.md +0 -72
- package/_bmad/tea/workflows/testarch/automate/validation-report-20260127-102401.md +0 -114
- package/_bmad/tea/workflows/testarch/automate/workflow-plan.md +0 -20
- package/_bmad/tea/workflows/testarch/automate/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/automate/workflow.yaml +0 -52
- package/_bmad/tea/workflows/testarch/ci/checklist.md +0 -247
- package/_bmad/tea/workflows/testarch/ci/github-actions-template.yaml +0 -198
- package/_bmad/tea/workflows/testarch/ci/gitlab-ci-template.yaml +0 -149
- package/_bmad/tea/workflows/testarch/ci/instructions.md +0 -38
- package/_bmad/tea/workflows/testarch/ci/steps-c/step-01-preflight.md +0 -92
- package/_bmad/tea/workflows/testarch/ci/steps-c/step-02-generate-pipeline.md +0 -82
- package/_bmad/tea/workflows/testarch/ci/steps-c/step-03-configure-quality-gates.md +0 -75
- package/_bmad/tea/workflows/testarch/ci/steps-c/step-04-validate-and-summary.md +0 -67
- package/_bmad/tea/workflows/testarch/ci/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/ci/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/ci/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/ci/validation-report-20260127-095021.md +0 -72
- package/_bmad/tea/workflows/testarch/ci/validation-report-20260127-102401.md +0 -114
- package/_bmad/tea/workflows/testarch/ci/workflow-plan.md +0 -20
- package/_bmad/tea/workflows/testarch/ci/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/ci/workflow.yaml +0 -45
- package/_bmad/tea/workflows/testarch/framework/checklist.md +0 -320
- package/_bmad/tea/workflows/testarch/framework/instructions.md +0 -38
- package/_bmad/tea/workflows/testarch/framework/steps-c/step-01-preflight.md +0 -75
- package/_bmad/tea/workflows/testarch/framework/steps-c/step-02-select-framework.md +0 -73
- package/_bmad/tea/workflows/testarch/framework/steps-c/step-03-scaffold-framework.md +0 -120
- package/_bmad/tea/workflows/testarch/framework/steps-c/step-04-docs-and-scripts.md +0 -70
- package/_bmad/tea/workflows/testarch/framework/steps-c/step-05-validate-and-summary.md +0 -68
- package/_bmad/tea/workflows/testarch/framework/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/framework/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/framework/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/framework/validation-report-20260127-095021.md +0 -73
- package/_bmad/tea/workflows/testarch/framework/validation-report-20260127-102401.md +0 -116
- package/_bmad/tea/workflows/testarch/framework/workflow-plan.md +0 -22
- package/_bmad/tea/workflows/testarch/framework/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/framework/workflow.yaml +0 -47
- package/_bmad/tea/workflows/testarch/nfr-assess/checklist.md +0 -407
- package/_bmad/tea/workflows/testarch/nfr-assess/instructions.md +0 -36
- package/_bmad/tea/workflows/testarch/nfr-assess/nfr-report-template.md +0 -462
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01-load-context.md +0 -85
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-02-define-thresholds.md +0 -82
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-03-gather-evidence.md +0 -64
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04-evaluate-and-score.md +0 -140
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04a-subprocess-security.md +0 -138
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04b-subprocess-performance.md +0 -84
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04c-subprocess-reliability.md +0 -85
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04d-subprocess-scalability.md +0 -88
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04e-aggregate-nfr.md +0 -219
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-c/step-05-generate-report.md +0 -71
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/nfr-assess/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-095021.md +0 -73
- package/_bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-102401.md +0 -116
- package/_bmad/tea/workflows/testarch/nfr-assess/workflow-plan.md +0 -19
- package/_bmad/tea/workflows/testarch/nfr-assess/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/nfr-assess/workflow.yaml +0 -47
- package/_bmad/tea/workflows/testarch/teach-me-testing/checklist.md +0 -197
- package/_bmad/tea/workflows/testarch/teach-me-testing/data/curriculum.yaml +0 -129
- package/_bmad/tea/workflows/testarch/teach-me-testing/data/quiz-questions.yaml +0 -206
- package/_bmad/tea/workflows/testarch/teach-me-testing/data/role-paths.yaml +0 -136
- package/_bmad/tea/workflows/testarch/teach-me-testing/data/session-content-map.yaml +0 -204
- package/_bmad/tea/workflows/testarch/teach-me-testing/data/tea-resources-index.yaml +0 -359
- package/_bmad/tea/workflows/testarch/teach-me-testing/instructions.md +0 -130
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01-init.md +0 -235
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01b-continue.md +0 -147
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-02-assess.md +0 -258
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-03-session-menu.md +0 -219
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-01.md +0 -460
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-02.md +0 -465
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-03.md +0 -301
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-04.md +0 -234
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-05.md +0 -234
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-06.md +0 -209
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-07.md +0 -212
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-05-completion.md +0 -339
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-01-assess-workflow.md +0 -141
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-02-apply-edits.md +0 -122
- package/_bmad/tea/workflows/testarch/teach-me-testing/steps-v/step-v-01-validate.md +0 -263
- package/_bmad/tea/workflows/testarch/teach-me-testing/templates/certificate-template.md +0 -86
- package/_bmad/tea/workflows/testarch/teach-me-testing/templates/progress-template.yaml +0 -95
- package/_bmad/tea/workflows/testarch/teach-me-testing/templates/session-notes-template.md +0 -83
- package/_bmad/tea/workflows/testarch/teach-me-testing/workflow-plan-teach-me-testing.md +0 -950
- package/_bmad/tea/workflows/testarch/teach-me-testing/workflow.md +0 -90
- package/_bmad/tea/workflows/testarch/test-design/checklist.md +0 -410
- package/_bmad/tea/workflows/testarch/test-design/instructions.md +0 -52
- package/_bmad/tea/workflows/testarch/test-design/steps-c/step-01-detect-mode.md +0 -109
- package/_bmad/tea/workflows/testarch/test-design/steps-c/step-02-load-context.md +0 -127
- package/_bmad/tea/workflows/testarch/test-design/steps-c/step-03-risk-and-testability.md +0 -85
- package/_bmad/tea/workflows/testarch/test-design/steps-c/step-04-coverage-plan.md +0 -98
- package/_bmad/tea/workflows/testarch/test-design/steps-c/step-05-generate-output.md +0 -97
- package/_bmad/tea/workflows/testarch/test-design/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/test-design/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/test-design/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/test-design/test-design-architecture-template.md +0 -222
- package/_bmad/tea/workflows/testarch/test-design/test-design-qa-template.md +0 -296
- package/_bmad/tea/workflows/testarch/test-design/test-design-template.md +0 -294
- package/_bmad/tea/workflows/testarch/test-design/validation-report-20260127-095021.md +0 -73
- package/_bmad/tea/workflows/testarch/test-design/validation-report-20260127-102401.md +0 -116
- package/_bmad/tea/workflows/testarch/test-design/workflow-plan.md +0 -22
- package/_bmad/tea/workflows/testarch/test-design/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/test-design/workflow.yaml +0 -69
- package/_bmad/tea/workflows/testarch/test-review/checklist.md +0 -472
- package/_bmad/tea/workflows/testarch/test-review/instructions.md +0 -36
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-01-load-context.md +0 -101
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-02-discover-tests.md +0 -69
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03-quality-evaluation.md +0 -184
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03a-subprocess-determinism.md +0 -214
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03b-subprocess-isolation.md +0 -125
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03c-subprocess-maintainability.md +0 -102
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03d-subprocess-coverage.md +0 -111
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03e-subprocess-performance.md +0 -117
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-03f-aggregate-scores.md +0 -246
- package/_bmad/tea/workflows/testarch/test-review/steps-c/step-04-generate-report.md +0 -72
- package/_bmad/tea/workflows/testarch/test-review/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/test-review/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/test-review/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/test-review/test-review-template.md +0 -390
- package/_bmad/tea/workflows/testarch/test-review/validation-report-20260127-095021.md +0 -72
- package/_bmad/tea/workflows/testarch/test-review/validation-report-20260127-102401.md +0 -114
- package/_bmad/tea/workflows/testarch/test-review/workflow-plan.md +0 -18
- package/_bmad/tea/workflows/testarch/test-review/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/test-review/workflow.yaml +0 -46
- package/_bmad/tea/workflows/testarch/trace/checklist.md +0 -642
- package/_bmad/tea/workflows/testarch/trace/instructions.md +0 -36
- package/_bmad/tea/workflows/testarch/trace/steps-c/step-01-load-context.md +0 -80
- package/_bmad/tea/workflows/testarch/trace/steps-c/step-02-discover-tests.md +0 -69
- package/_bmad/tea/workflows/testarch/trace/steps-c/step-03-map-criteria.md +0 -65
- package/_bmad/tea/workflows/testarch/trace/steps-c/step-04-analyze-gaps.md +0 -244
- package/_bmad/tea/workflows/testarch/trace/steps-c/step-05-gate-decision.md +0 -232
- package/_bmad/tea/workflows/testarch/trace/steps-e/step-01-assess.md +0 -65
- package/_bmad/tea/workflows/testarch/trace/steps-e/step-02-apply-edit.md +0 -60
- package/_bmad/tea/workflows/testarch/trace/steps-v/step-01-validate.md +0 -67
- package/_bmad/tea/workflows/testarch/trace/trace-template.md +0 -675
- package/_bmad/tea/workflows/testarch/trace/validation-report-20260127-095021.md +0 -73
- package/_bmad/tea/workflows/testarch/trace/validation-report-20260127-102401.md +0 -116
- package/_bmad/tea/workflows/testarch/trace/workflow-plan.md +0 -21
- package/_bmad/tea/workflows/testarch/trace/workflow.md +0 -39
- package/_bmad/tea/workflows/testarch/trace/workflow.yaml +0 -55
|
@@ -1,889 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Integration Tests: Full BMAD Workflow
|
|
3
|
-
*
|
|
4
|
-
* Tests the COMPLETE integrated workflow with ALL 4 BMAD modules:
|
|
5
|
-
* - GlossaryBuilder
|
|
6
|
-
* - FiveWhysAnalyzer
|
|
7
|
-
* - ActiveListener
|
|
8
|
-
* - MantraValidator
|
|
9
|
-
*
|
|
10
|
-
* Scenario: E-commerce Agent Creation with Full BMAD Features
|
|
11
|
-
*
|
|
12
|
-
* Workflow Steps:
|
|
13
|
-
* 1. Setup: Start BYAN v2 with all BMAD features
|
|
14
|
-
* 2. Interview: 12 questions with pain point detection
|
|
15
|
-
* 3. 5 Whys: Analyze "slow checkout" root cause
|
|
16
|
-
* 4. Glossary: Define 5 ecommerce concepts
|
|
17
|
-
* 5. Active Listening: Reformulate every 3 responses
|
|
18
|
-
* 6. Analysis: Process all data
|
|
19
|
-
* 7. Generation: Create agent definition
|
|
20
|
-
* 8. Validation: Check 64 mantras compliance
|
|
21
|
-
*
|
|
22
|
-
* Quality: KISS, DRY, SOLID
|
|
23
|
-
* Performance: < 10s total execution
|
|
24
|
-
* Mantra IA-23: Zero emojis
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
const ByanV2 = require('../../../src/byan-v2');
|
|
28
|
-
const GlossaryBuilder = require('../../../src/byan-v2/orchestrator/glossary-builder');
|
|
29
|
-
const FiveWhysAnalyzer = require('../../../src/byan-v2/dispatcher/five-whys-analyzer');
|
|
30
|
-
const ActiveListener = require('../../../src/byan-v2/orchestrator/active-listener');
|
|
31
|
-
const MantraValidator = require('../../../src/byan-v2/generation/mantra-validator');
|
|
32
|
-
|
|
33
|
-
describe('Full BMAD Workflow Integration', () => {
|
|
34
|
-
let byan;
|
|
35
|
-
let startTime;
|
|
36
|
-
|
|
37
|
-
beforeEach(() => {
|
|
38
|
-
startTime = Date.now();
|
|
39
|
-
|
|
40
|
-
byan = new ByanV2({
|
|
41
|
-
sessionId: 'test-full-bmad-workflow',
|
|
42
|
-
maxQuestions: 12,
|
|
43
|
-
bmad_features: {
|
|
44
|
-
glossary: {
|
|
45
|
-
enabled: true,
|
|
46
|
-
min_concepts: 5,
|
|
47
|
-
validation: {
|
|
48
|
-
min_definition_length: 20,
|
|
49
|
-
clarity_threshold: 0.7
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
five_whys: {
|
|
53
|
-
enabled: true,
|
|
54
|
-
max_depth: 5,
|
|
55
|
-
pain_keywords: ['problem', 'issue', 'slow', 'error', 'fail']
|
|
56
|
-
},
|
|
57
|
-
active_listening: {
|
|
58
|
-
enabled: true,
|
|
59
|
-
reformulate_every: 3,
|
|
60
|
-
clarity_threshold: 0.7
|
|
61
|
-
},
|
|
62
|
-
mantra_validation: {
|
|
63
|
-
enabled: true,
|
|
64
|
-
min_compliance_score: 80
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
afterEach(() => {
|
|
71
|
-
const duration = Date.now() - startTime;
|
|
72
|
-
console.log(`Test execution time: ${duration}ms`);
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
describe('Setup: Initialize with All BMAD Features', () => {
|
|
76
|
-
it('should initialize ByanV2 with all 4 BMAD modules', () => {
|
|
77
|
-
expect(byan).toBeDefined();
|
|
78
|
-
expect(byan.glossaryBuilder).toBeInstanceOf(GlossaryBuilder);
|
|
79
|
-
expect(byan.fiveWhysAnalyzer).toBeInstanceOf(FiveWhysAnalyzer);
|
|
80
|
-
expect(byan.activeListener).toBeInstanceOf(ActiveListener);
|
|
81
|
-
expect(byan.mantraValidator).toBeInstanceOf(MantraValidator);
|
|
82
|
-
});
|
|
83
|
-
|
|
84
|
-
it('should configure all modules correctly', () => {
|
|
85
|
-
expect(byan.glossaryBuilder.minConcepts).toBe(5);
|
|
86
|
-
expect(byan.fiveWhysAnalyzer.maxDepth).toBe(5);
|
|
87
|
-
expect(byan.activeListener.validationFrequency).toBe(3);
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
it('should initialize session state', () => {
|
|
91
|
-
expect(byan.sessionState).toBeDefined();
|
|
92
|
-
expect(byan.sessionState.sessionId).toBe('test-full-bmad-workflow');
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
it('should verify all modules are enabled', () => {
|
|
96
|
-
const config = byan.config.bmad_features;
|
|
97
|
-
|
|
98
|
-
expect(config.glossary.enabled).toBe(true);
|
|
99
|
-
expect(config.five_whys.enabled).toBe(true);
|
|
100
|
-
expect(config.active_listening.enabled).toBe(true);
|
|
101
|
-
expect(config.mantra_validation.enabled).toBe(true);
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
|
|
105
|
-
describe('Interview Phase with Active Listening', () => {
|
|
106
|
-
it('should start interview with initial question', () => {
|
|
107
|
-
byan.stateMachine.transition('START');
|
|
108
|
-
byan.stateMachine.transition('INTERVIEW');
|
|
109
|
-
|
|
110
|
-
const question = byan.interviewState.getNextQuestion();
|
|
111
|
-
expect(question).toBeDefined();
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
it('should process user response with active listening', () => {
|
|
115
|
-
const response = 'I want to build an ecommerce agent for order management';
|
|
116
|
-
const result = byan.activeListener.listen(response);
|
|
117
|
-
|
|
118
|
-
expect(result.valid).toBe(true);
|
|
119
|
-
expect(result.reformulated).toBeDefined();
|
|
120
|
-
expect(result.clarityScore).toBeGreaterThanOrEqual(0);
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
it('should detect pain point in interview response', () => {
|
|
124
|
-
const response = 'Our checkout process is slow and customers complain about it';
|
|
125
|
-
const result = byan.fiveWhysAnalyzer.start(response);
|
|
126
|
-
|
|
127
|
-
expect(result.needsWhys).toBe(true);
|
|
128
|
-
expect(result.painPoints.length).toBeGreaterThan(0);
|
|
129
|
-
expect(result.firstQuestion).toBeDefined();
|
|
130
|
-
});
|
|
131
|
-
|
|
132
|
-
it('should reformulate every 3rd response during interview', () => {
|
|
133
|
-
const responses = [
|
|
134
|
-
'I need an ecommerce agent',
|
|
135
|
-
'For order management and tracking',
|
|
136
|
-
'With real-time inventory updates'
|
|
137
|
-
];
|
|
138
|
-
|
|
139
|
-
responses.forEach((response, index) => {
|
|
140
|
-
const result = byan.activeListener.listen(response);
|
|
141
|
-
|
|
142
|
-
if ((index + 1) % 3 === 0) {
|
|
143
|
-
expect(result.needsValidation).toBe(true);
|
|
144
|
-
}
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
|
|
148
|
-
it('should complete 12 interview questions with active listening', () => {
|
|
149
|
-
const mockResponses = [
|
|
150
|
-
'Ecommerce platform agent',
|
|
151
|
-
'For product recommendations',
|
|
152
|
-
'Based on customer history',
|
|
153
|
-
'Integration with inventory',
|
|
154
|
-
'Real-time stock checking',
|
|
155
|
-
'Payment gateway support',
|
|
156
|
-
'Order tracking features',
|
|
157
|
-
'Customer notification system',
|
|
158
|
-
'Returns and refunds handling',
|
|
159
|
-
'Analytics and reporting',
|
|
160
|
-
'Mobile app integration',
|
|
161
|
-
'Multi-language support'
|
|
162
|
-
];
|
|
163
|
-
|
|
164
|
-
mockResponses.forEach(response => {
|
|
165
|
-
const result = byan.activeListener.listen(response);
|
|
166
|
-
expect(result.valid).toBe(true);
|
|
167
|
-
});
|
|
168
|
-
|
|
169
|
-
expect(byan.activeListener.history.length).toBe(12);
|
|
170
|
-
});
|
|
171
|
-
});
|
|
172
|
-
|
|
173
|
-
describe('5 Whys Phase: Root Cause Analysis', () => {
|
|
174
|
-
beforeEach(() => {
|
|
175
|
-
byan.stateMachine.transition('START');
|
|
176
|
-
byan.stateMachine.transition('INTERVIEW');
|
|
177
|
-
});
|
|
178
|
-
|
|
179
|
-
it('should detect slow checkout pain point', () => {
|
|
180
|
-
const response = 'Our biggest problem is the slow checkout process causing cart abandonment';
|
|
181
|
-
const result = byan.fiveWhysAnalyzer.start(response);
|
|
182
|
-
|
|
183
|
-
expect(result.needsWhys).toBe(true);
|
|
184
|
-
expect(result.painPoints.some(p => p.keyword === 'slow' || p.keyword === 'problem')).toBe(true);
|
|
185
|
-
});
|
|
186
|
-
|
|
187
|
-
it('should ask 5 sequential WHY questions', () => {
|
|
188
|
-
byan.fiveWhysAnalyzer.start('Checkout is slow');
|
|
189
|
-
|
|
190
|
-
const whyAnswers = [
|
|
191
|
-
'Because payment gateway takes too long to respond',
|
|
192
|
-
'Because we make synchronous calls to external services',
|
|
193
|
-
'Because no caching mechanism was implemented',
|
|
194
|
-
'Because caching was not prioritized in development',
|
|
195
|
-
'Because we lacked infrastructure expertise'
|
|
196
|
-
];
|
|
197
|
-
|
|
198
|
-
whyAnswers.forEach((answer, index) => {
|
|
199
|
-
const question = byan.fiveWhysAnalyzer.askNext();
|
|
200
|
-
expect(question).toBeDefined();
|
|
201
|
-
expect(question.depth).toBe(index + 1);
|
|
202
|
-
|
|
203
|
-
const result = byan.fiveWhysAnalyzer.processAnswer(answer);
|
|
204
|
-
expect(result.valid).toBe(true);
|
|
205
|
-
});
|
|
206
|
-
|
|
207
|
-
expect(byan.fiveWhysAnalyzer.depth).toBe(5);
|
|
208
|
-
});
|
|
209
|
-
|
|
210
|
-
it('should extract root cause: lack of caching infrastructure', () => {
|
|
211
|
-
byan.fiveWhysAnalyzer.start('Checkout is slow');
|
|
212
|
-
|
|
213
|
-
const whyAnswers = [
|
|
214
|
-
'Payment gateway responds slowly',
|
|
215
|
-
'Synchronous external API calls',
|
|
216
|
-
'No caching mechanism implemented',
|
|
217
|
-
'Caching not prioritized',
|
|
218
|
-
'Lack of infrastructure expertise'
|
|
219
|
-
];
|
|
220
|
-
|
|
221
|
-
whyAnswers.forEach(answer => {
|
|
222
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
223
|
-
byan.fiveWhysAnalyzer.processAnswer(answer);
|
|
224
|
-
});
|
|
225
|
-
|
|
226
|
-
const rootCause = byan.fiveWhysAnalyzer.extractRootCause();
|
|
227
|
-
|
|
228
|
-
expect(rootCause).toBeDefined();
|
|
229
|
-
expect(rootCause.cause).toContain('infrastructure expertise');
|
|
230
|
-
expect(rootCause.depth).toBe(5);
|
|
231
|
-
});
|
|
232
|
-
|
|
233
|
-
it('should categorize root cause as technical', () => {
|
|
234
|
-
byan.fiveWhysAnalyzer.start('Slow checkout problem');
|
|
235
|
-
|
|
236
|
-
const answers = [
|
|
237
|
-
'Payment processing delays',
|
|
238
|
-
'Synchronous API calls',
|
|
239
|
-
'No caching infrastructure',
|
|
240
|
-
'Infrastructure not implemented',
|
|
241
|
-
'Lack of technical expertise'
|
|
242
|
-
];
|
|
243
|
-
|
|
244
|
-
answers.forEach(answer => {
|
|
245
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
246
|
-
byan.fiveWhysAnalyzer.processAnswer(answer);
|
|
247
|
-
});
|
|
248
|
-
|
|
249
|
-
const category = byan.fiveWhysAnalyzer.categorizeRootCause();
|
|
250
|
-
expect(['technical', 'knowledge']).toContain(category);
|
|
251
|
-
});
|
|
252
|
-
|
|
253
|
-
it('should extract action items from 5 Whys analysis', () => {
|
|
254
|
-
byan.fiveWhysAnalyzer.start('Checkout performance issue');
|
|
255
|
-
|
|
256
|
-
const answers = [
|
|
257
|
-
'Payment gateway timeout',
|
|
258
|
-
'No retry mechanism',
|
|
259
|
-
'Error handling not implemented',
|
|
260
|
-
'Best practices not followed',
|
|
261
|
-
'Team lacks expertise'
|
|
262
|
-
];
|
|
263
|
-
|
|
264
|
-
answers.forEach(answer => {
|
|
265
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
266
|
-
byan.fiveWhysAnalyzer.processAnswer(answer);
|
|
267
|
-
});
|
|
268
|
-
|
|
269
|
-
const actions = byan.fiveWhysAnalyzer.extractActionItems();
|
|
270
|
-
|
|
271
|
-
expect(actions).toBeDefined();
|
|
272
|
-
expect(actions.length).toBeGreaterThan(0);
|
|
273
|
-
expect(actions[0].description).toBeDefined();
|
|
274
|
-
expect(actions[0].priority).toBeDefined();
|
|
275
|
-
});
|
|
276
|
-
});
|
|
277
|
-
|
|
278
|
-
describe('Glossary Phase: Domain Vocabulary', () => {
|
|
279
|
-
it('should auto-trigger glossary for ecommerce domain', () => {
|
|
280
|
-
const sessionData = {
|
|
281
|
-
domain: 'ecommerce',
|
|
282
|
-
context: 'online shopping platform'
|
|
283
|
-
};
|
|
284
|
-
|
|
285
|
-
const shouldTrigger = byan.glossaryBuilder._shouldTriggerForDomain(sessionData);
|
|
286
|
-
expect(shouldTrigger).toBe(true);
|
|
287
|
-
});
|
|
288
|
-
|
|
289
|
-
it('should guide user to define 5 core concepts', () => {
|
|
290
|
-
const result = byan.glossaryBuilder.start();
|
|
291
|
-
|
|
292
|
-
expect(result.prompt).toBeDefined();
|
|
293
|
-
expect(result.instructions).toContain('5 core concepts');
|
|
294
|
-
});
|
|
295
|
-
|
|
296
|
-
it('should define order concept with validation', () => {
|
|
297
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
298
|
-
'order',
|
|
299
|
-
'A customer request to purchase one or more products with payment and delivery information'
|
|
300
|
-
);
|
|
301
|
-
|
|
302
|
-
expect(result.valid).toBe(true);
|
|
303
|
-
expect(result.concept.name).toBe('order');
|
|
304
|
-
expect(result.concept.clarityScore).toBeGreaterThanOrEqual(0.7);
|
|
305
|
-
});
|
|
306
|
-
|
|
307
|
-
it('should define product concept with validation', () => {
|
|
308
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
309
|
-
'product',
|
|
310
|
-
'An item available for sale with attributes like name, price, description, and inventory count'
|
|
311
|
-
);
|
|
312
|
-
|
|
313
|
-
expect(result.valid).toBe(true);
|
|
314
|
-
expect(result.concept.name).toBe('product');
|
|
315
|
-
});
|
|
316
|
-
|
|
317
|
-
it('should define cart concept with validation', () => {
|
|
318
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
319
|
-
'cart',
|
|
320
|
-
'A temporary collection of products selected by a customer before proceeding to checkout'
|
|
321
|
-
);
|
|
322
|
-
|
|
323
|
-
expect(result.valid).toBe(true);
|
|
324
|
-
expect(result.concept.name).toBe('cart');
|
|
325
|
-
});
|
|
326
|
-
|
|
327
|
-
it('should define payment concept with validation', () => {
|
|
328
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
329
|
-
'payment',
|
|
330
|
-
'A financial transaction that transfers money from customer to merchant for purchased items'
|
|
331
|
-
);
|
|
332
|
-
|
|
333
|
-
expect(result.valid).toBe(true);
|
|
334
|
-
expect(result.concept.name).toBe('payment');
|
|
335
|
-
});
|
|
336
|
-
|
|
337
|
-
it('should define inventory concept with validation', () => {
|
|
338
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
339
|
-
'inventory',
|
|
340
|
-
'The stock quantity and availability status of products in the warehouse or distribution center'
|
|
341
|
-
);
|
|
342
|
-
|
|
343
|
-
expect(result.valid).toBe(true);
|
|
344
|
-
expect(result.concept.name).toBe('inventory');
|
|
345
|
-
});
|
|
346
|
-
|
|
347
|
-
it('should reject vague definition and challenge user', () => {
|
|
348
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
349
|
-
'customer',
|
|
350
|
-
'A person who buys stuff'
|
|
351
|
-
);
|
|
352
|
-
|
|
353
|
-
expect(result.valid).toBe(false);
|
|
354
|
-
expect(result.issues.length).toBeGreaterThan(0);
|
|
355
|
-
});
|
|
356
|
-
|
|
357
|
-
it('should suggest related concepts after defining core terms', () => {
|
|
358
|
-
byan.glossaryBuilder.addConcept('order', 'A customer request to purchase products with delivery details');
|
|
359
|
-
|
|
360
|
-
const suggestions = byan.glossaryBuilder.suggestRelatedConcepts(byan.glossaryBuilder.concepts);
|
|
361
|
-
|
|
362
|
-
expect(suggestions.length).toBeGreaterThan(0);
|
|
363
|
-
expect(suggestions.some(s => s.name === 'customer' || s.name === 'product')).toBe(true);
|
|
364
|
-
});
|
|
365
|
-
|
|
366
|
-
it('should complete glossary with 5 valid concepts', () => {
|
|
367
|
-
const concepts = [
|
|
368
|
-
{ name: 'order', definition: 'A customer request to purchase products with payment and delivery information' },
|
|
369
|
-
{ name: 'product', definition: 'An item available for sale with attributes like name, price, and description' },
|
|
370
|
-
{ name: 'cart', definition: 'A temporary collection of products selected by a customer before checkout' },
|
|
371
|
-
{ name: 'payment', definition: 'A financial transaction transferring money from customer to merchant' },
|
|
372
|
-
{ name: 'inventory', definition: 'The stock quantity and availability status of products in warehouse' }
|
|
373
|
-
];
|
|
374
|
-
|
|
375
|
-
concepts.forEach(c => {
|
|
376
|
-
const result = byan.glossaryBuilder.addConcept(c.name, c.definition);
|
|
377
|
-
expect(result.valid).toBe(true);
|
|
378
|
-
});
|
|
379
|
-
|
|
380
|
-
expect(byan.glossaryBuilder.isComplete()).toBe(true);
|
|
381
|
-
expect(byan.glossaryBuilder.concepts.length).toBe(5);
|
|
382
|
-
});
|
|
383
|
-
});
|
|
384
|
-
|
|
385
|
-
describe('Analysis Phase: Process All Data', () => {
|
|
386
|
-
beforeEach(() => {
|
|
387
|
-
// Setup complete interview data
|
|
388
|
-
const responses = [
|
|
389
|
-
'Ecommerce agent for order management',
|
|
390
|
-
'Product recommendations engine',
|
|
391
|
-
'Real-time inventory tracking',
|
|
392
|
-
'Payment gateway integration',
|
|
393
|
-
'Customer notification system',
|
|
394
|
-
'Returns and refunds processing'
|
|
395
|
-
];
|
|
396
|
-
|
|
397
|
-
responses.forEach(r => byan.activeListener.listen(r));
|
|
398
|
-
|
|
399
|
-
// Setup 5 Whys data
|
|
400
|
-
byan.fiveWhysAnalyzer.start('Slow checkout causing problems');
|
|
401
|
-
const whyAnswers = [
|
|
402
|
-
'Payment gateway delays',
|
|
403
|
-
'Synchronous API calls',
|
|
404
|
-
'No caching implemented',
|
|
405
|
-
'Not prioritized',
|
|
406
|
-
'Lack of expertise'
|
|
407
|
-
];
|
|
408
|
-
whyAnswers.forEach(a => {
|
|
409
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
410
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
411
|
-
});
|
|
412
|
-
|
|
413
|
-
// Setup glossary data
|
|
414
|
-
const concepts = [
|
|
415
|
-
{ name: 'order', definition: 'A customer request to purchase products with payment details' },
|
|
416
|
-
{ name: 'product', definition: 'An item available for sale with price and description' },
|
|
417
|
-
{ name: 'cart', definition: 'A temporary collection of products before checkout' },
|
|
418
|
-
{ name: 'payment', definition: 'Financial transaction from customer to merchant' },
|
|
419
|
-
{ name: 'inventory', definition: 'Stock quantity and availability of products' }
|
|
420
|
-
];
|
|
421
|
-
concepts.forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
422
|
-
});
|
|
423
|
-
|
|
424
|
-
it('should transition to analysis state', () => {
|
|
425
|
-
byan.stateMachine.transition('START');
|
|
426
|
-
byan.stateMachine.transition('INTERVIEW');
|
|
427
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
428
|
-
|
|
429
|
-
expect(byan.stateMachine.currentState).toBe('ANALYSIS');
|
|
430
|
-
});
|
|
431
|
-
|
|
432
|
-
it('should include active listening summary in analysis', () => {
|
|
433
|
-
const listeningData = byan.activeListener.export();
|
|
434
|
-
|
|
435
|
-
expect(listeningData.summary).toBeDefined();
|
|
436
|
-
expect(listeningData.history.length).toBeGreaterThan(0);
|
|
437
|
-
});
|
|
438
|
-
|
|
439
|
-
it('should include 5 Whys root cause in analysis', () => {
|
|
440
|
-
const whysData = byan.fiveWhysAnalyzer.export();
|
|
441
|
-
|
|
442
|
-
expect(whysData.rootCause).toBeDefined();
|
|
443
|
-
expect(whysData.category).toBeDefined();
|
|
444
|
-
expect(whysData.actions).toBeDefined();
|
|
445
|
-
});
|
|
446
|
-
|
|
447
|
-
it('should include glossary in analysis', () => {
|
|
448
|
-
const glossaryData = byan.glossaryBuilder.export();
|
|
449
|
-
|
|
450
|
-
expect(glossaryData.concepts.length).toBe(5);
|
|
451
|
-
expect(glossaryData.metadata.complete).toBe(true);
|
|
452
|
-
});
|
|
453
|
-
|
|
454
|
-
it('should create comprehensive analysis combining all data', () => {
|
|
455
|
-
const analysisData = {
|
|
456
|
-
listening: byan.activeListener.export(),
|
|
457
|
-
rootCause: byan.fiveWhysAnalyzer.export(),
|
|
458
|
-
glossary: byan.glossaryBuilder.export()
|
|
459
|
-
};
|
|
460
|
-
|
|
461
|
-
expect(analysisData.listening.history.length).toBeGreaterThan(0);
|
|
462
|
-
expect(analysisData.rootCause.responses.length).toBe(6);
|
|
463
|
-
expect(analysisData.glossary.concepts.length).toBe(5);
|
|
464
|
-
});
|
|
465
|
-
});
|
|
466
|
-
|
|
467
|
-
describe('Generation Phase: Create Agent Definition', () => {
|
|
468
|
-
beforeEach(() => {
|
|
469
|
-
// Setup complete data from previous phases
|
|
470
|
-
const responses = [
|
|
471
|
-
'Ecommerce agent',
|
|
472
|
-
'Order management',
|
|
473
|
-
'Inventory tracking',
|
|
474
|
-
'Payment processing',
|
|
475
|
-
'Customer notifications',
|
|
476
|
-
'Analytics dashboard'
|
|
477
|
-
];
|
|
478
|
-
responses.forEach(r => byan.activeListener.listen(r));
|
|
479
|
-
|
|
480
|
-
byan.fiveWhysAnalyzer.start('Slow checkout');
|
|
481
|
-
['Payment delays', 'API calls', 'No caching', 'Not prioritized', 'No expertise'].forEach(a => {
|
|
482
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
483
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
484
|
-
});
|
|
485
|
-
|
|
486
|
-
[
|
|
487
|
-
{ name: 'order', definition: 'Customer request to purchase products with payment and delivery' },
|
|
488
|
-
{ name: 'product', definition: 'Item available for sale with price and description' },
|
|
489
|
-
{ name: 'cart', definition: 'Temporary collection of products before checkout' },
|
|
490
|
-
{ name: 'payment', definition: 'Financial transaction from customer to merchant' },
|
|
491
|
-
{ name: 'inventory', definition: 'Stock quantity and availability of products' }
|
|
492
|
-
].forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
493
|
-
});
|
|
494
|
-
|
|
495
|
-
it('should transition to generation state', () => {
|
|
496
|
-
byan.stateMachine.transition('START');
|
|
497
|
-
byan.stateMachine.transition('INTERVIEW');
|
|
498
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
499
|
-
byan.stateMachine.transition('GENERATION');
|
|
500
|
-
|
|
501
|
-
expect(byan.stateMachine.currentState).toBe('GENERATION');
|
|
502
|
-
});
|
|
503
|
-
|
|
504
|
-
it('should generate agent definition with all collected data', () => {
|
|
505
|
-
const agentDefinition = {
|
|
506
|
-
name: 'EcommerceOrderAgent',
|
|
507
|
-
description: 'Agent for ecommerce order management with inventory tracking',
|
|
508
|
-
purpose: byan.activeListener.generateConsolidatedSummary(),
|
|
509
|
-
rootCause: byan.fiveWhysAnalyzer.extractRootCause(),
|
|
510
|
-
glossary: byan.glossaryBuilder.export(),
|
|
511
|
-
actionItems: byan.fiveWhysAnalyzer.extractActionItems()
|
|
512
|
-
};
|
|
513
|
-
|
|
514
|
-
expect(agentDefinition.name).toBeDefined();
|
|
515
|
-
expect(agentDefinition.purpose).toBeDefined();
|
|
516
|
-
expect(agentDefinition.rootCause).toBeDefined();
|
|
517
|
-
expect(agentDefinition.glossary.concepts.length).toBe(5);
|
|
518
|
-
});
|
|
519
|
-
|
|
520
|
-
it('should include root cause insights in agent design', () => {
|
|
521
|
-
const rootCause = byan.fiveWhysAnalyzer.extractRootCause();
|
|
522
|
-
|
|
523
|
-
expect(rootCause.cause).toBeDefined();
|
|
524
|
-
expect(rootCause.depth).toBe(5);
|
|
525
|
-
});
|
|
526
|
-
|
|
527
|
-
it('should incorporate glossary into agent documentation', () => {
|
|
528
|
-
const glossary = byan.glossaryBuilder.export();
|
|
529
|
-
const markdown = byan.glossaryBuilder.exportAsMarkdown();
|
|
530
|
-
|
|
531
|
-
expect(glossary.concepts.length).toBe(5);
|
|
532
|
-
expect(markdown).toContain('# Business Glossary');
|
|
533
|
-
expect(markdown).toContain('order');
|
|
534
|
-
expect(markdown).toContain('product');
|
|
535
|
-
});
|
|
536
|
-
});
|
|
537
|
-
|
|
538
|
-
describe('Validation Phase: Mantra Compliance', () => {
|
|
539
|
-
let agentDefinition;
|
|
540
|
-
|
|
541
|
-
beforeEach(() => {
|
|
542
|
-
agentDefinition = {
|
|
543
|
-
name: 'EcommerceOrderAgent',
|
|
544
|
-
description: 'Ecommerce order management agent with inventory tracking',
|
|
545
|
-
purpose: 'Help customers manage orders and track inventory in real-time',
|
|
546
|
-
capabilities: [
|
|
547
|
-
'Order creation and management',
|
|
548
|
-
'Real-time inventory checking',
|
|
549
|
-
'Payment processing',
|
|
550
|
-
'Customer notifications'
|
|
551
|
-
],
|
|
552
|
-
dataModel: byan.glossaryBuilder.export(),
|
|
553
|
-
rootCauseAnalysis: byan.fiveWhysAnalyzer.export()
|
|
554
|
-
};
|
|
555
|
-
});
|
|
556
|
-
|
|
557
|
-
it('should validate agent against 64 mantras', () => {
|
|
558
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
559
|
-
|
|
560
|
-
expect(validation).toBeDefined();
|
|
561
|
-
expect(validation.totalMantras).toBe(64);
|
|
562
|
-
expect(validation.results).toBeDefined();
|
|
563
|
-
});
|
|
564
|
-
|
|
565
|
-
it('should achieve compliance score >= 80', () => {
|
|
566
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
567
|
-
|
|
568
|
-
expect(validation.complianceScore).toBeGreaterThanOrEqual(80);
|
|
569
|
-
});
|
|
570
|
-
|
|
571
|
-
it('should validate mantra IA-23: Zero Emojis', () => {
|
|
572
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
573
|
-
const ia23 = validation.results.find(r => r.mantraId === 'IA-23');
|
|
574
|
-
|
|
575
|
-
if (ia23) {
|
|
576
|
-
expect(ia23.compliant).toBe(true);
|
|
577
|
-
}
|
|
578
|
-
});
|
|
579
|
-
|
|
580
|
-
it('should validate mantra #33: Data Dictionary First', () => {
|
|
581
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
582
|
-
const dataDictionary = validation.results.find(r => r.mantraId === 'M33' || r.description?.includes('Data Dictionary'));
|
|
583
|
-
|
|
584
|
-
if (dataDictionary) {
|
|
585
|
-
expect(dataDictionary.compliant).toBe(true);
|
|
586
|
-
}
|
|
587
|
-
});
|
|
588
|
-
|
|
589
|
-
it('should generate compliance report', () => {
|
|
590
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
591
|
-
const report = byan.mantraValidator.generateReport(validation);
|
|
592
|
-
|
|
593
|
-
expect(report).toBeDefined();
|
|
594
|
-
expect(report).toContain('Compliance Score');
|
|
595
|
-
expect(report).toContain('64');
|
|
596
|
-
});
|
|
597
|
-
|
|
598
|
-
it('should identify non-compliant mantras if any', () => {
|
|
599
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
600
|
-
const nonCompliant = validation.results.filter(r => !r.compliant);
|
|
601
|
-
|
|
602
|
-
nonCompliant.forEach(nc => {
|
|
603
|
-
expect(nc.reason).toBeDefined();
|
|
604
|
-
expect(nc.suggestion).toBeDefined();
|
|
605
|
-
});
|
|
606
|
-
});
|
|
607
|
-
});
|
|
608
|
-
|
|
609
|
-
describe('Complete Workflow End-to-End', () => {
|
|
610
|
-
it('should execute full workflow from start to validation', () => {
|
|
611
|
-
// 1. Start session
|
|
612
|
-
byan.stateMachine.transition('START');
|
|
613
|
-
expect(byan.stateMachine.currentState).toBe('START');
|
|
614
|
-
|
|
615
|
-
// 2. Interview phase with active listening
|
|
616
|
-
byan.stateMachine.transition('INTERVIEW');
|
|
617
|
-
|
|
618
|
-
const interviewResponses = [
|
|
619
|
-
'I want an ecommerce agent for order management',
|
|
620
|
-
'It should handle product recommendations',
|
|
621
|
-
'Based on customer purchase history and browsing behavior',
|
|
622
|
-
'The checkout process is slow and causes cart abandonment',
|
|
623
|
-
'We need real-time inventory integration',
|
|
624
|
-
'Payment gateway support for multiple providers',
|
|
625
|
-
'Automated customer notifications for order status',
|
|
626
|
-
'Returns and refunds processing workflow',
|
|
627
|
-
'Analytics dashboard for business insights',
|
|
628
|
-
'Mobile app integration for customer convenience',
|
|
629
|
-
'Multi-language support for global customers',
|
|
630
|
-
'Security and compliance with payment standards'
|
|
631
|
-
];
|
|
632
|
-
|
|
633
|
-
interviewResponses.forEach((response, index) => {
|
|
634
|
-
const listenResult = byan.activeListener.listen(response);
|
|
635
|
-
expect(listenResult.valid).toBe(true);
|
|
636
|
-
|
|
637
|
-
// Validate understanding every 3 responses
|
|
638
|
-
if ((index + 1) % 3 === 0) {
|
|
639
|
-
expect(listenResult.needsValidation).toBe(true);
|
|
640
|
-
const summary = byan.activeListener.generateConsolidatedSummary();
|
|
641
|
-
const validation = byan.activeListener.validateUnderstanding('yes', summary);
|
|
642
|
-
expect(validation.validated).toBe(true);
|
|
643
|
-
}
|
|
644
|
-
});
|
|
645
|
-
|
|
646
|
-
// 3. 5 Whys triggered by pain point in response 4
|
|
647
|
-
const whysResult = byan.fiveWhysAnalyzer.start(interviewResponses[3]);
|
|
648
|
-
expect(whysResult.needsWhys).toBe(true);
|
|
649
|
-
|
|
650
|
-
const whyAnswers = [
|
|
651
|
-
'Because payment gateway takes too long to respond',
|
|
652
|
-
'Because we make synchronous calls to external services',
|
|
653
|
-
'Because no caching mechanism was implemented',
|
|
654
|
-
'Because caching was not prioritized in development',
|
|
655
|
-
'Because we lacked infrastructure expertise during planning'
|
|
656
|
-
];
|
|
657
|
-
|
|
658
|
-
whyAnswers.forEach(answer => {
|
|
659
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
660
|
-
byan.fiveWhysAnalyzer.processAnswer(answer);
|
|
661
|
-
});
|
|
662
|
-
|
|
663
|
-
const rootCause = byan.fiveWhysAnalyzer.extractRootCause();
|
|
664
|
-
expect(rootCause).toBeDefined();
|
|
665
|
-
expect(rootCause.cause).toContain('infrastructure expertise');
|
|
666
|
-
|
|
667
|
-
// 4. Glossary phase
|
|
668
|
-
const glossaryStart = byan.glossaryBuilder.start();
|
|
669
|
-
expect(glossaryStart.instructions).toContain('5 core concepts');
|
|
670
|
-
|
|
671
|
-
const concepts = [
|
|
672
|
-
{ name: 'order', definition: 'A customer request to purchase products with payment and delivery information' },
|
|
673
|
-
{ name: 'product', definition: 'An item available for sale with attributes like name, price, and description' },
|
|
674
|
-
{ name: 'cart', definition: 'A temporary collection of products selected by customer before checkout' },
|
|
675
|
-
{ name: 'payment', definition: 'A financial transaction transferring money from customer to merchant' },
|
|
676
|
-
{ name: 'inventory', definition: 'The stock quantity and availability status of products in warehouse' }
|
|
677
|
-
];
|
|
678
|
-
|
|
679
|
-
concepts.forEach(concept => {
|
|
680
|
-
const result = byan.glossaryBuilder.addConcept(concept.name, concept.definition);
|
|
681
|
-
expect(result.valid).toBe(true);
|
|
682
|
-
});
|
|
683
|
-
|
|
684
|
-
expect(byan.glossaryBuilder.isComplete()).toBe(true);
|
|
685
|
-
|
|
686
|
-
// 5. Analysis phase
|
|
687
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
688
|
-
|
|
689
|
-
const analysisData = {
|
|
690
|
-
listening: byan.activeListener.export(),
|
|
691
|
-
rootCause: byan.fiveWhysAnalyzer.export(),
|
|
692
|
-
glossary: byan.glossaryBuilder.export()
|
|
693
|
-
};
|
|
694
|
-
|
|
695
|
-
expect(analysisData.listening.history.length).toBe(12);
|
|
696
|
-
expect(analysisData.rootCause.responses.length).toBe(6);
|
|
697
|
-
expect(analysisData.glossary.concepts.length).toBe(5);
|
|
698
|
-
|
|
699
|
-
// 6. Generation phase
|
|
700
|
-
byan.stateMachine.transition('GENERATION');
|
|
701
|
-
|
|
702
|
-
const agentDefinition = {
|
|
703
|
-
name: 'EcommerceOrderManagementAgent',
|
|
704
|
-
description: 'Comprehensive ecommerce agent for order management with real-time inventory',
|
|
705
|
-
purpose: analysisData.listening.summary,
|
|
706
|
-
rootCauseInsights: analysisData.rootCause,
|
|
707
|
-
domainModel: analysisData.glossary,
|
|
708
|
-
capabilities: [
|
|
709
|
-
'Order creation and tracking',
|
|
710
|
-
'Real-time inventory checking',
|
|
711
|
-
'Payment gateway integration',
|
|
712
|
-
'Customer notifications',
|
|
713
|
-
'Returns and refunds',
|
|
714
|
-
'Analytics and reporting'
|
|
715
|
-
]
|
|
716
|
-
};
|
|
717
|
-
|
|
718
|
-
expect(agentDefinition.name).toBeDefined();
|
|
719
|
-
expect(agentDefinition.domainModel.concepts.length).toBe(5);
|
|
720
|
-
expect(agentDefinition.rootCauseInsights.rootCause).toBeDefined();
|
|
721
|
-
|
|
722
|
-
// 7. Validation phase
|
|
723
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
724
|
-
|
|
725
|
-
expect(validation.totalMantras).toBe(64);
|
|
726
|
-
expect(validation.complianceScore).toBeGreaterThanOrEqual(80);
|
|
727
|
-
|
|
728
|
-
const report = byan.mantraValidator.generateReport(validation);
|
|
729
|
-
expect(report).toContain('Compliance Score');
|
|
730
|
-
|
|
731
|
-
// 8. Verify state machine progression
|
|
732
|
-
expect(byan.stateMachine.currentState).toBe('GENERATION');
|
|
733
|
-
});
|
|
734
|
-
|
|
735
|
-
it('should maintain data consistency across all phases', () => {
|
|
736
|
-
// Collect data from all phases
|
|
737
|
-
const responses = [
|
|
738
|
-
'Ecommerce agent',
|
|
739
|
-
'Order management',
|
|
740
|
-
'Slow checkout is a problem'
|
|
741
|
-
];
|
|
742
|
-
|
|
743
|
-
responses.forEach(r => byan.activeListener.listen(r));
|
|
744
|
-
|
|
745
|
-
byan.fiveWhysAnalyzer.start('Slow checkout problem');
|
|
746
|
-
['Payment delays', 'API calls', 'No caching', 'Not prioritized', 'No expertise'].forEach(a => {
|
|
747
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
748
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
749
|
-
});
|
|
750
|
-
|
|
751
|
-
[
|
|
752
|
-
{ name: 'order', definition: 'Customer request to purchase products with delivery information' },
|
|
753
|
-
{ name: 'product', definition: 'Item available for sale with price and description attributes' },
|
|
754
|
-
{ name: 'cart', definition: 'Temporary collection of products selected before checkout' },
|
|
755
|
-
{ name: 'payment', definition: 'Financial transaction from customer to merchant for items' },
|
|
756
|
-
{ name: 'inventory', definition: 'Stock quantity and availability status of products' }
|
|
757
|
-
].forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
758
|
-
|
|
759
|
-
// Verify data consistency
|
|
760
|
-
const listeningData = byan.activeListener.export();
|
|
761
|
-
const whysData = byan.fiveWhysAnalyzer.export();
|
|
762
|
-
const glossaryData = byan.glossaryBuilder.export();
|
|
763
|
-
|
|
764
|
-
expect(listeningData.metadata.sessionId).toBe('test-full-bmad-workflow');
|
|
765
|
-
expect(whysData.metadata.sessionId).toBe('test-full-bmad-workflow');
|
|
766
|
-
|
|
767
|
-
expect(listeningData.history.length).toBe(3);
|
|
768
|
-
expect(whysData.responses.length).toBe(6);
|
|
769
|
-
expect(glossaryData.concepts.length).toBe(5);
|
|
770
|
-
});
|
|
771
|
-
|
|
772
|
-
it('should preserve backwards compatibility with features disabled', () => {
|
|
773
|
-
const minimalByan = new ByanV2({
|
|
774
|
-
sessionId: 'minimal-test',
|
|
775
|
-
bmad_features: {
|
|
776
|
-
glossary: { enabled: false },
|
|
777
|
-
five_whys: { enabled: false },
|
|
778
|
-
active_listening: { enabled: false },
|
|
779
|
-
mantra_validation: { enabled: true }
|
|
780
|
-
}
|
|
781
|
-
});
|
|
782
|
-
|
|
783
|
-
expect(minimalByan.glossaryBuilder).toBeUndefined();
|
|
784
|
-
expect(minimalByan.fiveWhysAnalyzer).toBeUndefined();
|
|
785
|
-
expect(minimalByan.activeListener).toBeUndefined();
|
|
786
|
-
expect(minimalByan.mantraValidator).toBeDefined();
|
|
787
|
-
});
|
|
788
|
-
});
|
|
789
|
-
|
|
790
|
-
describe('Performance Requirements', () => {
|
|
791
|
-
it('should complete full workflow in under 10 seconds', () => {
|
|
792
|
-
const workflowStart = Date.now();
|
|
793
|
-
|
|
794
|
-
// Execute abbreviated workflow
|
|
795
|
-
byan.stateMachine.transition('START');
|
|
796
|
-
byan.stateMachine.transition('INTERVIEW');
|
|
797
|
-
|
|
798
|
-
['Response 1', 'Response 2', 'Slow checkout problem'].forEach(r => {
|
|
799
|
-
byan.activeListener.listen(r);
|
|
800
|
-
});
|
|
801
|
-
|
|
802
|
-
byan.fiveWhysAnalyzer.start('Slow checkout');
|
|
803
|
-
['Reason 1', 'Reason 2', 'Reason 3', 'Reason 4', 'Reason 5'].forEach(a => {
|
|
804
|
-
byan.fiveWhysAnalyzer.askNext();
|
|
805
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
806
|
-
});
|
|
807
|
-
|
|
808
|
-
[
|
|
809
|
-
{ name: 'order', definition: 'Customer purchase request with payment details' },
|
|
810
|
-
{ name: 'product', definition: 'Item for sale with price and description' },
|
|
811
|
-
{ name: 'cart', definition: 'Temporary product collection before checkout' },
|
|
812
|
-
{ name: 'payment', definition: 'Financial transaction to merchant' },
|
|
813
|
-
{ name: 'inventory', definition: 'Stock quantity of products' }
|
|
814
|
-
].forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
815
|
-
|
|
816
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
817
|
-
byan.stateMachine.transition('GENERATION');
|
|
818
|
-
|
|
819
|
-
const agentDef = {
|
|
820
|
-
name: 'Test',
|
|
821
|
-
description: 'Test agent',
|
|
822
|
-
dataModel: byan.glossaryBuilder.export()
|
|
823
|
-
};
|
|
824
|
-
|
|
825
|
-
byan.mantraValidator.validate(agentDef);
|
|
826
|
-
|
|
827
|
-
const duration = Date.now() - workflowStart;
|
|
828
|
-
expect(duration).toBeLessThan(10000);
|
|
829
|
-
});
|
|
830
|
-
|
|
831
|
-
it('should have less than 10% performance overhead from BMAD modules', () => {
|
|
832
|
-
const baselineStart = Date.now();
|
|
833
|
-
const baselineByan = new ByanV2({
|
|
834
|
-
bmad_features: {
|
|
835
|
-
glossary: { enabled: false },
|
|
836
|
-
five_whys: { enabled: false },
|
|
837
|
-
active_listening: { enabled: false },
|
|
838
|
-
mantra_validation: { enabled: false }
|
|
839
|
-
}
|
|
840
|
-
});
|
|
841
|
-
const baselineDuration = Date.now() - baselineStart;
|
|
842
|
-
|
|
843
|
-
const bmadStart = Date.now();
|
|
844
|
-
const bmadByan = new ByanV2({
|
|
845
|
-
bmad_features: {
|
|
846
|
-
glossary: { enabled: true },
|
|
847
|
-
five_whys: { enabled: true },
|
|
848
|
-
active_listening: { enabled: true },
|
|
849
|
-
mantra_validation: { enabled: true }
|
|
850
|
-
}
|
|
851
|
-
});
|
|
852
|
-
const bmadDuration = Date.now() - bmadStart;
|
|
853
|
-
|
|
854
|
-
const overhead = ((bmadDuration - baselineDuration) / baselineDuration) * 100;
|
|
855
|
-
expect(overhead).toBeLessThan(10);
|
|
856
|
-
});
|
|
857
|
-
});
|
|
858
|
-
|
|
859
|
-
describe('Error Handling and Edge Cases', () => {
|
|
860
|
-
it('should handle partial workflow execution gracefully', () => {
|
|
861
|
-
byan.activeListener.listen('Single response');
|
|
862
|
-
|
|
863
|
-
const listeningData = byan.activeListener.export();
|
|
864
|
-
expect(listeningData.history.length).toBe(1);
|
|
865
|
-
|
|
866
|
-
// Glossary not started
|
|
867
|
-
expect(byan.glossaryBuilder.concepts.length).toBe(0);
|
|
868
|
-
|
|
869
|
-
// 5 Whys not triggered
|
|
870
|
-
expect(byan.fiveWhysAnalyzer.active).toBe(false);
|
|
871
|
-
});
|
|
872
|
-
|
|
873
|
-
it('should handle invalid data gracefully', () => {
|
|
874
|
-
expect(() => {
|
|
875
|
-
byan.activeListener.listen(null);
|
|
876
|
-
}).not.toThrow();
|
|
877
|
-
|
|
878
|
-
expect(() => {
|
|
879
|
-
byan.glossaryBuilder.addConcept('', '');
|
|
880
|
-
}).not.toThrow();
|
|
881
|
-
});
|
|
882
|
-
|
|
883
|
-
it('should handle state transition errors', () => {
|
|
884
|
-
expect(() => {
|
|
885
|
-
byan.stateMachine.transition('INVALID_STATE');
|
|
886
|
-
}).not.toThrow();
|
|
887
|
-
});
|
|
888
|
-
});
|
|
889
|
-
});
|