Skip to content

Save the pinned swift-format cache on main - #66

Merged
MarcusJRLee merged 2 commits into
mainfrom
claude/warm_tool_cache
Nov 2, 2026
Merged

MarcusJRLee merged 2 commits into
mainfrom
claude/warm_tool_cache

Conversation

@MarcusJRLee

Copy link
Copy Markdown
Owner

Why

#64 cached the formatter per PR branch. GitHub only lets PRs read caches saved on main, and CI never runs on main, so every PR rebuilt it (8 min on CI). That pushed #65's Verify past its 15-minute timeout even though every step passed.

What

  • .github/workflows/tool_cache.yml builds and saves the formatter on main. It runs when the pin changes, weekly (inside GitHub's 7-day cache eviction), and on demand.
  • scripts/check_workflows.sh accepts a push paths: filter as gating for a macOS job, with a test.
  • CONTRIBUTING lists the lane and explains the cache scope.

Evidence

  • check_workflows_test.sh, check_workflows.sh, and check_fast.sh pass.
  • This PR's own first run still misses the cache. A rerun on the same branch hits it.

🤖 Generated with Claude Code

MarcusJRLee and others added 2 commits November 2, 2026 09:58
PR runs can read caches saved on main but not each other's, and CI runs only
on pull requests, so every PR rebuilt the formatter (~8 minutes) and #65's
Verify hit its 15-minute timeout. A path-filtered push-to-main workflow, plus
a weekly refresh inside GitHub's 7-day eviction window, keeps the shared
cache warm. check_workflows accepts a push paths filter as macOS gating.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MarcusJRLee
MarcusJRLee merged commit 435b6f5 into main Nov 2, 2026
8 checks passed
@MarcusJRLee
MarcusJRLee deleted the claude/warm_tool_cache branch November 2, 2026 15:39
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