Fix native-themes-sync commit-back: mark workspace safe.directory#5173
Merged
Conversation
With the packages:read fix (#5172) the container pull now succeeds, so the "Commit and push regenerated .res files" step ran for the first time and failed with "fatal: not in a git directory" (exit 128). The job runs inside the pr-ci-container, where the checked-out tree is owned by a different UID than the shell step's user. git's dubious- ownership guard then refuses every command. actions/checkout records a safe.directory entry, but in the action's HOME, which the bash run step doesn't share -- so add the workspace to safe.directory explicitly before the git config/commit/push calls. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
shai-almog
added a commit
that referenced
this pull request
Jun 5, 2026
The Native Themes Sync workflow that normally regenerates and commits these was broken (container-pull + safe.directory bugs, fixed in #5172 and #5173), so the committed Themes/{iOSModernTheme,AndroidMaterialTheme}.res were never rebuilt after #5170 changed native-themes/ios-modern/theme.css and native-themes/android-material/theme.css. Regenerated here manually via scripts/build-native-themes.sh so master's .res match their CSS sources again. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Follow-up to #5172. That PR's
packages: readfix unblocked the container pull inNative Themes Sync, so theCommit and push regenerated .res filesstep ran for the first time ever — and immediately failed (exit 128):Root cause
The job runs inside the
pr-ci-container. The checked-out tree is owned by a different UID than the user executing therun:shell step, so git's dubious-ownership guard rejects every command.actions/checkoutdoes write asafe.directoryentry, but into the action's HOME, which the raw bash step doesn't share — so the guard still fires in the commit step.This step had never executed before: prior to #5172 the job always died earlier at the container pull, so this was latent from day one.
Fix
Add the workspace to
safe.directoryat the top of the commit step, before thegit config/commit/pushcalls:git config --global --add safe.directory "$GITHUB_WORKSPACE"Effect
This PR touches
native-themes-sync.yml, which is in the workflow's own triggerpaths:, so merging it re-fires the sync. It should now run end-to-end and commit the regeneratedThemes/*.resfiles (stale since #5170 changed the theme CSS but the sync never managed to commit). Self-healing once merged.🤖 Generated with Claude Code