bmad-method-test-architecture-enterprise 2.0.1-next.5 → 2.0.2-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,7 +31,7 @@
31
31
  "name": "bmad-method-test-architecture-enterprise",
32
32
  "source": "./",
33
33
  "description": "Master Test Architect module for quality strategy, test generation in red and expand modes with automatic run-and-heal, combined framework and CI setup, CI/CD quality gates, and structured testing education. The CI and ATDD commands remain available with existing customizations. Part of the BMad Method ecosystem.",
34
- "version": "2.0.1-next.5",
34
+ "version": "2.0.2-next.0",
35
35
  "author": {
36
36
  "name": "Murat K Ozcan (TEA Creator) & Brian (BMad) Madison"
37
37
  },
package/README.md CHANGED
@@ -59,16 +59,16 @@ Each skill can run directly in a fresh session.
59
59
 
60
60
  | Skill | Command | Menu | Use it to |
61
61
  | ------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- | ---- | ---------------------------------------------------- |
62
- | [Test Review](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-review/) | `/bmad-testarch-test-review` | RV | Audit test quality and score findings |
63
62
  | [Automate](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/) | `/bmad-testarch-automate` | TA | Generate red acceptance scaffolds or expand coverage |
63
+ | [Test Review](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-review/) | `/bmad-testarch-test-review` | RV | Audit test quality and score findings |
64
64
  | [Test Design](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-design/) | `/bmad-testarch-test-design` | TD | Plan risks, coverage, and NFR evidence |
65
65
  | [Framework](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/setup-test-framework/) | `/bmad-testarch-framework` | TF | Set up a test framework, CI, or both |
66
66
  | [NFR](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-nfr-assess/) | `/bmad-testarch-nfr` | NR | Audit implemented NFR evidence |
67
+ | [Trace](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-trace/) | `/bmad-testarch-trace` | TR | Map requirements to tests and decide a release gate |
67
68
  | [Teach Me Testing](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/teach-me-testing/) | `/bmad-teach-me-testing` | TMT | Learn testing through seven sessions |
68
69
 
69
- Additional skills:
70
+ Evaluate:
70
71
 
71
- - [Trace](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-trace/): `/bmad-testarch-trace`, menu `TR`. Map requirements to tests and decide a release gate.
72
72
  - [Evaluate](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/evaluate-your-first-skill/): `/bmad-testarch-evaluate`, menu `EV`. Build and run a behavioral evaluation.
73
73
 
74
74
  Framework and CI setup share one skill, `bmad-testarch-framework`.
@@ -114,6 +114,7 @@ npm install --save-dev bmad-method-test-architecture-enterprise
114
114
  ```
115
115
 
116
116
  - [`tea-test-review`](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/tea-test-review-cli/) runs the review skill against changed tests and returns a gate verdict.
117
+ - [`tea-trace`](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/tea-trace-cli/) maps requirements to existing evidence and returns a coverage gate.
117
118
  - [`tea-evaluate`](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/tea-evaluate-cli/) checks, runs, scores, and compares behavioral evaluations.
118
119
 
119
120
  For `tea-evaluate`, install `eval-quality` alongside TEA in the evaluations folder:
@@ -56,11 +56,6 @@ const SNAPSHOT_DEFAULTS = {
56
56
  test_framework: 'auto',
57
57
  };
58
58
 
59
- const WORKFLOW_CUSTOM_PATHS = [
60
- path.join('_bmad', 'custom', 'bmad-testarch-test-review.toml'),
61
- path.join('_bmad', 'custom', 'bmad-testarch-test-review.user.toml'),
62
- ];
63
-
64
59
  const PACT_MCP_VALUES = ['mcp', 'none'];
65
60
  // step-03-quality-evaluation.md's requestable modes. `auto` asks the capability
66
61
  // probe to pick; the other three are honoured as stated.
@@ -285,7 +280,7 @@ function parseToml(content, label) {
285
280
  }
286
281
 
287
282
  /** Resolve trusted skill defaults and project workflow overrides from the same configuration source. */
288
- function readWorkflowCustomization(source, skillRoot, projectRoot) {
283
+ function readWorkflowCustomization(source, skillRoot, projectRoot, skillName = 'bmad-testarch-test-review') {
289
284
  if (!skillRoot) return {};
290
285
  const defaultsPath = path.join(skillRoot, 'customize.toml');
291
286
  let merged = {};
@@ -294,7 +289,9 @@ function readWorkflowCustomization(source, skillRoot, projectRoot) {
294
289
  } catch (error) {
295
290
  if (error.code !== 'ENOENT') throw configError(`Failed to load ${defaultsPath}: ${error.message}`);
296
291
  }
297
- for (const relativePath of WORKFLOW_CUSTOM_PATHS) {
292
+ if (!/^[a-z0-9][a-z0-9-]*$/.test(skillName)) throw configError('Workflow skill name must be a lowercase kebab-case name');
293
+ const workflowPaths = ['.toml', '.user.toml'].map((suffix) => path.join('_bmad', 'custom', skillName + suffix));
294
+ for (const relativePath of workflowPaths) {
298
295
  const content = source.read(relativePath);
299
296
  if (content !== null) merged = mergeTables(merged, parseToml(content, source.label(relativePath)));
300
297
  }
@@ -497,10 +494,10 @@ const KEY_TO_INSTALLED_FIELD = {
497
494
  * manifest rather than left to the agent.
498
495
  * @throws {Error} With code TEA_CONFIG_INVALID on unusable config content.
499
496
  */
500
- function resolveTeaConfig({ projectRoot, flags = {}, baseRef, skillRoot }) {
497
+ function resolveTeaConfig({ projectRoot, flags = {}, baseRef, skillRoot, skillName }) {
501
498
  const source = configSource(projectRoot, baseRef);
502
499
  const file = readTeaConfigFile(projectRoot, baseRef, source);
503
- const workflowCustomization = readWorkflowCustomization(source, skillRoot, projectRoot);
500
+ const workflowCustomization = readWorkflowCustomization(source, skillRoot, projectRoot, skillName);
504
501
 
505
502
  const values = {};
506
503
  const sources = {};