review-plan-findings-feedback — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited review-plan-findings-feedback (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Review a follow-up feedback file after plan-review findings were addressed. Do not implement code and do not edit the plan. The only user-facing artifact is a findings file. Adjudication work artifacts may be created only in this run's fresh scratchpad directory.
.ai/impl_plans/<plan-id>/findings-feedback/<timestamp>/feedback.md.implementation-plan-review.Infer exactly one plan-id, such as issue-418.
Priority:
.ai/impl_plans/<plan-id>.md..ai/impl_plans/<plan-id>/findings-feedback/<timestamp>/feedback.md — the plan-id is the first path segment after impl_plans/..ai/impl_plans/<plan-id>/scratchpads/<timestamp>/... — same rule: the plan-id is the first segment after impl_plans/, not a suffix to strip.Confirm .ai/impl_plans/<plan-id>.md exists before proceeding.
Before reading or listing any files under .ai/impl_plans/<plan-id>/findings/, run:
bash .agents/skills/review-plan-findings-feedback/scripts/new_findings_dir.sh <plan-id>This creates a fresh timestamped directory .ai/impl_plans/<plan-id>/findings/<timestamp>/ (nothing existing is touched or deleted) and prints its absolute path on stdout. Use exactly that printed path for this run's output — never glob or guess a path under .../findings/ yourself, and never reuse a directory from an earlier run. (If the printed path is ever lost from context, the lexicographically-last timestamp subdirectory is the most recent, since the timestamp format sorts chronologically — but prefer the printed path.) If the script exits non-zero, it prints error: <message> on stderr; fix the cause and rerun it before doing review work.
Read in full:
.ai/impl_plans/<plan-id>.md.Read targeted evidence as needed:
.cursor/rules/*.mdc files needed to verify whether the feedback and plan edits are correct.Do not open unrelated implementation plans.
For each original finding:
Then scan the edited plan sections for newly introduced or newly exposed issues. Apply the same review standard as implementation-plan-review, but distinguish unresolved original findings from genuinely new candidate problems before launching any adjudicator.
A problem is new only when it is not substantively covered by an original finding. Treat it as the unresolved original finding, without new adjudication, when it has the same violated requirement, affected behavior, and corrective obligation, even if the feedback review discovers new evidence, a clearer wording, another manifestation, or a different severity. Treat a distinct requirement violation, failure mode, edge case, affected surface, or materially different corrective obligation as a new candidate. When both are present, split the unresolved original part from the genuinely new candidate.
Do not report:
Skip this step when the closure review produces no genuinely new candidates. Never launch a new adjudicator for an original finding, regardless of its closure disposition.
Before creating candidate inputs or launching adjudicators, read these implementation-plan-review resources completely:
.agents/skills/implementation-plan-review/references/finding-adjudication-protocol.md.agents/skills/implementation-plan-review/assets/finding-adjudication-report.mdCreate a fresh adjudication run:
bash .agents/skills/implementation-plan-review/scripts/new_scratchpads_dir.sh \
.ai/impl_plans/<plan-id>.mdUse exactly the absolute path printed on stdout as this feedback review's adjudication run directory. Never reuse or write into an earlier scratchpad run. For each new candidate, create:
finding-01-short-slug/
├── input.md
├── full-report.md # written by the adjudicator
└── brief.md # generated by the finalizerCreate input.md with:
Confirmed, Downgraded, Question, and Closed are all successful outcomes.Do not include the feedback, original findings, prior scratchpads or adjudications, a preferred solution, or an expected disposition. The main reviewer owns novelty classification; the adjudicator decides only whether the candidate is an actionable problem in the current plan.
Launch one independent subagent per candidate, batching when concurrency is limited. Use fork_turns="none" and prefer a strong reasoning model (gpt-5.6-sol with xhigh reasoning when available) unless the user requests otherwise. The launcher prompt must contain only:
input.md path;Require each adjudicator to write full-report.md, run finalize_adjudication.py, fix every validation error, and return only the protocol's short completion record. The finalizer generates brief.md; never edit it manually.
After all adjudicators finish, verify the complete run:
python3 .agents/skills/implementation-plan-review/scripts/verify_adjudication_run.py \
--run <absolute-run-directory> \
--expected-count <candidate-count>If verification fails, send the exact errors to the responsible adjudicator and require correction and re-finalization. Read all valid brief.md files first; inspect a full report or extract a tagged section only when progressive disclosure is warranted.
The main reviewer owns cross-finding deduplication, conflicts, cumulative scope, and one common severity scale. Only Confirmed, actionable Downgraded, and unresolved Question candidates survive. Omit Closed candidates. Deduplicate surviving new candidates against unresolved original findings before writing the output.
If one or more unresolved original findings or adjudicated new findings survive, create exactly one Markdown file inside the directory printed in step 2:
.ai/impl_plans/<plan-id>/findings/<timestamp>/findings.mdThe file must contain only a list of reportable findings. Do not add an introduction, summary, "no findings" line, or review sections.
Use this item shape:
- **Severity:** Major
**Location:** Phase N / plan section + relevant repo file or rule
**Problem:** What remains wrong or what new problem was introduced.
**Recommendation:** Concrete change to the plan.
**Rationale:** Why it matters.
**Scratchpad:** Path to the generated brief.md.For an unresolved original actionable finding, preserve its original generated brief.md path. For a surviving new actionable finding, use the new adjudication's generated brief.md. Never link directly to full-report.md. Omit Scratchpad only for a pure Question.
If no findings survive, do not create any file in the findings directory.
If a findings file was created, reply with only a clickable link to it:
[.ai/impl_plans/<plan-id>/findings/<timestamp>/findings.md](.ai/impl_plans/<plan-id>/findings/<timestamp>/findings.md)If no new findings were found and every original finding was closed by plan edits, reply exactly:
No new findings.If no new findings were found and at least one original finding was rejected by the feedback but you accept the rejection, reply exactly:
No new findings. Rejections accepted.Do not repeat findings in chat.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.