Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Feedback

ASecurity

Use when implementation, review, security, scalability, or incident work reveals that an upstream .forge/ artifact is wrong, when a contract is missing an operation, when an ADR is being contradicted by a current need, when security recommends architecture changes, or when the user says "we discovered the spec is wrong".

3 stars
0 votes
0 copies
0 views
Added 5/28/2026
developmentgoapisecurity

Works with

api

Security Analysis

A100/100

Scanned 5/28/2026

$npx -y skills add aneja5/forge-skills --skill feedback --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Feedback?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Feedback
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aneja5-feedback/badge)](https://www.skillsdirectory.com/skills/aneja5-feedback)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: feedback
description: Use when implementation, review, security, scalability, or incident work reveals that an upstream .forge/ artifact is wrong, when a contract is missing an operation, when an ADR is being contradicted by a current need, when security recommends architecture changes, or when the user says "we discovered the spec is wrong".
---

# Feedback (reverse cascade)

## Overview

Capture a finding from any downstream stage into a structured `.forge/feedback/<timestamp>-<source>.md` entry that targets one upstream artifact. The entry stays as `status: PENDING` until the upstream skill re-runs and addresses it. `forge-sync` flags the target artifact as **FEEDBACK_PENDING** until the entry is resolved.

This is the only sanctioned reverse-cascade primitive. The forward chain (`prd → arch → tasks → code`) flows one direction; backward propagation happens through these entries, not by directly editing upstream artifacts mid-stream.

## When to Use

- During `/build` you discover the relevant contract is missing an operation or has the wrong shape
- During `/review` you find an architectural flaw that wasn't visible at design time
- During `/secure` or `/scale` you produce a recommendation that implies architecture changes (add a WAF, change a data store, add a gateway)
- During an incident you discover an error path the error-handling spec didn't cover
- After a sprint, you realize ≥3 tasks split mid-flight — the plan needs an update before the next sprint

## When NOT to Use

- The fix is fully contained inside the current stage (don't escalate every implementation detail)
- You have permission to edit the upstream artifact directly and want to do so — then just edit it; `forge-sync` will flag downstream as STALE
- The finding is a question, not a recommended change — discuss with the user first; file the entry once a recommendation crystallizes
- The target artifact doesn't exist (`.forge/security.md` not yet generated) — run the source skill instead

## Common Rationalizations

| Thought | Reality |
|---------|---------|
| "I'll just edit the contract inline" | Then the chain has no record of WHY it changed. Future readers see a contract that contradicts the PRD with no explanation. |
| "Filing a feedback entry is overhead — I'll fix it later" | "Later" means the finding is forgotten by the time the upstream skill re-runs. The entry is the memory. |
| "The upstream skill will figure it out when it re-runs" | The upstream skill regenerates from its inputs, not from the downstream's discovery. Without a feedback entry, the regenerated artifact has the same flaw. |
| "This is too small for a feedback entry" | Three small findings ignored = one big surprise at /ship. |
| "I'll just tell the user verbally" | Verbal findings evaporate. The entry survives session boundaries. |

## Red Flags

- Editing `.forge/contracts/<X>.md` directly during `/build` instead of filing a feedback entry
- A sprint ends with no `.forge/feedback/` entries despite ≥3 tasks having `notes` populated
- `forge-sync` reports `FEEDBACK_PENDING` on artifacts that are about to be re-generated, but the regenerating skill doesn't read `.forge/feedback/`
- A `.forge/feedback/*.md` file exists with `status: PENDING` for more than two sprints — either resolve it or mark it `DEFERRED` with a reason

## Core Process

### Step 1: Identify source, target, and finding

- **Source stage:** which skill or activity discovered the issue (`build`, `review`, `secure`, `scale`, `incident`, `manual`)
- **Source context:** task ID, commit, PR, incident ID, or "manual" if ad-hoc
- **Target artifact:** which `.forge/` file needs revision. Must exist on disk. If multiple files need revision, file separate entries.
- **Finding:** what was discovered (1-3 sentences, specific)
- **Recommended change:** what should change in the target artifact (specific enough that re-running the source skill can apply it)

### Step 2: Decide severity

Choose one:
- **NEEDS_REVIEW** — finding requires a human decision; auto-cascade not safe (e.g., "add WAF" — the human decides whether to absorb the change in architecture or defer)
- **FEEDBACK_PENDING** — recommended change is mechanical; the upstream skill can apply it on re-run (e.g., "add `refund` endpoint to PaymentService contract")

Both states block `/ship`. Only `NEEDS_REVIEW` blocks `/build` if it touches the in-flight task's contract.

### Step 3: Write the entry

Path: `.forge/feedback/<ISO8601-UTC-with-dashes>-<source>.md` — e.g., `.forge/feedback/2026-05-14T103000Z-build.md`.

```markdown
<!-- forge:meta
generated_by: feedback
generated_at: 2026-05-14T10:30:00Z
depends_on: [.forge/contracts/payment-service.md]
generated_from:
  .forge/contracts/payment-service.md: <target's content_hash AT filing time>
content_hash: <first 8 chars of sha256 over this entry's body>
-->

# Feedback: <short title>

- **Source stage:** build (incremental-implementation, task T-042)
- **Source context:** commit pending; branch task/T-042-refund-flow
- **Target artifact:** .forge/contracts/payment-service.md
- **Severity:** FEEDBACK_PENDING
- **Status:** PENDING
- **Filed at:** 2026-05-14T10:30:00Z
- **Resolved at:** —

## Finding

While implementing the refund flow, the PaymentService contract has no `refund(transactionId, amount)` operation. The PRD's "User can refund failed transactions within 30 days" story can't be satisfied without it.

## Recommended change

Add to `Provides` in `.forge/contracts/payment-service.md`:

  refund(input: RefundInput): RefundOutput | RefundError

with:
- `RefundInput = { transactionId: string, amount?: number, idempotencyKey: string }`
- `RefundOutput = { refundId, refundedAt, amount }`
- `RefundError` cases: `TransactionNotFound`, `RefundWindowExpired`, `AlreadyRefunded`, `PartialRefundNotAllowed`

Idempotency-Key required per `api-design.md` mutation policy.

## Cascade

- Re-run `/architect` (or edit the contract directly) to address this entry.
- After contract update, re-run `/plan` if the refund story needs new tasks beyond T-042.
- `forge-sync` will mark this entry `RESOLVED` once the target artifact's `generated_at` advances past this entry's `generated_at` AND the recommended operation appears in the target.
```

`depends_on` is the target_artifact (single-element list) — that's what `forge-sync` reads to identify what's being annotated.

### Step 4: Confirm with user

Print the entry path and a one-line summary:

> Filed `.forge/feedback/2026-05-14T103000Z-build.md` — target `.forge/contracts/payment-service.md`, severity FEEDBACK_PENDING. Run `/sync` to see chain impact.

Do not modify the target artifact in this skill. The skill is write-only into `.forge/feedback/`.

### Step 5: Tracking resolution

The feedback skill itself does not resolve entries. Resolution happens when the targeted upstream skill re-runs:

1. The upstream skill (e.g., `architecture-and-contracts`) reads all `.forge/feedback/*.md` entries where `target_artifact` matches an output it owns AND `status: PENDING`.
2. It addresses each in its regeneration.
3. After writing, it updates each addressed entry: `status: RESOLVED`, `resolved_at: <now UTC>`, `resolved_by: <commit or "manual">`.
4. `forge-sync` confirms the resolution by checking that the target artifact's content reflects the recommended change.

Entries can also be marked `DEFERRED` (with a reason in the body) when the team decides not to act — the entry stays in the directory as historical record.

## Verification

- [ ] `.forge/feedback/<timestamp>-<source>.md` written
- [ ] Filename timestamp is UTC with Z; format `YYYY-MM-DDTHHMMSSZ-<source>.md`
- [ ] `forge:meta` header has `depends_on: [<single target artifact path>]`
- [ ] Severity is one of `FEEDBACK_PENDING` or `NEEDS_REVIEW`
- [ ] Status is `PENDING` at filing time
- [ ] Recommended change is specific (operation name, type names, error cases — not "make it better")
- [ ] Cascade section names which upstream skill should re-run
- [ ] No upstream artifact was directly edited by this skill

Attribution

aneja5aneja5
View sourceSee grades on GitHubMore from aneja5 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Clean Code

Pragmatic coding standards - concise, direct, no over-engineering, no unnecessary comments

304955 votes

Browser Extension Developer

Use this skill when developing or maintaining browser extension code in the `browser/` directory, including Chrome/Firefox/Edge compatibility, content scripts, background scripts, or i18n updates.

286712 votes

Seo Optimizer

SEO optimization with keyword analysis, readability assessment, technical validation, content quality. Use for search rankings, blog posts, content audits, or encountering keyword density, readability scores, meta tags, schema markup errors.

2222 votes

Google Official Seo Guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

1862 votes

Writing Plans

Use when you have a spec or requirements for a multi-step task, before touching code

2927051 votes
View all in development →