René's URL Explorer Experiment


Title: [codex] Add Qwen runtime source options to desktop release by DragonnZhang · Pull Request #8 · modelstudioai/openwork · GitHub

Open Graph Title: [codex] Add Qwen runtime source options to desktop release by DragonnZhang · Pull Request #8 · modelstudioai/openwork

X Title: [codex] Add Qwen runtime source options to desktop release by DragonnZhang · Pull Request #8 · modelstudioai/openwork

Description: What this PR does Adds an explicit Qwen Code runtime source selector to the Desktop Release workflow. Release operators can now choose npm_latest, source_branch, or pinned_package_version; source-branch builds check out QwenLM/qwen-code at the requested ref and set QWEN_CODE_ROOT, npm-latest builds set QWEN_CODE_VERSION=latest, and pinned builds continue to use package.json's qwenCodeRuntime.version unless an exact npm version is entered. The vendoring script now resolves npm dist-tags through package metadata before downloading the tarball, so QWEN_CODE_VERSION=latest resolves to the current npm latest version instead of trying to download a nonexistent qwen-code-latest.tgz file. Why it's needed The release UI previously had an optional qwen_code_version text field, but leaving it empty silently packaged the pinned 0.15.11 runtime. That made it too easy to think a desktop release was using the current Qwen Code runtime when it was actually using the package-pinned fallback. The workflow now makes that choice visible and supports the three intended release modes: current npm latest, a Qwen Code source ref, or the pinned runtime version. Reviewer Test Plan How to verify Open the Desktop Release workflow dispatch form and confirm the new qwen_code_source choice contains npm_latest, source_branch, and pinned_package_version. For source_branch, confirm qwen_code_ref controls the QwenLM/qwen-code checkout. For npm_latest, confirm the build logs show the real npm version resolved from the latest dist-tag. Evidence (Before & After) Before: running the old vendoring script with QWEN_CODE_VERSION=latest attempted to download https://registry.npmjs.org/@qwen-code/qwen-code/-/qwen-code-latest.tgz and failed with HTTP 404. After: QWEN_CODE_VERSION=latest bun run scripts/vendor-qwen-code.ts resolved npm latest to 0.17.1 at test time and vendored @qwen-code/qwen-code@0.17.1; the default pinned path vendored 0.15.11; a fake QWEN_CODE_ROOT source checkout smoke test built and vendored a local dist/cli.js. Tested on OS Status 🍏 macOS ✅ tested 🪟 Windows ⚠️ not tested locally 🐧 Linux ⚠️ not tested locally Environment (optional) Local macOS shell in /Users/dragon/Documents/openwork; Bun 1.3.8, Node 26.0.0, npm 11.12.1. Risk & Scope Main risk or tradeoff: source_branch builds clone and install Qwen Code source dependencies in every platform job, which is straightforward but slower than prebuilding the runtime once and sharing it across the matrix. Not validated / out of scope: a full hosted Desktop Release run with source_branch has not completed yet. Breaking changes / migration notes: the old empty qwen_code_version behavior is preserved under pinned_package_version, which remains the default. Linked Issues References the desktop release workflow follow-up from #5, #6, and #7. 中文说明 What this PR does 这个 PR 给 Desktop Release workflow 加了明确的 Qwen Code runtime source 选择。发版时现在可以选择 npm_latest、source_branch 或 pinned_package_version;source-branch 会 checkout 指定 ref 的 QwenLM/qwen-code 并设置 QWEN_CODE_ROOT,npm-latest 会设置 QWEN_CODE_VERSION=latest,pinned 则继续使用 package.json 里的 qwenCodeRuntime.version,除非额外填写一个精确 npm version。 vendoring 脚本现在会先通过 npm package metadata 解析 dist-tag,再下载 tarball,所以 QWEN_CODE_VERSION=latest 会解析成当前 npm latest 对应的真实版本,而不是去下载不存在的 qwen-code-latest.tgz。 Why it's needed 之前发版 UI 只有一个可选的 qwen_code_version 文本框,不填就会静默打包 package 里 pinned 的 0.15.11 runtime。这样很容易以为桌面版用了当前 Qwen Code runtime,但实际用了固定 fallback。现在 workflow 把这个选择显式暴露出来,并支持三种预期模式:当前 npm latest、某个 Qwen Code 源码 ref、或者 pinned runtime version。 Reviewer Test Plan How to verify 打开 Desktop Release workflow 的手动触发表单,确认新的 qwen_code_source 选项包含 npm_latest、source_branch 和 pinned_package_version。选择 source_branch 时,确认 qwen_code_ref 控制 QwenLM/qwen-code checkout。选择 npm_latest 时,确认 build log 会显示从 latest dist-tag 解析出的真实 npm 版本。 Evidence (Before & After) Before: 旧脚本在 QWEN_CODE_VERSION=latest 时会尝试下载 https://registry.npmjs.org/@qwen-code/qwen-code/-/qwen-code-latest.tgz,并因 HTTP 404 失败。 After: QWEN_CODE_VERSION=latest bun run scripts/vendor-qwen-code.ts 在测试时把 npm latest 解析为 0.17.1,并成功 vendor @qwen-code/qwen-code@0.17.1;默认 pinned 路径 vendor 了 0.15.11;fake QWEN_CODE_ROOT source checkout smoke test 也能 build 并 vendor 本地 dist/cli.js。 Tested on OS Status 🍏 macOS ✅ tested 🪟 Windows ⚠️ not tested locally 🐧 Linux ⚠️ not tested locally Environment (optional) 本地 macOS shell,目录 /Users/dragon/Documents/openwork;Bun 1.3.8,Node 26.0.0,npm 11.12.1。 Risk & Scope Main risk or tradeoff: source_branch 会在每个平台 job 里 clone 并安装 Qwen Code 源码依赖,逻辑直接但比预先构建一次 runtime 再分发给 matrix 更慢。 Not validated / out of scope: 还没有完整跑过一次 hosted Desktop Release 的 source_branch 模式。 Breaking changes / migration notes: 旧的空 qwen_code_version 行为保留在默认的 pinned_package_version 下。 Linked Issues References desktop release workflow 从 #5、#6、#7 延续下来的后续改进。

