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

NIT-Administrative-Systems / northwestern-laravel-starter / 36892751474
100%

Build:
DEFAULT BRANCH: main
Ran 01 Oct 2026 04:33PM UTC
Jobs 1
Files 79
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

01 Oct 2026 04:32PM UTC coverage: 100.0%. Remained the same
36892751474

push

github

web-flow
perf(filament)!: administration panel query and index tuning (#161)

* fix(users): support polymorphic relations in UserSearch::applyToRelation

whereHas() on a MorphTo relation constrains the parent model's builder,
so apply() received a plain Eloquent builder and threw a TypeError. Every
search on the Role Activity table hit this through its auditable column.
Polymorphic relations now use whereHasMorph() with the User type.

* fix(users): cast api.enabled before passing it to visible()

config('api.enabled') can resolve to a non-boolean string such as '1',
which visible() rejects under strict types, breaking the Users list page.

* perf(audits): index the admin panel's audit listing queries

The Audit Logs table sorts by created_at, and the Role Activity table, its
stats widget, and its search filter on the roleActivity() scope. Neither
had an index, so each page load scanned the whole audits table. Add a
created_at index and a partial index matching the scope, with included
columns so counts and searches run as index-only scans. Both are built
concurrently so the migration does not block audit writes.

* perf(filament): use simple pagination and narrower search on admin tables

Audit Logs and API Requests grow without bound, and API Requests polls, so
both now use simple pagination and skip the COUNT(*) the default paginator
ran on every request.

Global table search OR'd every searchable column into each search term,
including free-text columns that are hidden by default, which forced a
full scan of the audits and API request log tables. Those columns now
search individually. Columns already covered by a filter, and timezone,
are no longer searchable. The log tables match the search as one phrase
with a longer debounce.

The Audit Logs Record filter now loads its options with a loose index scan
instead of SELECT DISTINCT across every audit row.

* perf(filament): consolidate widget and overview queries

Several stats widgets ran one query per stat... (continued)

7 of 7 new or added lines in 1 file covered. (100.0%)

1770 of 1770 relevant lines covered (100.0%)

6.79 hits per line

Jobs
ID Job ID Ran Files Coverage
1 36892751474.1 01 Oct 2026 04:33PM UTC 79
100.0
GitHub Action Run
Source Files on build 36892751474
  • Tree
  • List 79
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #36892751474
  • 696d5489 on github
  • Prev Build on main (#36610162705)
  • Next Build on main (#37702989419)
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