Skip to content

create-implementation-plan: require unique identifiers (#1989)#2142

Open
KomalSrinivasan wants to merge 2 commits into
github:mainfrom
KomalSrinivasan:fix/issue-1989-dup-plan-ids
Open

create-implementation-plan: require unique identifiers (#1989)#2142
KomalSrinivasan wants to merge 2 commits into
github:mainfrom
KomalSrinivasan:fix/issue-1989-dup-plan-ids

Conversation

@KomalSrinivasan

Copy link
Copy Markdown

Closes #1989.

@basilevs reported that the create-implementation-plan skill occasionally produces plans with duplicate TASK- identifiers (and could just as easily collide on REQ-, GOAL-, etc.). The skill template defines the prefix scheme but doesn't say identifiers must be unique, and gives the agent no way to verify.

The reporter already worked out the right checks. This PR drops them into the skill.

Changes

skills/create-implementation-plan/SKILL.md picks up:

  1. A new bullet under Template Validation Rules: identifiers must be declared exactly once across the plan. DEP-* is called out as the deliberate exception because it commonly appears as a reference in both Requirements and Dependencies.

  2. A new Identifier Uniqueness Check section with the reporter's three POSIX one-liners:

    • Check 1: duplicate TASK / GOAL declarations in table rows.
    • Check 2: duplicate declaration IDs in bullet-style spec lines.
    • Check 3: broad diagnostic scan (informational, may flag valid references).

    Checks 1 and 2 must return empty before finalizing. The section also notes the POSIX prereqs and what to substitute on Windows.

Why this shape

  • Reporter @basilevs already wrote and proposed the exact validation commands in the issue thread. Lifting them in verbatim respects their work and matches what they intended.
  • Adding the rule under the existing Template Validation Rules keeps it visible at the same scan depth as the other invariants.
  • The bash block is presented as a quality gate the agent runs at the end, not a runtime dependency. The agent can also do the equivalent check by other means if it prefers.

Verification

  • npm run skill:validate reports create-implementation-plan as valid.
  • npm run build exits 0, regenerates marketplace.json.
  • 1 file touched. No README diff because the skill description is unchanged.

The skill template tells the agent to use REQ-, TASK-, GOAL-, and
similar prefixed identifiers, but never says they have to be unique
or how to check. @basilevs reported plans coming back with duplicate
TASK IDs and proposed three POSIX one-liners that catch the two real
collision modes (table rows and bullet declarations) plus a broad
diagnostic scan.

Document the uniqueness rule under the existing Template Validation
Rules, then add a new "Identifier Uniqueness Check" section with all
three bash commands and instructions on which must come back empty
before the plan is finalized.

DEP-* references intentionally allowed in multiple sections per the
reporter's note.

Closes github#1989.
@github-actions github-actions Bot added the skills PR touches skills label Jun 26, 2026
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

🔒 PR Risk Scan Results

Scanned 2 changed file(s).

Severity Count
🔴 High 0
🟠 Medium 1
ℹ️ Info 0
Severity Rule File Line Match
🟠 unpinned-version-indicator .codespellrc 21 # categor - TypeScript template literal in website/src/scripts/pages/skills.ts:70 (categor${...length > 1 ? "ies" : "y"})

This is an automated soft-gate report. Findings indicate review targets and do not block merge by themselves.

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Skill Validator Results

⚠️ Warnings or advisories found

Scope Checked
Skills 1
Agents 0
Total 1
Severity Count
❌ Errors 0
⚠️ Warnings 1
ℹ️ Advisories 0

Summary

Level Finding
ℹ️ Found 1 skill(s)
ℹ️ [create-implementation-plan] 📊 create-implementation-plan: 1,913 BPE tokens [chars/4: 1,982] (detailed ✓), 27 sections, 2 code blocks
ℹ️ [create-implementation-plan] ⚠ No numbered workflow steps — agents follow sequenced procedures more reliably.
ℹ️ ✅ All checks passed (1 skill(s))
Full validator output
Found 1 skill(s)
[create-implementation-plan] 📊 create-implementation-plan: 1,913 BPE tokens [chars/4: 1,982] (detailed ✓), 27 sections, 2 code blocks
[create-implementation-plan]    ⚠  No numbered workflow steps — agents follow sequenced procedures more reliably.
✅ All checks passed (1 skill(s))

@github-actions github-actions Bot added the skill-check-warning Skill validator reported warnings label Jun 26, 2026
@KomalSrinivasan KomalSrinivasan changed the title create-implementation-plan: require unique identifiers (#1989) 🤖🤖🤖 create-implementation-plan: require unique identifiers (#1989) Jun 26, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🟡 Contributor Reputation Check: MEDIUM risk

Check Risk
Profile MEDIUM
Credential audit NONE

Maintainers: please review this contributor before merging.
See the workflow run for full details.
Automated check powered by AGT.

@github-actions github-actions Bot added the needs-review:MEDIUM Contributor reputation check flagged MEDIUM risk label Jun 26, 2026
@basilevs

Copy link
Copy Markdown

DEP- as an example was a confusing language. Any identifier can be reference. For example, one TASK- can reference another, most tasks should reference REQ-, etc.

Upstream skills/create-implementation-plan/SKILL.md already uses
GUD-001 in the template body. Codespell currently slips past it on
word-boundary, but the regex alternation (GUD|RISK|...) added in the
previous commit on this branch makes codespell flag it as a misspelling
of GOOD.

GUD is the documented "Guideline" identifier prefix alongside REQ,
SEC, CON, PAT, etc. Add it to the ignore-words-list, matching the
pattern every other technical-token exemption in .codespellrc uses.
@github-actions

Copy link
Copy Markdown
Contributor

🟡 Contributor Reputation Check: MEDIUM risk

Check Risk
Profile MEDIUM
Credential audit NONE

Maintainers: please review this contributor before merging.
See the workflow run for full details.
Automated check powered by AGT.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-review:MEDIUM Contributor reputation check flagged MEDIUM risk skill-check-warning Skill validator reported warnings skills PR touches skills

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Duplicate identifiers in implementation plan

2 participants