agentsclimarketplace

Gap analysis

Skill Valossa515/sdd/skills/shared/gap-analysis

Protocol for detecting missing or ambiguous information in requirements before any specification or code is generated. Prevents downstream rework.From its SKILL.md

Install
npx -y skills add Valossa515/sdd --skill gap-analysis

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.1 KB, as published. Nobody here has run it

Gap Analysis Protocol

Run this protocol BEFORE generating any specification or code. Its purpose is to detect missing information early, when it's cheap to fix.

When to Run

  • Before the planner writes a feature spec
  • Before the architect writes a contract (if planner was skipped)
  • Whenever the user provides a new or modified requirement

The Scan

Systematically check the requirement against these categories:

Business & Domain

#CheckQuestion to Ask if Missing
1Problem statement"What specific problem are we solving?"
2Target user / actor"Who triggers this action?"
3Business rules"Are there validation rules, limits, or conditions?"
4Edge cases"What happens when input is empty / value is zero / item doesn't exist?"
5Error scenarios"How should the system respond when things go wrong?"
6Notifications / side effects"Should the system notify anyone or trigger other processes?"

Data & API

#CheckQuestion to Ask if Missing
7Input fields + types"What fields does the request have and what are their types?"
8Output fields + types"What should the response contain?"
9Required vs optional"Which fields are mandatory?"
10Data relationships"Does this entity relate to others? How?"
11Uniqueness constraints"Are there fields that must be unique?"
12Pagination / filtering"For list endpoints β€” is pagination needed?"

Technical

#CheckQuestion to Ask if Missing
13Target module / service"Where in the codebase does this belong?"
14External dependencies"Does this call external APIs or services?"
15Database changes"Does this require new tables, columns, or indexes?"
16Auth / permissions"Who can access this? Are there permission levels?"
17Idempotency"Can this operation be safely retried?"
18Async behavior"Is any part of this asynchronous (events, queues)?"

Classification

Each gap MUST be classified:

ClassificationMeaningAction
BlockingDifferent answers produce different specs or codeSTOP and ask
Non-blockingHas an obvious default; doesn't affect structureProceed with documented assumption

Decision Criteria

A gap is blocking if:

  • It affects the data model (new field, new entity, new relationship)
  • It changes the API contract (different endpoint, different payload)
  • It introduces a business rule (validation, calculation, condition)
  • Different developers would make different choices

A gap is non-blocking if:

  • It's a technical detail with a standard default (e.g., page size = 20)
  • The project already has a convention that resolves it
  • It doesn't change the structure of the solution

Output Format

Present results to the user:

## Gap Analysis Results

| # | Category | Gap | Classification | Resolution |
|---|----------|-----|----------------|------------|
| 1 | Business Rules | Maximum items per order? | πŸ”΄ Blocking | Need answer |
| 2 | Data | Currency format | 🟑 Non-blocking | Assumed BRL in cents |
| 3 | Technical | Pagination for list | 🟑 Non-blocking | Following existing pattern |

**Blocking gaps: 1** β€” must resolve before proceeding
**Non-blocking assumptions: 2** β€” documented, will proceed

If there are blocking gaps β†’ STOP and ask. If there are zero gaps β†’ state it explicitly: "No gaps found β€” proceeding."


What NOT to do

  • ❌ Skipping gap analysis to "move faster"
  • ❌ Silently assuming blocking information
  • ❌ Listing dozens of trivial gaps to appear thorough
  • ❌ Classifying everything as "non-blocking" to avoid stopping
  • ❌ Running gap analysis but ignoring the results

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.