Skip to content

fix(markup): report a client caniemail has no data for as unknown coverage - #96

Merged
aryasaatvik merged 2 commits into
mainfrom
fix/compat-unknown-feature
Nov 13, 2026
Merged

aryasaatvik merged 2 commits into
mainfrom
fix/compat-unknown-feature

Conversation

@aryasaatvik

Copy link
Copy Markdown
Member

Summary

Fixes AryaLabsHQ/samva#2974. The email compatibility check failed outright when a declaration named a feature caniemail 2.0.2 covers for some clients but not the one asked about. word-wrap has Gmail web and Android data but no Gmail iOS entry, so caniemail threw RangeError: Feature "word-wrap" not found on "gmail.ios" and Samva's check_project failed.

  • Before asking caniemail, coverageGapsFor fills each feature a target client has no entry for with u, the data's own unknown marker, and remembers those features. caniemail exposes no per-client hook, so this is the only way to keep one gap from discarding the client's whole report.
  • Findings on a filled pair become one caniemail/unknown-coverage info finding per feature, naming the clients and located at the source. Every other finding for that client is still reported, and no error or warning comes from a gap.
  • No try/catch: nothing is caught, so an unrelated caniemail failure still fails loud.
  • In the pinned matrix the only gap today is word-wrap on Gmail iOS.

Compiled output is unchanged; the parity digests are untouched.

Testing

  • bun run --filter @samva/markup test: 55 files, 1941 tests pass, including two new cases that threw before the fix (word-wrap in inline style, and in retained CSS alongside other findings).
  • bun run --filter @samva/markup typecheck, bun run lint, bun run format:check pass.

…erage

caniemail throws a RangeError when a feature has data for some clients but
not the one asked about (word-wrap on Gmail iOS in 2.0.2), which failed the
whole compatibility check. Fill each gap in its data with its own unknown
marker before asking, and report findings on filled pairs as
caniemail/unknown-coverage info instead of a client claim.
@pkg-pr-new

pkg-pr-new Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

bun add https://pkg.pr.new/@samva/editor@96
bun add https://pkg.pr.new/@samva/markup@96
bun add https://pkg.pr.new/@samva/vite@96

commit: 1887c9f

@greptile-apps

greptile-apps Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5 Tier: apex

[Medium impact] This PR appears safe to merge; the updated test addresses the earlier missing assertion.

Summary

The PR reports missing client data as source-located caniemail/unknown-coverage info findings instead of failing the whole check.

  • Email compatibility checks report missing client data as unknown coverage.

Reviews (2) · Last reviewed commit: "test(markup): assert a Gmail iOS finding..." · Reviewed by Greptile

@aryasaatvik

Copy link
Copy Markdown
Member Author

@greptile review

@aryasaatvik
aryasaatvik merged commit cf44625 into main Nov 13, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant