UNPKG

aiwg

Version:

Cognitive architecture for AI-augmented software development with structured memory, ensemble validation, and closed-loop correction. FAIR-aligned artifacts, 84% cost reduction via human-in-the-loop, standards adopted by 100+ organizations.

145 lines (102 loc) 4.96 kB
# AIWG Testing Requirements This document defines testing requirements for contributions to the AIWG toolkit. ## Regression Testing Requirements ### When Full Regression Testing is Required Significant changes to AIWG require full regression testing and validation across all supported providers before merging. "Significant changes" include: | Change Type | Full Regression Required | Reason | |-------------|-------------------------|--------| | New agents | Yes | Agents deploy to all provider formats | | New commands | Yes | Commands may have provider-specific behavior | | New skills | Yes | Skills are deployed with frameworks | | CLI changes | Yes | CLI handles all provider deployments | | Manifest changes | Yes | Manifests control deployment behavior | | Framework modifications | Yes | Frameworks are core to all providers | | Addon modifications | Yes | Addons deploy across providers | | Template changes | No (unless structural) | Templates are provider-agnostic | | Documentation only | No | No deployment impact | ### Provider Validation Matrix All significant changes must be validated against these providers: | Provider | Deployment Target | Validation Command | |----------|-------------------|-------------------| | Claude Code | `.claude/agents/`, `.claude/commands/` | `aiwg use sdlc` | | GitHub Copilot | `.github/agents/` | `aiwg use sdlc --provider copilot` | | Warp | `WARP.md` | `aiwg use sdlc --provider warp` | | Factory AI | `.factory/droids/` | `aiwg use sdlc --provider factory` | | OpenCode | `.opencode/agent/` | `aiwg use sdlc --provider opencode` | | Cursor | `.cursor/rules/` | `aiwg use sdlc --provider cursor` | | OpenAI/Codex | `.codex/agents/` | `aiwg use sdlc --provider codex` | ### Validation Checklist Before submitting a PR with significant changes: ```bash # 1. Run full test suite npm test # 2. Lint all modified markdown files npm exec markdownlint-cli2 "path/to/modified/**/*.md" # 3. Deploy to each provider and verify aiwg use sdlc --provider claude --force aiwg use sdlc --provider factory --force aiwg use sdlc --provider openai --force # 4. Verify new content is deployed correctly ls .claude/commands/your-new-command.md ls .factory/commands/your-new-command.md ls .codex/commands/your-new-command.md # 5. Check manifest is updated cat agentic/code/addons/your-addon/manifest.json | jq '.commands' ``` ## Known Provider Limitations ### General-Purpose Commands (aiwg-utils) **Current behavior**: Commands from `aiwg-utils` addon currently only deploy to Claude Code (`.claude/commands/`), not to other providers. **Impact**: Commands like `/aiwg-refresh`, `/aiwg-regenerate`, `/workspace-*` are only available in Claude Code sessions. **Tracking**: This is a known CLI limitation to be addressed in future releases. ### Provider-Specific Features | Feature | Claude | Factory | OpenAI | Cursor | Warp | |---------|--------|---------|--------|--------|------| | Agents | ✓ | ✓ | ✓ | ✓ | ✓ | | SDLC Commands | ✓ | ✓ | ✓ | ✓ | ✓ | | Utils Commands | ✓ | ✗ | ✗ | ✗ | ✗ | | Skills | ✓ | ✓ | ✓ | ✓ | ✓ | | MCP Integration | ✓ | ✓ | ✗ | ✗ | ✗ | ## Test Categories ### Unit Tests - Location: `test/unit/` - Run: `npx vitest run test/unit/` - Coverage: Core CLI functionality, parsers, validators ### Integration Tests - Location: `test/integration/` - Run: `npx vitest run test/integration/` - Coverage: Provider deployments, CLI end-to-end ### Provider-Specific Tests - Claude Code: `test/integration/claude-code-deployment.test.ts` - Factory AI: `test/integration/factory-deployment.test.ts` - OpenAI/Codex: `test/integration/openai-deployment.test.ts` ## Minimum Test Coverage | Category | Minimum Coverage | Current | |----------|-----------------|---------| | Line coverage | 80% | Enforced via CI | | Branch coverage | 75% | Enforced via CI | | Function coverage | 90% | Enforced via CI | ## PR Requirements ### For Significant Changes 1. **All tests passing**: 0 failures allowed 2. **Provider validation**: Verified deployment to at least Claude, Factory, OpenAI 3. **Lint clean**: No markdown lint errors in modified files 4. **Manifest updated**: New commands/agents/skills added to manifest 5. **README updated**: New features documented in relevant README ### For Documentation-Only Changes 1. **Lint clean**: No markdown lint errors 2. **Links valid**: All internal links resolve ## Automated CI Checks The following are enforced automatically on all PRs: - `npm test` - Full test suite - `markdownlint-cli2` - Markdown linting - Type checking via TypeScript - Coverage thresholds ## Manual Verification Some checks require manual verification before merge: - [ ] Deployed to Claude Code and verified new content appears - [ ] Deployed to at least one other provider (Factory or OpenAI) - [ ] Tested command/agent functionality in actual session - [ ] Verified no regressions in existing functionality