marketplace/bundles/pm-plugin-development/skills/verification-mode/SKILL.md
Verification mode that stops and analyzes on failures, workarounds, or resolution issues
npx skillsauth add cuioss/plan-marshall verification-modeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
When this skill is loaded, you are in VERIFICATION MODE. This modifies your behavior for ALL subsequent operations. You MUST follow the verification protocols below.
Verification mode ensures quality by stopping execution on any failure, workaround, or resolution issue to perform root cause analysis before proceeding.
Verification mode exists to validate and fix the PROCESS — never the data it produces.
Plans, tasks, outlines, status files — these are all outputs of the process. They are symptoms, not causes. When something is wrong with an output, the bug is in the component (skill, agent, command, script) that produced it.
| Aspect | Normal Mode | Verification Mode |
|--------|-------------|-------------------|
| Priority | Complete the task | Validate the process |
| On error | Fix the data/result, continue | Fix the PROCESS (agent/skill/command) |
| Success metric | Task completed | Process works correctly |
| Retry behavior | Acceptable if result correct | STOP - investigate why retry was needed |
| Fix target | Output files (.plan/plans/**) | Source components (marketplace/bundles/**) |
Before proposing ANY fix, you MUST pass this gate:
┌─────────────────────────────────────────────────┐
│ DOES MY PROPOSED FIX MODIFY FILES UNDER: │
│ │
│ .plan/plans/** → STOP. This is data. │
│ .plan/logs/** → STOP. This is data. │
│ .plan/temp/** → STOP. This is data. │
│ │
│ THE ONLY VALID FIX TARGETS ARE: │
│ │
│ marketplace/bundles/**/skills/** │
│ marketplace/bundles/**/agents/** │
│ marketplace/bundles/**/commands/** │
│ marketplace/bundles/**/scripts/** │
│ .plan/execute-script.py │
│ │
│ If your fix targets data → trace back to the │
│ component that PRODUCED the bad data and fix │
│ THAT instead. │
└─────────────────────────────────────────────────┘
Apply this gate at every decision point. If you catch yourself about to edit, recreate, or patch a plan file — stop, trace the data back to its source component, and fix the component.
When bad data is found, trace it to its source:
Never shortcut this by editing the output directly — that leaves the broken component in place to produce bad data again on the next run.
For detailed wrong-vs-right examples, see references/fix-target-examples.md.
When an error occurs, always ask:
"Which COMPONENT (agent, skill, command, script) in
marketplace/bundles/caused this, and how do I fix IT?"
Never ask:
"How do I fix the data so I can continue?"
Activate this skill when:
The skill supports different verification scopes via the scope parameter:
Skill: pm-plugin-development:verification-mode
Applies: Script failures, resolution failures, workaround detection
Skill: pm-plugin-development:verification-mode
scope: planning
Applies: All base checks PLUS:
Use this scope when testing /plan-marshall or any planning-related skills.
CRITICAL: After each phase completes, you MUST execute ALL 4 steps of the Post-Phase Verification Protocol, including verifying artifacts against workflow skill API contracts. See "After Each Phase Completes" section below.
CRITICAL: When this skill is loaded, you MUST modify your behavior as follows:
When any script returns non-zero exit code or produces error output:
When resolving paths, skill references, or dependencies fails:
When you would use an alternative approach instead of the documented method:
All analyses MUST use this structured format:
## [TYPE] Analysis Required
### Issue Detected
[Clear description of what triggered the stop]
### Context
- **Operation**: [What was being attempted]
- **Component**: [Which script/skill/command]
- **Expected**: [What should have happened]
- **Actual**: [What actually happened]
### Root Cause Analysis
[Analysis of why this occurred]
### Source Component (Mandatory)
- **Component**: [Full path to the skill/agent/command/script that caused the issue]
- **Defect location**: [Specific section, line, or logic in the component]
- **Fix-Target Gate**: [PASS: fix targets marketplace/bundles/** | FAIL: fix targets .plan/** — if FAIL, redo analysis]
### Impact Assessment
| Aspect | Impact |
|--------|--------|
| Blocking | Yes/No |
| Data Loss Risk | Yes/No |
| Workaround Available | Yes/No |
### Options
1. [Option 1 — must target a process component, not data]
2. [Option 2 — must target a process component, not data]
3. [Option 3 — must target a process component, not data]
### Recommendation
[Your recommended next step — must pass Fix-Target Gate]
---
**Verification Mode Active** - Awaiting user decision before proceeding.
CRITICAL: Before verification mode activates, prepare a clean environment.
Execute cleanup:
# Clear all log files
find .plan/logs -type f -delete
# Clear all existing plans (remove subdirectories)
find .plan/plans -mindepth 1 -maxdepth 1 -exec rm -r {} +
Verification: Confirm both directories are empty.
Output:
Environment prepared - logs and plans cleared for clean slate verification.
Note: If cleanup fails, STOP and report the issue.
After Step 1 completes, acknowledge:
Environment prepared - logs and plans cleared.
Verification Mode Active - All operations will stop on failures, resolution issues, or workarounds for analysis.
If scope: planning was specified, add:
Planning Scope Active - Additional checks: .plan access patterns, work-log population, status consistency.
For each operation:
When verification protocol triggers:
Only after user provides direction:
When: After tested workflow completes.
Purpose: Catch errors in the global log that failed before reaching plan-scoped logging (typically missing --plan-id or --audit-plan-id).
A. Scan Plan-Scoped Log:
python3 .plan/execute-script.py plan-marshall:manage-logging:manage-logging read --plan-id {plan_id} --type script
Review the output for [ERROR] entries. This uses the manage-log API (the designed access pattern for .plan files) and avoids shell metacharacters that trigger host-platform security prompts.
B. If Errors Found:
standards/log-error-analysis.md for common causesstandards/failure-analysis.md for full analysisC. Resolution Options:
standards/
├── failure-analysis.md (Script and tool failure analysis - real-time)
├── resolution-analysis.md (Path and reference resolution issues)
├── workaround-detection.md (Detecting and analyzing workarounds)
├── planning-compliance.md (Planning command/skill access patterns)
└── log-error-analysis.md (Post-workflow log error analysis)
These checks apply ONLY when scope: planning is specified:
Single Allowed .plan Access Pattern:
python3 .plan/execute-script.py {notation} {subcommand} {args...}
This is the ONLY allowed way to interact with .plan files. All other access is a violation.
Allowed Direct Write Pattern:
Write(.plan/plans/{plan_id}/solution_outline.md) is permitted when the path
was obtained via manage-solution-outline resolve-path and is immediately
followed by manage-solution-outline validate (or write/update). This replaces heredoc stdin.Prohibited .plan Access (ALL violations):
.plan/** file (except via execute-script.py invocation or the allowed direct write pattern above).plan/plans/*/status.toon.plan/plans/*/references.json.plan/plans/*/work.log.plan/local/marshall-state.toon.plan/local/logs/*.log.plan/local/lessons-learned/*.md.plan/**.plan/ structureRationale: All .plan access must go through manage-* scripts to ensure:
Read: Load analysis standards on-demand
No other tools required - this skill modifies behavioral patterns.
This skill is designed to be loaded alongside other skills:
Skill: pm-plugin-development:verification-mode
Skill: plan-marshall:phase-3-outline
When both are loaded, verification mode applies to all solution-outline operations.
Verification mode is working correctly when:
User: Run the init phase for EXAMPLE-PLAN
Claude: Verification Mode Active - All operations will stop on failures, resolution issues, or workarounds for analysis.
Executing plan-init for EXAMPLE-PLAN...
## SCRIPT FAILURE Analysis Required
### Issue Detected
Script plan-marshall:manage-status:manage-status returned non-zero exit code (1)
### Context
- **Operation**: Create plan status
- **Component**: plan-marshall:plan-manage
- **Expected**: status: success with plan created
- **Actual**: status: error with invalid_domain
### Root Cause Analysis
The domain "java-main" is not a valid domain identifier.
Script expects one of: java, javascript, plugin, generic.
### Impact Assessment
| Aspect | Impact |
|--------|--------|
| Blocking | Yes |
| Data Loss Risk | No |
| Workaround Available | Yes |
### Options
1. Fix the calling code to use valid domain identifier
2. Manually run with correct domain
3. Extend VALID_DOMAINS if new domain needed
### Recommendation
Fix option 1 - Update calling code to use valid domain "java"
---
**Verification Mode Active** - Awaiting user decision before proceeding.
When scope: planning is specified, load the planning verification protocol:
Read standards/planning-verification.md
This provides:
Verification mode remains active for the entire session once loaded.
To run without verification:
For post-hoc analysis of script failures with origin tracing and fix proposals, use the plan-retrospective skill (aspect: script-failure-analysis):
Skill: plan-marshall:plan-retrospective
When to use: After verification mode catches a failure, use plan-retrospective to:
Difference: Verification mode stops and analyzes in real-time; plan-retrospective performs deep post-hoc analysis with origin tracing as part of opt-in retrospective aspects.
testing
A test skill for README generation
testing
A test skill with existing references
tools
Skill without references directory
development
Test skill with table-format references