Commit Graph

929 Commits

Author SHA1 Message Date
Alex Verkhovsky 31666c1f0f
feat: add agent schema validation with comprehensive testing (#774)
Introduce automated validation for agent YAML files using Zod to ensure
schema compliance across all agent definitions. This feature validates
17 agent files across core and module directories, catching structural
errors and maintaining consistency.

Schema Validation (tools/schema/agent.js):
- Zod-based schema validating metadata, persona, menu, prompts, and critical actions
- Module-aware validation: module field required for src/modules/**/agents/,
  optional for src/core/agents/
- Enforces kebab-case unique triggers and at least one command target per menu item
- Validates persona.principles as array (not string)
- Comprehensive refinements for data integrity

CLI Validator (tools/validate-agent-schema.js):
- Scans src/{core,modules/*}/agents/*.agent.yaml
- Parses with js-yaml and validates using Zod schema
- Reports detailed errors with file paths and field paths
- Exits 1 on failures, 0 on success
- Accepts optional project_root parameter for testing

Testing (679 lines across 3 test files):
- test/test-cli-integration.sh: CLI behavior and error handling tests
- test/unit-test-schema.js: Direct schema validation unit tests
- test/test-agent-schema.js: Comprehensive fixture-based tests
- 50 test fixtures covering valid and invalid scenarios
- ESLint configured to support CommonJS test files
- Prettier configured to ignore intentionally broken fixtures

CI Integration (.github/workflows/lint.yaml):
- Renamed from format-check.yaml to lint.yaml
- Added schema-validation job running npm run validate:schemas
- Runs in parallel with prettier and eslint jobs
- Validates on all pull requests

Data Cleanup:
- Fixed src/core/agents/bmad-master.agent.yaml: converted persona.principles
  from string to array format

Documentation:
- Updated schema-classification.md with validation section
- Documents validator usage, enforcement rules, and CI integration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-20 07:14:50 -05:00
Brian Madison 2a6eb71612 massive architecture creation overhaul 2025-10-19 23:28:38 -05:00
Brian Madison d3402c3132 architecture reorganization in preparation of architecture solutioning rework 2025-10-19 15:28:33 -05:00
Brian Madison 0a048f2ccc installer updates, bmd module added and moved out of src, created a plan for module installation tool for custom modules, minor flow improvements 2025-10-19 11:59:27 -05:00
Brian Madison eb9a214115 readme updated 2025-10-18 12:19:47 -05:00
Brian Madison 940cc15751 cli installer bundler documentation added 2025-10-18 10:20:29 -05:00
Brian Madison c0a2c55267 clearer codex install note 2025-10-18 09:41:38 -05:00
Brian Madison a1fc8da03c workflow init added to analyst pm and game agents 2025-10-18 01:34:03 -05:00
Brian Madison 36231173d1 workflows consistent method to update status file 2025-10-17 23:44:43 -05:00
Brian Madison 5788be64d0 installer temp updates 2025-10-17 22:42:36 -05:00
Brian Madison b54bb9e47d workflow references to moved workflow status workflow 2025-10-17 22:34:21 -05:00
Brian Madison af8e296e6f all phase 4 workflows use status check workflow update 2025-10-17 20:33:38 -05:00
Brian Madison e92f138f3d doc output lang vs com lang 2025-10-17 19:46:25 -05:00
Brian Madison ffd354b605 arch alignment with workflows 2025-10-17 16:44:06 -05:00
Brian Madison 9519eae666 workflow plan realignment 2025-10-17 00:44:05 -05:00
Brian Madison bc7d679366 workflow simplified 2025-10-17 00:19:45 -05:00
Brian Madison 54985778f2 minor fixes 2025-10-16 21:50:50 -05:00
Murat K Ozcan 84a70d8331
reafactor: test arch audit (#758)
Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-10-16 19:58:37 -05:00
Murat K Ozcan bee9c5dce7
feat: migrate test architect entirely (#750)
* feat: migrate test architect entirely to v6

* format fixed

* feat: integrated new playwright mcp

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-10-16 11:09:51 -05:00
Brian Madison 7f0e57e466 bmb updates 2025-10-16 09:50:29 -05:00
Brian Madison 790c4cedf4 remaining bmm workflows bloat removed 2025-10-16 08:58:09 -05:00
Brian Madison e77a1c036b 1-analysis workflow-state yaml streamlined 2025-10-16 08:26:26 -05:00
Brian Madison 1fe405eb64 1-analysis intentionalized 2025-10-16 08:11:22 -05:00
Brian Madison 516fa1a917 intent based workflow 2025-10-16 07:58:28 -05:00
Brian Madison a28a350e14 workflow builder understand existing_workflows tag for web bundles, and cleanup comtinues 2025-10-16 07:24:38 -05:00
Brian Madison 73ba7afa90 update additional location audit workflow 2025-10-16 00:15:18 -05:00
Brian Madison fb5e40319f added audit workflow worfklow 2025-10-16 00:09:19 -05:00
Brian Madison bcac484319 remove old webbundles 2025-10-15 23:51:07 -05:00
Brian Madison 72b6640f4b workflow cleanup 2025-10-15 23:50:34 -05:00
Brian Madison f4b16bfacf planning workflow alignment 2025-10-15 23:10:33 -05:00
Brian Madison b9b219a13b prd cleanup 2025-10-15 21:17:09 -05:00
Brian Madison 9b427a4e2b planning tech spec cleanup 2025-10-14 20:20:55 -05:00
Brian Madison 0f126b7f87 consolidated prd isntruction 2025-10-14 19:58:44 -05:00
Brian Madison 4b6f34dff8 date removed from status file, status file renamed 2025-10-13 22:32:35 -05:00
Brian Madison 27586e6a40 context should use relative paths 2025-10-13 21:11:20 -05:00
Brian Madison 5eb410d622 update config re deprecated removed file 2025-10-13 19:29:19 -05:00
Brian Madison f1965810a6 adv elicitation project updated to hopefully not be skipped as optional anymore. further workflow updates. 2025-10-13 00:33:06 -05:00
Brian Madison 36bf506241 all workflows aware 2025-10-12 22:19:28 -05:00
Brian Madison 88989d5403 master workflow integration 2025-10-12 18:10:23 -05:00
Brian Madison c3c51945bb docs update 2025-10-12 16:59:54 -05:00
Brian Madison 79ac3c91fe central source of trust for workflow status, current, and next story or epic 2025-10-12 16:14:29 -05:00
Brian Madison e61d58d480 workflow level 0 and 1 aligned with brownfield and quick dev 2025-10-12 15:53:24 -05:00
Brian Madison 1b7a3b396f removed bmad folder 2025-10-12 01:41:09 -05:00
Brian Madison ab05cdcdd2 \split analyze workflow 2025-10-12 01:39:24 -05:00
Brian Madison 2b736a8594 brownfield document project workflow added to analyst 2025-10-12 00:49:12 -05:00
Brian Madison 4f16d368ac minor dev agent updates 2025-10-11 19:45:25 -05:00
Brian Madison b4cc579009 create-agent now adds agent to ide agents list also 2025-10-10 09:27:50 -05:00
Carson 9ba4805aa7
Update README.md (#715) 2025-10-10 09:27:32 -05:00
PinkyD d76bcb5586
chore: cleaned up bad architecture file calls, legacy doc references, and case sensitivity issues to remove ambiguity (#718) 2025-10-10 09:26:49 -05:00
MeetNexus 5977227efc
fix: Correct path to instructions in bmad-init workflow (#663)
Co-authored-by: Brian <bmadcode@gmail.com>
2025-10-09 19:07:56 -05:00