• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

humanspeak / svelte-motion / 29056057887
60%
main: 57%

Build:
Build:
LAST BUILD BRANCH: fix/presence-exit-placeholder-slot
DEFAULT BRANCH: main
Ran 09 Jul 2026 11:00PM UTC
Jobs 1
Files 255
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Jul 2026 10:58PM UTC coverage: 59.963%. First build
29056057887

push

github

web-flow
chore(lint): adopt recommendedTypeChecked and fix the bugs it surfaced (#442)

* docs(plans): add typed-lint batch plan 001

Plan to adopt `ts.configs.recommendedTypeChecked` with scoped carve-outs for
the deliberate `any`-bridging into motion-dom internals.

Note the plan's `Planned at` SHA (8491bd3) lived on the squash-merged
feat/svg-motion-value-attributes branch, so it is not an ancestor of main.
The in-scope file contents are byte-identical between that commit and main,
so the drift check still holds.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore(lint): adopt recommendedTypeChecked with scoped test carve-outs

Switch `ts.configs.recommended` to `recommendedTypeChecked` and wire type
information, so type-aware rules — notably `no-floating-promises` — run for
the first time. This is an animation library built on promises; a dropped
`await` on an animation control was previously invisible to lint.

- Give `e2e/` a tsconfig so its 86 spec files can be typed-linted at all.
- Scope type-aware parsing to `src/**` and `e2e/**`; guard everything else
  with `disableTypeChecked`.
- Carve the `no-unsafe-*` / `no-explicit-any` family off for tests and
  internal demo routes, which bridge motion-dom internals through `any` on
  purpose. Config-level scope, so future test code stays quiet too.

Deviation from the plan: the plan wired `projectService.allowDefaultProject`
to cover root config files and `scripts/**`. That cannot work under Trunk,
which runs ESLint against a temp sandbox copy of each file — the sandboxed
path never matches a glob resolved against `tsconfigRootDir`, and all seven
such files failed with "was not found by the project service". They are now
in the disableTypeChecked guard instead, so they keep untyped linting. The
plan's dry run presumably used raw ESLint, where the path does match.

Guard (plan Step 3): a bare `Promise.resolve()` in a scratch file was flagged
`no-floating-promises` through all four p... (continued)

868 of 1671 branches covered (51.94%)

Branch coverage included in aggregate %.

87 of 114 new or added lines in 27 files covered. (76.32%)

3336 of 5340 relevant lines covered (62.47%)

24.08 hits per line

Uncovered Changes

Lines Coverage ∆ File
12
58.22
src/lib/html/_MotionContainer.svelte
6
54.23
src/lib/utils/drag.ts
2
74.07
src/lib/utils/optimizedAppear.ts
2
6.16
src/lib/utils/pan.ts
2
91.71
src/lib/utils/svg.ts
1
83.33
src/lib/utils/inView.svelte.ts
1
88.46
src/lib/utils/layout.ts
1
96.43
src/lib/utils/motionTemplate.svelte.ts
Jobs
ID Job ID Ran Files Coverage
1 node-22 - 29056057887.1 09 Jul 2026 11:00PM UTC 255
59.96
GitHub Action Run
Source Files on build 29056057887
  • Tree
  • List 255
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29056057887
  • 2ec0b6f3 on github
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc