Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

A requirement whose surface matches no surface is never checked and never disclosed

Open
#290 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
56/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
playwright, typescript

Research direction

Start with src/intake/map-to-providers.ts to see how requirements are scoped by surface, then trace the run sequencer and the existing single-page handling in checkPage. Compare loaded requirement surfaces with scanned screen ids and report unmatched ones as not-covered gaps using ref requirement:<id>. Done means a requirement naming an unscanned surface is reported with that surface, including in the CLI run.

Written by the indexing model from the issue text.

Description

area: engine bug

What happens

Each content or flow requirement becomes a provider that runs only when the screen id equals requirement.surface (src/intake/map-to-providers.ts). Its comment says the wrong surface is out of scope and that "coverage wiring decides this later". Nothing does. If a requirement names a surface that no configured or discovered surface has, for example a typo, its provider returns nothing on every screen and the run reports no gap for it.

Why it matters

A requirement the run never checked reads as met. That is a false green, and a typo is enough to cause it.

Fix direction

After the scan, compare each loaded requirement's surface with the set of scanned screen ids. A requirement that matched no scanned screen becomes a not-covered gap with ref requirement:<id> that names the surface. checkPage already does this for its single page. The CLI side touches the run sequencer, which is a guarded path.

Dominant language
TypeScript
Stars
0
Forks
0
Avg merge
2h 48m
Merged PRs (30d)
8

Getting set up

  • No Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from usabl-dev/usabl

All issues in usabl-dev/usabl

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.