docs: sync agent-api-openapi.yaml from warp-server - #613
Draft
hongyi-chen wants to merge 1 commit into
Draft
Conversation
Prune unused entries from every shared component section, not just components.schemas, so a response referenced only by an excluded /factory path can no longer ship in the published spec. Co-Authored-By: Oz <oz-agent@warp.dev> Co-Authored-By: Warp <agent@warp.dev>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Collaborator
Author
|
This PR was generated with Warp. Comment |
Contributor
|
Your GitHub account is not connected to Warp. Connect it here. |
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.


Summary
Regenerates
developers/agent-api-openapi.yaml(the file Scalar renders atdocs.warp.dev/api) from the canonical spec inwarp-server/public_api/openapi.yaml, and fixes a filter gap in the sync script that let a private component leak into the published copy.Found by the
missing_docsdrift-watch audit, which flagged two new/factoryroutes in warp-server; triaging them surfaced the accumulated spec drift below.Source commit:
warp-server@8b41081c4(develop).Changes
developers/agent-api-openapi.yaml(regenerated)Schemas added:
ChargedUsageDetail,InferenceCostBreakdownUsd,InferenceUsageDetail,TokenCountBreakdown— the per-category token and dollar-cost breakdown now returned with run usage.Schemas modified:
AgentResponse,AmbientAgentConfig,FileArtifactData,FileArtifactResponseData,Harness,RequestUsage,RunExecutionLocation.RequestUsagegainstotal_tokens,inference_cost_breakdown_usd, andusage_by_category; cost fields now describe conversion at the owning team's current credit price rather than a fixed rate;AmbientAgentConfiggainscomputer_use_model_id;AgentResponse.availableis redescribed as "whether the agent is currently enabled."Top-level
infoupdated: titleOz Agent API→Warp Agent API, plus severalOz→Warpwording changes in descriptions. These all come from upstream.Removed:
components.responses.FactoryAccessDenied— see below..agents/skills/sync-openapi-spec/scripts/sync_openapi.pyThe script pruned
components.schemasdown to entries reachable from the surviving paths, but copied every other component section verbatim.FactoryAccessDenied— a shared response referenced only by the private/factory/*operations that this policy excludes — therefore shipped in the published spec as an orphan definition naming a private surface.PRUNABLE_COMPONENT_SECTIONS, mirroringunusedComponentsinwarp-server/public_api/public-openapi-filter.yaml(schemas,parameters,examples,headers,requestBodies,responses,mediaTypes). Sections outside the set (securitySchemes) are still copied verbatim, since nothing$refs them.$refwalking from schema names to(section, name)pairs so reachability follows cross-section edges (a shared response pulls in the schemas it references)._transitive_schemasbecame_reachable_components.--mode diffnow reports added/removed/modified entries for every pruned section, not justschemas. A stalecomponents.responsesentry in the target previously reported as "in sync.".agents/skills/sync-openapi-spec/references/sync-policy.mdDocuments the new pruning rule and the leak it closes.
Validation
--mode self-test→ OK--mode diffafter apply →In sync. No changes needed.npm run build→ exit 0 (only the repo's pre-existing chunk-size and/404route warnings)/factory,/memory*, or/harness-supportpaths, and nox-*implementation extensionsReviewers
scripts/suggest_reviewers.pyresolved no owner forwarp-server:public_api/openapi.yaml,router/handlers/public_api/factories.go, orrouter/handlers/public_api/factory_automations.go— neither.github/CODEOWNERSnor.github/STAKEHOLDERShas a rule coveringpublic_api/orrouter/handlers/public_api/. Recent history on those files is almost entirely automation commits, so no reviewer was auto-assigned; please route manually.Worth considering separately: adding a
/public_api/and/router/handlers/public_api/rule to warp-server's.github/STAKEHOLDERSso future spec syncs route themselves.Unverified claims
None — this PR adds no prose. Every schema and description is copied verbatim from the canonical warp-server spec.
Co-Authored-By: Oz oz-agent@warp.dev
Co-Authored-By: Warp agent@warp.dev
Deferred findings
This PR resolves every API-category finding from the 2026-08-24
missing_docsdrift-watch run. The run's remaining 23 findings are all low-severity terminology matches deferred tostyle_lint, and they are listed with per-term rationale in the companion bookkeeping PR #614 under "Deferred findings". Nothing from the run was dropped without a recorded decision.