Skip to content

fix(ci): Enable caching in consume_release and fix docs#38

Merged
pdobacz merged 3 commits into
forks/monad_ninefrom
runloop-fixes
Jul 20, 2026
Merged

fix(ci): Enable caching in consume_release and fix docs#38
pdobacz merged 3 commits into
forks/monad_ninefrom
runloop-fixes

Conversation

@pdobacz

@pdobacz pdobacz commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator

The 20 mins to run the runloop tests is mostly building the stack, should be easy caching

Greptile Summary

This PR adds two layers of GitHub Actions caching to avoid the ~20-minute stack rebuild on every workflow run: a Docker image cache for the monad-builder toolchain image (keyed on the builder Dockerfile) and a compiled artifact cache for install/ (keyed on the full stack: Dockerfile hash + harness/bft/exec SHAs). It also updates the release default to tests-monad_runloop@latest and adds the harness HEAD SHA to the step output/log.

  • Docker image cache saves the monad-builder image as a tarball at /tmp/monad-builder.tar, restoring it via docker load on a cache hit, so the toolchain rebuild is skipped when the builder/Dockerfile is unchanged.
  • install/ artifact cache skips the build.sh invocation entirely when the exact combination of harness, bft, and exec SHAs plus Dockerfile hash matches a prior run's cached output.
  • The Log pinned stack step now also outputs the harness SHA (previously only bft and exec were captured), which is used as part of the eest-install cache key.

Confidence Score: 5/5

Safe to merge — the caching additions are additive and well-isolated, with cache misses falling back to the original build path.

Both new cache layers follow the standard split-restore/save pattern with exact-match keys. The install/ key correctly incorporates all three git SHAs plus the Dockerfile hash, preventing stale cached artifacts. No logic in the test-execution or summarization steps was altered.

No files require special attention.

Important Files Changed

Filename Overview
.github/workflows/consume_release.yaml Adds Docker image and compiled artifact caching to skip the ~20 min build step on re-runs; updates release default and harness SHA logging. Cache keys correctly capture the full toolchain and stack identity.

Reviews (3): Last reviewed commit: "ci(consume_release): group GITHUB_OUTPUT..." | Re-trigger Greptile

@pdobacz
pdobacz requested review from QEDK and mijovic as code owners July 17, 2026 14:19
Comment thread .github/workflows/consume_release.yaml
Comment thread .github/workflows/consume_release.yaml Outdated
pdobacz added 3 commits July 17, 2026 14:31
Co-Authored-By: Claude <claude-opus-4-8>
Skip the ~4 min image build and ~10 min build.sh when the Dockerfile and
resolved stack SHAs are unchanged.

Co-Authored-By: Claude <claude-opus-4-8>
@greptile-apps

greptile-apps Bot commented Jul 17, 2026

Copy link
Copy Markdown

Want your agent to iterate on Greptile's feedback? Try greploops.

@pdobacz
pdobacz merged commit 7c807b2 into forks/monad_nine Jul 20, 2026
5 checks passed
@pdobacz
pdobacz deleted the runloop-fixes branch July 20, 2026 13:51
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