fix(api): add b200 accelerator to OpenAPI spec enum#455
Merged
Conversation
Contributor
Coverage Report ✅
Coverage BadgeNo Go source files changed in this PR. |
mchmarny
approved these changes
Mar 21, 2026
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 20, 2026
Apply the corrections identified in a cross-docs review. Two accelerator types were under-documented relative to the Go type in pkg/recipe/criteria.go: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml). Both are now added to every accelerator enumeration — the five enum blocks in api/aicr/v1/server.yaml and the seven documentation pages that list accelerators (README glossary, user cli-reference and api-reference, contributor api-server, cli, data, and validations). Also in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX and stay consistent across pages; refresh the CI pipeline description in the contributor guide to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in the contributor CLI examples to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; and rewrite three ungrammatical sentences in the Skyhook integrator page.
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 20, 2026
Apply the corrections identified in a cross-docs review. Two accelerator types were under-documented relative to the Go type in pkg/recipe/criteria.go: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml). Both are now added to every accelerator enumeration — the five enum blocks in api/aicr/v1/server.yaml and the seven documentation pages that list accelerators (README glossary, user cli-reference and api-reference, contributor api-server, cli, data, and validations). Also in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX and stay consistent across pages; refresh the CI pipeline description in the contributor guide to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in the contributor CLI examples to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. Two things the new bullet prescribes that the generic per-kind bullets don't: (1) start from the authoritative Go type, not from an already-documented sibling value (grepping docs for "gb200" finds b200 gaps but not rtx-pro-6000 gaps — rtx-pro-6000 had no sibling documented anywhere); and (2) include the OpenAPI contract at api/aicr/v1/server.yaml alongside the docs/ pages, since it mirrors the same enum and drifts the same way.
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 21, 2026
Apply the corrections identified in a cross-docs review. Two accelerator types were under-documented relative to the Go type in pkg/recipe/criteria.go: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml). Both are now added to every accelerator enumeration — the five enum blocks in api/aicr/v1/server.yaml and the seven documentation pages that list accelerators (README glossary, user cli-reference and api-reference, contributor api-server, cli, data, and validations). Also in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX and stay consistent across pages; refresh the CI pipeline description in the contributor guide to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in the contributor CLI examples to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; replace two fictional invalid-accelerator error examples with the shapes the code actually produces (pkg/recipe/criteria.go:108 emits "invalid accelerator type: <value>", and the API wraps it as {"message":"Invalid recipe criteria","details":{"error": ...}} per pkg/recipe/handler.go:67-72); and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. Two things the new bullet prescribes that the generic per-kind bullets don't: (1) start from the authoritative Go type, not from an already-documented sibling value (grepping docs for "gb200" finds b200 gaps but not rtx-pro-6000 gaps — rtx-pro-6000 had no sibling documented anywhere); and (2) include the OpenAPI contract at api/aicr/v1/server.yaml alongside the docs/ pages, since it mirrors the same enum and drifts the same way.
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 21, 2026
Apply the corrections identified in a cross-docs review. Two accelerator types were under-documented relative to the Go type in pkg/recipe/criteria.go: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml). Both are now added to every accelerator enumeration: - the five enum blocks in api/aicr/v1/server.yaml; - user docs (docs/README.md glossary, user cli-reference and api-reference) and contributor docs (api-server, cli, data, validations); - the site-docs glossary mirror (site/docs/getting-started/index.md); - Go-visible surfaces in the package that defines the type (godoc in pkg/recipe/doc.go, field comment in pkg/recipe/criteria.go, package godoc in pkg/api/doc.go and pkg/server/doc.go, and the `aicr recipe` --help Description in pkg/cli/recipe.go). Other docs corrections in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX; refresh the CI pipeline description in docs/contributor/index.md to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in docs/contributor/cli.md to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; replace two fictional invalid-accelerator error examples with the literal output produced by the binary today (captured by running `aicr recipe --accelerator invalid-gpu` and `GET /v1/recipe?accelerator=invalid-gpu` against HEAD); and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. The bullet names a broader audit surface than any single review pass: OpenAPI contract, user/ contributor docs, the site-docs mirror, package godoc and urfave/cli Description strings in the defining package, and .github/ISSUE_TEMPLATE/*.yml dropdowns. It also prescribes starting from the authoritative Go type rather than a known-good sibling value — grepping for gb200 catches forward b200 additions but misses pre-existing drift like rtx-pro-6000, which had no sibling documented anywhere.
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 21, 2026
Apply the corrections identified in a cross-docs review. Two accelerator types were under-documented relative to the Go type in pkg/recipe/criteria.go: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml). Both are now added to every accelerator enumeration: - the five enum blocks in api/aicr/v1/server.yaml; - user docs (docs/README.md glossary, user cli-reference and api-reference) and contributor docs (api-server, cli, data, validations); - the site-docs glossary mirror (site/docs/getting-started/index.md); - Go-visible surfaces in the package that defines the type (godoc in pkg/recipe/doc.go, field comment in pkg/recipe/criteria.go, package godoc in pkg/api/doc.go and pkg/server/doc.go, and the `aicr recipe` --help Description in pkg/cli/recipe.go). Other docs corrections in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX; refresh the CI pipeline description in docs/contributor/index.md to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in docs/contributor/cli.md to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; replace two fictional invalid-accelerator error examples with the literal output produced by the binary today (captured by running `aicr recipe --accelerator invalid-gpu` and `GET /v1/recipe?accelerator=invalid-gpu` against HEAD); and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. The bullet names a broader audit surface than any single review pass: OpenAPI contract, user/ contributor docs, the site-docs mirror, package godoc and urfave/cli Description strings in the defining package, and .github/ISSUE_TEMPLATE/*.yml dropdowns. It also prescribes starting from the authoritative Go type rather than a known-good sibling value — grepping for gb200 catches forward b200 additions but misses pre-existing drift like rtx-pro-6000, which had no sibling documented anywhere.
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 21, 2026
Apply the corrections identified in a cross-docs review. Three enum drifts between the Go source types and the documented/advertised values are closed here: - **Accelerator**: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml) were missing from the OpenAPI contract and most documentation. - **Service**: `kind` and `lke` were defined in CriteriaServiceType (pkg/recipe/criteria.go) but missing from the OpenAPI `service` enum and every documented service listing. - **Deployer**: `argocd-helm` was defined in the OpenAPI deployer enum (api/aicr/v1/server.yaml:845) but not documented in the user API reference or CLI flag table. Both enums are now updated in every place they're surfaced: - api/aicr/v1/server.yaml — five accelerator enum blocks and three service enum blocks; - user docs (docs/README.md glossary, user cli-reference and api-reference) and contributor docs (api-server, cli, data, validations); - the site-docs glossary mirror (site/docs/getting-started/index.md); - Go-visible surfaces in the defining package: godoc in pkg/recipe/doc.go, field comment in pkg/recipe/criteria.go, package godoc in pkg/api/doc.go and pkg/server/doc.go, and the `aicr recipe` --help Description in pkg/cli/recipe.go; - .github/ISSUE_TEMPLATE/bug_report.yml GPU-type hint. While normalizing service listings, legacy `self-managed` references were removed from the two package godocs (pkg/api/doc.go, pkg/server/doc.go) and the contributor `validate` struct-tag example — `self-managed` is parsed as an alias for `any`, not a distinct enum value, so advertising it as a valid standalone option was misleading. Other docs corrections in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX; refresh the CI pipeline description in docs/contributor/index.md to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in docs/contributor/cli.md to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; replace two fictional invalid-accelerator error examples with the literal output produced by the binary today (captured by running `aicr recipe --accelerator invalid-gpu` and `GET /v1/recipe?accelerator=invalid-gpu` against HEAD); and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. The bullet names a broader audit surface than any single review pass: OpenAPI contract, user/ contributor docs, the site-docs mirror, package godoc and urfave/cli Description strings in the defining package, and .github/ISSUE_TEMPLATE/*.yml dropdowns. It also prescribes starting from the authoritative Go type rather than a known-good sibling value — grepping for gb200 catches forward b200 additions but misses pre-existing drift like rtx-pro-6000, which had no sibling documented anywhere.
14 tasks
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 21, 2026
Apply the corrections identified in a cross-docs review. Three enum drifts between the Go source types and the documented/advertised values are closed here: - **Accelerator**: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml) were missing from the OpenAPI contract and most documentation. - **Service**: `kind` and `lke` were defined in CriteriaServiceType (pkg/recipe/criteria.go) but missing from the OpenAPI `service` enum and every documented service listing. - **Deployer**: `argocd-helm` was defined in the OpenAPI deployer enum (api/aicr/v1/server.yaml:845) but not documented in the user API reference or CLI flag table. Both enums are now updated in every place they're surfaced: - api/aicr/v1/server.yaml — five accelerator enum blocks and three service enum blocks; - user docs (docs/README.md glossary, user cli-reference and api-reference) and contributor docs (api-server, cli, data, validations); - the site-docs glossary mirror (site/docs/getting-started/index.md); - Go-visible surfaces in the defining package: godoc in pkg/recipe/doc.go, field comment in pkg/recipe/criteria.go, package godoc in pkg/api/doc.go and pkg/server/doc.go, and the `aicr recipe` --help Description in pkg/cli/recipe.go; - .github/ISSUE_TEMPLATE/bug_report.yml GPU-type hint. While normalizing service listings, legacy `self-managed` references were removed from the two package godocs (pkg/api/doc.go, pkg/server/doc.go) and the contributor `validate` struct-tag example — `self-managed` is parsed as an alias for `any`, not a distinct enum value, so advertising it as a valid standalone option was misleading. Other docs corrections in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX; refresh the CI pipeline description in docs/contributor/index.md to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in docs/contributor/cli.md to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; replace two fictional invalid-accelerator error examples with the literal output produced by the binary today (captured by running `aicr recipe --accelerator invalid-gpu` and `GET /v1/recipe?accelerator=invalid-gpu` against HEAD); and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. The bullet names a broader audit surface than any single review pass: OpenAPI contract, user/ contributor docs, the site-docs mirror, package godoc and urfave/cli Description strings in the defining package, and .github/ISSUE_TEMPLATE/*.yml dropdowns. It also prescribes starting from the authoritative Go type rather than a known-good sibling value — grepping for gb200 catches forward b200 additions but misses pre-existing drift like rtx-pro-6000, which had no sibling documented anywhere.
yuanchen8911
added a commit
to yuanchen8911/aicr
that referenced
this pull request
Apr 21, 2026
Apply the corrections identified in a cross-docs review. Three enum drifts between the Go source types and the documented/advertised values are closed here: - **Accelerator**: B200 (supported since PR NVIDIA#455) and RTX PRO 6000 (supported as CriteriaAcceleratorRTXPro6000 with real overlays under recipes/overlays/rtx-pro-6000-*.yaml) were missing from the OpenAPI contract and most documentation. - **Service**: `kind` and `lke` were defined in CriteriaServiceType (pkg/recipe/criteria.go) but missing from the OpenAPI `service` enum and every documented service listing. - **Deployer**: `argocd-helm` was defined in the OpenAPI deployer enum (api/aicr/v1/server.yaml:845) but not documented in the user API reference or CLI flag table. Both enums are now updated in every place they're surfaced: - api/aicr/v1/server.yaml — five accelerator enum blocks and three service enum blocks; - user docs (docs/README.md glossary, user cli-reference and api-reference) and contributor docs (api-server, cli, data, validations); - the site-docs glossary mirror (site/docs/getting-started/index.md); - Go-visible surfaces in the defining package: godoc in pkg/recipe/doc.go, field comment in pkg/recipe/criteria.go, package godoc in pkg/api/doc.go and pkg/server/doc.go, and the `aicr recipe` --help Description in pkg/cli/recipe.go; - .github/ISSUE_TEMPLATE/bug_report.yml GPU-type hint. While normalizing service listings, legacy `self-managed` references were removed from the two package godocs (pkg/api/doc.go, pkg/server/doc.go) and the contributor `validate` struct-tag example — `self-managed` is parsed as an alias for `any`, not a distinct enum value, so advertising it as a valid standalone option was misleading. Other docs corrections in scope: replace HTML entities (<) with literal < in the Performance Characteristics bullets across docs/integrator/data-flow.md, docs/contributor/api-server.md and docs/contributor/cli.md so they render correctly in MDX; refresh the CI pipeline description in docs/contributor/index.md to the current tool versions (Go 1.26, golangci-lint v2.10.1) per .settings.yaml; fix the GPU_TYPES shell array in docs/contributor/cli.md to add b200 and rtx-pro-6000 and drop the unsupported l4 so copy-pasted examples don't fail at runtime; replace two fictional invalid-accelerator error examples with the literal output produced by the binary today (captured by running `aicr recipe --accelerator invalid-gpu` and `GET /v1/recipe?accelerator=invalid-gpu` against HEAD); and rewrite three ungrammatical sentences in the Skyhook integrator page. Add a dedicated bullet to the "Documentation updates" rule in .claude/CLAUDE.md and AGENTS.md for enum/constant additions, so this class of drift is less likely to recur. The bullet names a broader audit surface than any single review pass: OpenAPI contract, user/ contributor docs, the site-docs mirror, package godoc and urfave/cli Description strings in the defining package, and .github/ISSUE_TEMPLATE/*.yml dropdowns. It also prescribes starting from the authoritative Go type rather than a known-good sibling value — grepping for gb200 catches forward b200 additions but misses pre-existing drift like rtx-pro-6000, which had no sibling documented anywhere.
Contributor
|
This pull request has been automatically locked since it has been closed for 90 days with no further activity. Please open a new pull request for related changes. |
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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
b200to the accelerator enum in all 6 occurrences inapi/aicr/v1/server.yamlpkg/recipe/criteria.godefinesCriteriaAcceleratorB200) but was missing from the OpenAPI spec, meaning the API server would reject?accelerator=b200requestsTest plan
make lint— passesgo test -race ./pkg/api/...— passes