feat(docs): document the batch status data type - #12263
Draft
kozlek wants to merge 1 commit into
Draft
Conversation
Contributor
Merge Protections🔴 2 of 6 protections blocking · waiting on 👀 reviews
🔴 👀 Review RequirementsWaiting for
This rule is failing.
🔴 🔎 ReviewsWaiting for
This rule is failing.
Show 4 satisfied protections🟢 🤖 Continuous Integration
🟢 Enforce conventional commitMake sure that we follow https://www.conventionalcommits.org/en/v1.0.0/
🟢 📕 PR description
🟢 🚦 Auto-queueWhen all merge protections are satisfied, this pull request will be queued automatically. |
There was a problem hiding this comment.
Pull request overview
Documents the merge queue batch status.code data type and ensures the docs build/CI gate catches future schema-driven anchor drift by validating both the configuration schema and the OpenAPI schema.
Changes:
- Adds a new Batch Status section to
/configuration/data-types, rendering status codes/descriptions from the synced OpenAPI schema. - Cross-references the new data type from merge queue monitoring and batch resolution docs.
- Extends the anchor validation gate (and its tests) to scan
public/api-schemas.jsonin addition to the configuration schema.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/util/dataType.test.ts | Adds API schema coverage to the data-type anchor test suite and pins the new batch-status anchor. |
| src/content/docs/merge-queue/monitoring.mdx | Links readers to the Batch Status reference from the monitoring page. |
| src/content/docs/merge-queue/batches.mdx | References batch status codes during batch failure resolution/splitting explanation. |
| src/content/docs/configuration/data-types.mdx | Adds the Batch Status section and renders the new table component. |
| src/components/Tables/BatchStatusCodes.tsx | New table component that reads status enums + descriptions from the OpenAPI schema. |
| public/api-schemas.json | Updates BatchStatus schema metadata to include x-enum-descriptions and the x-has-data-type marker. |
| integrations/validate-data-type-anchors.ts | Extends the build-time anchor validation to check both synced schemas. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
A batch's `status.code` appeared on the API reference as a bare list of values with no explanation, and nowhere else in the docs. Readers seeing a status in an API response, in the CLI, or on a dashboard chip had no way to find out what it meant. Add a Batch Status section to the data-types page, rendering a table generated from the OpenAPI spec so the codes and their descriptions come from the engine rather than being hand-maintained, and cross-reference it from the monitoring and batches pages. Extend the anchor build gate to scan the API spec alongside the configuration schema. This is the first data type marked in the API spec, and schema syncs land as direct pushes to main, so the deploy build is the only gate they pass through. The bundled `api-schemas.json` is what the sync bot will deliver once the engine side merges; it differs from the current file in the BatchStatus schema alone. Also sanitize `renderMarkdown`. Its output is injected with `dangerouslySetInnerHTML` by every schema-driven table, and it did not filter URL protocols, so a `javascript:` link in any synced description would have rendered as a live link. Raw HTML was already dropped, since `remark-rehype` runs without `allowDangerousHtml`. The inputs are all first-party, so this is defence in depth, but the guarantee belongs in the shared helper rather than in each of its six callers. Verified that article text and every href on the data-types, file-format and batches pages are unchanged. Part of MRGFY-8330 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Change-Id: Ic5cd08016af10408a80c0d9f72b86dd61abc0a84
kozlek
force-pushed
the
devs/kozlek/devs/kozlek/batch-status-data-type/document-batch-status-data-type--c5cd0801
branch
from
July 30, 2026 13:20
e2af176 to
5e644c7
Compare
Contributor
Author
Revision history
|
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.
A batch's
status.codeappeared on the API reference as a bare list ofvalues with no explanation, and nowhere else in the docs. Readers seeing
a status in an API response, in the CLI, or on a dashboard chip had no
way to find out what it meant.
Add a Batch Status section to the data-types page, rendering a table
generated from the OpenAPI spec so the codes and their descriptions come
from the engine rather than being hand-maintained, and cross-reference it
from the monitoring and batches pages.
Extend the anchor build gate to scan the API spec alongside the
configuration schema. This is the first data type marked in the API
spec, and schema syncs land as direct pushes to main, so the deploy
build is the only gate they pass through.
The bundled
api-schemas.jsonis what the sync bot will deliver once theengine side merges; it differs from the current file in the BatchStatus
schema alone.
Also sanitize
renderMarkdown. Its output is injected withdangerouslySetInnerHTMLby every schema-driven table, and it did notfilter URL protocols, so a
javascript:link in any synced descriptionwould have rendered as a live link. Raw HTML was already dropped, since
remark-rehyperuns withoutallowDangerousHtml. The inputs are allfirst-party, so this is defence in depth, but the guarantee belongs in
the shared helper rather than in each of its six callers. Verified that
article text and every href on the data-types, file-format and batches
pages are unchanged.
Part of MRGFY-8330
Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com