Alert Rules and Templates not rendering correctly

/alert-rules and /alert-transports look like this:

Alert rules:

Transports:

They were working just fine yesterday. No errors in librenms.log. Seems similar to this issue. I ran ./daily.sh, no change.

./validate.php

===========================================
Component | Version
--------- | -------
LibreNMS  | 25.4.0-143-g88fe1a7ab (2025-05-16T11:51:05-04:00)
DB Schema | 2025_05_03_152418_remove_invalid_sensor_classes (338)
PHP       | 8.3.6
Python    | 3.12.3
Database  | MariaDB 10.11.11-MariaDB-0ubuntu0.24.04.2
RRDTool   | 1.7.2
SNMP      | 5.9.4.pre2
===========================================

[OK]    Composer Version: 2.8.9
[OK]    Dependencies up-to-date.
[OK]    Database Connected
[OK]    Database Schema is current
[OK]    SQL Server meets minimum requirements
[OK]    lower_case_table_names is enabled
[OK]    MySQL engine is optimal
[OK]    Database and column collations are correct
[OK]    Database schema correct
[OK]    MySQL and PHP time match
[OK]    Active pollers found
[OK]    Dispatcher Service not detected
[OK]    Locks are functional
[OK]    Python poller wrapper is polling
[OK]    Redis is unavailable
[OK]    rrdtool version ok
[OK]    Connected to rrdcached
[WARN]  Your local git contains modified files, this could prevent automatic updates.
        [FIX]: 
        You can fix this with ./scripts/github-remove
        Modified Files:
         LibreNMS/Alert/Transport/Msteams.php

Run php artisan optimize:clear to be sure nothing is cached.

Ran as librenms user, no change

Figured it out. I was messing with Msteams.php yesterday to hopefully make it work with adaptive cards, so I reverted it back to the original version from the git repo, and the Alert Rules and Templates pages render successfully now.