pgw#1008 (P1, catalog-blocking): the clone producer's checkpoint facts reach the publish declare - #526
Closed
PaulFidika wants to merge 1 commit into
Closed
pgw#1008 (P1, catalog-blocking): the clone producer's checkpoint facts reach the publish declare#526PaulFidika wants to merge 1 commit into
PaulFidika wants to merge 1 commit into
Conversation
…s reach the publish declare th#1411 refuses a v2 publish into a repo whose live rows carry classification unless the request restates objective/distilled. run_clone spent the caller's facts only on apply_objective_scheduler_config (the scheduler stamp inside the produced tree) and dropped them before publish_v2 — so a clone-huggingface into ANY already-classified mirror dies at declare, before a byte moves. publish_flavors has passed both since pgw#654; this call site was the one that did not. Live cost (ie#609): master's tensorhub/wan22-t2v-a14b is missing transformer_2 because the mirror plan's third source_include leg was never run, and the repair leg — one clone-huggingface merge, correct payload, objective='flow', distilled=false — was refused twice at declare, 400 classification_required, predecessor sha256:3b57e969. Every wan-2.2 function on the master catalog stays down until this ships. Revert-turns-red: both tests in tests/convert/test_clone_classification_pgw1008.py fail with the two kwargs removed. Full tests/convert/: 74 passed, 2 skipped, 1 xfailed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The bug
th#1411 refuses a v2 publish into a repo whose live rows already carry
classification unless the request restates
objective/distilled(a v2 publish mints a new checkpoint identity and inherits nothing, th#1400).
run_cloneaccepts both facts (pgw#654) and spends them only onapply_objective_scheduler_config— the scheduler stamp written inside theproduced tree. They never reach
publish_v2, so the declare goes out bare.publish_flavors(convert/publish.py) has passed both since pgw#654. Thiscall site is the one that did not.
Consequence
clone-huggingfacecannot publish into any mirror the catalog alreadyserves. Not "sometimes"; every classified repo, every time, at declare,
before a byte moves.
Live cost — ie#609: master's
tensorhub/wan22-t2v-a14bis missingtransformer_2/(the mirror was split intosource_includelegs and the thirdleg was never submitted). The repair is one more leg with the obvious payload:
{"huggingface_repo": "Wan-AI/Wan2.2-T2V-A14B-Diffusers", "source_revision": "5be7df96…", "destination_repo": "tensorhub/wan22-t2v-a14b", "source_include": ["model_index.json", "transformer_2/*"], "overwrite_repo": false, "destination_repo_tags": ["prod"], "objective": "flow", "distilled": false}Refused twice on the master standing stack,
400 classification_required,predecessor sha256:3b57e96996aa…— withobjectiveanddistilledstatedright there in the payload. Every wan-2.2 function on the authoritative
catalog is down until this ships.
The fix
Two kwargs on the
publish_v2(...)call inclone.py, matchingpublish_flavors.objective_factanddistilled_factare the alreadyvalidated, already normalized locals.
Tests
tests/convert/test_clone_classification_pgw1008.py, hermetic against theshared fake hub, driving the real
run_clone:test_declared_facts_reach_the_publish_declare— the ie#609 repair shape(merge leg into a classified mirror): the declare carries
objective: "flow",distilled: false,mode: "merge".test_undeclared_objective_stays_off_the_wire— an unstated objective isomitted rather than authored;
distilledis a plainboolon the inputstruct so an undeclared clone honestly states
false.Revert-turns-red: both fail with the two kwargs removed (verified).
Full
tests/convert/: 74 passed, 2 skipped, 1 xfailed.Deploy chain this unblocks
gen-worker release →
training-endpoints/conversionpin (currentlygen-worker==0.91.4; master's deployedconversion:prod0.8.22 runs 0.91.4)→ rebuild + redeploy
conversion→ re-run the ie#609 repair leg.Tracker: pgw#1008, ie#609.
🤖 Generated with Claude Code