cowork-os 0.3.75 → 0.3.79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.3.79] - 2026-02-14
11
+
12
+ ### Fixed
13
+ - **macOS install reliability carry-forward**: retained the 0.3.71 SIGKILL workaround for first-time users by documenting and reinforcing the `npm install --ignore-scripts` + `npm run --prefix node_modules/cowork-os setup` flow.
14
+ - **Release workflow hardening**: ensured the macOS release job always creates or reopens the GitHub release as a draft before packaging so `electron-builder` can attach DMG/zip assets without immutable-release failures.
15
+ - **Version alignment**: published metadata now identifies this release as `0.3.79` with the same installability and packaging reliability changes.
16
+
17
+ ## [0.3.78] - 2026-02-14
18
+
19
+ ### Fixed
20
+ - **Release build hardening**: restored the missing `src/electron/agent/executor-helpers.ts` source file so builds can resolve `executor.ts` imports after packaging from a fresh clone.
21
+ - **TypeScript strictness fixes**: fixed implicit `any` errors in `executor.ts` that could break release builds on CI.
22
+ - **TLS fingerprint callback typing fix**: aligned `remote-client.ts` callback signature/type usage with current `ws` client typings to satisfy strict build checks.
23
+
24
+ ## [0.3.77] - 2026-02-14
25
+
26
+ ### Fixed
27
+ - **Setup script safety**: `npm run setup` in a fresh install now runs dependency reinstall with `--ignore-scripts` so optional postinstall hooks like `electron-winstaller` cannot SIGKILL the process during first-run recovery on macOS.
28
+ - **Install reliability carry-forward**: this patch keeps the documented `/tmp` first-install sequence intact while ensuring setup stays stable across npm install layouts.
29
+ - **Version alignment**: published metadata is now aligned on `0.3.77` so the installability fix is included in both npm and GitHub release tracks.
30
+
31
+ ## [0.3.76] - 2026-02-14
32
+
33
+ ### Fixed
34
+ - **Installability restoration**: pinned `electron` to `40.2.1` so first-time installs from `npm` pull the known-good Electron patch and avoid `SIGKILL` during `node_modules/electron/install.js` on affected macOS environments.
35
+ - **README alignment**: clarified the first-time CLI install path to reflect the exact commands users should run from a fresh temporary folder.
36
+
10
37
  ## [0.3.75] - 2026-02-14
11
38
 
12
39
  ### Fixed
@@ -521,6 +548,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
521
548
 
522
549
  | Version | Date | Highlights |
523
550
  |---------|------|------------|
551
+ | 0.3.79 | 2026-02-14 | Retained the 0.3.71 SIGKILL workaround and hardened draft release preparation so desktop assets upload reliably |
552
+ | 0.3.78 | 2026-02-14 | Fixes missing release-time `executor-helpers` source and remaining strict-mode TypeScript blockers |
553
+ | 0.3.77 | 2026-02-14 | Skips lifecycle scripts during setup reinstall and prevents setup-time SIGKILL in user-first installs |
554
+ | 0.3.76 | 2026-02-14 | Pinned Electron to 40.2.1 for first-run installability and aligned README CLI flow |
524
555
  | 0.3.75 | 2026-02-14 | Restored 0.3.71-compatible Electron lockfile for installability and release confidence |
525
556
  | 0.3.73 | 2026-02-14 | Release automation hardening and task/workspace validation fixes |
526
557
  | 0.3.72 | 2026-02-14 | Session-based temp workspaces, autonomous execution mode, safer completion validation |
@@ -533,7 +564,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
533
564
  | 0.1.0 | 2025-01-24 | First public release with core features |
534
565
  | 0.0.1 | 2025-01-20 | Initial development setup |
535
566
 
536
- [Unreleased]: https://github.com/CoWork-OS/CoWork-OS/compare/v0.3.75...HEAD
567
+ [Unreleased]: https://github.com/CoWork-OS/CoWork-OS/compare/v0.3.79...HEAD
568
+ [0.3.79]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.79
569
+ [0.3.78]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.78
570
+ [0.3.77]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.77
571
+ [0.3.76]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.76
537
572
  [0.3.75]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.75
538
573
  [0.3.73]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.73
539
574
  [0.3.72]: https://github.com/CoWork-OS/CoWork-OS/releases/tag/v0.3.72
package/README.md CHANGED
@@ -36,11 +36,11 @@ Your AI needs a secure home. CoWork OS provides the runtime, security layers, an
36
36
  | **Security-First** | 2800+ unit tests, configurable guardrails, approval workflows, gateway hardening |
37
37
  | **Local-First** | Your data stays on your machine. BYOK (Bring Your Own Key) |
38
38
 
39
- ### What’s new in 0.3.75
39
+ ### What’s new in 0.3.79
40
40
 
