omnius 1.0.873 → 1.0.875

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.
Files changed (31) hide show
  1. package/dist/index.js +2 -2
  2. package/dist/library.js +259 -62
  3. package/dist/providerRegistry.d.ts +6 -0
  4. package/dist/tui/native/worker.js +91 -10
  5. package/docs/DISCOVERY.json +1054 -130
  6. package/docs/DISCOVERY.md +26 -1
  7. package/docs/guides/endpoint-requirements.md +33 -0
  8. package/docs/guides/sponsored-inference-mesh.md +84 -0
  9. package/docs/work-orders/evidence/chat-session-document-revision-20261017.json +57 -0
  10. package/docs/work-orders/evidence/chat-session-legacy-document-20261017.json +60 -0
  11. package/docs/work-orders/evidence/chat-session-live-sidecar-20261017.json +158 -0
  12. package/docs/work-orders/evidence/chat-session-shared-store-20261017.json +89 -0
  13. package/docs/work-orders/evidence/endpoint-completion-verification-20261017.json +95 -0
  14. package/docs/work-orders/evidence/endpoint-source-verification-20261017.json +175 -0
  15. package/docs/work-orders/evidence/expanded-variant-repair-20261017.json +88 -0
  16. package/docs/work-orders/evidence/final-presentation-native-20261017/final-160x48.txt +48 -0
  17. package/docs/work-orders/evidence/final-presentation-native-20261017/final-60x20.txt +20 -0
  18. package/docs/work-orders/evidence/final-presentation-native-20261017/report.json +1225 -0
  19. package/docs/work-orders/evidence/final-presentation-native-20261017/rich-final-160x48.txt +48 -0
  20. package/docs/work-orders/evidence/final-presentation-native-20261017.json +116 -0
  21. package/docs/work-orders/evidence/inference-route-attempts-20261017.json +82 -0
  22. package/docs/work-orders/evidence/mesh-source-verification-20261017.json +46 -0
  23. package/docs/work-orders/evidence/mesh-transport-verification-20261017.json +156 -0
  24. package/docs/work-orders/evidence/opencode-endpoint-regression-20261017.json +984 -0
  25. package/docs/work-orders/evidence/project-session-delete-shared-state-20261017.json +54 -0
  26. package/docs/work-orders/evidence/public-session-live-20261017.json +52 -0
  27. package/docs/work-orders/evidence/session-live-sidecar-profile-20261017.json +315 -0
  28. package/docs/work-orders/evidence/session-live-write-profile-20261017.json +167 -0
  29. package/docs/work-orders/evidence/sticky-catalog-candidate-release-20261017.json +314 -0
  30. package/npm-shrinkwrap.json +1705 -202
  31. package/package.json +78 -34
