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,903 +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).toBeDefined();
|
|
93
|
-
expect(typeof byan.sessionState.sessionId).toBe('string');
|
|
94
|
-
});
|
|
95
|
-
|
|
96
|
-
it('should verify all modules are enabled', () => {
|
|
97
|
-
const config = byan.config.bmad_features;
|
|
98
|
-
|
|
99
|
-
expect(config.glossary.enabled).toBe(true);
|
|
100
|
-
expect(config.five_whys.enabled).toBe(true);
|
|
101
|
-
expect(config.active_listening.enabled).toBe(true);
|
|
102
|
-
expect(config.mantra_validation.enabled).toBe(true);
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
describe('Interview Phase with Active Listening', () => {
|
|
107
|
-
it('should start interview with initial question', async () => {
|
|
108
|
-
const question = await byan.getNextQuestion();
|
|
109
|
-
expect(question).toBeDefined();
|
|
110
|
-
});
|
|
111
|
-
|
|
112
|
-
it('should process user response with active listening', () => {
|
|
113
|
-
const response = 'I want to build an ecommerce agent for order management';
|
|
114
|
-
const result = byan.activeListener.listen(response);
|
|
115
|
-
|
|
116
|
-
expect(result.valid).toBe(true);
|
|
117
|
-
expect(result.reformulated).toBeDefined();
|
|
118
|
-
expect(result.clarityScore).toBeGreaterThanOrEqual(0);
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
it('should detect pain point in interview response', () => {
|
|
122
|
-
const response = 'Our checkout process is slow and customers complain about it';
|
|
123
|
-
const result = byan.fiveWhysAnalyzer.start(response);
|
|
124
|
-
|
|
125
|
-
expect(result.needsWhys).toBe(true);
|
|
126
|
-
expect(result.painPoints.length).toBeGreaterThan(0);
|
|
127
|
-
expect(result.firstQuestion).toBeDefined();
|
|
128
|
-
});
|
|
129
|
-
|
|
130
|
-
it('should reformulate every 3rd response during interview', () => {
|
|
131
|
-
const responses = [
|
|
132
|
-
'I need an ecommerce agent',
|
|
133
|
-
'For order management and tracking',
|
|
134
|
-
'With real-time inventory updates'
|
|
135
|
-
];
|
|
136
|
-
|
|
137
|
-
responses.forEach((response, index) => {
|
|
138
|
-
const result = byan.activeListener.listen(response);
|
|
139
|
-
|
|
140
|
-
if ((index + 1) % 3 === 0) {
|
|
141
|
-
expect(result.needsValidation).toBe(true);
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
});
|
|
145
|
-
|
|
146
|
-
it('should complete 12 interview questions with active listening', () => {
|
|
147
|
-
const mockResponses = [
|
|
148
|
-
'Ecommerce platform agent',
|
|
149
|
-
'For product recommendations',
|
|
150
|
-
'Based on customer history',
|
|
151
|
-
'Integration with inventory',
|
|
152
|
-
'Real-time stock checking',
|
|
153
|
-
'Payment gateway support',
|
|
154
|
-
'Order tracking features',
|
|
155
|
-
'Customer notification system',
|
|
156
|
-
'Returns and refunds handling',
|
|
157
|
-
'Analytics and reporting',
|
|
158
|
-
'Mobile app integration',
|
|
159
|
-
'Multi-language support'
|
|
160
|
-
];
|
|
161
|
-
|
|
162
|
-
mockResponses.forEach(response => {
|
|
163
|
-
const result = byan.activeListener.listen(response);
|
|
164
|
-
expect(result.valid).toBe(true);
|
|
165
|
-
});
|
|
166
|
-
|
|
167
|
-
expect(byan.activeListener.history.length).toBe(12);
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
|
|
171
|
-
describe('5 Whys Phase: Root Cause Analysis', () => {
|
|
172
|
-
beforeEach(() => {
|
|
173
|
-
// No state transitions needed - modules work independently
|
|
174
|
-
});
|
|
175
|
-
|
|
176
|
-
it('should detect slow checkout pain point', () => {
|
|
177
|
-
const response = 'Our biggest problem is the slow checkout process causing cart abandonment';
|
|
178
|
-
const result = byan.fiveWhysAnalyzer.start(response);
|
|
179
|
-
|
|
180
|
-
expect(result.needsWhys).toBe(true);
|
|
181
|
-
expect(result.painPoints.some(p => p.keyword === 'slow' || p.keyword === 'problem')).toBe(true);
|
|
182
|
-
});
|
|
183
|
-
|
|
184
|
-
it('should ask 5 sequential WHY questions', () => {
|
|
185
|
-
const startResult = byan.fiveWhysAnalyzer.start('Checkout is slow');
|
|
186
|
-
expect(startResult.firstQuestion).toBeDefined();
|
|
187
|
-
|
|
188
|
-
const whyAnswers = [
|
|
189
|
-
'Because payment gateway takes too long to respond',
|
|
190
|
-
'Because we make synchronous calls to external services',
|
|
191
|
-
'Because no caching mechanism was implemented',
|
|
192
|
-
'Because caching was not prioritized in development',
|
|
193
|
-
'Because we lacked infrastructure expertise'
|
|
194
|
-
];
|
|
195
|
-
|
|
196
|
-
// First answer is for the firstQuestion from start()
|
|
197
|
-
let result = byan.fiveWhysAnalyzer.processAnswer(whyAnswers[0]);
|
|
198
|
-
expect(result.valid).toBe(true);
|
|
199
|
-
|
|
200
|
-
// Then askNext() for remaining questions
|
|
201
|
-
for (let i = 1; i < whyAnswers.length && !result.rootCauseFound && !result.completed; i++) {
|
|
202
|
-
const question = byan.fiveWhysAnalyzer.askNext();
|
|
203
|
-
if (!question) break; // May stop early if root cause detected
|
|
204
|
-
|
|
205
|
-
result = byan.fiveWhysAnalyzer.processAnswer(whyAnswers[i]);
|
|
206
|
-
expect(result.valid).toBe(true);
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
const depth = byan.fiveWhysAnalyzer.getDepth();
|
|
210
|
-
expect(depth).toBeGreaterThanOrEqual(3); // May stop early if root cause detected
|
|
211
|
-
});
|
|
212
|
-
|
|
213
|
-
it('should extract root cause: lack of caching infrastructure', () => {
|
|
214
|
-
byan.fiveWhysAnalyzer.start('Checkout is slow');
|
|
215
|
-
|
|
216
|
-
const whyAnswers = [
|
|
217
|
-
'Payment gateway responds slowly',
|
|
218
|
-
'Synchronous external API calls',
|
|
219
|
-
'No caching mechanism implemented',
|
|
220
|
-
'Caching not prioritized',
|
|
221
|
-
'Lack of infrastructure expertise'
|
|
222
|
-
];
|
|
223
|
-
|
|
224
|
-
// Process first answer for firstQuestion
|
|
225
|
-
byan.fiveWhysAnalyzer.processAnswer(whyAnswers[0]);
|
|
226
|
-
|
|
227
|
-
// Then askNext() and processAnswer() for remaining
|
|
228
|
-
for (let i = 1; i < whyAnswers.length; i++) {
|
|
229
|
-
const q = byan.fiveWhysAnalyzer.askNext();
|
|
230
|
-
if (!q) break;
|
|
231
|
-
byan.fiveWhysAnalyzer.processAnswer(whyAnswers[i]);
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
const exportData = byan.fiveWhysAnalyzer.export();
|
|
235
|
-
|
|
236
|
-
expect(exportData.rootCause).toBeDefined();
|
|
237
|
-
expect(exportData.rootCause.statement).toBeDefined();
|
|
238
|
-
expect(exportData.rootCause.depth).toBeGreaterThanOrEqual(3);
|
|
239
|
-
});
|
|
240
|
-
|
|
241
|
-
it('should categorize root cause as technical', () => {
|
|
242
|
-
byan.fiveWhysAnalyzer.start('Slow checkout problem');
|
|
243
|
-
|
|
244
|
-
const answers = [
|
|
245
|
-
'Payment processing delays',
|
|
246
|
-
'Synchronous API calls',
|
|
247
|
-
'No caching infrastructure',
|
|
248
|
-
'Infrastructure not implemented',
|
|
249
|
-
'Lack of technical expertise'
|
|
250
|
-
];
|
|
251
|
-
|
|
252
|
-
// Process first answer
|
|
253
|
-
byan.fiveWhysAnalyzer.processAnswer(answers[0]);
|
|
254
|
-
|
|
255
|
-
// Then askNext() and processAnswer() for remaining
|
|
256
|
-
for (let i = 1; i < answers.length; i++) {
|
|
257
|
-
const q = byan.fiveWhysAnalyzer.askNext();
|
|
258
|
-
if (!q) break;
|
|
259
|
-
byan.fiveWhysAnalyzer.processAnswer(answers[i]);
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
const exportData = byan.fiveWhysAnalyzer.export();
|
|
263
|
-
expect(exportData.rootCause).toBeDefined();
|
|
264
|
-
expect(exportData.rootCause.category).toBeDefined();
|
|
265
|
-
expect(['technical', 'knowledge']).toContain(exportData.rootCause.category);
|
|
266
|
-
});
|
|
267
|
-
|
|
268
|
-
it('should extract action items from 5 Whys analysis', () => {
|
|
269
|
-
byan.fiveWhysAnalyzer.start('Checkout performance issue');
|
|
270
|
-
|
|
271
|
-
const answers = [
|
|
272
|
-
'Payment gateway timeout',
|
|
273
|
-
'No retry mechanism',
|
|
274
|
-
'Error handling not implemented',
|
|
275
|
-
'Best practices not followed',
|
|
276
|
-
'Team lacks expertise'
|
|
277
|
-
];
|
|
278
|
-
|
|
279
|
-
// Process first answer
|
|
280
|
-
byan.fiveWhysAnalyzer.processAnswer(answers[0]);
|
|
281
|
-
|
|
282
|
-
// Then askNext() and processAnswer() for remaining
|
|
283
|
-
for (let i = 1; i < answers.length; i++) {
|
|
284
|
-
const q = byan.fiveWhysAnalyzer.askNext();
|
|
285
|
-
if (!q) break;
|
|
286
|
-
byan.fiveWhysAnalyzer.processAnswer(answers[i]);
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
const exportData = byan.fiveWhysAnalyzer.export();
|
|
290
|
-
|
|
291
|
-
expect(exportData.rootCause).toBeDefined();
|
|
292
|
-
expect(exportData.rootCause.actionItems).toBeDefined();
|
|
293
|
-
expect(Array.isArray(exportData.rootCause.actionItems)).toBe(true);
|
|
294
|
-
});
|
|
295
|
-
});
|
|
296
|
-
|
|
297
|
-
describe('Glossary Phase: Domain Vocabulary', () => {
|
|
298
|
-
it('should auto-trigger glossary for ecommerce domain', () => {
|
|
299
|
-
const sessionData = {
|
|
300
|
-
domain: 'ecommerce',
|
|
301
|
-
context: 'online shopping platform'
|
|
302
|
-
};
|
|
303
|
-
|
|
304
|
-
const shouldTrigger = byan.glossaryBuilder._shouldTriggerForDomain(sessionData);
|
|
305
|
-
expect(shouldTrigger).toBe(true);
|
|
306
|
-
});
|
|
307
|
-
|
|
308
|
-
it('should guide user to define 5 core concepts', () => {
|
|
309
|
-
const result = byan.glossaryBuilder.start();
|
|
310
|
-
|
|
311
|
-
expect(result.prompt).toBeDefined();
|
|
312
|
-
expect(result.instructions).toContain('5 core concepts');
|
|
313
|
-
});
|
|
314
|
-
|
|
315
|
-
it('should define order concept with validation', () => {
|
|
316
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
317
|
-
'order',
|
|
318
|
-
'A customer request that contains product selections and has payment details with delivery address information that is processed for fulfillment'
|
|
319
|
-
);
|
|
320
|
-
|
|
321
|
-
expect(result.valid).toBe(true);
|
|
322
|
-
expect(result.concept.name).toBe('order');
|
|
323
|
-
expect(result.concept.clarityScore).toBeGreaterThanOrEqual(0.7);
|
|
324
|
-
});
|
|
325
|
-
|
|
326
|
-
it('should define product concept with validation', () => {
|
|
327
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
328
|
-
'product',
|
|
329
|
-
'An item that is available for sale in the catalog and has attributes such as name, price, description, and inventory count'
|
|
330
|
-
);
|
|
331
|
-
|
|
332
|
-
expect(result.valid).toBe(true);
|
|
333
|
-
expect(result.concept.name).toBe('product');
|
|
334
|
-
});
|
|
335
|
-
|
|
336
|
-
it('should define cart concept with validation', () => {
|
|
337
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
338
|
-
'cart',
|
|
339
|
-
'A temporary collection that contains products selected by customer and is processed before checkout when payment is confirmed'
|
|
340
|
-
);
|
|
341
|
-
|
|
342
|
-
expect(result.valid).toBe(true);
|
|
343
|
-
expect(result.concept.name).toBe('cart');
|
|
344
|
-
});
|
|
345
|
-
|
|
346
|
-
it('should define payment concept with validation', () => {
|
|
347
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
348
|
-
'payment',
|
|
349
|
-
'A financial transaction that processes and transfers money from customer account to merchant account when order is confirmed'
|
|
350
|
-
);
|
|
351
|
-
|
|
352
|
-
expect(result.valid).toBe(true);
|
|
353
|
-
expect(result.concept.name).toBe('payment');
|
|
354
|
-
});
|
|
355
|
-
|
|
356
|
-
it('should define inventory concept with validation', () => {
|
|
357
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
358
|
-
'inventory',
|
|
359
|
-
'Stock tracking system that contains quantity information and has availability status of products stored in warehouse'
|
|
360
|
-
);
|
|
361
|
-
|
|
362
|
-
expect(result.valid).toBe(true);
|
|
363
|
-
expect(result.concept.name).toBe('inventory');
|
|
364
|
-
});
|
|
365
|
-
|
|
366
|
-
it('should reject vague definition and challenge user', () => {
|
|
367
|
-
const result = byan.glossaryBuilder.addConcept(
|
|
368
|
-
'customer',
|
|
369
|
-
'A person who buys stuff'
|
|
370
|
-
);
|
|
371
|
-
|
|
372
|
-
expect(result.valid).toBe(false);
|
|
373
|
-
expect(result.issues.length).toBeGreaterThan(0);
|
|
374
|
-
});
|
|
375
|
-
|
|
376
|
-
it('should suggest related concepts after defining core terms', () => {
|
|
377
|
-
byan.glossaryBuilder.addConcept('order', 'A customer request that contains product selections and has payment details with delivery address information');
|
|
378
|
-
|
|
379
|
-
const suggestions = byan.glossaryBuilder.suggestRelatedConcepts(byan.glossaryBuilder.concepts);
|
|
380
|
-
|
|
381
|
-
// Suggestions may be empty if domain not detected or concepts too few
|
|
382
|
-
expect(Array.isArray(suggestions)).toBe(true);
|
|
383
|
-
});
|
|
384
|
-
|
|
385
|
-
it('should complete glossary with 5 valid concepts', () => {
|
|
386
|
-
const concepts = [
|
|
387
|
-
{ name: 'order', definition: 'A customer request that contains product selections and has payment details with delivery address information that is processed for fulfillment' },
|
|
388
|
-
{ name: 'product', definition: 'An item that is available for sale and has attributes like name, price, description, and inventory count tracked' },
|
|
389
|
-
{ name: 'cart', definition: 'A temporary collection that contains products selected by customer and is processed before checkout when payment is confirmed' },
|
|
390
|
-
{ name: 'payment', definition: 'A financial transaction that processes and transfers money from customer account to merchant account when order is confirmed' },
|
|
391
|
-
{ name: 'inventory', definition: 'A stock tracking system that contains quantity information and has availability status of products stored in warehouse' }
|
|
392
|
-
];
|
|
393
|
-
|
|
394
|
-
concepts.forEach(c => {
|
|
395
|
-
const result = byan.glossaryBuilder.addConcept(c.name, c.definition);
|
|
396
|
-
expect(result.valid).toBe(true);
|
|
397
|
-
});
|
|
398
|
-
|
|
399
|
-
expect(byan.glossaryBuilder.concepts.length).toBe(5);
|
|
400
|
-
});
|
|
401
|
-
});
|
|
402
|
-
|
|
403
|
-
describe('Analysis Phase: Process All Data', () => {
|
|
404
|
-
beforeEach(() => {
|
|
405
|
-
// Setup complete interview data
|
|
406
|
-
const responses = [
|
|
407
|
-
'Ecommerce agent for order management',
|
|
408
|
-
'Product recommendations engine',
|
|
409
|
-
'Real-time inventory tracking',
|
|
410
|
-
'Payment gateway integration',
|
|
411
|
-
'Customer notification system',
|
|
412
|
-
'Returns and refunds processing'
|
|
413
|
-
];
|
|
414
|
-
|
|
415
|
-
responses.forEach(r => byan.activeListener.listen(r));
|
|
416
|
-
|
|
417
|
-
// Setup 5 Whys data
|
|
418
|
-
byan.fiveWhysAnalyzer.start('Slow checkout causing problems');
|
|
419
|
-
const whyAnswers = [
|
|
420
|
-
'Payment gateway delays',
|
|
421
|
-
'Synchronous API calls',
|
|
422
|
-
'No caching implemented',
|
|
423
|
-
'Not prioritized',
|
|
424
|
-
'Lack of expertise'
|
|
425
|
-
];
|
|
426
|
-
whyAnswers.forEach((a, i) => {
|
|
427
|
-
if (i > 0) byan.fiveWhysAnalyzer.askNext();
|
|
428
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
429
|
-
});
|
|
430
|
-
|
|
431
|
-
// Setup glossary data
|
|
432
|
-
const concepts = [
|
|
433
|
-
{ name: 'order', definition: 'A customer request that contains product selections and has payment details with delivery address information that is processed for fulfillment' },
|
|
434
|
-
{ name: 'product', definition: 'An item that is available for sale in the catalog and has attributes such as name, price, description, and inventory count' },
|
|
435
|
-
{ name: 'cart', definition: 'A temporary collection that contains products selected by customer and is processed before checkout when payment is confirmed' },
|
|
436
|
-
{ name: 'payment', definition: 'A financial transaction that processes and transfers money from customer account to merchant account when order is confirmed' },
|
|
437
|
-
{ name: 'inventory', definition: 'Stock tracking system that contains quantity information and has availability status of products stored in warehouse' }
|
|
438
|
-
];
|
|
439
|
-
concepts.forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
440
|
-
});
|
|
441
|
-
|
|
442
|
-
it('should transition to analysis state', () => {
|
|
443
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
444
|
-
|
|
445
|
-
expect(byan.stateMachine.currentState).toBe('ANALYSIS');
|
|
446
|
-
});
|
|
447
|
-
|
|
448
|
-
it('should include active listening summary in analysis', () => {
|
|
449
|
-
const listeningData = byan.activeListener.export();
|
|
450
|
-
|
|
451
|
-
expect(listeningData.summary).toBeDefined();
|
|
452
|
-
expect(listeningData.history.length).toBeGreaterThan(0);
|
|
453
|
-
});
|
|
454
|
-
|
|
455
|
-
it('should include 5 Whys root cause in analysis', () => {
|
|
456
|
-
const whysData = byan.fiveWhysAnalyzer.export();
|
|
457
|
-
|
|
458
|
-
expect(whysData.rootCause).toBeDefined();
|
|
459
|
-
if (whysData.rootCause) {
|
|
460
|
-
expect(whysData.rootCause.category).toBeDefined();
|
|
461
|
-
expect(whysData.rootCause.actionItems).toBeDefined();
|
|
462
|
-
}
|
|
463
|
-
});
|
|
464
|
-
|
|
465
|
-
it('should include glossary in analysis', () => {
|
|
466
|
-
const glossaryData = byan.glossaryBuilder.export();
|
|
467
|
-
|
|
468
|
-
expect(glossaryData.concepts.length).toBe(5);
|
|
469
|
-
});
|
|
470
|
-
|
|
471
|
-
it('should create comprehensive analysis combining all data', () => {
|
|
472
|
-
const analysisData = {
|
|
473
|
-
listening: byan.activeListener.export(),
|
|
474
|
-
rootCause: byan.fiveWhysAnalyzer.export(),
|
|
475
|
-
glossary: byan.glossaryBuilder.export()
|
|
476
|
-
};
|
|
477
|
-
|
|
478
|
-
expect(analysisData.listening.history.length).toBeGreaterThan(0);
|
|
479
|
-
expect(analysisData.rootCause.responses.length).toBeGreaterThanOrEqual(3);
|
|
480
|
-
expect(analysisData.glossary.concepts.length).toBe(5);
|
|
481
|
-
});
|
|
482
|
-
});
|
|
483
|
-
|
|
484
|
-
describe('Generation Phase: Create Agent Definition', () => {
|
|
485
|
-
beforeEach(() => {
|
|
486
|
-
// Setup complete data from previous phases
|
|
487
|
-
const responses = [
|
|
488
|
-
'Ecommerce agent',
|
|
489
|
-
'Order management',
|
|
490
|
-
'Inventory tracking',
|
|
491
|
-
'Payment processing',
|
|
492
|
-
'Customer notifications',
|
|
493
|
-
'Analytics dashboard'
|
|
494
|
-
];
|
|
495
|
-
responses.forEach(r => byan.activeListener.listen(r));
|
|
496
|
-
|
|
497
|
-
byan.fiveWhysAnalyzer.start('Slow checkout');
|
|
498
|
-
['Payment delays', 'API calls', 'No caching', 'Not prioritized', 'No expertise'].forEach((a, i) => {
|
|
499
|
-
if (i > 0) byan.fiveWhysAnalyzer.askNext();
|
|
500
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
501
|
-
});
|
|
502
|
-
|
|
503
|
-
[
|
|
504
|
-
{ name: 'order', definition: 'Customer request that contains product selections and has payment details with delivery address information that is processed for fulfillment' },
|
|
505
|
-
{ name: 'product', definition: 'Item that is available for sale and has attributes like name, price, description, and inventory count tracked in system' },
|
|
506
|
-
{ name: 'cart', definition: 'Temporary collection that contains products selected before checkout and is processed when payment is confirmed' },
|
|
507
|
-
{ name: 'payment', definition: 'Financial transaction that processes money transfer from customer account to merchant account when order is confirmed' },
|
|
508
|
-
{ name: 'inventory', definition: 'Stock system that contains quantity information and has availability status of products stored in warehouse' }
|
|
509
|
-
].forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
510
|
-
});
|
|
511
|
-
|
|
512
|
-
it('should transition to generation state', () => {
|
|
513
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
514
|
-
byan.stateMachine.transition('GENERATION');
|
|
515
|
-
|
|
516
|
-
expect(byan.stateMachine.currentState).toBe('GENERATION');
|
|
517
|
-
});
|
|
518
|
-
|
|
519
|
-
it('should generate agent definition with all collected data', () => {
|
|
520
|
-
const exportData = byan.fiveWhysAnalyzer.export();
|
|
521
|
-
|
|
522
|
-
const agentDefinition = {
|
|
523
|
-
name: 'EcommerceOrderAgent',
|
|
524
|
-
description: 'Agent for ecommerce order management with inventory tracking',
|
|
525
|
-
purpose: byan.activeListener.generateConsolidatedSummary(),
|
|
526
|
-
rootCause: exportData.rootCause,
|
|
527
|
-
glossary: byan.glossaryBuilder.export(),
|
|
528
|
-
actionItems: exportData.actions
|
|
529
|
-
};
|
|
530
|
-
|
|
531
|
-
expect(agentDefinition.name).toBeDefined();
|
|
532
|
-
expect(agentDefinition.purpose).toBeDefined();
|
|
533
|
-
expect(agentDefinition.rootCause).toBeDefined();
|
|
534
|
-
expect(agentDefinition.glossary.concepts.length).toBe(5);
|
|
535
|
-
});
|
|
536
|
-
|
|
537
|
-
it('should include root cause insights in agent design', () => {
|
|
538
|
-
const exportData = byan.fiveWhysAnalyzer.export();
|
|
539
|
-
|
|
540
|
-
expect(exportData.rootCause.statement).toBeDefined();
|
|
541
|
-
expect(exportData.rootCause.depth).toBe(5);
|
|
542
|
-
});
|
|
543
|
-
|
|
544
|
-
it('should incorporate glossary into agent documentation', () => {
|
|
545
|
-
const glossary = byan.glossaryBuilder.export();
|
|
546
|
-
const markdown = byan.glossaryBuilder.exportAsMarkdown();
|
|
547
|
-
|
|
548
|
-
expect(glossary.concepts.length).toBe(5);
|
|
549
|
-
expect(markdown).toContain('# Business Glossary');
|
|
550
|
-
expect(markdown).toContain('order');
|
|
551
|
-
expect(markdown).toContain('product');
|
|
552
|
-
});
|
|
553
|
-
});
|
|
554
|
-
|
|
555
|
-
describe('Validation Phase: Mantra Compliance', () => {
|
|
556
|
-
let agentDefinition;
|
|
557
|
-
|
|
558
|
-
beforeEach(() => {
|
|
559
|
-
agentDefinition = {
|
|
560
|
-
name: 'EcommerceOrderAgent',
|
|
561
|
-
description: 'Ecommerce order management agent with inventory tracking',
|
|
562
|
-
purpose: 'Help customers manage orders and track inventory in real-time',
|
|
563
|
-
capabilities: [
|
|
564
|
-
'Order creation and management',
|
|
565
|
-
'Real-time inventory checking',
|
|
566
|
-
'Payment processing',
|
|
567
|
-
'Customer notifications'
|
|
568
|
-
],
|
|
569
|
-
dataModel: byan.glossaryBuilder.export(),
|
|
570
|
-
rootCauseAnalysis: byan.fiveWhysAnalyzer.export()
|
|
571
|
-
};
|
|
572
|
-
});
|
|
573
|
-
|
|
574
|
-
it('should validate agent against 64 mantras', () => {
|
|
575
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
576
|
-
|
|
577
|
-
expect(validation).toBeDefined();
|
|
578
|
-
expect(validation.totalMantras).toBe(64);
|
|
579
|
-
expect(validation.compliant).toBeDefined();
|
|
580
|
-
expect(validation.nonCompliant).toBeDefined();
|
|
581
|
-
});
|
|
582
|
-
|
|
583
|
-
it('should achieve compliance score >= 80', () => {
|
|
584
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
585
|
-
|
|
586
|
-
// Note: This may not achieve 80% without full agent implementation
|
|
587
|
-
// But the validation should run and return a score
|
|
588
|
-
expect(validation.score).toBeDefined();
|
|
589
|
-
expect(validation.score).toBeGreaterThanOrEqual(0);
|
|
590
|
-
});
|
|
591
|
-
|
|
592
|
-
it('should validate mantra IA-23: Zero Emojis', () => {
|
|
593
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
594
|
-
const ia23 = validation.compliant.find(r => r.id === 'IA-23')
|
|
595
|
-
|| validation.nonCompliant.find(r => r.id === 'IA-23');
|
|
596
|
-
|
|
597
|
-
expect(ia23).toBeDefined();
|
|
598
|
-
});
|
|
599
|
-
|
|
600
|
-
it('should validate mantra #33: Data Dictionary First', () => {
|
|
601
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
602
|
-
const m33 = validation.compliant.find(r => r.id === 'M33')
|
|
603
|
-
|| validation.nonCompliant.find(r => r.id === 'M33');
|
|
604
|
-
|
|
605
|
-
expect(m33).toBeDefined();
|
|
606
|
-
});
|
|
607
|
-
|
|
608
|
-
it('should generate compliance report', () => {
|
|
609
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
610
|
-
const report = byan.mantraValidator.generateReport();
|
|
611
|
-
|
|
612
|
-
expect(report).toBeDefined();
|
|
613
|
-
expect(report).toContain('MANTRA VALIDATION REPORT');
|
|
614
|
-
expect(report).toContain('Score');
|
|
615
|
-
});
|
|
616
|
-
|
|
617
|
-
it('should identify non-compliant mantras if any', () => {
|
|
618
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
619
|
-
const nonCompliant = validation.nonCompliant;
|
|
620
|
-
|
|
621
|
-
nonCompliant.forEach(nc => {
|
|
622
|
-
expect(nc.reason).toBeDefined();
|
|
623
|
-
expect(nc.id).toBeDefined();
|
|
624
|
-
});
|
|
625
|
-
});
|
|
626
|
-
});
|
|
627
|
-
|
|
628
|
-
describe('Complete Workflow End-to-End', () => {
|
|
629
|
-
it('should execute full workflow from start to validation', () => {
|
|
630
|
-
// 1. Start session (already at INTERVIEW state by default)
|
|
631
|
-
expect(byan.stateMachine.currentState).toBe('INTERVIEW');
|
|
632
|
-
|
|
633
|
-
// 2. Interview phase with active listening
|
|
634
|
-
const interviewResponses = [
|
|
635
|
-
'I want an ecommerce agent for order management',
|
|
636
|
-
'It should handle product recommendations',
|
|
637
|
-
'Based on customer purchase history and browsing behavior',
|
|
638
|
-
'The checkout process is slow and causes cart abandonment',
|
|
639
|
-
'We need real-time inventory integration',
|
|
640
|
-
'Payment gateway support for multiple providers',
|
|
641
|
-
'Automated customer notifications for order status',
|
|
642
|
-
'Returns and refunds processing workflow',
|
|
643
|
-
'Analytics dashboard for business insights',
|
|
644
|
-
'Mobile app integration for customer convenience',
|
|
645
|
-
'Multi-language support for global customers',
|
|
646
|
-
'Security and compliance with payment standards'
|
|
647
|
-
];
|
|
648
|
-
|
|
649
|
-
interviewResponses.forEach((response, index) => {
|
|
650
|
-
const listenResult = byan.activeListener.listen(response);
|
|
651
|
-
expect(listenResult.valid).toBe(true);
|
|
652
|
-
|
|
653
|
-
// Validate understanding every 3 responses
|
|
654
|
-
if ((index + 1) % 3 === 0) {
|
|
655
|
-
expect(listenResult.needsValidation).toBe(true);
|
|
656
|
-
const summary = byan.activeListener.generateConsolidatedSummary();
|
|
657
|
-
const validation = byan.activeListener.validateUnderstanding('yes', summary);
|
|
658
|
-
expect(validation.validated).toBe(true);
|
|
659
|
-
}
|
|
660
|
-
});
|
|
661
|
-
|
|
662
|
-
// 3. 5 Whys triggered by pain point in response 4
|
|
663
|
-
const whysResult = byan.fiveWhysAnalyzer.start(interviewResponses[3]);
|
|
664
|
-
expect(whysResult.needsWhys).toBe(true);
|
|
665
|
-
|
|
666
|
-
const whyAnswers = [
|
|
667
|
-
'Because payment gateway takes too long to respond',
|
|
668
|
-
'Because we make synchronous calls to external services',
|
|
669
|
-
'Because no caching mechanism was implemented',
|
|
670
|
-
'Because caching was not prioritized in development',
|
|
671
|
-
'Because we lacked infrastructure expertise during planning'
|
|
672
|
-
];
|
|
673
|
-
|
|
674
|
-
whyAnswers.forEach((answer, i) => {
|
|
675
|
-
if (i > 0) byan.fiveWhysAnalyzer.askNext();
|
|
676
|
-
byan.fiveWhysAnalyzer.processAnswer(answer);
|
|
677
|
-
});
|
|
678
|
-
|
|
679
|
-
const rootCauseData = byan.fiveWhysAnalyzer.export();
|
|
680
|
-
expect(rootCauseData.rootCause).toBeDefined();
|
|
681
|
-
expect(rootCauseData.rootCause.statement).toBeDefined();
|
|
682
|
-
|
|
683
|
-
// 4. Glossary phase
|
|
684
|
-
const glossaryStart = byan.glossaryBuilder.start();
|
|
685
|
-
expect(glossaryStart.instructions).toContain('5 core concepts');
|
|
686
|
-
|
|
687
|
-
const concepts = [
|
|
688
|
-
{ name: 'order', definition: 'A customer request that contains product selections and has payment details with delivery address information that is processed for fulfillment' },
|
|
689
|
-
{ name: 'product', definition: 'An item that is available for sale and has attributes like name, price, description, and inventory count tracked' },
|
|
690
|
-
{ name: 'cart', definition: 'A temporary collection that contains products selected by customer and is processed before checkout when payment is confirmed' },
|
|
691
|
-
{ name: 'payment', definition: 'A financial transaction that processes and transfers money from customer account to merchant account when order is confirmed' },
|
|
692
|
-
{ name: 'inventory', definition: 'A stock tracking system that contains quantity information and has availability status of products stored in warehouse' }
|
|
693
|
-
];
|
|
694
|
-
|
|
695
|
-
concepts.forEach(concept => {
|
|
696
|
-
const result = byan.glossaryBuilder.addConcept(concept.name, concept.definition);
|
|
697
|
-
expect(result.valid).toBe(true);
|
|
698
|
-
});
|
|
699
|
-
|
|
700
|
-
expect(byan.glossaryBuilder.concepts.length).toBe(5);
|
|
701
|
-
|
|
702
|
-
// 5. Analysis phase
|
|
703
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
704
|
-
|
|
705
|
-
const analysisData = {
|
|
706
|
-
listening: byan.activeListener.export(),
|
|
707
|
-
rootCause: byan.fiveWhysAnalyzer.export(),
|
|
708
|
-
glossary: byan.glossaryBuilder.export()
|
|
709
|
-
};
|
|
710
|
-
|
|
711
|
-
expect(analysisData.listening.history.length).toBe(12);
|
|
712
|
-
expect(analysisData.rootCause.responses.length).toBeGreaterThanOrEqual(3); // May stop early
|
|
713
|
-
expect(analysisData.glossary.concepts.length).toBe(5);
|
|
714
|
-
|
|
715
|
-
// 6. Generation phase
|
|
716
|
-
byan.stateMachine.transition('GENERATION');
|
|
717
|
-
|
|
718
|
-
const agentDefinition = {
|
|
719
|
-
name: 'EcommerceOrderManagementAgent',
|
|
720
|
-
description: 'Comprehensive ecommerce agent for order management with real-time inventory',
|
|
721
|
-
purpose: analysisData.listening.summary,
|
|
722
|
-
rootCauseInsights: analysisData.rootCause,
|
|
723
|
-
domainModel: analysisData.glossary,
|
|
724
|
-
capabilities: [
|
|
725
|
-
'Order creation and tracking',
|
|
726
|
-
'Real-time inventory checking',
|
|
727
|
-
'Payment gateway integration',
|
|
728
|
-
'Customer notifications',
|
|
729
|
-
'Returns and refunds',
|
|
730
|
-
'Analytics and reporting'
|
|
731
|
-
]
|
|
732
|
-
};
|
|
733
|
-
|
|
734
|
-
expect(agentDefinition.name).toBeDefined();
|
|
735
|
-
expect(agentDefinition.domainModel.concepts.length).toBe(5);
|
|
736
|
-
expect(agentDefinition.rootCauseInsights.rootCause).toBeDefined();
|
|
737
|
-
|
|
738
|
-
// 7. Validation phase
|
|
739
|
-
const validation = byan.mantraValidator.validate(agentDefinition);
|
|
740
|
-
|
|
741
|
-
expect(validation.totalMantras).toBe(64);
|
|
742
|
-
expect(validation.score).toBeDefined();
|
|
743
|
-
|
|
744
|
-
const report = byan.mantraValidator.generateReport();
|
|
745
|
-
expect(report).toContain('Score');
|
|
746
|
-
|
|
747
|
-
// 8. Verify state machine progression
|
|
748
|
-
expect(byan.stateMachine.currentState).toBe('GENERATION');
|
|
749
|
-
});
|
|
750
|
-
|
|
751
|
-
it('should maintain data consistency across all phases', () => {
|
|
752
|
-
// Collect data from all phases
|
|
753
|
-
const responses = [
|
|
754
|
-
'Ecommerce agent',
|
|
755
|
-
'Order management',
|
|
756
|
-
'Slow checkout is a problem'
|
|
757
|
-
];
|
|
758
|
-
|
|
759
|
-
responses.forEach(r => byan.activeListener.listen(r));
|
|
760
|
-
|
|
761
|
-
byan.fiveWhysAnalyzer.start('Slow checkout problem');
|
|
762
|
-
['Payment delays', 'API calls', 'No caching', 'Not prioritized', 'No expertise'].forEach((a, i) => {
|
|
763
|
-
if (i > 0) byan.fiveWhysAnalyzer.askNext();
|
|
764
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
765
|
-
});
|
|
766
|
-
|
|
767
|
-
[
|
|
768
|
-
{ name: 'order', definition: 'A customer request that contains product selections and has payment details with delivery address information that is processed for fulfillment' },
|
|
769
|
-
{ name: 'product', definition: 'An item that is available for sale and has attributes like name, price, description, and inventory count tracked' },
|
|
770
|
-
{ name: 'cart', definition: 'A temporary collection that contains products selected by customer and is processed before checkout when payment is confirmed' },
|
|
771
|
-
{ name: 'payment', definition: 'A financial transaction that processes and transfers money from customer account to merchant account when order is confirmed' },
|
|
772
|
-
{ name: 'inventory', definition: 'A stock tracking system that contains quantity information and has availability status of products stored in warehouse' }
|
|
773
|
-
].forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
774
|
-
|
|
775
|
-
// Verify data consistency
|
|
776
|
-
const listeningData = byan.activeListener.export();
|
|
777
|
-
const whysData = byan.fiveWhysAnalyzer.export();
|
|
778
|
-
const glossaryData = byan.glossaryBuilder.export();
|
|
779
|
-
|
|
780
|
-
// sessionId is auto-generated, just verify it exists in modules that export it
|
|
781
|
-
expect(listeningData.metadata.sessionId).toBeDefined();
|
|
782
|
-
|
|
783
|
-
expect(listeningData.history.length).toBe(3);
|
|
784
|
-
expect(whysData.responses.length).toBeGreaterThanOrEqual(3);
|
|
785
|
-
expect(glossaryData.concepts.length).toBe(5);
|
|
786
|
-
});
|
|
787
|
-
|
|
788
|
-
it('should preserve backwards compatibility with features disabled', () => {
|
|
789
|
-
const minimalByan = new ByanV2({
|
|
790
|
-
sessionId: 'minimal-test',
|
|
791
|
-
bmad_features: {
|
|
792
|
-
glossary: { enabled: false },
|
|
793
|
-
five_whys: { enabled: false },
|
|
794
|
-
active_listening: { enabled: false },
|
|
795
|
-
mantra_validation: { enabled: true }
|
|
796
|
-
}
|
|
797
|
-
});
|
|
798
|
-
|
|
799
|
-
expect(minimalByan.glossaryBuilder).toBeUndefined();
|
|
800
|
-
expect(minimalByan.fiveWhysAnalyzer).toBeUndefined();
|
|
801
|
-
expect(minimalByan.activeListener).toBeUndefined();
|
|
802
|
-
expect(minimalByan.mantraValidator).toBeDefined();
|
|
803
|
-
});
|
|
804
|
-
});
|
|
805
|
-
|
|
806
|
-
describe('Performance Requirements', () => {
|
|
807
|
-
it('should complete full workflow in under 10 seconds', () => {
|
|
808
|
-
const workflowStart = Date.now();
|
|
809
|
-
|
|
810
|
-
// Execute abbreviated workflow
|
|
811
|
-
byan.stateMachine.transition('ANALYSIS');
|
|
812
|
-
|
|
813
|
-
['Response 1', 'Response 2', 'Slow checkout problem'].forEach(r => {
|
|
814
|
-
byan.activeListener.listen(r);
|
|
815
|
-
});
|
|
816
|
-
|
|
817
|
-
byan.fiveWhysAnalyzer.start('Slow checkout');
|
|
818
|
-
['Reason 1', 'Reason 2', 'Reason 3', 'Reason 4', 'Reason 5'].forEach((a, i) => {
|
|
819
|
-
if (i > 0) byan.fiveWhysAnalyzer.askNext();
|
|
820
|
-
byan.fiveWhysAnalyzer.processAnswer(a);
|
|
821
|
-
});
|
|
822
|
-
|
|
823
|
-
[
|
|
824
|
-
{ name: 'order', definition: 'Customer purchase request that contains payment details and has delivery address information that is processed' },
|
|
825
|
-
{ name: 'product', definition: 'Item for sale that is available and has price, description details tracked in system catalog' },
|
|
826
|
-
{ name: 'cart', definition: 'Temporary product collection that contains items selected and is processed before checkout confirmation' },
|
|
827
|
-
{ name: 'payment', definition: 'Financial transaction that processes money transfer to merchant account when order is confirmed' },
|
|
828
|
-
{ name: 'inventory', definition: 'Stock system that contains quantity of products and has availability status tracked in warehouse' }
|
|
829
|
-
].forEach(c => byan.glossaryBuilder.addConcept(c.name, c.definition));
|
|
830
|
-
|
|
831
|
-
byan.stateMachine.transition('GENERATION');
|
|
832
|
-
|
|
833
|
-
const agentDef = {
|
|
834
|
-
name: 'Test',
|
|
835
|
-
description: 'Test agent',
|
|
836
|
-
dataModel: byan.glossaryBuilder.export()
|
|
837
|
-
};
|
|
838
|
-
|
|
839
|
-
byan.mantraValidator.validate(agentDef);
|
|
840
|
-
|
|
841
|
-
const duration = Date.now() - workflowStart;
|
|
842
|
-
expect(duration).toBeLessThan(10000);
|
|
843
|
-
});
|
|
844
|
-
|
|
845
|
-
it('should have less than 10% performance overhead from BMAD modules', () => {
|
|
846
|
-
const baselineStart = Date.now();
|
|
847
|
-
const baselineByan = new ByanV2({
|
|
848
|
-
bmad_features: {
|
|
849
|
-
glossary: { enabled: false },
|
|
850
|
-
five_whys: { enabled: false },
|
|
851
|
-
active_listening: { enabled: false },
|
|
852
|
-
mantra_validation: { enabled: false }
|
|
853
|
-
}
|
|
854
|
-
});
|
|
855
|
-
const baselineDuration = Date.now() - baselineStart;
|
|
856
|
-
|
|
857
|
-
const bmadStart = Date.now();
|
|
858
|
-
const bmadByan = new ByanV2({
|
|
859
|
-
bmad_features: {
|
|
860
|
-
glossary: { enabled: true },
|
|
861
|
-
five_whys: { enabled: true },
|
|
862
|
-
active_listening: { enabled: true },
|
|
863
|
-
mantra_validation: { enabled: true }
|
|
864
|
-
}
|
|
865
|
-
});
|
|
866
|
-
const bmadDuration = Date.now() - bmadStart;
|
|
867
|
-
|
|
868
|
-
const overhead = ((bmadDuration - baselineDuration) / baselineDuration) * 100;
|
|
869
|
-
expect(overhead).toBeLessThan(10);
|
|
870
|
-
});
|
|
871
|
-
});
|
|
872
|
-
|
|
873
|
-
describe('Error Handling and Edge Cases', () => {
|
|
874
|
-
it('should handle partial workflow execution gracefully', () => {
|
|
875
|
-
byan.activeListener.listen('Single response');
|
|
876
|
-
|
|
877
|
-
const listeningData = byan.activeListener.export();
|
|
878
|
-
expect(listeningData.history.length).toBe(1);
|
|
879
|
-
|
|
880
|
-
// Glossary not started
|
|
881
|
-
expect(byan.glossaryBuilder.concepts.length).toBe(0);
|
|
882
|
-
|
|
883
|
-
// 5 Whys not triggered
|
|
884
|
-
expect(byan.fiveWhysAnalyzer.active).toBe(false);
|
|
885
|
-
});
|
|
886
|
-
|
|
887
|
-
it('should handle invalid data gracefully', () => {
|
|
888
|
-
expect(() => {
|
|
889
|
-
byan.activeListener.listen(null);
|
|
890
|
-
}).not.toThrow();
|
|
891
|
-
|
|
892
|
-
expect(() => {
|
|
893
|
-
byan.glossaryBuilder.addConcept('', '');
|
|
894
|
-
}).not.toThrow();
|
|
895
|
-
});
|
|
896
|
-
|
|
897
|
-
it('should handle state transition errors', () => {
|
|
898
|
-
expect(() => {
|
|
899
|
-
byan.stateMachine.transition('INVALID_STATE');
|
|
900
|
-
}).not.toThrow();
|
|
901
|
-
});
|
|
902
|
-
});
|
|
903
|
-
});
|