docs(api): daily audit 2026-09-09 — add Explore query + Prometheus label values, fix catalog counts - #377
Open
flashduty[bot] wants to merge 1 commit into
Open
docs(api): daily audit 2026-09-09 — add Explore query + Prometheus label values, fix catalog counts#377flashduty[bot] wants to merge 1 commit into
flashduty[bot] wants to merge 1 commit into
Conversation
…bel values
fc-pgy 7105f01c (merged as PR #951 on 2026-09-08) flipped two registry rows
from jwt to all on 2026-09-07 so the query assistant can call them with the
caller's app_key: query:read:explore and prometheus:read:labelValues. Both
were absent from the specs, so this round documents them.
- add POST /monit/query/explore (Monitors/Diagnostics) and
GET /monit/prometheus/api/v1/label/{label_name}/values (Monitors/Data
sources) to monitors.openapi.{en,zh}.json and openapi.{en,zh}.json, with
10 new schemas, bilingual text, request/response examples, and
Restrictions/Usage bodies
- reconcile docs.json nav (both languages) and {en,zh}/openapi/api-catalog.mdx:
+2 rows, Monitors accordion 40 -> 27 (stale since the monit retirement),
restore the missing RUM accordion boundary (41), intro total 339 -> 341
- spec diff is pure addition (588 lines/file, 0 deletions); no key reordering
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this is
Daily
api-reviewrun (--mode generate --scope all --auto) for 2026-09-09, againstfc-pgy@02df4651andflashduty-docs@5270c08.Registry vs spec delta
auth == "all", path not/event/push/*, module not hidden): 347Added operations
Both rows became app_key-callable in
fc-pgycommit7105f01c(merged as PR #951 on 2026-09-08), which flipped exactly these two entries fromjwttoallso the query assistant can call them server-side with the caller'sapp_key:POST /monit/query/explore—monit-read-query-explore, tagMonitors/Diagnostics.Handler
monit-webapi/router/router_explore.go:215(exploreQuery) →exploreprotocol.DecodeHTTPQuery+ExploreLogic.Query; the{request_id, data}envelope is written bywriteExploreSuccess. Request/response shapes come frommonit-webapi/pkg/exploreprotocol/dto.goandvalidate.go; examples followpkg/exploreprotocol/testdata/explore_result_contract_golden.json.GET /monit/prometheus/api/v1/label/{label_name}/values—monit-prometheus-read-label-values, tagMonitors/Data sources.Handler
monit-webapi/router/router.go:272→router_prom.go:44(promProxy).Review attention: op 2 is not envelope-shaped
promProxyproxies the request to the selected data source and returns the data source's native Prometheus JSON (c.Data(output.StatusCode, output.ContentType, output.Body)), not the standard{request_id, data}envelope; it also requires anX-DSIDheader. It is documented truthfully (native response schema,X-DSIDheader parameter,text/plainfailure note), but it is the first non-envelope operation in the Monitors specs. If the product decision is that this route should not be in the public reference, drop the second path plus its nav/catalog row — op 1 stands on its own.Deliberately not re-added
Nine
auth=allregistry rows are absent from the specs. Seven of them were removed from the docs on 2026-09-08 byf1790dfand are retired on the backend —monit-webapi/router/router_explore_test.go:361(TestRetiredRoutesReturnNotFound) asserts they return 404:POST /monit/query/diagnosePOST /monit/rule/counter/statusPOST /monit/store/ruleset/create|delete|info|list|updateThey stay out; the stale registry rows are an upstream cleanup item for
fc-pgy.Unresolved
POST /monit/rule/dstypes— present in the specs, removed from the registry byfc-pgy 6be0e3a(2026-09-06); still live in the DB. Carried from HEAD unchanged, not deleted (same handling as the 2026-09-07 run).mapping.yamlgaps —/status-page/*(registry providerstatus-page, mapping saysstatuspage),/calendar/*(registrypgy, mappingevent),/route/*,/rum/data|field|resource/*,/monit/query/*have no scope entry. None produced drift today (every such path is already in the specs), but the audit had to assign modules by path segment to see that.Examples
No dev-API capture was possible in this environment (no credential access), so all new request/response examples are constructed from the Go types and the explore protocol golden fixtures — realistic data source IDs, expressions, labels, and epoch timestamps, no
"string"placeholders.Validation
python3 scripts/lint_openapi.py→OK: 12 spec files, no violationstagsand human text differ)docs.jsonand bothapi-catalog.mdx; every accordion count matches its row count (193 / 27 / 41 / 53 / 27 = 341)mint broken-linkscould not be run — no Node/Mintlify CLI in this environmentAdjacent drift not touched (outside api-review scope)
{en,zh}/openapi/api-catalog.mdxkeeps an empty### Monitor utilitiessection (theMonitors/Monitor utilitiestag has 0 operations).{en,zh}/developer/cli.mdxstill say "340 API operations / 337 generated commands" and{en,zh}/developer/overview.mdx"340 API operations across 38 services" — these track generator output, which this run cannot compute.Process note
The team knowledge pack still lacks
runbooks/api-review-daily.mdandrunbooks/api-review-apply-patches.py, which this automation references. The skill'sgenerate_openapi.pycarries no baseline-fidelity/key-order patch, so this run did not perform a full regeneration: it rebuilt strictly fromgit show HEAD:and appended only the delta, keeping the baseline byte-identical outside the additions.