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.

192 lines (147 loc) 4.92 kB
--- name: devkit-test description: Test an AIWG package (addon, extension, or framework) args: [--interactive] [--guidance "text"] - name: path description: Path to package directory required: true - name: --verbose description: Show detailed test output required: false - name: --fix description: Auto-fix discoverable issues required: false --- # Test AIWG Package Run comprehensive tests on an AIWG package to verify structure, functionality, and deployment readiness. ## Process ### 1. Locate and Identify Package Resolve the package path from `$ARGUMENTS`: - If relative path, resolve from current directory - If package name, look in addons/ and frameworks/ Identify package type from manifest.json: - `"type": "addon"` Addon tests - `"type": "framework"` Framework tests - `"type": "extension"` Extension tests ### 2. Run Structure Tests **Manifest Validation**: - [ ] manifest.json exists and is valid JSON - [ ] Required fields present: id, type, name, version, description - [ ] Entry paths exist and match actual directories - [ ] Component arrays match actual files **Directory Structure**: - [ ] Expected directories exist (agents/, commands/, etc.) - [ ] No orphaned files outside expected structure - [ ] README.md exists and is non-empty **Component Files**: - [ ] All agents listed in manifest exist as .md files - [ ] All commands listed in manifest exist as .md files - [ ] All skills listed in manifest have SKILL.md - [ ] All templates listed in manifest exist ### 3. Run Content Tests **Agent Validation**: For each agent file: - [ ] Valid YAML frontmatter with name, description, model, tools - [ ] Model is valid (sonnet, opus, haiku) - [ ] Tools list contains valid tool names - [ ] Content sections present (Domain Expertise, Responsibilities, etc.) **Command Validation**: For each command file: - [ ] Valid YAML frontmatter with name, description - [ ] Args defined with name and description - [ ] Process section present - [ ] No broken internal references **Skill Validation**: For each skill: - [ ] SKILL.md has valid frontmatter - [ ] Trigger phrases defined - [ ] Execution process documented - [ ] References directory exists (if referenced) ### 4. Run Type-Specific Tests **Addon Tests**: - [ ] No `requires` field (addons are standalone) - [ ] Can be deployed independently **Extension Tests**: - [ ] `requires` field present and valid - [ ] Parent framework exists - [ ] Located in correct extensions/ subdirectory **Framework Tests**: - [ ] Phases defined in manifest - [ ] Flow documents exist for each phase - [ ] actors-and-templates.md exists - [ ] config/models.json exists - [ ] metrics/tracking-catalog.md exists ### 5. Run Deployment Test Simulate deployment to temporary directory: ```bash # Create temp test directory mkdir -p /tmp/aiwg-test-$$ # Attempt deployment aiwg -deploy-agents --source <package-path> --target /tmp/aiwg-test-$$ --dry-run # Check expected output structure ``` ### 6. Auto-Fix (if --fix) When `--fix` is specified, attempt to repair: **Fixable Issues**: - Missing directories Create them - Manifest component arrays out of sync Update from files - Missing README.md Generate from manifest - Invalid JSON formatting Reformat **Non-Fixable Issues** (report only): - Missing required fields in manifest - Invalid agent/command content - Missing parent framework (extensions) ### 7. Generate Report **Summary Format**: ``` Package Test: <package-id> Type: <addon|extension|framework> ───────────────────────────────── Structure Tests: <pass/fail count> Content Tests: <pass/fail count> Type Tests: <pass/fail count> Deployment Test: <pass/fail> Overall: <PASS|FAIL> ``` **Detailed Format (--verbose)**: ``` Package Test: <package-id> ───────────────────────────────── [Structure Tests] manifest.json exists manifest.json is valid JSON Required fields present agents/ directory exists commands/ directory missing ... [Content Tests] agent-one.md: valid frontmatter agent-one.md: valid model (sonnet) agent-two.md: missing tools field ... [Type Tests] No requires field (addon) ... [Deployment Test] Dry-run deployment successful [Issues Found] ERROR: commands/ directory missing WARNING: agent-two.md missing tools field [Auto-Fixed] (if --fix) Created commands/ directory ``` ## Exit Codes - 0: All tests passed - 1: Tests failed (fixable issues remain) - 2: Tests failed (non-fixable issues) ## Examples ```bash # Test addon /devkit-test aiwg-utils # Test with verbose output /devkit-test sdlc-complete --verbose # Test and auto-fix /devkit-test my-addon --fix --verbose # Test extension /devkit-test sdlc-complete/extensions/hipaa ```