@volter/world-runtime 3.0.127 → 3.0.129

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.
@@ -0,0 +1,194 @@
1
+ {
2
+ "sourceCommit": "e8d4b55fbacecd1fd504ec4b6393c1f9cf4dab58",
3
+ "sourceDiffSha256": "ee7375ee8c1e6f09d3410e0482d74c944739b9ff8f1d04ef544040166dd6ecef",
4
+ "mode": "source-mode reopened final platform slate with prepared tutorial packages",
5
+ "node": "v23.9.0",
6
+ "Bun": "1.4.2",
7
+ "outerRuntime": "3.0.127",
8
+ "command": [
9
+ "bun",
10
+ "test",
11
+ "apps/www/src/build.test.ts",
12
+ "apps/www/src/twins.test.ts",
13
+ "packages/cli/src/handlers-in-repo.test.ts",
14
+ "packages/cli/src/init-selection.test.ts",
15
+ "packages/cli/src/journeys/tutorial-runner.test.ts",
16
+ "packages/cli/src/journeys/tutorials.test.ts",
17
+ "packages/cli/src/sdk.test.ts",
18
+ "packages/cli/src/serve-shutdown.test.ts",
19
+ "packages/twin-standard/src/browser-assessment.test.ts",
20
+ "packages/twin-standard/src/conformance-building.test.ts",
21
+ "packages/twin-standard/src/conformance-stream.test.ts",
22
+ "packages/twin-standard/src/protocol-3.test.ts",
23
+ "packages/twin-standard/src/spec-ir-client.test.ts",
24
+ "packages/twin-standard/src/spec-ir-envelope.test.ts",
25
+ "packages/twin-standard/src/walk/behavior-journey.test.ts",
26
+ "packages/twin-standard/src/walk/journey-kit.test.ts",
27
+ "packages/twin-standard/src/walk/pinned-world-keys.test.ts",
28
+ "packages/twin-standard/src/walk/secure-served.test.ts",
29
+ "packages/twin-standard/src/walk/shape.test.ts",
30
+ "packages/twin-standard/src/walk/sse-example.test.ts",
31
+ "packages/world-core/src/action-projection.test.ts",
32
+ "packages/world-core/src/actions.test.ts",
33
+ "packages/world-core/src/ancestry.test.ts",
34
+ "packages/world-core/src/app-fetch.test.ts",
35
+ "packages/world-core/src/args.test.ts",
36
+ "packages/world-core/src/attestation.test.ts",
37
+ "packages/world-core/src/auth-wires.test.ts",
38
+ "packages/world-core/src/blob-store.test.ts",
39
+ "packages/world-core/src/changeset-rebase.test.ts",
40
+ "packages/world-core/src/changeset.test.ts",
41
+ "packages/world-core/src/derived-assessment.test.ts",
42
+ "packages/world-core/src/derived-git-isolation.test.ts",
43
+ "packages/world-core/src/derived-real-graphql.test.ts",
44
+ "packages/world-core/src/derived-real.test.ts",
45
+ "packages/world-core/src/derived-refresh.test.ts",
46
+ "packages/world-core/src/derived-write.test.ts",
47
+ "packages/world-core/src/emit.test.ts",
48
+ "packages/world-core/src/exchange.test.ts",
49
+ "packages/world-core/src/executor.test.ts",
50
+ "packages/world-core/src/file-path.test.ts",
51
+ "packages/world-core/src/generation-fault.test.ts",
52
+ "packages/world-core/src/git/git-plane.test.ts",
53
+ "packages/world-core/src/history-concurrency.test.ts",
54
+ "packages/world-core/src/history.test.ts",
55
+ "packages/world-core/src/inject.test.ts",
56
+ "packages/world-core/src/lifecycle.test.ts",
57
+ "packages/world-core/src/lock.test.ts",
58
+ "packages/world-core/src/log-tail.test.ts",
59
+ "packages/world-core/src/machines.test.ts",
60
+ "packages/world-core/src/merge-preservation.test.ts",
61
+ "packages/world-core/src/observe.test.ts",
62
+ "packages/world-core/src/openai-wire-sse.test.ts",
63
+ "packages/world-core/src/own-fields.test.ts",
64
+ "packages/world-core/src/pack-fetch-front.test.ts",
65
+ "packages/world-core/src/placeholder-remote.test.ts",
66
+ "packages/world-core/src/private-transport.test.ts",
67
+ "packages/world-core/src/proxy.test.ts",
68
+ "packages/world-core/src/rateBudget.test.ts",
69
+ "packages/world-core/src/redis.test.ts",
70
+ "packages/world-core/src/references.test.ts",
71
+ "packages/world-core/src/request-scope.test.ts",
72
+ "packages/world-core/src/scenario.test.ts",
73
+ "packages/world-core/src/scrub.test.ts",
74
+ "packages/world-core/src/serve-http.test.ts",
75
+ "packages/world-core/src/serve.test.ts",
76
+ "packages/world-core/src/shared-blob-index.test.ts",
77
+ "packages/world-core/src/state-refusal.test.ts",
78
+ "packages/world-core/src/state-system.test.ts",
79
+ "packages/world-core/src/stateDir.test.ts",
80
+ "packages/world-core/src/storage.test.ts",
81
+ "packages/world-core/src/trace-context.test.ts",
82
+ "packages/world-core/src/tree-changes.test.ts",
83
+ "packages/world-core/src/twin-fetch.test.ts",
84
+ "packages/world-core/src/wire-variants.test.ts",
85
+ "packages/world-core/src/world-clock.test.ts",
86
+ "packages/world-core/src/world-store.test.ts",
87
+ "packages/world-core/src/world-time.test.ts",
88
+ "packages/world-runtime/src/ancestry.test.ts",
89
+ "packages/world-runtime/src/app-hosts.test.ts",
90
+ "packages/world-runtime/src/app-url.test.ts",
91
+ "packages/world-runtime/src/attach.test.ts",
92
+ "packages/world-runtime/src/boot-interrupt.test.ts",
93
+ "packages/world-runtime/src/boot-recovery.test.ts",
94
+ "packages/world-runtime/src/branch-managed-db.test.ts",
95
+ "packages/world-runtime/src/branch.test.ts",
96
+ "packages/world-runtime/src/ca-trust.test.ts",
97
+ "packages/world-runtime/src/catalog-publishers.test.ts",
98
+ "packages/world-runtime/src/changeset.test.ts",
99
+ "packages/world-runtime/src/cleanup.test.ts",
100
+ "packages/world-runtime/src/cli-help.test.ts",
101
+ "packages/world-runtime/src/clock.test.ts",
102
+ "packages/world-runtime/src/colocated-world.test.ts",
103
+ "packages/world-runtime/src/configs.test.ts",
104
+ "packages/world-runtime/src/consumers.test.ts",
105
+ "packages/world-runtime/src/covers.test.ts",
106
+ "packages/world-runtime/src/cross-pack-read.test.ts",
107
+ "packages/world-runtime/src/doctor-external.test.ts",
108
+ "packages/world-runtime/src/down-honesty.test.ts",
109
+ "packages/world-runtime/src/env-output.test.ts",
110
+ "packages/world-runtime/src/external-service.test.ts",
111
+ "packages/world-runtime/src/fixture-env.test.ts",
112
+ "packages/world-runtime/src/history.test.ts",
113
+ "packages/world-runtime/src/host-isolation.integration.test.ts",
114
+ "packages/world-runtime/src/host.test.ts",
115
+ "packages/world-runtime/src/infra-cli.test.ts",
116
+ "packages/world-runtime/src/infra-own-up.test.ts",
117
+ "packages/world-runtime/src/init.test.ts",
118
+ "packages/world-runtime/src/inject-map.test.ts",
119
+ "packages/world-runtime/src/lifecycle-finalization.test.ts",
120
+ "packages/world-runtime/src/managed-database.test.ts",
121
+ "packages/world-runtime/src/own-bins.test.ts",
122
+ "packages/world-runtime/src/package-service.test.ts",
123
+ "packages/world-runtime/src/path-remote.test.ts",
124
+ "packages/world-runtime/src/pglite-backing.test.ts",
125
+ "packages/world-runtime/src/placeholder.test.ts",
126
+ "packages/world-runtime/src/prerequisites.test.ts",
127
+ "packages/world-runtime/src/process-groups.test.ts",
128
+ "packages/world-runtime/src/project-inspect.test.ts",
129
+ "packages/world-runtime/src/proxy-lifetime.test.ts",
130
+ "packages/world-runtime/src/purge.test.ts",
131
+ "packages/world-runtime/src/redirect-proxy.test.ts",
132
+ "packages/world-runtime/src/redis-backing.test.ts",
133
+ "packages/world-runtime/src/reflect.test.ts",
134
+ "packages/world-runtime/src/resource-filesystems.test.ts",
135
+ "packages/world-runtime/src/resources.test.ts",
136
+ "packages/world-runtime/src/root.test.ts",
137
+ "packages/world-runtime/src/run-task.test.ts",
138
+ "packages/world-runtime/src/runtime-concurrency.test.ts",
139
+ "packages/world-runtime/src/runtime-env.test.ts",
140
+ "packages/world-runtime/src/runtime-extras.test.ts",
141
+ "packages/world-runtime/src/runtime-lifecycle.test.ts",
142
+ "packages/world-runtime/src/runtime-sealed.test.ts",
143
+ "packages/world-runtime/src/runtime-share.test.ts",
144
+ "packages/world-runtime/src/serve-export-contract.test.ts",
145
+ "packages/world-runtime/src/serve.test.ts",
146
+ "packages/world-runtime/src/served-world.test.ts",
147
+ "packages/world-runtime/src/share-cli.test.ts",
148
+ "packages/world-runtime/src/storage-capacity.test.ts",
149
+ "packages/world-runtime/src/tail.test.ts",
150
+ "packages/world-runtime/src/tcp-port.test.ts",
151
+ "packages/world-runtime/src/url-cli.test.ts",
152
+ "packages/world-runtime/src/windows-hide.test.ts",
153
+ "packages/world-runtime/src/world-view.test.ts"
154
+ ],
155
+ "concurrentWork": "Selected Slack release qualification/publication runs remotely; local read-only publication observations may run. Other actors work is not inspected.",
156
+ "concurrencySupplement": "p3-reopened-final-concurrency.json",
157
+ "measuredAt": "2026-10-07T18:01:44.185924+00:00",
158
+ "test": "volter-world changeset replay > round-trips a session into a FRESH world: same projections, then a no-op re-replay",
159
+ "defaultDeadlineMs": 5000,
160
+ "observedElapsedMs": 5821.69,
161
+ "firstWorldBootElapsedMs": 4470,
162
+ "outcome": "Default deadline expired while the second World was starting; no replay assertion completed.",
163
+ "log": "p3-reopened-final-platform-tests.log",
164
+ "reproduce": "Run bun test packages/world-runtime/src/changeset.test.ts inside a fresh task-owned World; full-slate conditions and command are retained above.",
165
+ "selectedDeadlineMs": 20000,
166
+ "commandNormalization": "The absolute Bun executable is shown as bun; the task-owned World wrapper is recorded in the source receipt. Test arguments are unchanged.",
167
+ "scopedRetry": {
168
+ "mode": "Six affected final files with only the self-host tutorial selected; unchanged replay assertions",
169
+ "sourceCommit": "e8d4b55fbacecd1fd504ec4b6393c1f9cf4dab58",
170
+ "Bun": "1.4.2",
171
+ "node": "v23.9.0",
172
+ "outerRuntime": "3.0.127",
173
+ "command": [
174
+ "bun",
175
+ "test",
176
+ "packages/world-runtime/src/root.test.ts",
177
+ "packages/world-runtime/src/changeset.test.ts",
178
+ "packages/world-core/src/stateDir.test.ts",
179
+ "packages/world-core/src/derived-real-graphql.test.ts",
180
+ "packages/world-core/src/derived-real.test.ts",
181
+ "packages/cli/src/journeys/tutorials.test.ts"
182
+ ],
183
+ "environment": {
184
+ "VOLTER_FULL_RUN": "1",
185
+ "TUTORIAL": "self-host-the-platform",
186
+ "TUTORIAL_TRACE": "1",
187
+ "TUTORIAL_KEEP": "1",
188
+ "TMPDIR": "Task-owned .volter/tutorial-temp"
189
+ },
190
+ "concurrentWork": "Core TypeScript follow-up and read-only repository observations",
191
+ "observedElapsedMs": 2494.08,
192
+ "outcome": "Replay assertions and no-op re-replay passed; self-host tutorial still failed and was retried separately after its manifest paths were corrected."
193
+ }
194
+ }
@@ -1,5 +1,6 @@
1
1
  import { spawn } from 'node:child_process';
