Admin API /admin/virtual-models and /admin/provider-credentials return HTTP 500 (empty body) since 0.1.84
Maintainers usually reply within 1 day
@SantiagoDePolonia is already working on this.
Since Sep 4, 2026.
Assessment
This issue has not been assessed yet.
Description
Summary
On latest release v0.1.86, GET /admin/virtual-models and GET /admin/provider-credentials both return HTTP 500 with an empty body. The dashboard's "Virtual Models" and "Providers" panels therefore fail to load. The API key auth works fine (401 -> 500 boundary is clean); the server crashes during response serialization.
Environment
- GoModel version: v0.1.86 (commit 7c934f49, built 2026-09-02T19:13:49Z)
- OS: Windows (local single-node)
- Storage: SQLite
- Auth: proper
Authorization: Bearer <master-key>
Reproduction
- Start gomodel v0.1.86.
curl -H "Authorization: Bearer <master-key>" http://127.0.0.1:8080/admin/virtual-models- Receive
HTTP 500with empty response body. - Same for
GET /admin/provider-credentials.
Without auth, the same endpoint returns 401 {"error":{"message":"missing credentials: ..."}} — so authentication is correctly enforced and the crash happens after auth, during handler/serialization.
Expected
HTTP 200 with the list of virtual models / provider credentials.
Impact
- Dashboard web UI: "Virtual Models" and "Providers" panels fail to load (blank/error).
- Actual model routing is NOT affected:
GET /v1/modelsreturns 200 with all models; virtual models (e.g.mycoding,myvision) still route requests successfully. - This is purely an admin/management-plane issue, not a data-plane issue.
Notes / related
- The 0.1.84 changelog contains a breaking change: "Admin API: virtual-model responses now use a targets[] array instead of separate provider/model fields (#788)". Our DB data is already the new
targets[]format, yet GET /admin/virtual-models still 500s — suggesting a handler regression in the 0.1.84+ admin API. - The server is launched with stderr discarded, so no panic stack is visible; the 500 has no JSON error body.
Suggested
Please check the admin handlers for /admin/virtual-models and /admin/provider-credentials for a regression introduced in 0.1.84 (serializing targets[] or provider credential rows). Happy to provide more detail / debug logs if useful.
Environment details provided by s-edi (Windows) on 2026-09-04.
- Dominant language
- Go
- Stars
- 1.2k
- Forks
- 111
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 123
Getting set up
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ENTERPILOT/GoModel
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 15/100
ENTERPILOT/GoModel#1290 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
ENTERPILOT/GoModel#1287 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
ENTERPILOT/GoModel#1286 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 46/100
ENTERPILOT/GoModel#1285 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 28/100
ENTERPILOT/GoModel#1249 ·
Maintainers usually reply within 1 day
All issues in ENTERPILOT/GoModel
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
ovh/ovhcloud-cli#309 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
area/docs
Difficulty 1/5 Under an hour Newbie friendliness 92/100
layer5io/getnighthawk#380 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day