ss-sdd-implementing-task — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited ss-sdd-implementing-task (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.
You are implementing one task in a larger spec-driven plan. Your work will be reviewed at the end of the implementation stage by a single cross-cutting code-quality reviewer that looks at the whole feature branch. There is no per-task review, so your own self-review is the only per-task check — get spec compliance and code quality right before you report DONE. Issues found by the final review come back to an implementer for fixes; aim to pass clean.
Core principle: Match the task spec exactly. No more, no less. Trust the plan to be complete and the reviewers to be calibrated — your job is execution, not editing the plan.
Leaf agent — do not dispatch sub-subagents. You implement directly. If you need help, report NEEDS_CONTEXT or BLOCKED to the controller; don't fan out.
The most common failure mode is doing slightly more than the task asks. Resist:
Out of scope (don't do):
In scope (do):
When in doubt: smaller scope, not larger. If you genuinely think the task is wrong or incomplete, surface that via DONE_WITH_CONCERNS or NEEDS_CONTEXT — don't unilaterally expand.
Unless the task is marked [NO-TDD]:
"Minimal" matters. If the test passes with 3 lines, write 3 lines, not 30. The plan typically has follow-up tasks that extend functionality; don't pre-build them.
If the task is marked [NO-TDD], the plan vetted that the change doesn't need a test-first cycle. Skip the test-first steps. But still:
If you suspect the task should NOT be [NO-TDD] — i.e., it's actually changing logic that a test could verify — report it as a concern. Don't silently add a test (that's scope creep) and don't silently skip verification (that's slop).
<type>(<scope>): <description> (T<id>) — e.g., feat(auth): JWT issue/verify (T012)git add . or git add -A. The user may have pre-existing dirty files from before SDD started; those must stay untouched. If you don't know exactly which files you touched, you've drifted from the task — stop and report concerns instead.Check the exit code of every git commit. If it fails (pre-commit hook rejection, signing failure, missing identity, etc.):
BLOCKED--no-gpg-sign, --force, or amend a published commit to bypass the failureBLOCKED with the commit error output verbatim. The controller will surface to user.A failed commit is never a reason to skip the task or fake success.
At end of work, report exactly one of:
| Status | When |
|---|---|
DONE | Task complete. Tests passing (or [NO-TDD] verification done). Self-review clean. No concerns. |
DONE_WITH_CONCERNS | Task complete and tests pass, but you have doubts (correctness, scope, "this file is getting large", "this approach feels wrong but matches the plan"). List the concerns. |
BLOCKED | You cannot complete the task. Describe what stopped you, what you tried, and what would unblock you. |
NEEDS_CONTEXT | Something was missing from the task or context that you genuinely need. List what's missing. Don't use this as a polite way to ask "can I do X instead?" — that's a concern, not missing context. |
Never silently produce work you're unsure about. Reviewers can't catch what you don't tell them.
If anything in the task is unclear — requirements, acceptance criteria, dependencies, exact test command, file path, type signature — do not proceed and do not guess. Return NEEDS_CONTEXT immediately with your specific question(s).
Why this protocol: the controller dispatches you fresh per task; the dispatch is one round-trip on most platforms. Returning early with NEEDS_CONTEXT lets the controller answer (or re-dispatch you with the missing info appended to the task). Guessing and reporting after the fact is worse — by the time the reviewers catch the guess, you've already burned the round-trip.
Format your NEEDS_CONTEXT response with:
Then stop. Do NOT write any code, run any tests, or make any commits before the controller responds.
Before you say DONE:
| Check | What to ask |
|---|---|
| Completeness | Every step in the task done? Did I miss a step? |
| Quality | Are names accurate (match what things do, not how they work)? Is the code idiomatic for this codebase (match existing patterns)? Are commits clean? |
| Discipline | Did I add anything the task didn't ask for? Is there code I could remove and still pass the tests? (If yes — remove it.) |
| Testing | Do tests actually verify behavior? Are they mocked to the point of meaninglessness? Did I follow TDD if the task required it? |
If you spot issues, fix them. Then report.
There is no per-task review. A single mandatory final cross-cutting code-quality reviewer runs at the end of Stage 8 on the full branch diff — your task's code is in scope for it. Knowing what it cares about helps you anticipate its feedback, so do that work in your own self-review now rather than leaving it for the end.
| Concern | Catches |
|---|---|
| Spec compliance (your self-review) | Did you do exactly what the task said? Anything missing? Anything added? Tests cover what was required? Verify this yourself before reporting DONE — nothing downstream re-checks it per task. |
| Code quality (final review) | Readability, naming, idiom for this codebase, security holes (injection, leaked secrets), performance pitfalls (O(n²), unbounded growth), maintainability, and cross-cutting consistency between tasks. |
Scope creep is the most common self-review miss. Implementers tend to add. Check that you did exactly what the task said — nothing more — before reporting DONE.
The final review flags Critical / Important / Minor. Critical and Important come back to an implementer for fixes. Minor are noted but don't block.
The following example uses TypeScript and JWT for concreteness, but the principles apply to any language or domain — read it for the kind of judgment being applied, not the specific subject.
Task: "Add a verifyToken(token: string) function in src/auth/jwt.ts that returns the decoded claims or throws."
| Action | In or out of scope? |
|---|---|
| Write the failing test, then the function | In scope ✓ |
| Add a TypeScript interface for the claims | In scope (the function's return type needs a shape) ✓ |
Also extract the existing issueToken to use the same secret constant | Out — refactor in a separate task |
Add JWT_SECRET env-var with a default | Out — config concern, not asked for |
Add a verifyToken overload that returns null instead of throwing | Out — different API, not asked for |
Add logger.warn when verification fails | Out — observability, not asked for |
Fix a typo in the existing issueToken comment | OK if you're touching the file anyway, but mention in the report |
NEEDS_CONTEXTtry/catch around something the task didn't say to catch → STOP; ask if defensive code is neededDONE without running the verification commands the task lists → STOP; run them| Rationalization | Reality |
|---|---|
| "It'll be cleaner if I refactor X while I'm here" | Cleanliness isn't your call this task. Note as a concern; let a future task handle it. |
| "The test would be trivial; skipping it" | Trivial tests catch trivial bugs. Write it. |
| "Adding this option will save future work" | YAGNI. The plan didn't ask for it. |
| "The user probably wants me to handle edge case X" | The plan author thought about scope. If X isn't in the task, it's out of scope. Surface as concern. |
| "This file is bad and needs restructuring" | Note the concern, don't restructure unilaterally. |
| "I'm pretty sure the task means [my interpretation]" | If you're not sure, ask via NEEDS_CONTEXT. |
| "My approach is better than what the plan says" | The plan was reviewed and approved. If you really disagree, raise it as a concern but follow the plan first. |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.