2
2
  import { readFileSync } from 'node:fs';
3
+ import { join } from 'node:path';
3
4
 
4
5
  // Retain the existing 1000 ms inspection ceiling, not a new timeout chosen from one sample.
5
6
  // Measured 2026-10-03 on shared Darwin 25.4.0 ARM64, Bun 1.3.11 (process.version
@@ -8,10 +9,33 @@ import { readFileSync } from 'node:fs';
8
9
  // TZ=UTC took 9.26 ms from spawn to close; time printed real/user/sys 0.00 s.
9
10
  // This includes the time wrapper/event-loop overhead, not an isolated benchmark.
10
11
  // Full command/output: cookbook/calcom/output/held-backing-lifecycle.txt.
12
+ // Windows, measured 2026-10-07 on Windows 11 Home 10.0.26200 x64 (volter-desktop, a livestream
13
+ // running, CPU load 30%), Node v24.18.0, parent e8d4b55f plus this change: `await processBirth(process.pid)`
14
+ // from this module, timed with performance.now() around the await, took 237-319 ms over 10
15
+ // sequential runs, at most 298 ms with 4 awaited at once and at most 424 ms with 8.
11
16
  const BIRTH_LOOKUP_MS = 1000;
17
+ /** The command that prints a pid's birth, and how its output reads. Windows has no `ps` and no /proc: its birth is the
18
+ * process's creation time (GetProcessTimes, a FILETIME of 100 ns ticks in UTC, so neither the caller's zone nor its
19
+ * locale changes it), read through .NET by the Windows PowerShell every Windows 10 and 11 install ships. */
20
+ function birthProbe(pid) {
21
+ if (process.platform === 'win32') {
22
+ return {
23
+ command: join(process.env.SystemRoot ?? 'C:\\Windows', 'System32', 'WindowsPowerShell', 'v1.0', 'powershell.exe'),
24
+ args: ['-NoLogo', '-NoProfile', '-NonInteractive', '-Command', `[Diagnostics.Process]::GetProcessById(${pid}).StartTime.ToFileTimeUtc()`],
25
+ read: output => (/^\d+$/.test(output) ? `filetime ${output}` : undefined),
26
+ };
27
+ }
28
+ return {
29
+ command: 'ps', args: ['-o', 'pid=,lstart=', '-p', String(pid)],
30
+ read: output => {
31
+ const match = /^\s*(\d+)\s+(.+?)\s*$/.exec(output);
32
+ return match && Number(match[1]) === pid ? match[2] : undefined;
33
+ },
34
+ };
35
+ }
12
36
  /** No subprocess on Linux; elsewhere the lookup never blocks the lifecycle event loop. */
