9router/src/app
Matt Van Horn a168313290
fix: normalize openclaw agent.model object form before .startsWith (#1216)
OpenClaw 2026.5.x writes agents[].model as either a plain string
or as an object { primary, fallbacks }. The status enrichment and
POST cleanup both called .startsWith() on the raw value, which threw
TypeError when the object form was present and made the dashboard
report 'not configured'.

Add a resolveAgentModel helper that accepts both shapes and returns
the string id (model.primary for the object form, empty string for
missing/invalid). Use it when enriching agents in GET so consumers
receive a string model field, and when filtering the list in POST.

Refs decolua/9router#1196
2026-05-17 15:14:31 +07:00
..
(dashboard) Fix model check 2026-05-16 12:38:06 +07:00
api fix: normalize openclaw agent.model object form before .startsWith (#1216) 2026-05-17 15:14:31 +07:00
callback fix(security): scope OAuth callback postMessage targets and re-enable TLS verification on DNS-bypass fetch (#998) 2026-05-10 21:10:48 +07:00
dashboard/settings/pricing refactor: streamline provider interactions and enhance error handling 2026-01-11 21:45:01 +07:00
landing chore: release v0.4.27 2026-05-09 22:48:07 +07:00
login Add OIDC dashboard auth (#1020) 2026-05-12 09:43:42 +07:00
favicon.ico Initial commit 2026-01-05 09:58:59 +07:00
globals.css Fix zoom controls contrast in topology view (#1066) 2026-05-13 15:29:30 +07:00
layout.js chore: add buildOutput RTK filter, drop legacy cloud sync, internal cleanup 2026-05-16 10:54:41 +07:00
manifest.js feat: cherry-pick PR #183 — multi-provider support, PWA, dynamic models, UI improvements 2026-02-25 11:40:50 +07:00
page.js chore: add buildOutput RTK filter, drop legacy cloud sync, internal cleanup 2026-05-16 10:54:41 +07:00