Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/neural-prediction.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,4 @@ The benchmark now requires 1,000 successful warmed refinements across at most fi

## Reply timeout update

The companion inference and reset reply deadline is now 2 seconds, increased from 500 ms after repeated macOS CI timeouts. Startup remains bounded at 30 seconds, statistical suggestions remain immediate, and late or stale results remain rejected. That change pinned both Rust libraries to `171210ee89e3944d1c606d50ad779a5dfb1651b8`, the timeout fix in switchify-prediction PR #22, and kept the v0.2.0 worker assets. The v0.2.1 worker assets and their converter come from `2a2ed0c2b0013663ffa9317dba3389ec96b6f14b`, and they add six-slot generation. Both Rust libraries are now pinned to `e5223aa8af58d982278db110b70293546db1cdd7`, which adds incremental, bounded personal learning without changing the worker protocol. The deadlines are unchanged. The earlier 500 ms measurements above remain historical evidence, not measurements of the increased deadline.
The companion inference and reset reply deadline is now 2 seconds, increased from 500 ms after repeated macOS CI timeouts. Startup remains bounded at 30 seconds, statistical suggestions remain immediate, and late or stale results remain rejected. That change pinned both Rust libraries to `171210ee89e3944d1c606d50ad779a5dfb1651b8`, the timeout fix in switchify-prediction PR #22, and kept the v0.2.0 worker assets. The v0.2.1 worker assets from `2a2ed0c2b0013663ffa9317dba3389ec96b6f14b` added six-slot generation. The worker assets, their converter and both Rust libraries now come from the v0.2.2 release, `b873c88314b0eb0573f3c34d301fbd2f5761d2ab`, still on worker protocol 2. Its workers batch the search and stop it as soon as the ranked words are settled. For the same context they return the same words 3–5× faster: a median of 581 to 121 ms with AVX2 and 1,257 to 424 ms portable on a Windows test machine, and 690 to 151 ms on macOS ARM CI in single runs, whose timing varies. Generation now sees the current sentence as typed, with case and punctuation. The libraries add incremental, bounded personal learning. The deadlines are unchanged. The earlier 500 ms measurements above remain historical evidence, not measurements of the increased deadline.
6 changes: 4 additions & 2 deletions docs/six-predictions.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@ instant slots available, with explicit retry or keyboard reopening required.

## Release assets

The build downloads checksum-pinned v0.2.1 companion release archives from
GitHub. Worker provenance is pinned to the release commit. The Rust libraries are pinned to a later commit that adds personal learning; see word prediction.
The build downloads checksum-pinned v0.2.2 companion release archives from
GitHub. Both libraries and worker provenance are pinned to the release commit.
Only the workers and notices are extracted; the companion CLI in each archive is
not pinned and never unpacked.
Verified local caches work offline, and installed applications need no network
access or model setup. Model, tokenizer and statistical database bytes remain
unchanged.
Expand Down
2 changes: 1 addition & 1 deletion scripts/check-packaged-prediction.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ if (!(await verified(neural, { files: bundlePins }))) throw new Error('Packaged
const pin = JSON.parse(await readFile(new URL('./prediction-neural.json', import.meta.url), 'utf8'));
if (JSON.stringify(JSON.parse(await readFile(join(neural, 'model-bundle.json'), 'utf8'))) !== JSON.stringify(pin.bundle)) throw new Error('Wrong packaged neural policy');
const build = JSON.parse(await readFile(join(neural, 'worker-notices/BUILD.json'), 'utf8'));
if (build.commit !== pin.revision || build.version !== '0.2.1' || build.worker_protocol !== 2) throw new Error('Wrong worker provenance');
if (build.commit !== pin.revision || build.version !== '0.2.2' || build.worker_protocol !== 2) throw new Error('Wrong worker provenance');
const workerPin = pin.workers[build.target];
if (!workerPin) throw new Error('Unsupported packaged worker');
const windows = build.target.includes('windows');
Expand Down
Loading
Loading