diff --git a/.dagger/src/mat_vis_ci/main.py b/.dagger/src/mat_vis_ci/main.py index 6e0f4216..5698b2ea 100644 --- a/.dagger/src/mat_vis_ci/main.py +++ b/.dagger/src/mat_vis_ci/main.py @@ -272,7 +272,7 @@ async def test_all( async def test_client_python( self, src: Annotated[dagger.Directory, Doc("Project root directory")] | None = None, - tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.0", + tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.2", live: Annotated[ bool, Doc("Set MAT_VIS_LIVE_TESTS=1 + MAT_VIS_LIVE_TAG=tag to enable @live tests (#248)"), @@ -300,7 +300,7 @@ async def test_client_python( async def test_client_js( self, src: Annotated[dagger.Directory, Doc("Project root directory")] | None = None, - tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.0", + tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.2", live: Annotated[ bool, Doc("Set MAT_VIS_LIVE_TESTS=1 + MAT_VIS_LIVE_TAG=tag to enable live tests (#248)"), @@ -325,7 +325,7 @@ async def test_client_js( async def test_client_shell( self, src: Annotated[dagger.Directory, Doc("Project root directory")] | None = None, - tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.0", + tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.2", live: Annotated[ bool, Doc("Set MAT_VIS_LIVE_TESTS=1 + MAT_VIS_LIVE_TAG=tag to enable live tests (#248)"), @@ -351,7 +351,7 @@ async def test_client_shell( async def test_client_rust( self, src: Annotated[dagger.Directory, Doc("Project root directory")] | None = None, - tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.0", + tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.2", live: Annotated[ bool, Doc("Set MAT_VIS_LIVE_TESTS=1 + MAT_VIS_LIVE_TAG=tag to enable live tests (#248)"), @@ -382,7 +382,7 @@ async def test_client_rust( async def test_clients( self, src: Annotated[dagger.Directory, Doc("Project root directory")] | None = None, - tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.0", + tag: Annotated[str, Doc("Release tag to test against")] = "v2026.04.2", live: Annotated[ bool, Doc("Forward MAT_VIS_LIVE_TESTS=1 + MAT_VIS_LIVE_TAG=tag to every client (#248)"), diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f8ad32e6..3061d755 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -45,7 +45,7 @@ jobs: # in each language container so the @live / liveDescribe blocks # (incl. the #248 manifest-driven coverage matrix) actually run # against prod HF, not the structural-only stubs. - args: test-clients --src=. --tag=v2026.04.0 --live=true + args: test-clients --src=. --tag=v2026.04.2 --live=true # validate-release lives in promote-data-release.yml (pre-promotion gate) # and release-validate.yml (daily drift check). It tests the state of a diff --git a/clients/python/test_client.py b/clients/python/test_client.py index f7272cb9..8b5ee1ed 100644 --- a/clients/python/test_client.py +++ b/clients/python/test_client.py @@ -1279,7 +1279,7 @@ def test_original_check_caches_at_client_level(self, mock_client): ) -LIVE_TAG = os.environ.get("MAT_VIS_LIVE_TAG", "v2026.04.1") +LIVE_TAG = os.environ.get("MAT_VIS_LIVE_TAG", "v2026.04.2") LIVE_SOURCE = "polyhaven" LIVE_TIER = "1k" @@ -1358,9 +1358,14 @@ def test_fetch_nonexistent_material_raises(self, live_client): @live def test_proof_phase_2_fetch_physicallybased_index_from_hf(): - """Scalar catalog for physicallybased is fetchable from HF substrate.""" + """Scalar catalog for physicallybased is fetchable from HF substrate. + + Uses ``LIVE_TAG`` (env-overridable) so this stays current as + the prod release tag rolls forward; #250 surfaced a hardcoded + v2026.04.1 here that broke once that tag was sunset. + """ with tempfile.TemporaryDirectory() as tmp: - client = MatVisClient(tag="v2026.04.1", cache_dir=Path(tmp)) + client = MatVisClient(tag=LIVE_TAG, cache_dir=Path(tmp)) idx = client.index("physicallybased") assert len(idx) >= 50, f"expected ≥50 PB entries, got {len(idx)}" assert all("id" in e and "source" in e for e in idx)