Open Graph Description: What this PR does Adds an explicit Qwen Code runtime source selector to the Desktop Release workflow. Release operators can now choose npm_latest, source_branch, or pinned_package_version; source-b...

X Description: What this PR does Adds an explicit Qwen Code runtime source selector to the Desktop Release workflow. Release operators can now choose npm_latest, source_branch, or pinned_package_version; source-b...

Opengraph URL: https://github.com/modelstudioai/openwork/pull/8

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:f56e9f6f-482e-64c5-e8b0-fdb3847146a0
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idD8E6:206F88:A997CC:E0BAAC:6A540385
html-safe-noncee759978c2f9d4e4960325d8cfb1d675fb760356fedee421818ccc53982ef23ec
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEOEU2OjIwNkY4ODpBOTk3Q0M6RTBCQUFDOjZBNTQwMzg1IiwidmlzaXRvcl9pZCI6IjIxNzUyNTkyNjIyOTE4MTMxNyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac66f44669e0a7e54f2298ecfe819e6290abc3c53e35ab9dd360ea804bde6b5c4c
hovercard-subject-tagpull_request:3822906924
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/modelstudioai/openwork/pull/8/files
twitter:imagehttps://avatars.githubusercontent.com/u/52599892?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/52599892?s=400&v=4
og:image:altWhat this PR does Adds an explicit Qwen Code runtime source selector to the Desktop Release workflow. Release operators can now choose npm_latest, source_branch, or pinned_package_version; source-b...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Noneb9a586c06a05a7a86fc7e3f4dbd03e42f6869085879aa184aa6369456dbd50fb
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/modelstudioai/openwork git https://github.com/modelstudioai/openwork.git
octolytics-dimension-user_id283556804
octolytics-dimension-user_loginmodelstudioai
octolytics-dimension-repository_id1256697754
octolytics-dimension-repository_nwomodelstudioai/openwork
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1256697754
octolytics-dimension-repository_network_root_nwomodelstudioai/openwork
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release07a982c1d40157c619b364352b704c3ce66bb332
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/modelstudioai/openwork/pull/8/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelstudioai%2Fopenwork%2Fpull%2F8%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelstudioai%2Fopenwork%2Fpull%2F8%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=modelstudioai%2Fopenwork
Reloadhttps://github.com/modelstudioai/openwork/pull/8/files
Reloadhttps://github.com/modelstudioai/openwork/pull/8/files
Reloadhttps://github.com/modelstudioai/openwork/pull/8/files
Please reload this pagehttps://github.com/modelstudioai/openwork/pull/8/files
modelstudioai https://github.com/modelstudioai
openworkhttps://github.com/modelstudioai/openwork
Notifications https://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork
Fork 3 https://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork
Star 11 https://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork
Code https://github.com/modelstudioai/openwork
Issues 14 https://github.com/modelstudioai/openwork/issues
Pull requests 12 https://github.com/modelstudioai/openwork/pulls
Actions https://github.com/modelstudioai/openwork/actions
Projects https://github.com/modelstudioai/openwork/projects
Security and quality 0 https://github.com/modelstudioai/openwork/security
Insights https://github.com/modelstudioai/openwork/pulse
Code https://github.com/modelstudioai/openwork
Issues https://github.com/modelstudioai/openwork/issues
Pull requests https://github.com/modelstudioai/openwork/pulls
Actions https://github.com/modelstudioai/openwork/actions
Projects https://github.com/modelstudioai/openwork/projects
Security and quality https://github.com/modelstudioai/openwork/security
Insights https://github.com/modelstudioai/openwork/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fmodelstudioai%2Fopenwork%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fmodelstudioai%2Fopenwork%2Fissues%2Fnew%2Fchoose
DragonnZhanghttps://github.com/DragonnZhang
mainhttps://github.com/modelstudioai/openwork/tree/main
dragon/add-qwen-runtime-source-optionshttps://github.com/modelstudioai/openwork/tree/dragon/add-qwen-runtime-source-options
Conversation 0 https://github.com/modelstudioai/openwork/pull/8
Commits 1 https://github.com/modelstudioai/openwork/pull/8/commits
Checks 0 https://github.com/modelstudioai/openwork/pull/8/checks
Files changed https://github.com/modelstudioai/openwork/pull/8/files
Please reload this pagehttps://github.com/modelstudioai/openwork/pull/8/files
[codex] Add Qwen runtime source options to desktop release https://github.com/modelstudioai/openwork/pull/8/files#top
Show all changes 1 commit https://github.com/modelstudioai/openwork/pull/8/files
727acde ci: add qwen runtime source options DragonnZhang Jun 8, 2026 https://github.com/modelstudioai/openwork/pull/8/commits/727acdeba09d466470bf3d173b94d45cc6227ec1
Clear filters https://github.com/modelstudioai/openwork/pull/8/files
Please reload this pagehttps://github.com/modelstudioai/openwork/pull/8/files
Please reload this pagehttps://github.com/modelstudioai/openwork/pull/8/files
desktop-release.yml https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
vendor-qwen-code.ts https://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
.github/workflows/desktop-release.ymlhttps://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
View file https://github.com/modelstudioai/openwork/blob/727acdeba09d466470bf3d173b94d45cc6227ec1/.github/workflows/desktop-release.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/modelstudioai/openwork/pull/8/{{ revealButtonHref }}
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
https://github.com/modelstudioai/openwork/pull/8/files#diff-74d52c7679436607803289e317eb95b8c2fd90bd2ba4ff4375d37197d62e1775
scripts/vendor-qwen-code.tshttps://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
View file https://github.com/modelstudioai/openwork/blob/727acdeba09d466470bf3d173b94d45cc6227ec1/scripts/vendor-qwen-code.ts
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/modelstudioai/openwork/pull/8/{{ revealButtonHref }}
https://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
https://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
https://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
https://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
https://github.com/modelstudioai/openwork/pull/8/files#diff-eef0f522c5be833bc319d5536c7c3704351530b73cf748222afd5e739934a98c
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.