troykelly/claude-skills

deferred-finding

Use when a review finding cannot be fixed in current PR - creates properly documented tracking issue with full context, linked to parent, following full issue-driven-development process

First seen Jan 24, 2026

Installation

$ npx skills add troykelly/claude-skills --skill deferred-finding

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from troykelly/claude-skills · top by installs.

npx skills add troykelly/claude-skills

Browse all from troykelly/claude-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 11
Default branch main
Open issues 1
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Allowed toolsmcp__github__*

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 6,471 B
  • docs SUMMARY.md 209 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 20 installs

SKILL.md

Deferred Finding

Overview

Process for creating tracking issues when review findings cannot be addressed in the current PR.

Core principle: No finding disappears. Every deferral is tracked.

ABSOLUTE REQUIREMENT: Deferred findings MUST have tracking issues. There is no other option.

When to Defer

A finding may ONLY be deferred when:

Valid Reason Example
Out of scope Finding requires architectural change beyond PR scope
External dependency Requires infrastructure/config change
Breaking change Would require major version bump
Separate concern Logically independent from current work

Never Defer Without Tracking

Invalid Approach Reality
"We'll fix it later" Without tracking, later never comes
"It's minor" Minor issues compound into major problems
"Not my problem" You found it, you track it
"Good enough" Good enough creates technical debt

Deferral Process

Step 1: Verify Deferral is Appropriate

Ask yourself:

  • Can this reasonably be fixed in this PR? If yes, FIX IT.
  • Is there a valid reason from the "When to Defer" table?
  • Have you tried to fix it first?

Step 2: Determine Finding Details

Document:

  • What is the finding?
  • Why is it a problem?
  • Where in the code?
  • What's the severity?
  • Why can't it be fixed now?

Step 3: Create Tracking Issue

Use this template:

## [Finding] [Brief description] (from #[PARENT])

### Origin

This issue was created during code review of #[PARENT_ISSUE].

| Property | Value |
|----------|-------|
| Parent Issue | #[PARENT_ISSUE] |
| Parent PR | #[PARENT_PR] (if exists) |
| Finding ID | F-[PARENT]-[N] |
| Severity | [CRITICAL/HIGH/MEDIUM/LOW] |
| Review Criterion | [Which of 7 criteria OR OWASP category] |
| Depth | [N] |

### Finding Details

**What was found:**
[Detailed description of the issue - be specific]

**Location:**
- File: `[path/to/file.ts]`
- Line(s): [N-M]
- Function: `[functionName()]`

**Why it matters:**
[Impact if not addressed - be concrete]

**Evidence:**
```[language]
[Code snippet showing the issue]

Why Deferred

[Explain why this cannot be fixed in the parent PR]

Reason Details
Category [out-of-scope / external-dependency / breaking-change / separate-concern]
Justification [Specific explanation]

Acceptance Criteria

  • [Specific criterion 1 - must be verifiable]
  • [Specific criterion 2]
  • [How to verify the fix]

Links

  • Parent Issue: #[PARENT_ISSUE]
  • Review Comment: [Link to review artifact if applicable]

Labels: review-finding, spawned-from:#[PARENT], depth:[N], [severity]

This issue follows the full issue-driven-development process including its own code review.


### Step 4: Create Issue via CLI

gh issue create \ --title "[Finding] Rate limiting needed on auth endpoint (from #123)" \ --body "$(cat <<'EOF' [Full template body here] EOF )" \ --label "review-finding" \ --label "depth:1" \ --label "high"


Note: Create the `spawned-from:#N` label if it doesn't exist:

gh label create "spawned-from:#123" --color "C2E0C6" --description "Spawned from issue #123" 2>/dev/null || true gh issue edit [NEW_ISSUE] --add-label "spawned-from:#123"


### Step 5: Update Review Artifact

Add the new issue to the "Findings Deferred" section:

Findings Deferred (With Tracking Issues)

# Severity Finding Tracking Issue Justification
1 HIGH Rate limiting needed #456 Requires infrastructure changes

### Step 6: Update Parent Issue (If Deviation Required)

If the deferred finding BLOCKS the parent PR (e.g., critical security issue):

Add awaiting label

gh issue edit 123 --add-label "status:awaiting-dependencies"

Post deviation comment

gh issue comment 123 --body "$(cat <<'EOF'

Deviation: Awaiting Dependencies

This issue cannot proceed until deferred findings are resolved.

Property Value
Blocked At Step 9 (Code Review)
Dependencies #456
Reason Critical deferred finding blocks PR

Work will resume when #456 is complete. EOF )"


## Tracking Issue Lifecycle

Once created, the tracking issue:

1. **Is a first-class issue** - Full issue-driven-development process
2. **Gets its own review** - Cannot skip comprehensive-review
3. **May create its own deferrals** - Depth increments
4. **Closes independently** - Does not auto-close with parent

## Depth Tracking

| Depth | Meaning |
|-------|---------|
| 1 | Finding from original issue's review |
| 2 | Finding from a depth-1 issue's review |
| 3+ | Deeper nesting - flag for human attention |

At depth 3+:

Deep Finding Chain Detected

This issue is at depth [N]. Chain:

  • #100 (original)

- #101 (depth 1) - #102 (depth 2) - #103 (depth 3) - Current

Consider: Is there a systemic issue requiring broader attention?


## Labels

Required labels for tracking issues:

| Label | Purpose |
|-------|---------|
| `review-finding` | Identifies as born from review |
| `spawned-from:#N` | Links to parent issue |
| `depth:N` | Tracks nesting level |
| `[severity]` | critical/high/medium/low |

Optional labels:
- `security` - Security-related finding
- `status:pending` - Ready for work

## Checklist

Before marking finding as deferred:

- [ ] Verified cannot fix in current PR
- [ ] Valid deferral reason documented
- [ ] Tracking issue created with full template
- [ ] Issue has all required labels
- [ ] Issue linked to parent
- [ ] Review artifact updated with tracking issue number
- [ ] Parent issue updated (if deviation required)

## Integration

This skill is called by:
- `apply-all-findings` - When finding cannot be fixed
- `comprehensive-review` - When documenting deferrals

This skill creates:
- New GitHub issues following full `issue-driven-development` process
- Deviation state on parent issue (if blocking)

This skill references:
- `issue-lifecycle` - Issue management
- `issue-driven-development` - Process for new issues