PR: #429: ci(bdd): add scenario id uniqueness gate [Story-1737] by @pramaan-board-bot[bot]
View PR →
Story-1737

Scenario id uniqueness gate

This walkthrough documents the CI gate added for RFD-BDD-001 D-6 in pramaan-app.

What changed

Scenario id gate

pnpm run check:scenario-ids scans canonical feature files under tests/features/** and rejects duplicate Scenario or Scenario Outline names.

Desk to repo move rule

A desk draft scenario can move into the repo, but a second canonical copy with the same scenario name fails the gate.

CI wiring

The new check runs in the existing quality job beside the BDD feature-binding and Gherkin readability gates.

Bad-input proof

pnpm run check:scenario-ids -- scripts/bdd/fixtures/duplicate-scenario-id.feature

The fixture lives outside tests/features/, so it proves the gate fails without becoming part of the required Playwright BDD suite.

Expected operator flow

Files changed

4 file(s), +154 / -0 lines

Path Role + -
.github/workflows/ci.ymlWorkflow+5-0
package.jsonConfig+1-0
scripts/bdd/check-scenario-ids.tsScript+139-0
scripts/bdd/fixtures/duplicate-scenario-id.featureScript+9-0