fix(139): declare the PC client type to lift the 50 GB upload cap - #9605
Merged
Merged
Conversation
The third field of X-Yun-Client-Info is the client type, and the server uses it to pick the single-file upload limit that comes with the account's membership: 50 GB for 9 (web) and 2 (app), 500 GB for 13 (the desktop client). The driver sent 9, so personal_new uploads were rejected with "权益不足" above 50 GB even on accounts that pay for the larger limit. Measured against the live API by declaring a size through /file/create without transferring anything: with 9 the boundary sits exactly at 50 GB, with 13 it moves to exactly 500 GB. Only this field matters. The platform string, the version, the device fingerprint, X-Yun-App-Channel and X-Yun-Svc-Type all leave the boundary where it is.
skysliences
approved these changes
Aug 5, 2026
JoaHuang
approved these changes
Aug 5, 2026
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.
personal_newuploads fail with权益不足(code04010319) above 50 GB, even on accounts whose membership includes the larger limit. The cause is one field in a request header.The field
X-Yun-Client-Infois pipe separated, and its third field is the client type. The server reads it to decide which single-file upload limit of the account's membership applies. The membership benefit itself spells the split out:RHR005 大文件上传 (APP50G, PC500G).The driver sends
9:Measurements
Taken against the live API on an account that carries the larger limit.
/file/createonly declares a size, so nothing is uploaded; every task created during the run was trashed afterwards.Boundaries, resolved to 1 GB:
9(web)2(app)13(desktop client)Only this field moves the boundary. Each of these was changed on its own at 100 GB, a size that
13accepts:13to9, platform left atPCPCtochrome, type left at137.14.0X-Yun-App-Channelto10000034X-Yun-Svc-Typeto2X-Yun-Module-Typeis validated for its value and rejects the request outright when changed, but does not affect the boundary.The final check ran through the driver itself rather than a synthetic request, so the full header set that
personalRequestbuilds was in play, includingMcloud-Signand thex-DeviceInfoheader that the driver also sends. Before the change 100 GB was rejected and 50 GB accepted; after it 500 GB is accepted and 501 GB rejected.x-DeviceInfostill carries9and was deliberately left alone, since the measurements show it has no effect here and leaving it narrows the change to a single value.