Skip to content

Integration Test and Notebook CI Workflows Use Hardcoded GCS Cache Key From September 2024 #1296

@kunal-10-cloud

Description

@kunal-10-cloud

Description

Both integration_tests.yml (lines 46, 56) and notebooks.yml use a hardcoded cache key:

key: gcs_cache_integration_tests_20240922

This key has not been updated since September 22, 2024 (~18 months ago). GitHub Actions caches are immutable once created — the save step at lines 52–56 is a no-op because the key already exists. This means:

  • Integration tests always run against data cached 18 months ago
  • Any new sample sets, updated metadata, or schema changes in GCS are invisible to CI
  • The actions/cache/save@v3 step runs on every CI job but never actually writes (wasted time)

How to Reproduce

# Look at the integration_tests.yml workflow:
grep "key:" .github/workflows/integration_tests.yml
# Output: key: gcs_cache_integration_tests_20240922
 
# Check when key was set:
git log --all -p -- .github/workflows/integration_tests.yml | grep "gcs_cache_integration" | head -3

Why It Is Important

  • The Ag3 dataset has had new sample sets added since September 2024. Integration tests validate against stale data.
  • Pf9 was just added (PR Adding Pf9 functionality #1236, March 2026) — integration tests for Pf9 either fail or use incorrect cached data.
  • The cache key pattern should include a date that is periodically bumped, or use a content-based hash.
  • This creates a false sense of CI reliability — tests pass against old data while potentially failing against current data.

Affected Locations

File Lines Issue
.github/workflows/integration_tests.yml 46, 56 Hardcoded cache key gcs_cache_integration_tests_20240922
.github/workflows/notebooks.yml Same hardcoded cache key

Expected Impact After Resolution

Cache keys are periodically rotated (e.g., monthly or on release), ensuring integration tests validate against current data. A scheduled reminder or automated key rotation prevents future staleness.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions