Virgil
68f5abefd0
fix(api): trim tool bridge tags
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:31:38 +00:00
Virgil
ffbb6d83d0
fix(api): snapshot swagger groups
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:24:54 +00:00
Virgil
2c87fa02cb
feat(cmd/api): add GraphQL path to spec generation
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:21:20 +00:00
Virgil
68bf8dcaf8
feat(openapi): document GraphQL endpoint
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:17:26 +00:00
Virgil
9b5477c051
fix(api): ignore blank swagger metadata overrides
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:12:13 +00:00
Virgil
ad751fc974
fix(api): preserve multi-value cached headers
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:07:01 +00:00
Virgil
68edd770d8
docs(api): add ax usage examples
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:03:10 +00:00
Virgil
f67e3fe5de
feat(api): validate required openapi parameters
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:00:39 +00:00
Virgil
1f43f019b1
feat(api): allow openapi specs from readers
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:56:26 +00:00
Virgil
799de22d4d
fix(api): preserve sunset middleware headers
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:51:05 +00:00
Virgil
159f8d3b9f
feat(api-docs): document versioned response headers
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:46:29 +00:00
Virgil
93bef3ed85
fix(api): ignore nil route groups
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:40:14 +00:00
Virgil
0f20eaa7b8
fix(api): preserve sunset response headers
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:33:52 +00:00
Virgil
9449c195c3
fix(api): preserve existing link headers in sunset middleware
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:29:12 +00:00
Virgil
0984c2f48a
docs(api): add AX usage examples
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:25:54 +00:00
Virgil
47e8c8a795
feat(openapi): document route headers on all responses
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:21:56 +00:00
Virgil
14eedd7f91
feat(cmd/api): dedupe sdk spec groups
2026-04-01 23:18:19 +00:00
Virgil
eb7e1e51cb
feat(openapi): reuse deprecation header components
2026-04-01 23:12:40 +00:00
Virgil
06f2263b73
fix(api): disable cache middleware for non-positive ttl
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:09:12 +00:00
Virgil
29324b0a0b
feat(api): add sunset deprecation middleware
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:02:52 +00:00
Virgil
b64c8d3271
docs(api): add AX usage examples
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:55:39 +00:00
Virgil
dd74a80b1e
fix(api): infer JsonResource schemas in docs
2026-04-01 22:50:21 +00:00
Virgil
cebad9b77b
feat(api): honour header toggles for versioning
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:45:03 +00:00
Virgil
ccfbe57faf
feat(openapi): document response headers
2026-04-01 22:42:13 +00:00
Virgil
00c20ea6e8
refactor(api): streamline ToolBridge iterator snapshots
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:38:56 +00:00
Virgil
9553808595
feat(api): add counts to MCP server detail
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:34:34 +00:00
Virgil
929b6b97ca
fix(api-docs): deduplicate explicit OpenAPI parameters
...
Explicit ApiParameter metadata now replaces matching auto-generated path parameters instead of producing duplicates, matching the precedence used by the Go OpenAPI builder.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:32:23 +00:00
Virgil
a89a70851f
fix(api): deduplicate spec iterator groups
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:28:34 +00:00
Virgil
ec7391cb06
feat(api): add iterator-backed spec export
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:25:07 +00:00
Virgil
f0d25392a8
feat(provider): add iterator for provider info summaries
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:19:56 +00:00
Virgil
1a8fafeec5
feat(api): enrich MCP server details on demand
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:09:22 +00:00
Virgil
2cfa970993
fix(api-docs): align sunset docs with middleware args
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:06:46 +00:00
Virgil
2bdcb55980
feat(api): add ApiSunset middleware
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 22:02:44 +00:00
Virgil
cba25cf9fc
feat(api-docs): document sunset middleware in OpenAPI
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:59:01 +00:00
Virgil
93cdb62dfe
feat(api): allow deprecation without sunset date
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:56:10 +00:00
Virgil
691ef936d4
feat(api): allow versioned route sunset replacements
2026-04-01 21:50:30 +00:00
Virgil
b2116cc896
feat(openapi): omit auth errors on public routes
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:46:06 +00:00
Virgil
2fd17a432c
fix(provider): handle invalid proxy upstreams safely
...
Avoid panicking when a ProxyProvider is constructed with a malformed upstream URL. The provider now records the configuration error and returns a standard 500 envelope when mounted.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:42:04 +00:00
Virgil
475027d716
refactor(api): wrap ToolBridge errors
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:36:58 +00:00
Virgil
2d1ed133f2
refactor(api): align OpenAPI client with AX principles
...
Use core-style error wrapping in the OpenAPI client, replace direct spec reads with streamed file I/O, and add compile-time interface assertions for ToolBridge.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:32:21 +00:00
Virgil
867221cbb8
fix(api): snapshot tool bridge iterators
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:27:19 +00:00
Virgil
e0bdca7889
fix(api): snapshot engine iterator views
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:23:19 +00:00
Virgil
4ce697189a
fix(client): promote declared query params on all methods
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:19:45 +00:00
Virgil
db9daadbce
fix(api): return engine groups by copy
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:16:10 +00:00
Virgil
f62933f570
feat(openapi): document example-only request bodies
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:12:14 +00:00
Virgil
b0adb53dec
fix(openapi): snapshot describable groups once
...
Prepare route descriptions once per group before building paths and tags so iterator-backed DescribeIter implementations are consumed safely and deterministically.
Adds a regression test covering a one-shot iterator-backed group.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:07:04 +00:00
Virgil
cb726000a9
feat(api): add iterator for spec registry
...
Adds RegisteredSpecGroupsIter so CLI consumers can range over a snapshot of the package-level spec registry without copying the slice manually.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 21:03:15 +00:00
Virgil
f2f262a4c2
refactor(api): standardise unauthorised wording
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 20:59:55 +00:00
Virgil
eceda4e5c1
feat(openapi): support iterator-backed route descriptions
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 20:55:33 +00:00
Virgil
7e4d8eb179
feat(openapi): add route examples to spec
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 20:51:02 +00:00