Skip to content

[docs-workflow] Make translation publishing atomic#511

Closed
NiveditJain wants to merge 1 commit into
mainfrom
fix/docs-sync-atomic
Closed

[docs-workflow] Make translation publishing atomic#511
NiveditJain wants to merge 1 commit into
mainfrom
fix/docs-sync-atomic

Conversation

@NiveditJain

@NiveditJain NiveditJain commented Jul 15, 2026

Copy link
Copy Markdown
Member

Summary

  • skip package lifecycle builds in translation-only jobs
  • consolidate only when every locale succeeds
  • fail when translation or cache artifacts are missing

Verification

  • bun install --frozen-lockfile --ignore-scripts
  • bun run validate:mdx (600 pages)
  • YAML lint and git diff --check

Summary by CodeRabbit

  • Bug Fixes
    • Translation publishing now runs only after all language translation jobs complete successfully.
    • Incomplete translation results are no longer consolidated or published.
    • Failures while retrieving translation data now stop the consolidation process instead of being ignored.

@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The documentation translation workflow now skips package scripts during dependency installation, runs consolidation only after successful translation, and treats cache-fragment download failures as fatal.

Changes

Translation workflow reliability

Layer / File(s) Summary
Skip package scripts during translation
.github/workflows/translate-docs.yml
The translation job installs locked dependencies with --ignore-scripts.
Gate and validate consolidation
.github/workflows/translate-docs.yml
Consolidation now requires successful translation, skips package scripts, and fails on cache-fragment download errors.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested reviewers: dependabot[bot]

Poem

I’m a bunny guarding docs in flight,
No scripts nibble through the night.
If translations fail, we stop the train,
And missing fragments flag the pain.
Hop, hop—clean pages reign!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description includes summary and verification, but it omits the required template sections for Type of Change and the checklist items. Add the Description, Type of Change, and Checklist sections from the template, including the four required checkbox items.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly matches the main change: atomic translation publishing in the docs workflow.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
.github/workflows/translate-docs.yml (1)

135-137: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Fail the translation job when any expected artifact is missing.

Removing continue-on-error only makes the download step fail on a download error. The matrix upload steps still use if-no-files-found: warn, so a locale can finish successfully without producing a translation or cache artifact; the glob download and merge then proceed with the remaining locales, allowing a partial publication.

Change both upload steps to if-no-files-found: error (and/or explicitly validate every expected locale before merging).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/translate-docs.yml around lines 135 - 137, Update both
matrix artifact upload steps to use if-no-files-found: error instead of warn,
ensuring each locale must produce its expected translation and cache artifacts
before the download and merge steps run. Keep the existing artifact names and
merge flow unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In @.github/workflows/translate-docs.yml:
- Around line 135-137: Update both matrix artifact upload steps to use
if-no-files-found: error instead of warn, ensuring each locale must produce its
expected translation and cache artifacts before the download and merge steps
run. Keep the existing artifact names and merge flow unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: c6c15ebf-97f2-4177-9a07-c9d7d2ebe68a

📥 Commits

Reviewing files that changed from the base of the PR and between fdf4afe and 979f081.

📒 Files selected for processing (1)
  • .github/workflows/translate-docs.yml

@NiveditJain

Copy link
Copy Markdown
Member Author

Superseded by #512, which now includes this PR's atomic translation publishing changes together with the AgentEye language-navigation fix and pre-publish Mintlify/MDX validation.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant