# Verify Workflow (Close Implemented Bugs/Features) ```xml This workflow verifies implemented items and closes them in both bugs.yaml and bugs.md Communicate in {communication_language} with {user_name} Removes [IMPLEMENTED] tag and updates status to CLOSED (bugs) or COMPLETE (features) Extract item ID from user input Detect type from ID format: - "bug-NNN" -> type = "bug", final_status = "CLOSED" - "feature-NNN" -> type = "feature", final_status = "COMPLETE" Proceed to Step 2 Search {bugs_yaml} for 'status: "fixed"' or 'status: "implemented"' using grep (do NOT read entire file) Search {bugs_md} for '[IMPLEMENTED]' entries using grep Find all items with: - status == "fixed" or "implemented" in bugs.yaml - [IMPLEMENTED] tag in bugs.md **Pending Verification:** {for each pending item:} - **{item_id}**: {title} [{type}, {fixed_date or implemented_date}] {end for} **Total:** {count} item(s) awaiting verification To verify an item: `/verify bug-026` To verify all: Type "verify all" Which item would you like to verify? Set batch_mode = true Collect all pending items Proceed to Step 2 with batch processing Search for {item_id} in {bugs_yaml} using grep with 50+ lines of context after the match (do NOT read entire file - it exceeds token limits) Entry will be in bugs section, verify status == "fixed" Entry will be in feature_requests section, verify status == "implemented" {item_id} is not in an implemented state. Current status: {status} Only items with status "fixed" (bugs) or "implemented" (features) can be verified. HALT Extract metadata: title, description, fixed_date/implemented_date, notes **Sync Check:** Also read {bugs_md} to verify sync status SYNC WARNING: {item_id} status mismatch detected - bugs.yaml: {yaml_status} - bugs.md: Missing [IMPLEMENTED] tag (may have been implemented outside workflow) Proceeding will update both files to CLOSED/COMPLETE. Continue with verification? (yes/no) Cancelled. Please run /implement {item_id} first to sync files. HALT **Verify {item_id}: {title}** **Type:** {type} **{past_verb}:** {fixed_date or implemented_date} **Implementation Notes:** {notes - show the FIXED/IMPLEMENTED section} **Files Changed:** {extract file list from notes} Has this been tested and verified working? (yes/no/skip) What issue did you find? (I'll add it to the notes) Append verification failure note to bugs.yaml notes field Noted. {item_id} remains in implemented state for rework. HALT or continue to next item in batch Skipped. {item_id} remains in implemented state. Continue to next item in batch or HALT Update entry in bugs.yaml: - status: "closed" - verified_by: {user_name} - verified_date: {date} (YYYY-MM-DD format) - Append to notes: "Verified ({date}) by {user_name}" Write updated bugs.yaml Search for {item_id} in {bugs_md} using grep with surrounding context to locate the entry **5a. Find the entry** Search for "[IMPLEMENTED] {item_id}:" in "# Fixed Bugs" section Search for "{item_id}:" in "# Tracked Bugs" section (implemented outside workflow) Search for "[IMPLEMENTED] {item_id}:" in "# Implemented Features" section Search for "{item_id}:" in "# Tracked Feature Requests" section (implemented outside workflow) **5b. Move entry if in wrong section** DELETE the entry from "# Tracked Bugs" or "# Tracked Feature Requests" ADD entry to correct section: Add to "# Fixed Bugs" section Add to "# Implemented Features" section (at top, before other entries) **5c. Update the entry format** Remove "[IMPLEMENTED] " prefix if present Update the status tag in brackets: Change from "[Severity: X, Fixed: DATE, Verified: pending]" or "[Severity: X, Complexity: Y, Workflow: Z]" To "[Severity: X, Platform: Y, Fixed: {date}, Verified: {date}, CLOSED]" Change from "[Implemented: DATE, Verified: pending]" or "[Priority: X, Complexity: Y, Workflow: Z]" To "[Implemented: {date}, Platform: Y, Verified: {date}, COMPLETE]" Add implementation notes if available from bugs.yaml Write updated bugs.md Search for {item_id} in both bugs.yaml and bugs.md using grep to validate updates Confirm bugs.yaml: status="closed", verified_by set, verified_date set Confirm bugs.md: No [IMPLEMENTED] tag, has CLOSED/COMPLETE in status tag SYNC ERROR: Verification may be incomplete. Please check both files: - bugs.yaml: Expected status "closed", verified_by/verified_date set - bugs.md: Expected CLOSED/COMPLETE tag, no [IMPLEMENTED] prefix **Verification Complete** **Verified {verified_count} item(s):** {for each verified item:} - {item_id}: {title} -> {final_status} {end for} **Skipped:** {skipped_count} **Failed verification:** {failed_count} **Updated Files:** - bugs.yaml: status -> "closed", verified_by/verified_date set - bugs.md: [IMPLEMENTED] tag removed, status -> {final_status} **{item_id} VERIFIED and {final_status}** **Updated:** - bugs.yaml: status -> "closed", verified_by -> {user_name}, verified_date -> {date} - bugs.md: Removed [IMPLEMENTED] tag, added "Verified: {date}, {final_status}" This item is now fully closed. ``` ## Usage ``` /verify # List all pending verification /verify bug-026 # Verify specific bug /verify feature-021 # Verify specific feature /verify all # Verify all pending items ``` ## Status Transitions | Type | Before | After | |------|--------|-------| | Bug | status: "fixed", [IMPLEMENTED] | status: "closed", CLOSED | | Feature | status: "implemented", [IMPLEMENTED] | status: "closed", COMPLETE | ## Key Principles 1. **Verification Gate** - User must confirm item was tested and works 2. **Failure Handling** - If verification fails, add note and keep in implemented state 3. **Batch Support** - Can verify multiple items at once 4. **Dual Tracking** - ALWAYS update both bugs.yaml AND bugs.md 5. **Proper Closure** - Removes [IMPLEMENTED] tag, adds final CLOSED/COMPLETE status