Repository navigation
fix: land the cloud@9794097 Router spec sync (regenerate, reconcile) - #211
mattmillerai wants to merge 2 commits into
Conversation
…spec The synced spec rewrote model_not_found's meaning: a model retired past its sunset date now lands in this bucket, and its detail names the retirement date and, when one is visible, a live successor id instead of a suggestion list. Reword the docstring to cover that and record the new meaning digest so the drift check and the contract test pass.
|
Warning Review limit reached
This review includes 2 billable files and costs up to $0.50.
Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing. Or wait 40 seconds for your next included review. View limit detailsLimit details: You’ve used the included review currently available. Your 131 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (2)
Comment |
There was a problem hiding this comment.
🔍 Cursor Review — Consolidated panel
Triggered by @mattmillerai.
Found 5 finding(s).
| Severity | Count |
|---|---|
| 🟡 Medium | 1 |
| 🟢 Low | 3 |
| ⚪ Nit | 1 |
Panel: 6/6 reviewers contributed findings.
|
🤖 The reviews loop filed Linear follow-up ticket(s) for review thread(s) deferred as out of scope for this PR:
The following carry
|
Summary
Lands the cloud@9794097 Comfy Router spec sync and the one follow-up it needs to go green.
meaningof themodel_not_founderror bucket. A model retired past its sunset date now lands there, and itsdetailgives the retirement date and, when one is visible, a live successor id instead of the suggestion list.scripts/check_drift.pyandtests/test_router_spec_contract.pyfailed on the stale read marker. This PR rewords theModelNotFounddocstring to match and sets_spec_meaning_digestto6c0e0e327e4d.spec/openapi.yamldid not change, so_generated.pyregenerates byte-identical and has no diff. Nothing is generated from the Router spec.estimateRouterModelCost(POST /v2/models/{provider}/{model}/estimate), and an optionalestimatefield on the queued-submit response. No SDK method is added here. No coverage gate requires Router operations to be bound, so the new operation is declared in the spec but not called by the SDK. Exposing it is a separate feature.This PR carries #209's sync commit unchanged, followed by the fix commit. The fix can't go on #209 itself because the rolling sync branch must not take commits the sync workflow did not make. Once this lands, #209 has nothing left to merge.
ELI5
The Router docs changed how they describe "model not found": that error now also covers models that have been retired. Our SDK keeps a fingerprint of the description each error class was written against, so it notices when the docs move. This PR updates the class's description and its fingerprint so the check agrees again.
Provenance
Gates run locally on this branch:
ruff check .: passedruff format --check .: passedmypy src: passedpytest: 1265 passed, 9 skippedpython scripts/check_drift.py: all three checks OKpython3 scripts/check_public_repo_hygiene.py: OKpython -m build+twine check dist/*: both artifacts PASSED