Skip to content

mirror-core: survive git's detached auto-gc during tmp cleanup#4

Merged
oblomov-dev merged 1 commit into
mainfrom
claude/repo-review-analysis-13d0nm
Jul 18, 2026
Merged

mirror-core: survive git's detached auto-gc during tmp cleanup#4
oblomov-dev merged 1 commit into
mainfrom
claude/repo-review-analysis-13d0nm

Conversation

@oblomov-dev

Copy link
Copy Markdown
Member

Summary

The update cap run after merging #3 failed with ENOTEMPTY: rmdir .mirror_tmp in scripts/mirror-core.js. Root cause: the new UPSTREAM_HEAD pin fetch can spawn a detached git auto-gc that is still writing into .mirror_tmp/.git while the finally cleanup deletes the tree.

Changes

  • Disable auto-gc/maintenance on the mirror clone and the pin fetch (-c gc.auto=0 -c gc.autoDetach=false -c maintenance.auto=false).
  • Retry the tmp cleanup (rmSync with maxRetries/retryDelay) as a belt-and-braces fallback.
  • Refreshes run/input/core to builder-abap2UI5-js@95e33a1 (current main incl. the merged ajson hand-port).

Verification

npm run mirror_core runs clean locally (stale-slot path exercised); assemble + jest were green on this mirror state.

🤖 Generated with Claude Code

https://claude.ai/code/session_01RXSCVM7CSVZ3Yo9eM4cG6d


Generated by Claude Code

update_cap failed with ENOTEMPTY on rmSync(.mirror_tmp): the pin fetch can
spawn a detached auto-gc that still writes into .mirror_tmp/.git while the
finally-cleanup deletes the tree. Disable auto-gc/maintenance on the clone
and fetch, and retry the rm (maxRetries) as a belt-and-braces fallback.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RXSCVM7CSVZ3Yo9eM4cG6d
@oblomov-dev
oblomov-dev merged commit 5039e7b into main Jul 18, 2026
1 check passed
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.

2 participants