Files
meshcore-analyzer/cmd/server/openapi_known_gaps.json
n30nexandn30nex f8c3b32633 docs(api): describe readiness responses and ingestor liveness (#2358)
Partial follow-up for #1670.

Documents public `GET /api/healthz`: 503/loading, current in-memory
counts, the fixed legacy backfill compatibility object, and optional
ingestor liveness timestamps. Receipt and handler-entry clocks have
different reset semantics; handler entry does not prove a completed
database write. The legacy object does not track real migration
progress.

The 200 response has a typed schema, including its dynamic source-name
map. Only `/api/healthz` leaves the known-gap list (16 → 15). Handlers,
configuration and frontend behavior are unchanged; formal non-200
response-schema work remains separate.

Validation:

- The new documentation assertion failed before metadata was added;
actual handler-response checks passed.
- Full native server/ingestor suites passed in 257.438 s / 452.613 s.
- After review corrections, focused checks passed in 2.757 s and the
parent rerun in 2.097 s, including exact compatibility values and
retained-receipt/zero-handler timestamps.
- Independent adversarial, correctness and TDD reviews completed; the
parent verified both semantic corrections against actual call sites.
- [Exact-head CI
passed](https://github.com/Kpa-clawbot/CoreScope/actions/runs/40979351261),
including browser shards.

TDD exemption: documentation/API metadata only. Local standalone browser
smoke was blocked; no local-browser or deployment claim is made.
Production untyped-map count is unchanged.

---------

Co-authored-by: n30nex <6686206+n30nex@users.noreply.github.com>
2026-10-31 11:59:20 +01:00

22 lines
1.1 KiB
JSON

{
"_comment": "Allowlist of /api/ routes registered via HandleFunc in cmd/server/ that are NOT yet documented in cmd/server/openapi.go. This is the 'ratchet' baseline for issue #1670 Phase 1: the TestOpenAPICompleteness gate fails when a NEW handler is added without either documenting it in openapi.go OR appending it here. Phase 2 (the actual backfill of these routes into openapi.go) is tracked in a separate issue per the #1670 triage. Entries should be REMOVED as Phase 2 lands docs for each route — the gate also fails if an entry here is already covered by openapi.go (stale allowlist).",
"_issue": "https://github.com/Kpa-clawbot/CoreScope/issues/1670",
"routes": [
"/api/admin/prune-geo-filter",
"/api/admin/prune-geo-filter/status",
"/api/analytics/relay-airtime-share",
"/api/analytics/roles",
"/api/config/areas",
"/api/config/areas/polygons",
"/api/docs",
"/api/dropped-packets",
"/api/known-channels",
"/api/nodes/{pubkey}/reach",
"/api/nodes/{pubkey}/rx-coverage",
"/api/paths/inspect",
"/api/rx-leaderboard",
"/api/scope-stats",
"/api/spec"
]
}