Commit Graph

13 Commits

Author SHA1 Message Date
Jonah Schulte 1adf1ce195 feat: add PRD/Epic crowdsourcing and GitHub integration for team collaboration
Add comprehensive async collaboration system for PRD/Epic development:

PRD & Epic Crowdsourcing:
- Create, open feedback rounds, synthesize, and sign-off workflows
- LLM-powered synthesis engine for conflict resolution
- Configurable sign-off thresholds (count, percentage, required approvers)
- Unified "my-tasks" view across PRDs and Epics

Story Coordination:
- Story locking/checkout for preventing concurrent work
- Lock status and unlock workflows
- Available stories view with lock status

Multi-Channel Notifications:
- GitHub @mentions, Slack webhooks, Email (SMTP/SendGrid/SES)
- Event-driven notifications for feedback/signoff requests
- Priority-based retry logic for urgent notifications

Cache System Extensions:
- PRD and Epic document caching with metadata migration
- Staleness detection and atomic file operations
- User task queries and extended statistics

GitHub integration is optional (disabled by default) - existing local-only
projects continue to work unchanged.

Includes 673 passing tests with comprehensive coverage for all new modules.

Note: Library files use CommonJS for Node.js compatibility. ESLint rules
for ES modules may need configuration adjustment.
2026-01-08 19:01:26 -05:00
Jonah Schulte 5e841f9cac test: add comprehensive test coverage for file operations, dependency resolution, and transformations
Implement Vitest testing framework with 287 new tests achieving 80%+ overall coverage for previously untested critical components.

Coverage achievements:
- file-ops.js: 100% (exceeded 95% target)
- xml-utils.js: 100%
- config.js: 89% (exceeded 85% target)
- yaml-xml-builder.js: 86% (close to 90% target)
- dependency-resolver.js: 81%, 100% functions

New test coverage:
- 126 tests for file operations (254+ file system interactions)
- 74 tests for dependency resolution (multi-pass, circular detection)
- 69 tests for YAML/XML transformations (persona merging, XML generation)
- 37 tests for configuration processing (placeholder replacement, validation)
- 18 tests for XML utilities (special character escaping)

Infrastructure improvements:
- Add Vitest 4.0.16 with V8 coverage provider
- Create test helpers for temp directories and fixtures
- Configure ESLint for ES module test files
- Update npm scripts for test execution and coverage
- Maintain 100% backward compatibility with existing tests

Critical scenarios tested:
- Data loss prevention in syncDirectory() with hash/timestamp comparison
- Circular dependency handling in multi-pass resolution
- XML special character escaping to prevent injection
- Unicode filename and content handling
- Large file streaming (10MB+) for hash calculation

All 352 tests (65 existing + 287 new) passing with zero flaky tests.
2026-01-08 11:46:12 -05:00
Brian Madison d8b13bdb2e agents all indicate hasSidecar true or false, validation requires it, agent builder and validator and editor use the field. Added a better brownfield doc 2025-12-31 21:30:19 +08:00
Brian Madison 59a0eec2e2 all agents passing new validation checks 2025-12-26 17:34:20 +08:00
Alex Verkhovsky b1d1242fcf
fix: restore agent files accidentally modified in Docusaurus merge (#1191)
* fix: restore agent files accidentally modified in Docusaurus merge

Restores 25 agent files to their pre-merge state:
- Trigger format with shortcuts (WS, CH, BP, etc.) restored
- Fuzzy matching syntax restored
- BMB module: restores separate agent-builder, module-builder,
  workflow-builder agents; removes consolidated bmad-builder

Also updates test to match restored trigger format.

Note: Schema validation needs update in follow-up commit.

* fix: normalize trigger fuzzy match format for schema validation

- Add dashes to fuzzy match text to match kebab-case triggers
- Add missing 'chat' kebab in CH triggers (CH or chat or fuzzy match on chat)
- Relax schema to allow 1-3 char shortcuts and skip shortcut derivation check
- Remove compound-wrong-shortcut test fixture (no longer validated)

All 24 agent files now pass schema validation.
2025-12-26 06:59:39 +08:00
Alex Verkhovsky 19df17b261
feat: add documentation website with Docusaurus build pipeline (#1177)
* feat: add documentation website with Docusaurus build pipeline

* feat(docs): add AI discovery meta tags for llms.txt files

- Add global headTags with ai-terms, llms, llms-full meta tags
- Update landing page link to clarify AI context purpose

* fix(docs): restore accidentally deleted faq.md and glossary.md

Files were removed in 12dd97fe during path restructuring.

* fix(docs): update broken project-readme links to GitHub URL

* feat(schema): add compound trigger format validation
2025-12-23 23:01:36 +08:00
Brian Madison 1e721f7fd0 consolidate and remove some duplication 2025-12-22 10:13:56 +08:00
Brian Madison 9c268f8190 remove asterix insertion into agent files 2025-12-22 08:18:53 +08:00
Brian Madison 8642553bd7 we only need one yaml lib 2025-12-13 18:35:07 +08:00
Brian Madison 3740a554f0 fix: optimize agent compiler and complete handler cleanup
- Add deployment-aware handler generation (filters web-only/ide-only commands)
- Remove unused run-workflow handler type (ghost handler cleanup)
- Implement missing validate-workflow and data handler generation
- Update schema validation to support exactly 6 active handler types
- Clean up activation templates and web bundler logic
- Prevent generation of unused handler instructions for better performance
- All 62 tests pass with backward compatibility maintained
2025-11-23 21:28:50 -06:00
Brian Madison 7eb52520fa Major Enhancements:
- Installation path is now fully configurable, allowing users to specify custom installation directories during setup
  - Default installation location changed to .bmad (hidden directory) for cleaner project root organization

    Web Bundle Improvements:

    - All web bundles (single agent and team) now include party mode support for multi-agent collaboration!
    - Advanced elicitation capabilities integrated into standalone agents
    - All bundles enhanced with party mode agent manifests
    - Added default-party.csv files to bmm, bmgd, and cis module teams
    - The default party file is what will be used with single agent bundles. teams can customize for different party configurations before web bundling through a setting in the team yaml file
    - New web bundle outputs for all agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer, game-*, creative-squad)

    Phase 4 Workflow Updates (In Progress):

    - Initiated shift to separate phase 4 implementation artifacts from documentation
        - Phase 4 implementation artifacts (stories, code review, sprint plan, context files) will move to dedicated location outside docs folder
        - Installer questions and configuration added for artifact path selection
        - Updated workflow.yaml files for code-review, sprint-planning, story-context, epic-tech-context, and retrospective workflows to support this, but still might require some udpates

    Additional Changes:

    - New agent and action command header models for standardization
    - Enhanced web-bundle-activation-steps fragment
    - Updated web-bundler.js to support new structure
    - VS Code settings updated for new .bmad directory
    - Party mode instructions and workflow enhanced for better orchestration

   IDE Installer Updates:

    - Show version number of installer in cli
    - improved Installer UX
    - Gemini TOML Improved to have clear loading instructions with @ commands
    - All tools agent launcher mds improved to use a central file template critical indication isntead of hardcoding in 2 different locations.
2025-11-09 17:39:05 -06:00
Murat K Ozcan bc76d25be6
chore: added CC PR review (#871)
* chore: added CC PR review

* remove CLAUDE.md

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-05 14:14:31 -06:00
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