Uh oh!
There was an error while loading. Please reload this page.
docs: remove max_budget_usd references from standalone docs (managed-only field) - #296
Conversation
ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Free Run ID: 📒 Files selected for processing (1)
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthroughThis PR updates documentation to clarify that standalone deployments default to a disabled, allow-all budget client (removing prior max_budget_usd caveats), documents that managed deployments enforce per-key budgets via a budget controller (with 429 budget_exceeded), and adds allowed_models access semantics. ChangesBudget enforcement and access control documentation clarification
🎯 1 (Trivial) | ⏱️ ~3 minutes Note 🎁 Summarized by CodeRabbit FreeYour organization has reached its limit of developer seats under the Pro Plan. For new users, CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please add seats to your subscription by visiting https://app.coderabbit.ai/login.If you believe this is a mistake and have available seats, please assign one to the pull request author through the subscription management page using the link above. Comment |
There was a problem hiding this comment.
Pull request overview
This PR removes standalone documentation references to max_budget_usd, aligning the docs with the current standalone admin contract where that managed-only field is not exposed.
Changes:
- Removes stale
max_budget_usdreferences from API key, schema, budget, feature-matrix, and error docs. - Reframes budget enforcement as managed-control-plane driven, with standalone defaulting to allow-all budget behavior.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
docs/reference/resource-schemas.md | Removes the stale schema-boundary example for max_budget_usd. |
docs/overview/feature-matrix.md | Updates per-key budget limitations to describe standalone vs managed behavior. |
docs/overview/core-concepts.md | Removes managed budget field caveat from API key concepts. |
docs/integration/errors-and-retries.md | Rewords budget-related 429 trigger text. |
docs/configuration/budgets.md | Removes field-specific guidance and rewrites standalone budget troubleshooting. |
docs/configuration/api-keys.md | Removes standalone write-contract warning for the removed field. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Summary
Remove all 12 customer-facing references to
max_budget_usdfrom the docs. The field name does not exist as an OSS standaloneApiKeyschema field (PR #259 removed it;StandaloneApiKeyBodyrejects unknown fields). Pass-1.5 verification (see Revision notes) confirmed it also does not exist on AISIX-Cloud's admin API surface — Cloud useslimit_centsint64 internally. Final state:grep -rn 'max_budget_usd' docs/returns 0 hits. See Revision notes below for the multi-pivot history.Changes
docs/integration/errors-and-retries.mdBudget rejection from the ApiKey's max_budget_usd→Budget rejection from the managed budget controllerdocs/reference/resource-schemas.mdRuntime Versus Schema Boundaryexample bullet about the typed model / OpenAPI / write validator inconsistencydocs/configuration/api-keys.mdBudget Boundarybullet about the write validator rejecting the field + the trailing "Do not treat ... as part of the verified standalone admin write contract" advisorydocs/configuration/budgets.mdManaged Versus Standalone"Because of that boundary..." sentence and the typed/OpenAPI + write validator bullets; remove theA standalone deployment ignores max_budget_usdtroubleshooting subsection (no replacement). Final state: nomax_budget_usdmentions on this page. See Revision notes for pivot history.docs/overview/core-concepts.mddocs/overview/feature-matrix.mdNet diff: 6 files, +4 / -21, no
.rs/ schema / config / test files touched.Test plan
grep -rn 'max_budget_usd' docs/ --include='*.md'after the edits returns 0 hits — confirms the field name does not appear anywhere in OSS docs.grep -rn 'max_budget_usd' crates/aisix-core/src/models/apikey.rsreturns zero matches — confirms the field is genuinely absent from the OSS schema (this PR documents that absence; no code change required).cargo fmt --check— PASS (exit 0).cargo clippy --workspace --all-targets -- -D warnings— PASS (exit 0, no warnings,Finished dev profile [unoptimized + debuginfo] target(s) in 41.91s).cargo test --workspace— PASS (exit 0, all crate test suites green; no failures, 2 ignored).grep -rln <each affected page> tests/e2e/returns empty for all 6 pages — no e2e fixture references them,pnpm testnot applicable.References
fix(admin): drop standalone max_budget_usd contract(the field removal that this docs cleanup is a follow-up to)docs: rebuild customer-facing docs across overview, config, cloud, ops, reference, and tutorials(the rebuild that re-introduced the now-stale references)Revision notes
2ed56fb→1822515): original R3 approach removed all 12 max_budget_usd references and rewrote budgets.md abstractly. Per operator review, restored one canonical Troubleshooting subsection ondocs/configuration/budgets.mdnaming the field in the rejection context. Rationale: preserves discoverability for the 400-rejection error users hit when migrating Cloud-style configs to standalone. Other 5 files's R3 removals remain.a8cb07e→7aa99ce): Pass-1.5 verification surfaced thatmax_budget_usddoesn't exist as a field name on AISIX-Cloud's admin API surface either (Cloud useslimit_centsint64; verified nomax_budget_usdin Go source, OpenAPI, or YAML/JSON specs). The canonical Troubleshooting subsection added in revision 2 (1822515) asserted "managed-mode field implemented in AISIX Cloud's control plane" — that assertion is empirically false. Operator pivoted from Option δ → pure R1 (full removal). The Troubleshooting subsection deleted entirely.grep -rn 'max_budget_usd' docs/returns 0 hits. The field name does not appear anywhere in OSS docs.Summary by CodeRabbit