41
- - **Release pipeline reliability**: restored the working Electron patch-level lock from `v0.3.71` so install flow remains reliable in default `npm install` paths.
42
- - **Default install resilience**: default `npm install` behavior is now usable again with fewer SIGKILL exits during `electron/install.js` on macOS low-memory installs.
43
- - **Release + CI alignment**: kept installability changes aligned with the existing release publish workflow and release notes process.
41
+ - **0.3.71-style SIGKILL workaround carried forward**: the README macOS first-install flow (`npm install --ignore-scripts ...` then `npm run --prefix node_modules/cowork-os setup`) is now the officially documented path and includes retry/backoff handling for native setup SIGKILLs.
42
+ - **Releaseability alignment**: this release includes the release workflow hardening that guarantees a draft release exists before Electron packaging, so desktop assets can be attached reliably on each tag.
43
+ - **Version sync**: bumped to `0.3.79` so the fix is published for npm and GitHub releases.
44
44
 
45
45
  > **Status**: macOS desktop app + headless/server mode (Linux/VPS). Cross-platform desktop support planned.
46
46
 
@@ -67,7 +67,10 @@ Use this flow to test like a first-time user in a clean folder:
67
67
  # Install into a local folder
68
68
  mkdir -p /tmp/cowork-run
69
69
  cd /tmp/cowork-run
70
- npm install cowork-os@latest --no-audit --no-fund
70
+ npm install --ignore-scripts cowork-os@latest --no-audit --no-fund
71
+
72
+ # Prepare native runtime (Electron binary + native module cache)
73
+ npm run --prefix node_modules/cowork-os setup
71
74
 
72
75
  # Ensure no previously running CoWork instance is active
73
76
  pkill -f '/cowork-os' || true
@@ -76,20 +79,24 @@ pkill -f '/cowork-os' || true
76
79
  npx cowork-os
77
80
  ```
78
81
 
82
+ This is the first install path users should try on macOS:
83
+
84
+ > If you run plain `npm install cowork-os@latest`, macOS can still intermittently kill lifecycle scripts during dependency extraction. Use the `--ignore-scripts` flow above and `npm run --prefix node_modules/cowork-os setup` every time before first launch.
85
+
79
86
  #### Install reliability notes (macOS / low-memory environments)
80
87
 
81
- - If install fails with `SIGKILL` during `node_modules/electron/install.js`, use a two-step install:
82
- - `npm install --ignore-scripts cowork-os@latest --no-audit --no-fund`
83
- - `npm run setup` (from the install directory) before launching the CLI
88
+ - If setup is interrupted by `SIGKILL`, close other memory-heavy apps and rerun:
89
+ - `npm run --prefix node_modules/cowork-os setup`
84
90
  - For local package testing, use the same `--ignore-scripts` flow with the tarball:
85
91
  - `npm init -y`
86
92
  - `npm install --ignore-scripts /path/to/cowork-os-<version>.tgz`
93
+ - `npm run --prefix node_modules/cowork-os setup`
87
94
  - If you already have a global install, verify with `coworkd-node --version` and avoid launching without dependency setup on first run.
88
95
 
89
96
  You can also install globally and launch directly:
90
97
 
91
98
  ```bash
92
- npm install -g cowork-os
99
+ npm install -g --ignore-scripts --no-audit --no-fund cowork-os
93
100
 
94
101
  # Optional: verify installed version
95
102
  npm list -g cowork-os --depth=0
package/bin/cowork.js CHANGED
@@ -152,13 +152,27 @@ function prepareAndLaunchApp() {
152
152
  process.exit(1);
153
153
  }
154
154
 
155
- const electronBinary = resolveElectronBinary();
155
+ const launchAfterSetup = () => {
156
+ const electronBinary = resolveElectronBinary();
157
+ if (!electronBinary) {
158
+ console.error(
159
+ '[cowork-os] Electron runtime is still missing after setup. Reinstall with:\n' +
160
+ ' npm install --ignore-scripts --no-audit --no-fund cowork-os@latest\n'
161
+ );
162
+ process.exit(1);
163
+ }
164
+ if (isBetterSqliteReady(electronBinary)) {
165
+ launchApp(electronBinary);
166
+ return;
167
+ }
168
+ runNativeSetup(() => launchAfterSetup());
169
+ };
170
+
171
+ let electronBinary = resolveElectronBinary();
156
172
  if (!electronBinary) {
157
- console.error(
158
- '[cowork-os] Electron runtime is missing. Reinstall with:\n' +
159
- ' npm install cowork-os@latest\n'
160
- );
161
- process.exit(1);
173
+ console.log('[cowork-os] Electron runtime is missing. Running setup...');
174
+ runNativeSetup(() => launchAfterSetup());
175
+ return;
162
176
  }
163
177
 
164
178
  if (isBetterSqliteReady(electronBinary)) {