Skip to content

chore(missing_docs): bookkeeping for the 2026-09-14 exhaustive audit - #745

Draft
hongyi-chen wants to merge 1 commit into
mainfrom
missing-docs/bookkeeping-2026-09-14
Draft

hongyi-chen wants to merge 1 commit into
mainfrom
missing-docs/bookkeeping-2026-09-14

Conversation

@hongyi-chen

Copy link
Copy Markdown
Collaborator

Bookkeeping-only output of an exhaustive missing_docs drift-watch run. No public doc pages change. No feature PRs accompany this one — every candidate this run either failed the worthiness gate or already carried a recorded verdict.

What this run audited

Both audit modes ran against fresh warp (master) and warp-server (develop) checkouts and exited 0, with audits_skipped: [] — no parser sanity guard tripped, so no category was silently skipped.

Completeness accounting reported an empty unaccounted bucket across 296 feature flags, 91 CLI commands, 220 API routes, 65 slash commands, and 232 settings.

Findings by category:

  • Feature flags, CLI commands, slash commands, settings, unlisted pages (structure), stale doc references, surface-map hygiene - 0 findings each.
  • API endpoints - 1 (medium), also the run's only surface_changes entry.
  • Docs staleness - 24 (low), all already decided.
  • --weak-coverage - 82 (low), run for exhaustiveness even though it is off by default.

The release gate (check_new_release.py) exited 10: the current stable v0.2026.09.09.08.26.stable_02 was already processed by #736. That is why changelog_review is empty and why last_release_processed.json is untouched here. The standing coverage and snapshot-diff sweep ran anyway, as requested.

What changed

  • feature_surface_map.md - one new entry, GET /networking/egress-ranges -> internal.
  • changelog_decisions.md - six rows recording this run's verdicts, including the re-verifications and the two not-a-verdict bookkeeping rows.
  • surface_snapshot.json - regenerated. The delta is exactly one line: the new route enters the baseline so --diff stops re-reporting it.

The one new surface: GET /networking/egress-ranges

Verdict: deferred (Gate 0). Mapped -> internal. Not hand-documented.

The route returns the canonical outbound IP ranges for Warp-hosted agents, scoped to the authenticated principal's active team (RegisterNetworkingRoutes / EgressRangesHandler in router/handlers/public_api/networking.go, behind middleware.EnforceAuth()).

Gate 0 fails on two independent markers in warp-server's canonical public_api/openapi.yaml: the networking tag carries x-internal: true, and so does the getEgressRanges operation. sync_openapi.py drops x-internal operations wholesale, so the route cannot reach developers/agent-api-openapi.yaml while those markers stand — that file has zero networking paths and zero x-internal entries today. The endpoint backs the Admin Panel's hosted-agent egress CIDR list, not the released public Agent API.

It is not a content gap either: the egress ranges themselves are already published on platform/warp-hosting.mdx under "Networking".

Re-check if the x-internal markers come off, and route it through sync-openapi-spec rather than hand-drafting it.

Deferred and rejected findings

Nothing was silently dropped. Each item below has a full row in changelog_decisions.md.

  • GET /networking/egress-ranges - deferred, Gate 0, as above. Re-surfaces if the x-internal markers are removed.
  • Hardcoded egress CIDR list on platform/warp-hosting.mdx - noted, no change available. The page publishes the ranges as a hardcoded list while warp-server now computes the same set server-side, so the two can drift with nothing to catch it. The page cannot link the endpoint because it is x-internal, and the current list is not known to be wrong. Flagged for the docs owner rather than editing correct content.
  • 24 potentially_stale_docs - no docs change; same file and term set as the 2026-09-11 row, re-verified line by line. 13 files are the ai credits bucket-name false positive; all 13 warp terminal hits are the distinguishing usage the rule's own reason exempts; warp ai is the historical FAQ heading about the retired chat panel; generate command matches live headings on the page titled "Generate (Legacy)"; ai command matches AI Command Search.
  • ai credits stale-term rule - deliberately left unchanged. The ledger's Notes section already records this as an open style-policy question for a human owner, since AGENTS.md contradicts itself (its credits entry bans the prefix; its compute credits entry uses "AI credits" as a bucket name) and style_lint does not flag the term. Narrowing the rule unattended would be the agent resolving a policy call that was explicitly reserved for a person, so this run recorded the verdict instead.
  • 82 --weak-coverage findings - no docs change; keyword artifacts on internal CamelCase flag names. The count rose by one from 81 only because ShellWidgetHandoff moved off the ignore list onto a real page on 2026-09-11 and so re-entered the scored pool. Four spot-verified this run: GroupedTabs, CloudRunners, BundledSkills, and AskUserQuestion are all genuinely documented.

Content design plan

Not applicable. Per .agents/references/content-design-plan.md, bookkeeping and snapshot refreshes are in the skip list, and no page was drafted or updated.

Validation

  • npm ci && npm run build - passes (385 Markdown docs, 387 HTML files).
  • Re-ran the audit after the changes: undocumented_api_endpoints and surface_changes are both 0, map_hygiene stays 0 (the new map entry validates against a live extracted route), and unaccounted is still empty. Only the 24 already-decided staleness findings remain.

Reviewer

suggest_reviewers.py resolved only a team (@warpdotdev/fa-warp-3, via /logic/ai/ambient_agents/); router/handlers/public_api/networking.go itself has no owner entry in warp-server's ownership files. Per the reviewer policy, teams are never requested and there is no fallback, so this PR opens with no requested reviewer and names the owning team here instead.

Documentation risk

Risk: low
Rationale: Bookkeeping only: surface-map entry, decision-ledger rows, and a regenerated surface snapshot under .agents/. No public doc page changes, no product claims, no command, API, setting, or integration behavior changes.
Source files consulted: warp-server/router/handlers/public_api/networking.go@56f99fc50, warp-server/public_api/openapi.yaml@56f99fc50, warp/crates/warp_features/src/lib.rs@8aef29240
Engineering review status: not-applicable
Docs override: none

Unverified claims

None. No VERIFY markers in the changed content.

Exhaustive drift-watch sweep across every audit category. Both audit modes
exited 0 with no skipped audits and an empty `unaccounted` bucket.

One new surface this run: GET /networking/egress-ranges. It fails Gate 0 —
both the `networking` tag and the `getEgressRanges` operation carry
`x-internal: true` in warp-server's canonical spec, so the publish filter
keeps it out of the released Agent API spec. Mapped `-> internal`.

Everything else was already decided or is a known heuristic false positive,
re-verified rather than carried forward. No feature PRs.

Co-Authored-By: Warp <agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label Sep 14, 2026
@vercel

vercel Bot commented Sep 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
docs Ready Ready Preview Sep 14, 2026 5:14pm UTC

Request Review

@hongyi-chen hongyi-chen added the warpy-factory Opened by the Warp factory agents label Sep 14, 2026 — with Warp Agent Staging

Copy link
Copy Markdown
Collaborator Author

This PR was generated with Warp.

Comment @warp-agent on this PR to send it follow-up work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed warpy-factory Opened by the Warp factory agents

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant