From 809d980fb7625613600d6ecbe2990e9d54369ad8 Mon Sep 17 00:00:00 2001 From: Victor Kuznetsov Date: Tue, 25 Aug 2026 15:00:24 -0700 Subject: [PATCH] Describe the real Hugging Face Space release mechanism The Space demo is deployed from wiltodelta/raiw-hf-space: its uv lock pins the library version, its sync workflow mirrors the files, and a factory reboot alone re-installs the pinned version rather than upgrading. Document the manual pin bump, the smoke-test CI in that repository, and live-call verification of the running Space. pre-commit: 1) maintain.sh - docs-only change, full gate ran this session with identical code state (exit 1 on the known lightning triage, rest green); 2) /simplify - docs only; 3) docs sync - this is the sync, no other references found; 4) CLAUDE.md - existing Space mention remains accurate --- docs/release-and-distribution.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/release-and-distribution.md b/docs/release-and-distribution.md index 917f157..cb66e8c 100644 --- a/docs/release-and-distribution.md +++ b/docs/release-and-distribution.md @@ -11,7 +11,7 @@ A release is complete only after all four published surfaces are verified: |---|---|---| | PyPI | The `remove-ai-watermarks` wheel and source distribution | `publish.yml` | | Homebrew | The `remove-ai-watermarks` formula in `wiltodelta/homebrew-tap` | `distribute.yml` | -| Hugging Face Space | A factory rebuild of `wiltodelta/remove-ai-watermarks` against the new PyPI release | `distribute.yml` | +| Hugging Face Space | The Space demo deployed on the new release through a requirements-pin bump in `wiltodelta/raiw-hf-space` | `raiw-hf-space` sync workflow; the pin bump is manual, `distribute.yml` only re-installs the pinned version | | ComfyUI Registry | A compatible release of `wiltodelta/ComfyUI-remove-ai-watermarks` with its own node version | `distribute.yml` and the node repository's workflows | The GitHub Release is the trigger and release record for this flow. Conda is @@ -58,9 +58,17 @@ PyPI API token from the repository. waits for the matching source distribution to appear on PyPI, then: - updates the Homebrew tap formula URL and SHA-256; -- triggers a factory rebuild of the Hugging Face Space; +- triggers a factory rebuild of the Hugging Face Space: this re-installs the + version pinned in the Space repo, it does NOT upgrade the demo; - synchronizes, tests, versions, and publishes the ComfyUI nodes. +Upgrading the Hugging Face Space is a separate, manual step: bump +`remove-ai-watermarks[visible,heif]` in `wiltodelta/raiw-hf-space` (`pyproject.toml`, +`uv lock`, and the re-exported `requirements.txt`), then push. That repository's +`sync-to-hf.yml` mirrors the files onto the Space, which rebuilds on the new +pin. Its callback smoke tests run in that repository's CI on every push; they +are the scenario check for the demo surface. + The workflow can also be started manually with an optional version input. If a distribution job fails because a repository or Hugging Face credential is @@ -116,6 +124,10 @@ After publication, verify: - the Homebrew formula points to the new source distribution; - the distribution workflow completed successfully; - the ComfyUI Registry node requires the new library version; +- the Hugging Face Space serves the new release: its `requirements.txt` pin + matches (raw file via the HF API), the runtime stage is `RUNNING` after the + rebuild, and one live `identify` and one live `visible` API call succeed + against the running Space; - a clean install can run `remove-ai-watermarks --version`. A clean-install check run immediately after publication can fail with "no