13
37
  export async function processBirth(pid) {
14
- if (process.platform === 'win32') return undefined;
38
+ if (!Number.isInteger(pid) || pid <= 0) return undefined; // a pid enters a probe's command only as an integer
15
39
  if (process.platform === 'linux') {
16
40
  try {
17
41
  const stat = readFileSync(`/proc/${pid}/stat`, 'utf8');
@@ -19,13 +43,14 @@ export async function processBirth(pid) {
19
43
  return /^\d+$/.test(tick ?? '') ? `tick ${tick}` : undefined;
20
44
  } catch { return undefined; }
21
45
  }
46
+ const probe = birthProbe(pid);
22
47
  return new Promise(resolve => {
23
48
  // A probe that cannot run is a birth unknown, never a lifecycle failure: spawn throws synchronously where the
24
49
  // process may not exec `ps` at all (setuid root on macOS, which a sandbox-exec profile refuses: EPERM), and reports
25
50
  // other failures as 'error' (below). Either way the identity is the pid without a start time.
26
51
  let child;
27
52
  try {
28
- child = spawn('ps', ['-o', 'pid=,lstart=', '-p', String(pid)], {
53
+ child = spawn(probe.command, probe.args, {
29
54
  windowsHide: true, stdio: ['ignore', 'pipe', 'ignore'],
30
55
  env: { ...process.env, LC_ALL: 'C', LANG: 'C', TZ: 'UTC' },
31
56
  });
@@ -42,10 +67,7 @@ export async function processBirth(pid) {
42
67
  }, BIRTH_LOOKUP_MS);
43
68
  child.stdout.on('data', chunk => { output += chunk; });
44
69
  child.once('error', () => finish(undefined));
45
- child.once('close', code => {
46
- const match = /^\s*(\d+)\s+(.+?)\s*$/.exec(output.trim());
47
- finish(code === 0 && match && Number(match[1]) === pid ? match[2] : undefined);
48
- });
70
+ child.once('close', code => finish(code === 0 ? probe.read(output.trim()) : undefined));
49
71
  });
50
72
  }
51
73
  /** Capture at spawn for durable ownership, never when retrying a retained PID. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volter/world-runtime",
3
- "version": "3.0.127",
3
+ "version": "3.0.129",
4
4
  "description": "World configs for twins: boot named local runtimes, allocate ports, generate world.env/instance.json, and run apps against fake-key twin worlds.",
5
5
  "keywords": [
6
6
  "twin",
@@ -70,14 +70,14 @@
70
70
  "node": ">=22.3"
71
71
  },
72
72
  "peerDependencies": {
73
- "@volter/world-core": "3.0.127",
74
- "@volter/world-console": "3.0.122"
73
+ "@volter/world-core": "3.0.129",
74
+ "@volter/world-console": "3.0.124"
75
75
  },
76
76
  "dependencies": {
77
77
  "@electric-sql/pglite": "0.5.8",
78
78
  "@electric-sql/pglite-pgvector": "0.0.9",
79
79
  "@volter/world-access": "3.0.1",
80
- "@volter/world-core": "3.0.127",
80
+ "@volter/world-core": "3.0.129",
81
81
  "mongodb": "~6.20.0",
82
82
  "pg-gateway": "0.3.0-beta.4",
83
83
  "smol-toml": "^1.8.0",
@@ -0,0 +1,194 @@
1
+ {
2
+ "sourceCommit": "e8d4b55fbacecd1fd504ec4b6393c1f9cf4dab58",
3
+ "sourceDiffSha256": "ee7375ee8c1e6f09d3410e0482d74c944739b9ff8f1d04ef544040166dd6ecef",
4
+ "mode": "source-mode reopened final platform slate with prepared tutorial packages",
5
+ "node": "v23.9.0",
6
+ "Bun": "1.4.2",
7
+ "outerRuntime": "3.0.127",
8
+ "command": [
9
+ "bun",
10
+ "test",
11
+ "apps/www/src/build.test.ts",
12
+ "apps/www/src/twins.test.ts",
13
+ "packages/cli/src/handlers-in-repo.test.ts",
14
+ "packages/cli/src/init-selection.test.ts",
15
+ "packages/cli/src/journeys/tutorial-runner.test.ts",
16
+ "packages/cli/src/journeys/tutorials.test.ts",
17
+ "packages/cli/src/sdk.test.ts",
18
+ "packages/cli/src/serve-shutdown.test.ts",
19
+ "packages/twin-standard/src/browser-assessment.test.ts",
20
+ "packages/twin-standard/src/conformance-building.test.ts",
21
+ "packages/twin-standard/src/conformance-stream.test.ts",
22
+ "packages/twin-standard/src/protocol-3.test.ts",
23
+ "packages/twin-standard/src/spec-ir-client.test.ts",
24
+ "packages/twin-standard/src/spec-ir-envelope.test.ts",
25
+ "packages/twin-standard/src/walk/behavior-journey.test.ts",
26
+ "packages/twin-standard/src/walk/journey-kit.test.ts",
27
+ "packages/twin-standard/src/walk/pinned-world-keys.test.ts",
28
+ "packages/twin-standard/src/walk/secure-served.test.ts",
29
+ "packages/twin-standard/src/walk/shape.test.ts",
30
+ "packages/twin-standard/src/walk/sse-example.test.ts",
31
+ "packages/world-core/src/action-projection.test.ts",
32
+ "packages/world-core/src/actions.test.ts",
33
+ "packages/world-core/src/ancestry.test.ts",
34
+ "packages/world-core/src/app-fetch.test.ts",
35
+ "packages/world-core/src/args.test.ts",
36
+ "packages/world-core/src/attestation.test.ts",
37
+ "packages/world-core/src/auth-wires.test.ts",
38
+ "packages/world-core/src/blob-store.test.ts",
39
+ "packages/world-core/src/changeset-rebase.test.ts",
40
+ "packages/world-core/src/changeset.test.ts",
41
+ "packages/world-core/src/derived-assessment.test.ts",
42
+ "packages/world-core/src/derived-git-isolation.test.ts",
43
+ "packages/world-core/src/derived-real-graphql.test.ts",
44
+ "packages/world-core/src/derived-real.test.ts",
45
+ "packages/world-core/src/derived-refresh.test.ts",
46
+ "packages/world-core/src/derived-write.test.ts",
47
+ "packages/world-core/src/emit.test.ts",
48
+ "packages/world-core/src/exchange.test.ts",
49
+ "packages/world-core/src/executor.test.ts",
50
+ "packages/world-core/src/file-path.test.ts",
51
+ "packages/world-core/src/generation-fault.test.ts",
52
+ "packages/world-core/src/git/git-plane.test.ts",
53
+ "packages/world-core/src/history-concurrency.test.ts",
54
+ "packages/world-core/src/history.test.ts",
55
+ "packages/world-core/src/inject.test.ts",
56
+ "packages/world-core/src/lifecycle.test.ts",
57
+ "packages/world-core/src/lock.test.ts",
58
+ "packages/world-core/src/log-tail.test.ts",
59
+ "packages/world-core/src/machines.test.ts",
60
+ "packages/world-core/src/merge-preservation.test.ts",
61
+ "packages/world-core/src/observe.test.ts",
62
+ "packages/world-core/src/openai-wire-sse.test.ts",
63
+ "packages/world-core/src/own-fields.test.ts",
64
+ "packages/world-core/src/pack-fetch-front.test.ts",
65
+ "packages/world-core/src/placeholder-remote.test.ts",
66
+ "packages/world-core/src/private-transport.test.ts",
67
+ "packages/world-core/src/proxy.test.ts",
68
+ "packages/world-core/src/rateBudget.test.ts",
69
+ "packages/world-core/src/redis.test.ts",
70
+ "packages/world-core/src/references.test.ts",
71
+ "packages/world-core/src/request-scope.test.ts",
72
+ "packages/world-core/src/scenario.test.ts",
73
+ "packages/world-core/src/scrub.test.ts",
74
+ "packages/world-core/src/serve-http.test.ts",
75
+ "packages/world-core/src/serve.test.ts",
76
+ "packages/world-core/src/shared-blob-index.test.ts",
77
+ "packages/world-core/src/state-refusal.test.ts",
78
+ "packages/world-core/src/state-system.test.ts",
79
+ "packages/world-core/src/stateDir.test.ts",
80
+ "packages/world-core/src/storage.test.ts",
81
+ "packages/world-core/src/trace-context.test.ts",
82
+ "packages/world-core/src/tree-changes.test.ts",
83
+ "packages/world-core/src/twin-fetch.test.ts",
84
+ "packages/world-core/src/wire-variants.test.ts",
85
+ "packages/world-core/src/world-clock.test.ts",
86
+ "packages/world-core/src/world-store.test.ts",
87
+ "packages/world-core/src/world-time.test.ts",
88
+ "packages/world-runtime/src/ancestry.test.ts",
89
+ "packages/world-runtime/src/app-hosts.test.ts",
90
+ "packages/world-runtime/src/app-url.test.ts",
91
+ "packages/world-runtime/src/attach.test.ts",
92
+ "packages/world-runtime/src/boot-interrupt.test.ts",
93
+ "packages/world-runtime/src/boot-recovery.test.ts",
94
+ "packages/world-runtime/src/branch-managed-db.test.ts",
95
+ "packages/world-runtime/src/branch.test.ts",
96
+ "packages/world-runtime/src/ca-trust.test.ts",
97
+ "packages/world-runtime/src/catalog-publishers.test.ts",
98
+ "packages/world-runtime/src/changeset.test.ts",
99
+ "packages/world-runtime/src/cleanup.test.ts",
100
+ "packages/world-runtime/src/cli-help.test.ts",
101
+ "packages/world-runtime/src/clock.test.ts",
102
+ "packages/world-runtime/src/colocated-world.test.ts",
103
+ "packages/world-runtime/src/configs.test.ts",
104
+ "packages/world-runtime/src/consumers.test.ts",
105
+ "packages/world-runtime/src/covers.test.ts",
106
+ "packages/world-runtime/src/cross-pack-read.test.ts",
107
+ "packages/world-runtime/src/doctor-external.test.ts",
108
+ "packages/world-runtime/src/down-honesty.test.ts",
109
+ "packages/world-runtime/src/env-output.test.ts",
110
+ "packages/world-runtime/src/external-service.test.ts",
111
+ "packages/world-runtime/src/fixture-env.test.ts",
112
+ "packages/world-runtime/src/history.test.ts",
113
+ "packages/world-runtime/src/host-isolation.integration.test.ts",
114
+ "packages/world-runtime/src/host.test.ts",
115
+ "packages/world-runtime/src/infra-cli.test.ts",
116
+ "packages/world-runtime/src/infra-own-up.test.ts",
117
+ "packages/world-runtime/src/init.test.ts",
118
+ "packages/world-runtime/src/inject-map.test.ts",
119
+ "packages/world-runtime/src/lifecycle-finalization.test.ts",
120
+ "packages/world-runtime/src/managed-database.test.ts",
121
+ "packages/world-runtime/src/own-bins.test.ts",
122
+ "packages/world-runtime/src/package-service.test.ts",
123
+ "packages/world-runtime/src/path-remote.test.ts",
124
+ "packages/world-runtime/src/pglite-backing.test.ts",
125
+ "packages/world-runtime/src/placeholder.test.ts",
126
+ "packages/world-runtime/src/prerequisites.test.ts",
127
+ "packages/world-runtime/src/process-groups.test.ts",
128
+ "packages/world-runtime/src/project-inspect.test.ts",
129
+ "packages/world-runtime/src/proxy-lifetime.test.ts",
130
+ "packages/world-runtime/src/purge.test.ts",
131
+ "packages/world-runtime/src/redirect-proxy.test.ts",
132
+ "packages/world-runtime/src/redis-backing.test.ts",
133
+ "packages/world-runtime/src/reflect.test.ts",
134
+ "packages/world-runtime/src/resource-filesystems.test.ts",
135
+ "packages/world-runtime/src/resources.test.ts",
136
+ "packages/world-runtime/src/root.test.ts",
137
+ "packages/world-runtime/src/run-task.test.ts",
138
+ "packages/world-runtime/src/runtime-concurrency.test.ts",
139
+ "packages/world-runtime/src/runtime-env.test.ts",
140
+ "packages/world-runtime/src/runtime-extras.test.ts",
141
+ "packages/world-runtime/src/runtime-lifecycle.test.ts",
142
+ "packages/world-runtime/src/runtime-sealed.test.ts",
143
+ "packages/world-runtime/src/runtime-share.test.ts",
144
+ "packages/world-runtime/src/serve-export-contract.test.ts",
145
+ "packages/world-runtime/src/serve.test.ts",
146
+ "packages/world-runtime/src/served-world.test.ts",
147
+ "packages/world-runtime/src/share-cli.test.ts",
148
+ "packages/world-runtime/src/storage-capacity.test.ts",
149
+ "packages/world-runtime/src/tail.test.ts",
150
+ "packages/world-runtime/src/tcp-port.test.ts",
151
+ "packages/world-runtime/src/url-cli.test.ts",
152
+ "packages/world-runtime/src/windows-hide.test.ts",
153
+ "packages/world-runtime/src/world-view.test.ts"
154
+ ],
155
+ "concurrentWork": "Selected Slack release qualification/publication runs remotely; local read-only publication observations may run. Other actors work is not inspected.",
156
+ "concurrencySupplement": "p3-reopened-final-concurrency.json",
157
+ "measuredAt": "2026-10-07T18:01:44.185924+00:00",
158
+ "test": "volter-world changeset replay > round-trips a session into a FRESH world: same projections, then a no-op re-replay",
159
+ "defaultDeadlineMs": 5000,
160
+ "observedElapsedMs": 5821.69,
161
+ "firstWorldBootElapsedMs": 4470,
162
+ "outcome": "Default deadline expired while the second World was starting; no replay assertion completed.",
163
+ "log": "p3-reopened-final-platform-tests.log",
164
+ "reproduce": "Run bun test packages/world-runtime/src/changeset.test.ts inside a fresh task-owned World; full-slate conditions and command are retained above.",
165
+ "selectedDeadlineMs": 20000,
166
+ "commandNormalization": "The absolute Bun executable is shown as bun; the task-owned World wrapper is recorded in the source receipt. Test arguments are unchanged.",
167
+ "scopedRetry": {
168
+ "mode": "Six affected final files with only the self-host tutorial selected; unchanged replay assertions",
169
+ "sourceCommit": "e8d4b55fbacecd1fd504ec4b6393c1f9cf4dab58",
170
+ "Bun": "1.4.2",
171
+ "node": "v23.9.0",
172
+ "outerRuntime": "3.0.127",
173
+ "command": [
174
+ "bun",
175
+ "test",
176
+ "packages/world-runtime/src/root.test.ts",
177
+ "packages/world-runtime/src/changeset.test.ts",
178
+ "packages/world-core/src/stateDir.test.ts",
179
+ "packages/world-core/src/derived-real-graphql.test.ts",
180
+ "packages/world-core/src/derived-real.test.ts",
181
+ "packages/cli/src/journeys/tutorials.test.ts"
182
+ ],
183
+ "environment": {
184
+ "VOLTER_FULL_RUN": "1",
185
+ "TUTORIAL": "self-host-the-platform",
186
+ "TUTORIAL_TRACE": "1",
187
+ "TUTORIAL_KEEP": "1",
188
+ "TMPDIR": "Task-owned .volter/tutorial-temp"
189
+ },
190
+ "concurrentWork": "Core TypeScript follow-up and read-only repository observations",
191
+ "observedElapsedMs": 2494.08,
192
+ "outcome": "Replay assertions and no-op re-replay passed; self-host tutorial still failed and was retried separately after its manifest paths were corrected."
193
+ }
194
+ }
@@ -1,5 +1,6 @@
1
1
  import { spawn } from 'node:child_process';
2
2
  import { readFileSync } from 'node:fs';
3
+ import { join } from 'node:path';
3
4
 
4
5
  // Retain the existing 1000 ms inspection ceiling, not a new timeout chosen from one sample.
5
6
  // Measured 2026-10-03 on shared Darwin 25.4.0 ARM64, Bun 1.3.11 (process.version
@@ -8,10 +9,33 @@ import { readFileSync } from 'node:fs';
8
9
  // TZ=UTC took 9.26 ms from spawn to close; time printed real/user/sys 0.00 s.
9
10
  // This includes the time wrapper/event-loop overhead, not an isolated benchmark.
10
11
  // Full command/output: cookbook/calcom/output/held-backing-lifecycle.txt.
12
+ // Windows, measured 2026-10-07 on Windows 11 Home 10.0.26200 x64 (volter-desktop, a livestream
13
+ // running, CPU load 30%), Node v24.18.0, parent e8d4b55f plus this change: `await processBirth(process.pid)`
14
+ // from this module, timed with performance.now() around the await, took 237-319 ms over 10
15
+ // sequential runs, at most 298 ms with 4 awaited at once and at most 424 ms with 8.
11
16
  const BIRTH_LOOKUP_MS = 1000;
17
+ /** The command that prints a pid's birth, and how its output reads. Windows has no `ps` and no /proc: its birth is the
18
+ * process's creation time (GetProcessTimes, a FILETIME of 100 ns ticks in UTC, so neither the caller's zone nor its
19
+ * locale changes it), read through .NET by the Windows PowerShell every Windows 10 and 11 install ships. */
20
+ function birthProbe(pid) {
21
+ if (process.platform === 'win32') {
22
+ return {
23
+ command: join(process.env.SystemRoot ?? 'C:\\Windows', 'System32', 'WindowsPowerShell', 'v1.0', 'powershell.exe'),
24
+ args: ['-NoLogo', '-NoProfile', '-NonInteractive', '-Command', `[Diagnostics.Process]::GetProcessById(${pid}).StartTime.ToFileTimeUtc()`],
25
+ read: output => (/^\d+$/.test(output) ? `filetime ${output}` : undefined),
26
+ };
27
+ }
28
+ return {
29
+ command: 'ps', args: ['-o', 'pid=,lstart=', '-p', String(pid)],
30
+ read: output => {
31
+ const match = /^\s*(\d+)\s+(.+?)\s*$/.exec(output);
32
+ return match && Number(match[1]) === pid ? match[2] : undefined;
33
+ },
34
+ };
35
+ }
12
36
  /** No subprocess on Linux; elsewhere the lookup never blocks the lifecycle event loop. */
13
37
  export async function processBirth(pid) {
14
- if (process.platform === 'win32') return undefined;
38
+ if (!Number.isInteger(pid) || pid <= 0) return undefined; // a pid enters a probe's command only as an integer
15
39
  if (process.platform === 'linux') {
16
40
  try {
17
41
  const stat = readFileSync(`/proc/${pid}/stat`, 'utf8');
@@ -19,13 +43,14 @@ export async function processBirth(pid) {
19
43
  return /^\d+$/.test(tick ?? '') ? `tick ${tick}` : undefined;
20
44
  } catch { return undefined; }
21
45
  }
46
+ const probe = birthProbe(pid);
22
47
  return new Promise(resolve => {
23
48
  // A probe that cannot run is a birth unknown, never a lifecycle failure: spawn throws synchronously where the
24
49
  // process may not exec `ps` at all (setuid root on macOS, which a sandbox-exec profile refuses: EPERM), and reports
25
50
  // other failures as 'error' (below). Either way the identity is the pid without a start time.
26
51
  let child;
27
52
  try {
28
- child = spawn('ps', ['-o', 'pid=,lstart=', '-p', String(pid)], {
53
+ child = spawn(probe.command, probe.args, {
29
54
  windowsHide: true, stdio: ['ignore', 'pipe', 'ignore'],
30
55
  env: { ...process.env, LC_ALL: 'C', LANG: 'C', TZ: 'UTC' },
31
56
  });
@@ -42,10 +67,7 @@ export async function processBirth(pid) {
42
67
  }, BIRTH_LOOKUP_MS);
43
68
  child.stdout.on('data', chunk => { output += chunk; });
44
69
  child.once('error', () => finish(undefined));
45
- child.once('close', code => {
46
- const match = /^\s*(\d+)\s+(.+?)\s*$/.exec(output.trim());
47
- finish(code === 0 && match && Number(match[1]) === pid ? match[2] : undefined);
48
- });
70
+ child.once('close', code => finish(code === 0 ? probe.read(output.trim()) : undefined));
49
71
  });
50
72
  }
51
73
  /** Capture at spawn for durable ownership, never when retrying a retained PID. */