@ours.network/install 1.2.1-nightly.41 → 1.2.1-nightly.42

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schema": 1,
3
3
  "channel": "nightly",
4
- "installerVersion": "1.2.1-nightly.41",
4
+ "installerVersion": "1.2.1-nightly.42",
5
5
  "packages": {
6
6
  "@ours.network/sdk": {
7
7
  "version": "3.8.1-nightly.17",
@@ -4,7 +4,17 @@ import { tmpdir } from 'node:os';
4
4
  import { join } from 'node:path';
5
5
  import { runStateOperation } from './state-operation.mjs';
6
6
 
7
- const root = fs.mkdtempSync(join(tmpdir(), 'ours-notifications-recovery-'));
7
+ // The shipped state-operation service is read_only without a /tmp tmpfs, and
8
+ // retained Compose definitions cannot gain one. /dev/shm stays a writable
9
+ // in-memory mount there, so evidence never enters the stored-state volume.
10
+ function scratch() {
11
+ for (const base of [tmpdir(), '/dev/shm']) {
12
+ try { return fs.mkdtempSync(join(base, 'ours-notifications-recovery-')); }
13
+ catch (error) { if (!['EROFS', 'EACCES', 'ENOENT'].includes(error.code)) throw error; }
14
+ }
15
+ throw new Error('No writable private scratch directory for recovery evidence');
16
+ }
17
+ const root = scratch();
8
18
  fs.chmodSync(root, 0o700);
9
19
  try {
10
20
  const evidence = JSON.parse(fs.readFileSync(0, 'utf8'));
@@ -2,7 +2,7 @@
2
2
  "release": {
3
3
  "schema": 1,
4
4
  "channel": "nightly",
5
- "installerVersion": "1.2.1-nightly.41",
5
+ "installerVersion": "1.2.1-nightly.42",
6
6
  "packages": {
7
7
  "@ours.network/sdk": {
8
8
  "version": "3.8.1-nightly.17",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ours.network/install",
3
- "version": "1.2.1-nightly.41",
3
+ "version": "1.2.1-nightly.42",
4
4
  "private": false,
5
5
  "description": "The all-in-one ours.network installer: one shared daemon, MCP, cowork, Telegram, Fleet initialization, harness plugins, Human identity, progress UI, and guided next steps.",
6
6
  "type": "module",