Skip to content

Harden serving recipe cache freshness and provenance - #202

Open
amd-mkarvir wants to merge 2 commits into
mainfrom
mkarvir/serving-skill-recipe-freshness
Open

Harden serving recipe cache freshness and provenance#202
amd-mkarvir wants to merge 2 commits into
mainfrom
mkarvir/serving-skill-recipe-freshness

Conversation

@amd-mkarvir

@amd-mkarvir amd-mkarvir commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • make recipe-cache freshness a mandatory, fail-closed preflight
  • write refreshed data to a writable runtime cache and record source provenance plus an immutable ROCm image digest
  • select the highest stable semantic vLLM tag across every Docker Hub result page
  • resolve runtime and CLI cache paths consistently, including environment-variable expansion
  • require version checks and safer handling when a requested model is absent from the refreshed cache
  • fix UTF-8 recipe parsing on Windows and add CI-backed regression tests

Motivation

The bundled recipe snapshot is a fallback and can become stale. The previous helper always exited successfully when refresh failed, allowing callers to continue without a reliable freshness signal. It also selected an older Docker version simply because it was updated recently, and it did not record the image digest needed to reproduce the exact container.

This change makes refresh failures observable and keeps stale fallback use explicit.

Validation

  • repository skill validation passes
  • eval dataset validation passes
  • ten recipe-cache unit tests pass
  • workflow YAML and Python compilation pass
  • live synchronization smoke test passes against the public vLLM recipes repository and Docker Hub

This complements #126: that PR expands behavioral coverage, while this change hardens the deterministic cache and provenance path.

Comment on lines +91 to +108
# The serving recipe cache controls model compatibility and the container
# image agents deploy. Exercise its fail-closed freshness and immutable-image
# selection without making network requests.
test-serving-recipe-cache:
name: Test serving recipe cache
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Set up uv
uses: astral-sh/setup-uv@v7

- name: Test recipe cache
run: >-
uv run --with pyyaml python -m unittest discover
-s skills/serving-llms-on-instinct/scripts/tests -v

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as in the last PR: All workflows are skill-agnostic. Please do not modify anything inside .github/workflows to enable skill-specific tests.

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