@@ -0,0 +1,54 @@
1
+ {
2
+ "schema": "omnius.project-session-delete-shared-state-verification.v1",
3
+ "recordedAt": "2026-10-17",
4
+ "baseCommit": "509a01bf2fe1da27c23a9d5dd8542ff30389076e",
5
+ "scope": "source-only shared turn admission, project-proven alias tombstones, and native restore filtering",
6
+ "tests": {
7
+ "status": "passed",
8
+ "files": 4,
9
+ "tests": 50,
10
+ "newBehavioralCases": 6,
11
+ "log": "/tmp/omnius-session-delete-final-tests.log",
12
+ "command": "pnpm exec vitest run --config /tmp/omnius-session-delete-3p7_sd23/session-delete-vitest.config.mts --maxWorkers=3 --minWorkers=1 --reporter=verbose",
13
+ "summary": " 4 passed (4)\n Tests 50 passed (50)\n Start at 12:39:35\n Duration 7.49s (transform 4.19s, setup 110ms, collect 17.19s, tests 1.52s, environment 0ms, prepare 140ms)\n\n"
14
+ },
15
+ "sourceTypecheck": {
16
+ "status": "passed",
17
+ "diagnostics": 0,
18
+ "log": "/tmp/omnius-session-delete-final-typecheck.log",
19
+ "command": "pnpm exec tsc -p tsconfig.json --noEmit --incremental false --composite false"
20
+ },
21
+ "diffCheck": "passed",
22
+ "proof": [
23
+ "Native-only local ownership retires both absent physical aliases; fresh independent process get/import attempts reject with409 for each.",
24
+ "Browser-only ownership also retires absent native alias.",
25
+ "Missing or exclusively foreign identities create no tombstones.",
26
+ "Foreign colliding canonical alias remains readable/restorable in its own project while the locally proven alias is retired.",
27
+ "A real independent live shared turn owner blocks deletion without mutation, then explicit release permits deletion.",
28
+ "A real independent canonical store writer blocks deletion before any native unlink or tombstone.",
29
+ "Stale recreated native index/documents remain excluded from restore lists.",
30
+ "Existing deletion refusal, filesystem-failure, partial-effect, malformed metadata, queued work and full restore tests remain green."
31
+ ],
32
+ "sourceSha256": {
33
+ "packages/cli/src/tui/project-session-delete.ts": "aacb1abcded1c88a97f460b65426b73586c414e6186c46c28d65bdaca6812e91",
34
+ "packages/cli/src/tui/session-restore.ts": "8d1e5c4b5b98192f68c9b7d66757786a6b2146d47f4cd65dc4ba9185ba975716",
35
+ "packages/cli/tests/project-session-delete-shared-state.test.ts": "e9688a4194602e10f595af85e9ea1c2fba643d813f7021d215236aec4522e74f"
36
+ },
37
+ "dependenciesCopiedForVerificationOnly": {
38
+ "packages/cli/src/api/chat-session.ts": "2f813be68b6bcc45388634afdb6547bd7e78744c6427b516e8d622ffc6d09038",
39
+ "packages/cli/src/api/session-coordination.ts": "05e05d6a52cbe05d88d3d3453b11f3922fc3f71d1adab55325c68b29d62c9015"
40
+ },
41
+ "limitations": [
42
+ "This is source storage/process verification, not an installed package or live frontend test.",
43
+ "Legacy native writers can still recreate visual files; durable canonical tombstones and catalog filtering prevent their reappearance as restorable sessions.",
44
+ "Deletion can have partial filesystem effects on a later failure; existing truthful partial-effect reporting remains."
45
+ ],
46
+ "safety": {
47
+ "inferenceRequests": 0,
48
+ "modelLoadRequests": 0,
49
+ "cudaWorkloads": 0,
50
+ "servicesChanged": 0,
51
+ "sharedBuilds": 0,
52
+ "publishes": 0
53
+ }
54
+ }
@@ -0,0 +1,52 @@
1
+ {
2
+ "schema": "omnius.public-session-live-verification.v1",
3
+ "recordedAt": "2026-10-17",
4
+ "api": "publicSessionLive(root,session): SessionLive | null",
5
+ "scope": "Read-only public running-state projection; no serve.ts changes.",
6
+ "policy": [
7
+ "Only a matching same-project live coordinator owner with exact source and run_id can attest running.",
8
+ "Missing or mismatched owners produce failed/Interrupted display state, preserving observed partial, original timestamp and run identity.",
9
+ "Completed and failed recorded outcomes remain unchanged.",
10
+ "Explicit allowed fields only, frozen returned object, no persistence, inference or control ownership."
11
+ ],
12
+ "tests": {
13
+ "status": "passed",
14
+ "tests": 18,
15
+ "files": 3,
16
+ "newCases": 8,
17
+ "actualAbruptChildExit": true,
18
+ "log": "/tmp/omnius-public-session-live-final-tests.log",
19
+ "command": "pnpm exec vitest run --config /tmp/omnius-public-session-live-43u14bn8/public-live-vitest.config.mts --maxWorkers=3 --minWorkers=1 --reporter=verbose",
20
+ "checks": [
21
+ "Absent/terminal live projections remain truthful.",
22
+ "Exact running owner source+run matches and passive reads leave files/revisions unchanged.",
23
+ "Missing, wrong-source and wrong-run owners project Interrupted with all observed partial evidence.",
24
+ "A foreign project cannot lend its coincidentally matching run; realpath root aliases work.",
25
+ "An actual independent NativeSessionMirror child exits without finish; stored receipt remains running, public projection is Interrupted, and no files are rewritten.",
26
+ "Unknown stored properties never leak through the public live projection.",
27
+ "Existing coordinator and native mirror lifecycle suites remain green."
28
+ ]
29
+ },
30
+ "noEmit": {
31
+ "status": "passed",
32
+ "diagnostics": 0,
33
+ "log": "/tmp/omnius-public-session-live-final-typecheck.log"
34
+ },
35
+ "diffCheck": "passed",
36
+ "sourceSha256": {
37
+ "packages/cli/src/api/shared-session-server.ts": "9fdb2c3a239a5c4365ad2849fbc32b489d7002bbe3a8c21de92b0f69218a8bbd",
38
+ "packages/cli/tests/public-session-live.test.ts": "445d592c102838fa33d5b2d8fda95111b3a9f33049cafbae8ebb927b719c558c"
39
+ },
40
+ "copiedRootBaselineSha256": "c25ce0d271e19f8455cee66a750b5c0cdfc71fec95997b81daf020e7510d4b1e",
41
+ "excludedVerificationDependencies": [
42
+ "Current root chat-session.ts, session-coordination.ts, session-quality.ts, session-summary.ts and shared-session-sync.ts were copied for source compatibility only."
43
+ ],
44
+ "safety": {
45
+ "inferenceRequests": 0,
46
+ "modelLoadRequests": 0,
47
+ "servicesChanged": 0,
48
+ "cudaWorkloads": 0,
49
+ "sharedBuilds": 0,
50
+ "publishes": 0
51
+ }
52
+ }
@@ -0,0 +1,315 @@
1
+ {
2
+ "schema": "omnius.session-live-sidecar-comparison.v1",
3
+ "date": "2026-10-17",
4
+ "method": "CPU and filesystem source fixture with independent isolated config homes; actual updateSessionLive calls; 101-message exact-size canonical histories; ten updates per fixture; warm OS filesystem cache. No inference or services.",
5
+ "before": {
6
+ "schema": "omnius.session-live-write-profile.v1",
7
+ "runtime": "Bun 1.3.14",
8
+ "sourceSha256": "8059352da0033fb8fb95ac2e0fafba1582c32b1ccdf8362a8f41315d8a5cbebc",
9
+ "scope": "Actual canonical updateSessionLive writes under isolated config homes; warm OS filesystem cache;101-message fixtures; no live inference",
10
+ "results": [
11
+ {
12
+ "targetMiB": 1,
13
+ "initialCanonicalBytes": 1048576,
14
+ "messages": 101,
15
+ "updates": 10,
16
+ "canonicalJsonBytesWritten": 10569682,
17
+ "totalElapsedMs": 51.90087300000005,
18
+ "totalCpuMs": 76.66099999999999,
19
+ "medianElapsedMs": 3.9333024999999964,
20
+ "maxElapsedMs": 11.189188999999999,
21
+ "minElapsedMs": 3.3970170000000053,
22
+ "documentRevisionUnchanged": true,
23
+ "samples": [
24
+ {
25
+ "elapsedMs": 3.4846600000000194,
26
+ "cpuMs": 3.665,
27
+ "canonicalJsonBytes": 1056968
28
+ },
29
+ {
30
+ "elapsedMs": 4.031644999999969,
31
+ "cpuMs": 4.009,
32
+ "canonicalJsonBytes": 1056968
33
+ },
34
+ {
35
+ "elapsedMs": 3.3970170000000053,
36
+ "cpuMs": 3.411,
37
+ "canonicalJsonBytes": 1056968
38
+ },
39
+ {
40
+ "elapsedMs": 4.463346999999999,
41
+ "cpuMs": 30.232,
42
+ "canonicalJsonBytes": 1056968
43
+ },
44
+ {
45
+ "elapsedMs": 11.189188999999999,
46
+ "cpuMs": 16.426,
47
+ "canonicalJsonBytes": 1056968
48
+ },
49
+ {
50
+ "elapsedMs": 3.4108080000000314,
51
+ "cpuMs": 3.526,
52
+ "canonicalJsonBytes": 1056968
53
+ },
54
+ {
55
+ "elapsedMs": 3.6776250000000346,
56
+ "cpuMs": 3.64,
57
+ "canonicalJsonBytes": 1056968
58
+ },
59
+ {
60
+ "elapsedMs": 7.477273999999966,
61
+ "cpuMs": 4.307,
62
+ "canonicalJsonBytes": 1056968
63
+ },
64
+ {
65
+ "elapsedMs": 3.8349600000000237,
66
+ "cpuMs": 3.829,
67
+ "canonicalJsonBytes": 1056969
68
+ },
69
+ {
70
+ "elapsedMs": 6.934348,
71
+ "cpuMs": 3.616,
72
+ "canonicalJsonBytes": 1056969
73
+ }
74
+ ]
75
+ },
76
+ {
77
+ "targetMiB": 5,
78
+ "initialCanonicalBytes": 5242880,
79
+ "messages": 101,
80
+ "updates": 10,
81
+ "canonicalJsonBytesWritten": 52512722,
82
+ "totalElapsedMs": 142.11865899999992,
83
+ "totalCpuMs": 147.90699999999998,
84
+ "medianElapsedMs": 14.331104000000039,
85
+ "maxElapsedMs": 15.33242800000005,
86
+ "minElapsedMs": 13.053483000000028,
87
+ "documentRevisionUnchanged": true,
88
+ "samples": [
89
+ {
90
+ "elapsedMs": 15.262345999999923,
91
+ "cpuMs": 15.472,
92
+ "canonicalJsonBytes": 5251272
93
+ },
94
+ {
95
+ "elapsedMs": 14.265946999999983,
96
+ "cpuMs": 15.219,
97
+ "canonicalJsonBytes": 5251272
98
+ },
99
+ {
100
+ "elapsedMs": 14.396261000000095,
101
+ "cpuMs": 14.269,
102
+ "canonicalJsonBytes": 5251272
103
+ },
104
+ {
105
+ "elapsedMs": 15.33242800000005,
106
+ "cpuMs": 16.998,
107
+ "canonicalJsonBytes": 5251272
108
+ },
109
+ {
110
+ "elapsedMs": 14.51738499999999,
111
+ "cpuMs": 14.782,
112
+ "canonicalJsonBytes": 5251272
113
+ },
114
+ {
115
+ "elapsedMs": 13.679229999999961,
116
+ "cpuMs": 13.598,
117
+ "canonicalJsonBytes": 5251272
118
+ },
119
+ {
120
+ "elapsedMs": 13.49195599999996,
121
+ "cpuMs": 14.047,
122
+ "canonicalJsonBytes": 5251272
123
+ },
124
+ {
125
+ "elapsedMs": 14.82221299999992,
126
+ "cpuMs": 15.407,
127
+ "canonicalJsonBytes": 5251272
128
+ },
129
+ {
130
+ "elapsedMs": 13.297410000000013,
131
+ "cpuMs": 13.314,
132
+ "canonicalJsonBytes": 5251273
133
+ },
134
+ {
135
+ "elapsedMs": 13.053483000000028,
136
+ "cpuMs": 14.801,
137
+ "canonicalJsonBytes": 5251273
138
+ }
139
+ ]
140
+ }
141
+ ],
142
+ "accounting": "canonicalJsonBytesWritten sums actual final JSON file sizes after each successful atomic rename; excludes lock records, journal and physical disk writeback. Elapsed wraps only updateSessionLive; size inspection/setup excluded.",
143
+ "safety": {
144
+ "blockedNetworkCalls": 0,
145
+ "inferenceRequests": 0,
146
+ "modelLoadRequests": 0,
147
+ "servicesChanged": 0,
148
+ "cudaWorkloads": 0,
149
+ "sharedBuilds": 0
150
+ }
151
+ },
152
+ "after": {
153
+ "schema": "omnius.session-live-sidecar-profile.v1",
154
+ "runtime": "Bun 1.3.14",
155
+ "sourceSha256": "c1d65e18956795e7328e8bcada5d59eabee0038ee3d51f4c69435c642d611c4b",
156
+ "scope": "Actual canonical updateSessionLive writes under isolated config homes; warm OS filesystem cache;101-message fixtures; no live inference",
157
+ "results": [
158
+ {
159
+ "targetMiB": 1,
160
+ "initialCanonicalBytes": 1048576,
161
+ "messages": 101,
162
+ "updates": 10,
163
+ "canonicalJsonBytesWritten": 0,
164
+ "liveSidecarBytesWritten": 85161,
165
+ "canonicalUnchanged": true,
166
+ "totalElapsedMs": 3.27432500000009,
167
+ "totalCpuMs": 3.321,
168
+ "medianElapsedMs": 0.2643275000000074,
169
+ "maxElapsedMs": 0.8354940000000397,
170
+ "minElapsedMs": 0.21619600000002492,
171
+ "documentRevisionUnchanged": true,
172
+ "samples": [
173
+ {
174
+ "elapsedMs": 0.8354940000000397,
175
+ "cpuMs": 0.699,
176
+ "liveSidecarBytes": 8516
177
+ },
178
+ {
179
+ "elapsedMs": 0.4106219999999894,
180
+ "cpuMs": 0.414,
181
+ "liveSidecarBytes": 8516
182
+ },
183
+ {
184
+ "elapsedMs": 0.26438699999999926,
185
+ "cpuMs": 0.267,
186
+ "liveSidecarBytes": 8516
187
+ },
188
+ {
189
+ "elapsedMs": 0.2642680000000155,
190
+ "cpuMs": 0.267,
191
+ "liveSidecarBytes": 8516
192
+ },
193
+ {
194
+ "elapsedMs": 0.2737979999999993,
195
+ "cpuMs": 0.277,
196
+ "liveSidecarBytes": 8516
197
+ },
198
+ {
199
+ "elapsedMs": 0.2774079999999799,
200
+ "cpuMs": 0.307,
201
+ "liveSidecarBytes": 8516
202
+ },
203
+ {
204
+ "elapsedMs": 0.26087799999999106,
205
+ "cpuMs": 0.366,
206
+ "liveSidecarBytes": 8516
207
+ },
208
+ {
209
+ "elapsedMs": 0.24457700000004934,
210
+ "cpuMs": 0.276,
211
+ "liveSidecarBytes": 8516
212
+ },
213
+ {
214
+ "elapsedMs": 0.22669700000000148,
215
+ "cpuMs": 0.229,
216
+ "liveSidecarBytes": 8516
217
+ },
218
+ {
219
+ "elapsedMs": 0.21619600000002492,
220
+ "cpuMs": 0.219,
221
+ "liveSidecarBytes": 8517
222
+ }
223
+ ]
224
+ },
225
+ {
226
+ "targetMiB": 5,
227
+ "initialCanonicalBytes": 5242880,
228
+ "messages": 101,
229
+ "updates": 10,
230
+ "canonicalJsonBytesWritten": 0,
231
+ "liveSidecarBytesWritten": 85161,
232
+ "canonicalUnchanged": true,
233
+ "totalElapsedMs": 2.9267639999999346,
234
+ "totalCpuMs": 3.1479999999999997,
235
+ "medianElapsedMs": 0.23751199999998107,
236
+ "maxElapsedMs": 0.5657360000000153,
237
+ "minElapsedMs": 0.20915599999995038,
238
+ "documentRevisionUnchanged": true,
239
+ "samples": [
240
+ {
241
+ "elapsedMs": 0.43028299999997444,
242
+ "cpuMs": 0.437,
243
+ "liveSidecarBytes": 8516
244
+ },
245
+ {
246
+ "elapsedMs": 0.3156089999999949,
247
+ "cpuMs": 0.318,
248
+ "liveSidecarBytes": 8516
249
+ },
250
+ {
251
+ "elapsedMs": 0.5657360000000153,
252
+ "cpuMs": 0.289,
253
+ "liveSidecarBytes": 8516
254
+ },
255
+ {
256
+ "elapsedMs": 0.2455269999999814,
257
+ "cpuMs": 0.249,
258
+ "liveSidecarBytes": 8516
259
+ },
260
+ {
261
+ "elapsedMs": 0.2216760000000022,
262
+ "cpuMs": 0.287,
263
+ "liveSidecarBytes": 8516
264
+ },
265
+ {
266
+ "elapsedMs": 0.20915599999995038,
267
+ "cpuMs": 0.221,
268
+ "liveSidecarBytes": 8516
269
+ },
270
+ {
271
+ "elapsedMs": 0.21437600000001567,
272
+ "cpuMs": 0.217,
273
+ "liveSidecarBytes": 8516
274
+ },
275
+ {
276
+ "elapsedMs": 0.22949699999998074,
277
+ "cpuMs": 0.567,
278
+ "liveSidecarBytes": 8516
279
+ },
280
+ {
281
+ "elapsedMs": 0.27343799999999874,
282
+ "cpuMs": 0.275,
283
+ "liveSidecarBytes": 8516
284
+ },
285
+ {
286
+ "elapsedMs": 0.2214660000000208,
287
+ "cpuMs": 0.288,
288
+ "liveSidecarBytes": 8517
289
+ }
290
+ ]
291
+ }
292
+ ],
293
+ "accounting": "liveSidecarBytesWritten sums actual sidecar JSON sizes after each successful atomic rename; canonical bytes/inode/mtime/hash remain unchanged, with zero canonical writes also audited by the focused IO test. Excludes lock records, journal and physical disk writeback. Elapsed wraps only updateSessionLive; size inspection/setup excluded.",
294
+ "safety": {
295
+ "blockedNetworkCalls": 0,
296
+ "inferenceRequests": 0,
297
+ "modelLoadRequests": 0,
298
+ "servicesChanged": 0,
299
+ "cudaWorkloads": 0,
300
+ "sharedBuilds": 0
301
+ }
302
+ },
303
+ "fixture": {
304
+ "path": "/tmp/omnius-profile-session-live-sidecar.ts",
305
+ "sha256": "b6fd43e6f8b9b4f650457e5854f09345dbe8726b1c4128b4f13cefce18b79b45",
306
+ "source": "/** Isolated source-only storage profile. Never calls a backend or changes a service. */\nimport { mkdtempSync, mkdirSync, readFileSync, writeFileSync, renameSync, statSync, rmSync } from \"node:fs\";\nimport { tmpdir } from \"node:os\";\nimport { join } from \"node:path\";\nimport { createHash } from \"node:crypto\";\nconst home = mkdtempSync(join(tmpdir(), \"omnius-live-write-profile-\"));\nprocess.env.OMNIUS_CONFIG_HOME = join(home, \"config\"); process.env.OMNIUS_HOME = join(home, \"work\");\nlet blockedNetworkCalls = 0;\nglobalThis.fetch = async () => { blockedNetworkCalls++; throw Error(\"Storage profile forbids network/inference\"); };\nconst source = \"/tmp/omnius-bounded-session-live-l4hoih1o/packages/cli/src/api/chat-session.ts\";\nconst { getSession, lookupSession, updateSessionLive } = await import(source);\nconst { omniusConfigDir } = await import(\"/tmp/omnius-bounded-session-live-l4hoih1o/packages/cli/src/config-home.ts\");\nconst results = [];\ntry {\n for (const mib of [1, 5]) {\n const root = join(home, `project-${mib}`); mkdirSync(root); const id = `profile-${mib}`;\n const held = getSession(id, \"CPU-storage-fixture-only\", root), path = omniusConfigDir(\"chat-sessions\", `${id}.json`);\n const record = JSON.parse(readFileSync(path, \"utf8\"));\n record.title = \"Storage fixture history\"; record.preview = \"Storage fixture history\";\n record.messages = [record.messages[0], ...Array.from({ length: 100 }, (_, index) => ({ role: index % 2 ? \"assistant\" : \"user\", content: `HISTORY_${index} ` }))];\n const targetBytes = mib * 1024 * 1024;\n let remaining = targetBytes - Buffer.byteLength(JSON.stringify(record, null, 2));\n for (let index = 1; index < record.messages.length; index++) {\n const add = index === record.messages.length - 1 ? remaining : Math.floor(remaining / (record.messages.length - index));\n record.messages[index].content += \"x\".repeat(add); remaining -= add;\n }\n writeFileSync(path + \".fixture\", JSON.stringify(record, null, 2)); renameSync(path + \".fixture\", path); lookupSession(id);\n const initialBytes = statSync(path).size, initialDocumentRevision = held.documentRevision, samples = [];\n const initialCanonical = statSync(path), initialCanonicalHash = createHash(\"sha256\").update(readFileSync(path)).digest(\"hex\");\n for (let index = 0; index < 10; index++) {\n const live = { run_id: \"profile\", source: \"tui\", status: \"running\", phase: \"Measured public progress\", partial_output: \"p\".repeat(8170) + ` frame-${index}`, updated_at: Date.now() + index };\n const cpu = process.cpuUsage(), start = performance.now(); updateSessionLive(held, live);\n const elapsedMs = performance.now() - start, used = process.cpuUsage(cpu);\n samples.push({ elapsedMs, cpuMs: (used.user + used.system) / 1000, liveSidecarBytes: statSync(path.replace(/\\.json$/, \".live.json\")).size });\n }\n const times = samples.map(value => value.elapsedMs).sort((a, b) => a - b);\n if (held.documentRevision !== initialDocumentRevision) throw Error(\"Metadata profile unexpectedly changed the document version\");\n results.push({ targetMiB: mib, initialCanonicalBytes: initialBytes, messages: record.messages.length, updates: 10,\n canonicalJsonBytesWritten: 0, liveSidecarBytesWritten: samples.reduce((sum, value) => sum + value.liveSidecarBytes, 0),\n canonicalUnchanged: initialCanonical.ino === statSync(path).ino && initialCanonical.mtimeMs === statSync(path).mtimeMs && initialCanonicalHash === createHash(\"sha256\").update(readFileSync(path)).digest(\"hex\"),\n totalElapsedMs: samples.reduce((sum, value) => sum + value.elapsedMs, 0), totalCpuMs: samples.reduce((sum, value) => sum + value.cpuMs, 0),\n medianElapsedMs: (times[4] + times[5]) / 2, maxElapsedMs: times.at(-1), minElapsedMs: times[0],\n documentRevisionUnchanged: held.documentRevision === initialDocumentRevision, samples });\n }\n const result = { schema: \"omnius.session-live-sidecar-profile.v1\", runtime: `Bun ${Bun.version}`, sourceSha256: createHash(\"sha256\").update(readFileSync(source)).digest(\"hex\"),\n scope: \"Actual canonical updateSessionLive writes under isolated config homes; warm OS filesystem cache;101-message fixtures; no live inference\", results,\n accounting: \"liveSidecarBytesWritten sums actual sidecar JSON sizes after each successful atomic rename; canonical bytes/inode/mtime/hash remain unchanged, with zero canonical writes also audited by the focused IO test. Excludes lock records, journal and physical disk writeback. Elapsed wraps only updateSessionLive; size inspection/setup excluded.\",\n safety: { blockedNetworkCalls, inferenceRequests: 0, modelLoadRequests: 0, servicesChanged: 0, cudaWorkloads: 0, sharedBuilds: 0 } };\n writeFileSync(\"/tmp/omnius-session-live-sidecar-profile.json\", JSON.stringify(result, null, 2) + \"\\n\"); console.log(JSON.stringify(result, null, 2));\n} finally { rmSync(home, { recursive: true, force: true }); }\nprocess.exit(0);\n",
307
+ "rerunNote": "Replace the private-worktree import with the source path under review; use Bun 1.3.14. The fixture chooses temporary isolated homes and does not contact an inference endpoint."
308
+ },
309
+ "limits": [
310
+ "This is a local warm-cache CPU/filesystem sample, not a physical-disk throughput benchmark or cross-machine performance guarantee.",
311
+ "Byte accounting includes the live JSON payloads, excludes mutex records, filesystem journal and physical writeback.",
312
+ "Canonical zero-write behavior is independently asserted by the focused filesystem interception test.",
313
+ "The fast live-write path requires a verified unchanged canonical file stamp. Ordinary read-only lookups retain safe full canonical refresh rather than caching mutable caller-owned message objects."
314
+ ]
315
+ }
@@ -0,0 +1,167 @@
1
+ {
2
+ "schema": "omnius.session-live-write-profile.v1",
3
+ "runtime": "Bun 1.3.14",
4
+ "sourceSha256": "8059352da0033fb8fb95ac2e0fafba1582c32b1ccdf8362a8f41315d8a5cbebc",
5
+ "scope": "Actual canonical updateSessionLive writes under isolated config homes; warm OS filesystem cache;101-message fixtures; no live inference",
6
+ "results": [
7
+ {
8
+ "targetMiB": 1,
9
+ "initialCanonicalBytes": 1048576,
10
+ "messages": 101,
11
+ "updates": 10,
12
+ "canonicalJsonBytesWritten": 10569682,
13
+ "totalElapsedMs": 51.90087300000005,
14
+ "totalCpuMs": 76.66099999999999,
15
+ "medianElapsedMs": 3.9333024999999964,
16
+ "maxElapsedMs": 11.189188999999999,
17
+ "minElapsedMs": 3.3970170000000053,
18
+ "documentRevisionUnchanged": true,
19
+ "samples": [
20
+ {
21
+ "elapsedMs": 3.4846600000000194,
22
+ "cpuMs": 3.665,
23
+ "canonicalJsonBytes": 1056968
24
+ },
25
+ {
26
+ "elapsedMs": 4.031644999999969,
27
+ "cpuMs": 4.009,
28
+ "canonicalJsonBytes": 1056968
29
+ },
30
+ {
31
+ "elapsedMs": 3.3970170000000053,
32
+ "cpuMs": 3.411,
33
+ "canonicalJsonBytes": 1056968
34
+ },
35
+ {
36
+ "elapsedMs": 4.463346999999999,
37
+ "cpuMs": 30.232,
38
+ "canonicalJsonBytes": 1056968
39
+ },
40
+ {
41
+ "elapsedMs": 11.189188999999999,
42
+ "cpuMs": 16.426,
43
+ "canonicalJsonBytes": 1056968
44
+ },
45
+ {
46
+ "elapsedMs": 3.4108080000000314,
47
+ "cpuMs": 3.526,
48
+ "canonicalJsonBytes": 1056968
49
+ },
50
+ {
51
+ "elapsedMs": 3.6776250000000346,
52
+ "cpuMs": 3.64,
53
+ "canonicalJsonBytes": 1056968
54
+ },
55
+ {
56
+ "elapsedMs": 7.477273999999966,
57
+ "cpuMs": 4.307,
58
+ "canonicalJsonBytes": 1056968
59
+ },
60
+ {
61
+ "elapsedMs": 3.8349600000000237,
62
+ "cpuMs": 3.829,
63
+ "canonicalJsonBytes": 1056969
64
+ },
65
+ {
66
+ "elapsedMs": 6.934348,
67
+ "cpuMs": 3.616,
68
+ "canonicalJsonBytes": 1056969
69
+ }
70
+ ]
71
+ },
72
+ {
73
+ "targetMiB": 5,
74
+ "initialCanonicalBytes": 5242880,
75
+ "messages": 101,
76
+ "updates": 10,
77
+ "canonicalJsonBytesWritten": 52512722,
78
+ "totalElapsedMs": 142.11865899999992,
79
+ "totalCpuMs": 147.90699999999998,
80
+ "medianElapsedMs": 14.331104000000039,
81
+ "maxElapsedMs": 15.33242800000005,
82
+ "minElapsedMs": 13.053483000000028,
83
+ "documentRevisionUnchanged": true,
84
+ "samples": [
85
+ {
86
+ "elapsedMs": 15.262345999999923,
87
+ "cpuMs": 15.472,
88
+ "canonicalJsonBytes": 5251272
89
+ },
90
+ {
91
+ "elapsedMs": 14.265946999999983,
92
+ "cpuMs": 15.219,
93
+ "canonicalJsonBytes": 5251272
94
+ },
95
+ {
96
+ "elapsedMs": 14.396261000000095,
97
+ "cpuMs": 14.269,
98
+ "canonicalJsonBytes": 5251272
99
+ },
100
+ {
101
+ "elapsedMs": 15.33242800000005,
102
+ "cpuMs": 16.998,
103
+ "canonicalJsonBytes": 5251272
104
+ },
105
+ {
106
+ "elapsedMs": 14.51738499999999,
107
+ "cpuMs": 14.782,
108
+ "canonicalJsonBytes": 5251272
109
+ },
110
+ {
111
+ "elapsedMs": 13.679229999999961,
112
+ "cpuMs": 13.598,
113
+ "canonicalJsonBytes": 5251272
114
+ },
115
+ {
116
+ "elapsedMs": 13.49195599999996,
117
+ "cpuMs": 14.047,
118
+ "canonicalJsonBytes": 5251272
119
+ },
120
+ {
121
+ "elapsedMs": 14.82221299999992,
122
+ "cpuMs": 15.407,
123
+ "canonicalJsonBytes": 5251272
124
+ },
125
+ {
126
+ "elapsedMs": 13.297410000000013,
127
+ "cpuMs": 13.314,
128
+ "canonicalJsonBytes": 5251273
129
+ },
130
+ {
131
+ "elapsedMs": 13.053483000000028,
132
+ "cpuMs": 14.801,
133
+ "canonicalJsonBytes": 5251273
134
+ }
135
+ ]
136
+ }
137
+ ],
138
+ "accounting": "canonicalJsonBytesWritten sums actual final JSON file sizes after each successful atomic rename; excludes lock records, journal and physical disk writeback. Elapsed wraps only updateSessionLive; size inspection/setup excluded.",
139
+ "safety": {
140
+ "blockedNetworkCalls": 0,
141
+ "inferenceRequests": 0,
142
+ "modelLoadRequests": 0,
143
+ "servicesChanged": 0,
144
+ "cudaWorkloads": 0,
145
+ "sharedBuilds": 0
146
+ },
147
+ "recordedAt": "2026-10-17",
148
+ "fixtureSource": "/** Isolated source-only storage profile. Never calls a backend or changes a service. */\nimport { mkdtempSync, mkdirSync, readFileSync, writeFileSync, renameSync, statSync, rmSync } from \"node:fs\";\nimport { tmpdir } from \"node:os\";\nimport { join } from \"node:path\";\nimport { createHash } from \"node:crypto\";\nconst home = mkdtempSync(join(tmpdir(), \"omnius-live-write-profile-\"));\nprocess.env.OMNIUS_CONFIG_HOME = join(home, \"config\"); process.env.OMNIUS_HOME = join(home, \"work\");\nlet blockedNetworkCalls = 0;\nglobalThis.fetch = async () => { blockedNetworkCalls++; throw Error(\"Storage profile forbids network/inference\"); };\nconst source = \"/tmp/omnius-public-session-live-43u14bn8/packages/cli/src/api/chat-session.ts\";\nconst { getSession, lookupSession, updateSessionLive } = await import(source);\nconst { omniusConfigDir } = await import(\"/tmp/omnius-public-session-live-43u14bn8/packages/cli/src/config-home.ts\");\nconst results = [];\ntry {\n for (const mib of [1, 5]) {\n const root = join(home, `project-${mib}`); mkdirSync(root); const id = `profile-${mib}`;\n const held = getSession(id, \"CPU-storage-fixture-only\", root), path = omniusConfigDir(\"chat-sessions\", `${id}.json`);\n const record = JSON.parse(readFileSync(path, \"utf8\"));\n record.title = \"Storage fixture history\"; record.preview = \"Storage fixture history\";\n record.messages = [record.messages[0], ...Array.from({ length: 100 }, (_, index) => ({ role: index % 2 ? \"assistant\" : \"user\", content: `HISTORY_${index} ` }))];\n const targetBytes = mib * 1024 * 1024;\n let remaining = targetBytes - Buffer.byteLength(JSON.stringify(record, null, 2));\n for (let index = 1; index < record.messages.length; index++) {\n const add = index === record.messages.length - 1 ? remaining : Math.floor(remaining / (record.messages.length - index));\n record.messages[index].content += \"x\".repeat(add); remaining -= add;\n }\n writeFileSync(path + \".fixture\", JSON.stringify(record, null, 2)); renameSync(path + \".fixture\", path); lookupSession(id);\n const initialBytes = statSync(path).size, initialDocumentRevision = held.documentRevision, samples = [];\n for (let index = 0; index < 10; index++) {\n const live = { run_id: \"profile\", source: \"tui\", status: \"running\", phase: \"Measured public progress\", partial_output: \"p\".repeat(8170) + ` frame-${index}`, updated_at: Date.now() + index };\n const cpu = process.cpuUsage(), start = performance.now(); updateSessionLive(held, live);\n const elapsedMs = performance.now() - start, used = process.cpuUsage(cpu);\n samples.push({ elapsedMs, cpuMs: (used.user + used.system) / 1000, canonicalJsonBytes: statSync(path).size });\n }\n const times = samples.map(value => value.elapsedMs).sort((a, b) => a - b);\n if (held.documentRevision !== initialDocumentRevision) throw Error(\"Metadata profile unexpectedly changed the document version\");\n results.push({ targetMiB: mib, initialCanonicalBytes: initialBytes, messages: record.messages.length, updates: 10,\n canonicalJsonBytesWritten: samples.reduce((sum, value) => sum + value.canonicalJsonBytes, 0),\n totalElapsedMs: samples.reduce((sum, value) => sum + value.elapsedMs, 0), totalCpuMs: samples.reduce((sum, value) => sum + value.cpuMs, 0),\n medianElapsedMs: (times[4] + times[5]) / 2, maxElapsedMs: times.at(-1), minElapsedMs: times[0],\n documentRevisionUnchanged: held.documentRevision === initialDocumentRevision, samples });\n }\n const result = { schema: \"omnius.session-live-write-profile.v1\", runtime: `Bun ${Bun.version}`, sourceSha256: createHash(\"sha256\").update(readFileSync(source)).digest(\"hex\"),\n scope: \"Actual canonical updateSessionLive writes under isolated config homes; warm OS filesystem cache;101-message fixtures; no live inference\", results,\n accounting: \"canonicalJsonBytesWritten sums actual final JSON file sizes after each successful atomic rename; excludes lock records, journal and physical disk writeback. Elapsed wraps only updateSessionLive; size inspection/setup excluded.\",\n safety: { blockedNetworkCalls, inferenceRequests: 0, modelLoadRequests: 0, servicesChanged: 0, cudaWorkloads: 0, sharedBuilds: 0 } };\n writeFileSync(\"/tmp/omnius-session-live-write-profile.json\", JSON.stringify(result, null, 2) + \"\\n\"); console.log(JSON.stringify(result, null, 2));\n} finally { rmSync(home, { recursive: true, force: true }); }\nprocess.exit(0);\n",
149
+ "fixtureSha256": "a03ab014e30c37991ffbecae00b1154e8a625629e572dda3b9b1420841d89be3",
150
+ "interpretation": {
151
+ "measured": "Ten actual canonical JSON replacements per size; documentRevision remained unchanged.",
152
+ "extrapolatedContinuous5MiB300ms": {
153
+ "canonicalBytesPerSecond": 17504240.666666668,
154
+ "mainThreadTimePercent": 4.77703466666668
155
+ },
156
+ "extrapolatedContinuous5MiB80ms": {
157
+ "canonicalBytesPerSecond": 65640902.5,
158
+ "mainThreadTimePercent": 17.91388000000005
159
+ },
160
+ "recommendation": "Keep authored commits immediate. For sustained large histories, coalesce/adapt live-only cadence or use a bounded live projection sidecar; no sidecar implementation is part of this evidence.",
161
+ "limitations": [
162
+ "Warm filesystem/page cache; results do not measure durable physical disk throughput.",
163
+ "Ten samples are a focused profile, not a broad benchmark or a claim about every workload.",
164
+ "Extrapolated cadence costs assume continuously changing live projections; unchanged projections already coalesce."
165
+ ]
166
+ }
167
+ }