Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions docs/harness-0.1.2-rc.1-upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,12 @@ Preview 或其他可选 Bundle 意外打入桌面应用。
`@deepseek-ai/dsh*` 补丁文件名由 `0.1.2-alpha.4` 改为 `0.1.2-rc.1`。上游本次未变更这些
补丁覆盖的源码文件,版本标识迁移后仍必须由 `patch-package` 的 clean install 结果验证。

## Windows Harness 运行资源

`build/harness-node-entry.mjs` 在 Windows 启动路径中加载 `windows-hidden-console.mjs`。两者作为
同一组 `extraResources` 进入安装包,`release.test.ts` 同时校验入口导入和资源清单,保证打包后的
Harness 可以创建隐藏控制台并继续启动。

## 验证

- 上游标签:`pnpm install --frozen-lockfile`、`pnpm run build:official`、两类 `release/pack.ts` 成功。
Expand Down
4 changes: 4 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -332,6 +332,10 @@
"from": "build/harness-node-entry.mjs",
"to": "harness-node-entry.mjs"
},
{
"from": "build/windows-hidden-console.mjs",
"to": "windows-hidden-console.mjs"
},
{
"from": "build/windows-child-process-hide.mjs",
"to": "windows-child-process-hide.mjs"
Expand Down
14 changes: 14 additions & 0 deletions test/release.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -149,12 +149,26 @@ describe('GitHub release contract', () => {
portable?: unknown
}
}
const harnessNodeEntry = await readFile(
path.join(projectRoot, 'build', 'harness-node-entry.mjs'),
'utf8'
)
const windowsHiddenConsole = await readFile(
path.join(projectRoot, 'build', 'windows-hidden-console.mjs'),
'utf8'
)

expect(packageJson.build.artifactName).toBe('dsh-desktop-${os}-${arch}.${ext}')
expect(packageJson.build.extraResources).toContainEqual({
from: 'build/app-icon.png',
to: 'icon.png'
})
expect(packageJson.build.extraResources).toContainEqual({
from: 'build/windows-hidden-console.mjs',
to: 'windows-hidden-console.mjs'
})
expect(harnessNodeEntry).toContain("await import('./windows-hidden-console.mjs')")
expect(windowsHiddenConsole).toContain('export function createHiddenConsole')
expect(packageJson.build.extraResources).toContainEqual({
from: 'build/windows-child-process-hide.mjs',
to: 'windows-child-process-hide.mjs'
Expand Down
Loading