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.

285 lines (210 loc) 9.13 kB
# Workspace Cleanup Pattern **Purpose**: Standard pattern for cleaning up `.aiwg/working/` directory after flow orchestration completes. **Applies to**: All flow commands that use multi-agent workflows generating intermediate artifacts. --- ## Cleanup Principles 1. **Archive First, Delete Second**: Never delete working files until they're safely archived 2. **Preserve Audit Trail**: Multi-agent review cycles (drafts, reviews, synthesis) must be archived 3. **Clean Slate for Next Flow**: `.aiwg/working/` should be empty after each flow completes 4. **Phase-Specific Archives**: Each phase gets its own archive subdirectory --- ## Standard Cleanup Workflow ### Step 1: Create Archive Directory ```bash # Create phase-specific archive directory mkdir -p .aiwg/archive/{phase-name}/ # Examples: # .aiwg/archive/inception/ # .aiwg/archive/elaboration/ # .aiwg/archive/construction-iteration-1/ # .aiwg/archive/transition/ ``` ### Step 2: Archive Working Files **Archive Categories**: | Workflow Type | Archive Path | What to Archive | |---------------|--------------|-----------------| | **Vision/Requirements** | `.aiwg/archive/{phase}/vision-development/` | drafts/, reviews/, synthesis-report.md | | **Risk Assessment** | `.aiwg/archive/{phase}/risk-assessment/` | drafts/, parallel agent inputs | | **Architecture** | `.aiwg/archive/{phase}/architecture-development/` | sketches/, reviews/, ADR drafts | | **Security** | `.aiwg/archive/{phase}/security-assessment/` | classification drafts, compliance notes | | **Testing** | `.aiwg/archive/{phase}/test-development/` | test plan drafts, coverage analysis | | **Deployment** | `.aiwg/archive/{phase}/deployment-planning/` | deployment plan drafts, runbook reviews | **Standard Archive Commands**: ```bash # Archive all working subdirectories for the phase cp -r .aiwg/working/requirements/ .aiwg/archive/{phase}/requirements-development/ 2>/dev/null || true cp -r .aiwg/working/risks/ .aiwg/archive/{phase}/risk-assessment/ 2>/dev/null || true cp -r .aiwg/working/architecture/ .aiwg/archive/{phase}/architecture-development/ 2>/dev/null || true cp -r .aiwg/working/security/ .aiwg/archive/{phase}/security-assessment/ 2>/dev/null || true cp -r .aiwg/working/testing/ .aiwg/archive/{phase}/test-development/ 2>/dev/null || true cp -r .aiwg/working/deployment/ .aiwg/archive/{phase}/deployment-planning/ 2>/dev/null || true # Note: 2>/dev/null || true ensures command doesn't fail if directory doesn't exist ``` ### Step 3: Clean Working Directory ```bash # Remove all working files (now safely archived) rm -rf .aiwg/working/* # Verify cleanup ls -la .aiwg/working/ # Should show only . and .. (empty) ``` ### Step 4: Verify Archive Integrity ```bash # Check archive was created successfully ls -la .aiwg/archive/{phase}/ # Expected output: Multiple subdirectories with archived materials # Example for inception: # - vision-development/ # - risk-assessment/ # - architecture-development/ # - security-assessment/ ``` --- ## What to Archive vs Delete ### Always Archive (Audit Trail Required) - **Multi-agent drafts**: All v0.1, v0.2, etc. drafts from Primary Authors - **Review feedback**: All reviewer comments, APPROVED/CONDITIONAL/NEEDS_WORK decisions - **Synthesis reports**: Documentation of how final artifact was assembled - **Parallel agent inputs**: Separate inputs from Architecture Designer, Security Architect, etc. - **Conflict resolutions**: Notes on how conflicting feedback was resolved ### Safe to Delete (Not Archived) - **Empty directories**: Working subdirectories with no files - **Temporary notes**: Scratch files, personal notes not part of audit trail - **Duplicate content**: Files that are exact copies of final baselined artifacts **When in Doubt**: Archive it. Disk space is cheap, lost audit trail is expensive. --- ## Archive Directory Structure (Example) ``` .aiwg/archive/ ├── inception/ ├── vision-development/ ├── drafts/ ├── v0.1-primary-draft.md ├── v0.1-primary-draft-with-comments.md └── process-context.md ├── reviews/ ├── product-strategist-review.md ├── business-process-analyst-review.md └── technical-writer-review.md └── synthesis-report.md ├── risk-assessment/ └── drafts/ ├── v0.1-primary-draft.md ├── technical-risks.md └── security-risks.md ├── architecture-development/ └── reviews/ └── security-review.md └── security-assessment/ └── (draft classifications, if any) ├── elaboration/ ├── sad-development/ ├── requirements-elaboration/ └── test-strategy-development/ └── construction-iteration-1/ ├── feature-implementation/ └── test-execution/ ``` --- ## Integration with Flow Commands ### Add Cleanup as Final Step All flow orchestration commands should include cleanup as the **last step before presenting final summary**: ```markdown ### Step N: Archive Working Files and Clean Up **Purpose**: Clean up `.aiwg/working/` directory, archiving important artifacts **Your Actions**: [Standard bash commands from this template] **Communicate Progress**: ``` Archiving working files and cleaning up... Archived {workflow-name} development Working directory cleaned Audit trail preserved in .aiwg/archive/{phase}/ ``` ``` ### Update Quality Gates Include cleanup verification in quality gates: ```markdown ## Quality Gates Before marking workflow complete, verify: - [ ] All required artifacts generated - [ ] All reviewers provided sign-off - [ ] Final artifacts saved to .aiwg/{category}/ - [ ] Working drafts archived to .aiwg/archive/{phase}/ - [ ] Working directory cleaned (.aiwg/working/ empty) - [ ] Audit trail preserved (archived files contain full review history) ``` --- ## Benefits of This Pattern 1. **Clean Workspace**: Each flow starts with empty `.aiwg/working/`, preventing confusion 2. **Complete Audit Trail**: All multi-agent interactions preserved for compliance/review 3. **Debugging Enabled**: Can review archived drafts/reviews if final artifact has issues 4. **Disk Space Management**: Working directory doesn't accumulate files indefinitely 5. **Phase Isolation**: Each phase's work products clearly separated in archive 6. **Reproducibility**: Can reconstruct how decisions were made from archived materials --- ## Flow Commands to Update **High Priority** (multi-agent workflows): - `flow-concept-to-inception.md` (UPDATED) - `flow-inception-to-elaboration.md` - `flow-elaboration-to-construction.md` - `flow-iteration-dual-track.md` - `flow-discovery-track.md` - `flow-delivery-track.md` - `flow-architecture-evolution.md` - `flow-test-strategy-execution.md` - `flow-security-review-cycle.md` **Medium Priority** (some working files): - `flow-risk-management-cycle.md` - `flow-requirements-evolution.md` - `flow-deploy-to-production.md` **Low Priority** (minimal working files): - `flow-gate-check.md` - `flow-handoff-checklist.md` - `project-status.md` (read-only, no cleanup needed) --- ## Exception: Single-Agent Workflows For flows that use **single agents** (no multi-agent review pattern): - Archive only if there are drafts/intermediate files - If agent generates final artifact directly no cleanup needed - Example: Simple risk list updates, minor requirement changes --- ## Testing Cleanup Pattern After implementing cleanup in a flow command, test with: ```bash # 1. Run the flow /flow-{name} # 2. Verify working is empty ls -la .aiwg/working/ # Should show: total 8, drwxr-xr-x 2 ... (empty) # 3. Verify archive exists ls -la .aiwg/archive/{phase}/ # Should show: multiple subdirectories with files # 4. Spot-check archived content cat .aiwg/archive/{phase}/vision-development/synthesis-report.md # Should contain: readable content, not empty or corrupted ``` --- ## Troubleshooting **Problem**: `cp: cannot stat '.aiwg/working/X': No such file or directory` **Solution**: Use `2>/dev/null || true` to suppress errors for missing directories: ```bash cp -r .aiwg/working/X/ .aiwg/archive/{phase}/X/ 2>/dev/null || true ``` **Problem**: Archive directory too large (>100MB) **Solution**: Compress older archives: ```bash cd .aiwg/archive tar -czf inception.tar.gz inception/ rm -rf inception/ ``` **Problem**: Need to reference archived file **Solution**: Archives are persistent, use full path: ```bash cat .aiwg/archive/inception/vision-development/synthesis-report.md ``` --- ## Future Enhancements 1. **Automated archive compression**: After 30 days, compress phase archives 2. **Archive index**: Generate `.aiwg/archive/INDEX.md` listing all archived materials 3. **Selective archive**: Archive only files >1KB (skip empty/tiny files) 4. **Archive metadata**: Include timestamp, agent versions, flow duration in archive