Skip to content

The OAK cache key never rotates, so CI can pin one ontology snapshot forever #707

Description

@realmarcin

Three workflow steps now cache OAK ontologies under a fixed key:

- name: Cache OAK ontologies
  uses: actions/cache@v4
  with:
    path: ~/.data/oaklib
    key: oaklib-${{ runner.os }}-v1

label-correspondence.yaml has used this key since it was written; PR #702 added the same two steps to validate-strict.yaml for consistency. So this is a pre-existing property, now in three places rather than one.

GitHub Actions cache entries are immutable per key. Once oaklib-Linux-v1 is saved, every later run restores that snapshot and nothing ever writes a newer one. NCBITaxon, ENVO and ChEBI releases after that point never reach CI, and the only way to pick one up is for a human to notice and bump -v1 by hand — which nothing prompts anyone to do.

The consequence is quiet rather than loud: a gate keeps passing against a taxonomy that is a year stale, and a genuinely obsolete id keeps validating.

Suggested fix: put something time-varying in the key (a week or month stamp) with restore-keys: oaklib-${{ runner.os }}- so a stale entry is still used while a fresh one is being built. Filed rather than fixed in #702 because it is pre-existing and changing the caching strategy deserves its own change.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions