Skip to content

Auto-republish Hugging Face on contract drift; publish --follow - #42

Merged
linqiang-max merged 2 commits into
mainfrom
feat/hf-auto-republish-and-follow
Oct 23, 2026
Merged

linqiang-max merged 2 commits into
mainfrom
feat/hf-auto-republish-and-follow

Conversation

@linqiang-max

Copy link
Copy Markdown
Member

Items 5 and 8 of the release-chain hardening.

5. Auto-republish HF on contract drift — .github/workflows/hf-contract-republish.yml: on main pushes touching huggingface/**, except release artifact commits (data: publish pricing artifacts…, which the release script dispatches itself), run check_hf_production_parity.py; only on a DATA_DRIFT verdict dispatch publish-huggingface.yml (still the only workflow that publishes). Network failure fails the job without publishing. Permissions: contents: read, actions: write. Would have removed the manual HF dispatch after the schema 1.11.0 merge (#40).

8. publish --follow (daily-pricing-release.ps1 -Publish -Follow): after the pushes

  1. waits for the Website commit to be live via npm run verify:live (linqiang-max/aicostbudget#96, reads the deployed commit from the bundle's Sentry release id);
  2. waits for the dispatched HF publish run for the release commit and requires BUSINESS_PARITY: PASS in its log; reports the HF commit;
  3. runs the IndexNow dry run and prints the URL list plus the --send command (sending stays manual).
    Ends with PUBLISHED AND VERIFIED or exits 1 naming the step. Docs updated.

Checks: unittest suite OK; release tests 34 pass (5 new follow tests, stubbed). Follow helpers run read-only against the last real release (95947f8 / website e4eb1e7): website live-newer, HF run 39914333425 parity PASS (HF 469ac60), IndexNow dry run = the same 4 URLs that were sent.

AICostBudget added 2 commits October 23, 2026 16:54
… release

A public export schema bump left production behind until someone dispatched the
publisher, and HF parity failed in the meantime. On main pushes that touch
huggingface/ (except release artifact commits, which the release script
dispatches itself), run the parity check and dispatch publish-huggingface.yml
only on a DATA_DRIFT verdict; a network failure fails without publishing.
…d IndexNow dry run

After the pushes, -Follow waits for Hostinger to serve the Website commit (via
the Website verify:live script), waits for the dispatched Hugging Face publish
run and requires its production parity step to pass, then runs the IndexNow dry
run and prints the --send command. Ends with PUBLISHED AND VERIFIED, or a
non-zero exit naming the step that needs attention. Documents the contract
auto-republish workflow.
@linqiang-max
linqiang-max merged commit 182a443 into main Oct 23, 2026
1 check passed
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.

1 participant