Commit Graph
69 Commits
Author SHA1 Message Date
PerishCode 6ac254ddaa Include web output mode in Windows tarball cache key 2026-05-07 16:25:30 +08:00
PerishCode 8fc16291da Fix Windows installer cache namespace isolation 2026-05-07 16:07:46 +08:00
PerishCode 64502bb7ee Address Windows packaging review feedback 2026-05-07 15:46:40 +08:00
PerishCode 3711e2da95 Fix mac tools-pack tests on Windows 2026-05-07 15:12:32 +08:00
PerishCode 41330ae331 Merge remote-tracking branch 'origin/main' into chore/windows-package-optimization 2026-05-07 15:08:31 +08:00
shangxinyu1andGitHub 9b501f12a5 Support overriding the Codex executable path (#755)
* Support overriding the Codex executable path

* Replace save-as-template prompts with an in-app dialog

* Seed local packaged app config from workspace

* Fix packaged config and connection test overrides

* Keep tools-pack mac config seeding self-contained

* Require absolute CODEX_BIN overrides
2026-05-07 15:00:52 +08:00
PerishCode 3ed5efdf9d Use long-path removal for Windows uninstall 2026-05-07 14:41:29 +08:00
PerishCode c2413fd7c8 Fix system NSIS Persian language alias 2026-05-07 14:18:02 +08:00
PerishCode 92d7f270bf Improve Windows NSIS state logging 2026-05-07 13:51:57 +08:00
PerishCode c9b1e1a315 Fix Windows installer cleanup and preflight 2026-05-07 13:36:06 +08:00
PerishCode fa3bf99bd7 Fallback NSIS installer strings to English 2026-05-07 12:42:37 +08:00
PerishCode dab960eb28 Improve windows installer preflight prompts 2026-05-07 12:37:56 +08:00
PerishCode 44d53c38f1 Merge origin/main into windows package optimization 2026-05-07 12:18:28 +08:00
PerishCode 7110024db0 Optimize windows release beta cache layers 2026-05-07 11:03:43 +08:00
Jheison Martinez BolivarandGitHub 4368b8f163 feat(linux): add headless mode for install/start/stop operations (#686)
* feat(linux): add headless mode for install/start/stop operations

* docs(linux): document headless mode commands and usage

* refactor(linux-headless): write web-root.json instead of polling IPC for URL

* fix(linux-headless): fail start when web identity never appears instead of returning success

* docs(linux-headless): add use-case context and clarify launcher path dependency

* fix(linux-headless): ensure launcher, identity and shutdown align with tools-pack

- Bake OD_DATA_DIR into launcher so manual runs use the same paths as tools-pack
- Validate web-root.json fields before accepting to reject stale identity
- Remove web-root.json on successful stop
- Add IPC server for graceful STATUS/SHUTDOWN handling

* fix(linux-headless): create IPC server before writing web-root.json
2026-05-07 01:52:03 +08:00
576dfed9e1 feat: add accent color control and launcher for Open Design (#683)
* feat: add accent color control and launcher for Open Design

* fix: remove launcher binary from PR

* test: cover accent appearance edge cases

---------

Co-authored-by: ferasbusiness666 <ferasbusiness666@users.noreply.github.com>
2026-05-06 23:14:21 +08:00
PerishCode 156ce277f1 Cache Windows workspace build outputs 2026-05-06 22:49:51 +08:00
PerishCode 2d90d513d8 Stabilize Windows beta cache version keys 2026-05-06 22:26:09 +08:00
PerishCode d1a3cbce8a Improve Windows tools-pack cache keys 2026-05-06 21:58:18 +08:00
PerishCode ac2a7611fe Improve Windows installer namespace UX 2026-05-06 21:36:36 +08:00
PerishCode eebbc81978 Optimize Windows beta packaging 2026-05-06 20:51:21 +08:00
iulianandGitHub 80416b185a Diagnose missing Next package during tools-dev web startup (#675)
* fix(tools-dev): diagnose missing Next package

* fix(web): remove duplicate Ukrainian prompt labels
2026-05-06 20:45:41 +08:00
iulianandGitHub f880fd8c1d docs(tools-pack): fix Linux namespace env var (#670)
* docs(tools-pack): fix linux namespace env var

* fix(web): remove duplicate Ukrainian prompt labels
2026-05-06 20:11:40 +08:00
PerishCode eaf5102cec Move Windows NSIS smoke note to agents guide 2026-05-06 19:13:45 +08:00
PerishCode 28bc2bcf35 Document Windows NSIS smoke namespace limits 2026-05-06 19:12:26 +08:00
PerishCode a9e3e23fc3 Merge remote-tracking branch 'origin/main' into chore/windows-package-optimization
# Conflicts:
#	packages/contracts/esbuild.config.mjs
#	packages/contracts/package.json
#	scripts/guard.ts
#	tools/pack/src/win.ts
2026-05-06 18:51:12 +08:00
PerishCode 095c05cf0b Split Windows pack build modules 2026-05-06 18:37:39 +08:00
lefarcenandGitHub ae4a08773a chore(release): prepare 0.4.1 (#659)
- bump remaining monorepo package.json files to 0.4.1 after apps/packaged was already bumped in #637
- add CHANGELOG.md [0.4.1] - 2026-05-06 entry covering the startup hotfix and 19 merged PRs since 0.4.0:
  - Added: manual edit mode (#620), Cmd/Ctrl+P quick file switcher (#556), resizable chat panel (#563), PI status/cancel updates (#618), accessibility and RTL/Bidi craft modules (#587, #595), i18n structure checks (#608)
  - Changed: first-PR README links now surface help-wanted issues (#605)
  - Fixed: packaged contracts runtime exports (#577), packaged runtime beta gating (#637), ACP/MCP/agent fixes (#604, #612, #627), conversation error recovery (#623), native mac quit (#637)
  - Documentation/Internal: OD_DATA_DIR migration docs (#570), Simplified Chinese QUICKSTART (#578), zh-TW/ko README syncs (#586, #619), generated metrics (#592)

Release workflow validation runs after merge via release-stable.
2026-05-06 18:05:56 +08:00
PerishCode 1193a9c13e Cache Windows dir build outputs 2026-05-06 18:05:17 +08:00
czLandGitHub 3b6df849ce fix linux test path (#657) 2026-05-06 18:00:48 +08:00
PerishFireandGitHub f1cdb2844a test(e2e): gate beta packaged runtime (#637)
* test(e2e): gate beta mac packaged runtime

* test(e2e): separate ui automation layout

* test(e2e): move localized content coverage

* chore(release): prepare packaged 0.4.1 beta validation

* test(e2e): keep ui lane playwright-only

* fix(web): keep chat recoverable after conversation load failure

* fix(desktop): honor native mac quit
2026-05-06 17:44:29 +08:00
PerishCode 7b1ac31ef0 Split Windows tools-pack module 2026-05-06 17:14:04 +08:00
PerishCode 81cfb1afef Cache Electron-ready Windows app 2026-05-06 16:50:07 +08:00
PerishCode a74905bb32 Cache Windows workspace builds 2026-05-06 16:34:15 +08:00
PerishCode 9b11f03830 Cache Windows packaged build layers 2026-05-06 16:08:23 +08:00
PerishCode 641a85c7ed Add tools-pack cache foundation 2026-05-06 15:44:32 +08:00
PerishCode f478c50308 Prune Windows standalone duplicate Next 2026-05-06 15:06:03 +08:00
PerishCode 9b98714e04 Remove Windows bundled Node runtime 2026-05-06 13:29:39 +08:00
PerishCode e1b8795364 Prune Windows root Next payload 2026-05-06 12:37:26 +08:00
PerishCode 19956ee4e6 Optimize Windows packaged size pruning 2026-05-06 11:25:23 +08:00
iulianandGitHub 14a73d948b Fix packaged contracts runtime exports (#577)
* fix packaged contracts runtime exports

* fix(packaging): prepare contracts runtime exports on install
2026-05-06 09:11:35 +08:00
lefarcenandGitHub 74f1a18b71 fix(tools-pack): replace corepack with npx in linux container build (#558) 2026-05-06 00:05:22 +08:00
lefarcenandGitHub 963bbf2500 release: Open Design 0.4.0 (#454) 2026-05-05 23:39:40 +08:00
ChildhoodAndyandGitHub 009d7a5478 refactor(daemon): eliminate duplicate dist tree from two-tsconfig build (#553)
Move sidecar source under src/ so a single tsconfig produces all daemon
output. Removes the parallel dist/src/ tree that was emitted by
tsconfig.sidecar.json (it included src/**/*.ts to type-check the
`../src/server.js` cross-tree import).

Build now emits:
- dist/<flat>            (cli.js, server.js, app-version.js, ...)
- dist/sidecar/{index,server}.js

`dist/sidecar/server.js` reaches the main daemon via `../server.js`
instead of `../src/server.js`, so there is no second copy of the source
tree in the published tarball.

Background — issue #534 (already fixed by #537):
The packaged Settings → About panel showed 0.0.0 because the sidecar
chain loaded the duplicated `dist/src/app-version.js`, where the fixed
`new URL('../package.json', import.meta.url)` resolved to a non-existent
`dist/package.json`. #537 patched the symptom by walking parents until a
real `package.json` is found and by writing `appVersion` into the Linux
packaged config. Both stay in place — they're sound defenses — but the
underlying duplicate-emit was never addressed; any future relative
resource lookup (templates, schemas, prompts) anchored on
`import.meta.url` would have hit the same trap.

This change removes the trap.
2026-05-05 23:31:14 +08:00
PerishCode be166572fe Fix packaged contracts runtime build 2026-05-05 22:06:28 +08:00
cc6da191e8 fix(version): resolve daemon package.json from any compiled layout (#537)
Settings -> About used to display 0.0.0 in packaged builds because
`readCurrentAppVersionInfo` resolved `'../package.json'` relative to
`import.meta.url`, which only points at the daemon package root from the
flat CLI build (`dist/app-version.js`). The sidecar build emits
`dist/src/app-version.js`, where the same relative path lands on the
non-existent `dist/package.json`, so `readPackageMetadata` returned null
and the version fell back to APP_VERSION_FALLBACK.

Walk up from `import.meta.url` to find the nearest real `package.json`
instead, so the daemon reports its actual version regardless of whether
it runs from TypeScript source (tools-dev), the flat CLI dist, or the
nested sidecar dist used by the packaged desktop app. The OD_APP_VERSION
env still wins inside `resolveAppVersionInfo`, so callers that already
inject it (mac/win packagers) keep working.

Also write `appVersion` into the Linux packaged config so Linux follows
the same env-injection path as mac/win and stays consistent with the new
fallback resolution.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-05 22:02:05 +08:00
PerishCode 3c7876f769 Merge remote-tracking branch 'origin/main' into chore/windows-package-optimization 2026-05-05 20:23:47 +08:00
PerishCode 64b0d583a1 Optimize Windows packaged web output 2026-05-05 20:20:27 +08:00
PerishFireandGitHub bbdd4e84b5 chore: enforce test directory conventions (#496)
* chore: enforce test directory conventions

Move package, app, and tool tests out of src and add guard enforcement so source directories stay source-only.

* ci: use guard and package-scoped tests

Run the new repository guard in CI and keep test execution aligned with package-scoped commands after removing root aliases.

* ci: align stable release guard check

Use the new repository guard in stable release verification after replacing the residual-JS-only script.

* chore: tighten test layout enforcement

Enforce sibling tests directories, typecheck moved test suites with dedicated configs, and refresh remaining guidance that pointed at src-based tests.

* chore: clarify no-emit test tsconfigs

Explicitly disable declaration-only emit in test tsconfigs so review tooling sees they are no-emit typecheck configs.
2026-05-05 15:34:22 +08:00
PerishFireandGitHub 3935aeb421 Optimize packaged mac artifact size (#424)
* optimize mac package payload reporting

* optimize(pack): package standalone web runtime

* optimize(pack): default to standalone web runtime

* chore(release): bump beta base version

* fix(pack): compress mac artifacts and report packaged version

* fix(pack): preserve Next server fallback

* fix(pack): clarify standalone startup failures

* fix(release): gate beta platform builds

* fix(web): bind standalone backend to parent

* fix(pack): harden standalone and beta publishing
2026-05-05 10:37:19 +08:00