Repository navigation
v0.4.0
Jupyter Cache Actions
Added
-
build-jupyter-cache- Dedicated action for building and caching notebook execution- Runs on
mainbranch (scheduled weekly or on push) - Full notebook execution with Jupyter Book
- Saves execution cache with unique key (
build-{env-hash}-{run-id}) - Verification step ensures cache validity before saving
- Creates GitHub issue on build failure with duplicate prevention
- Uploads execution reports as artifacts on failure
- Runs on
-
restore-jupyter-cache- Dedicated action for restoring notebook execution cache- Runs on PR branches (read-only restore, never saves)
- Prefix-based matching finds most recent cache
- Detailed cache status output (hit/miss, matched key)
- ~80% build time reduction when cache available (tested: 16m53s → 3m28s)
-
Workflow Templates (
templates/)cache.yml- Container-based cache workflow for lecture reposcache-standard.yml- Standard runner workflow (with LaTeX install)README.md- Template documentation and usage instructions
Changed
- BREAKING: Removed caching inputs from
build-lectures- Removed
cache-notebook-executioninput - Removed
use-build-cacheinput - Removed
build-cache-hitoutput - Migration: Use dedicated
build-jupyter-cacheandrestore-jupyter-cacheactions
- Removed
Documentation
- Updated ARCHITECTURE.md with Layer 2 caching strategy
- Updated MIGRATION-GUIDE.md with cache workflow examples
- Updated QUICK-REFERENCE.md with cache action reference
- Added comprehensive README for both cache actions