Skip to content

Make neural-assisted prediction the default - #972

Merged
enaboapps merged 11 commits into
mainfrom
codex/971-default-neural-prediction
Oct 4, 2026
Merged

enaboapps merged 11 commits into
mainfrom
codex/971-default-neural-prediction

Conversation

@enaboapps

@enaboapps enaboapps commented Oct 4, 2026 •

Copy link
Copy Markdown
Contributor

Word prediction returns statistical suggestions immediately and refines them asynchronously with the offline SmolLM2 companion whenever prediction is enabled. Existing disabled preferences remain disabled. Suggestions stay selectable and unchanged while their row is scanned; acceptance validates the displayed batch token rather than reinterpreting an old index.

Bundles the verified Q8 model, tokenizer, notices and platform workers. Windows selects AVX2 only on compatible CPUs. The parent libraries pin merged switchifyapp/switchify-prediction#22 at 171210ee89e3944d1c606d50ad779a5dfb1651b8; released v0.2.0 worker/model identities remain unchanged and protocol-compatible. Neural reply timeouts are 2 seconds, increased from 500 ms at the user's request after macOS qualification failures. Startup remains bounded at 30 seconds, and failures preserve statistical results until explicit retry or keyboard reopening.

Validation on reviewed head 06b3e78:

  • All required CI passed, including Windows/macOS native builds, packaged-resource verification, frontend tests, CodeQL and dependency auditing.
  • Node 24 lint, build, 253 frontend tests and 11 Node tests passed locally. Rust 1.97.1 formatting, warnings-denied Clippy, 633 unit tests and seven integration/config tests passed.
  • Independent review cleared both the upstream timeout fix and this integration head. Companion fake-worker tests verify 750 ms inference/reset replies, retained stall timeouts, cancellation and explicit recovery.
  • Both packaged CI measurements completed all 1,000 warmed refinements in one session, with zero failures including warmup.
Platform Immediate p95 Refinement median / p95 / maximum Peak sampled process-tree RSS
Windows x64 13.20 ms 195.22 / 200.93 / 221.83 ms 690,802,688 bytes
macOS ARM 13.90 ms 156.87 / 296.30 / 740.66 ms 708,804,608 bytes

Machine-readable reports are in the prediction-benchmark-Windows and prediction-benchmark-macOS artifacts of the passing CI run. The updated local Windows run also completed 1,000 refinements without failures, with immediate p95 9.21 ms and refinement p95 90.96 ms. Reproduction and historical measurements are documented in docs/neural-prediction.md.

Measurements use synthetic context, fake activity/input and real neural child IPC with 20 ms polling. They exclude outer desktop IPC and rendering. The benchmark allows at most five simulated explicit keyboard sessions, reports every failed attempt, and still requires 1,000 successful warmed refinements. Neither final platform needed a restart. Earlier 500 ms macOS failures remain recorded in the documentation and prior CI artifacts. Known model-quality regressions remain; passing latency checks does not establish unseen-data accuracy. Signed installation and manual macOS Accessibility testing remain release checks not claimed here.

Includes the existing test-only fixes from PR #970 because the unchanged pairing test failed initial frontend CI. Its original branch was left untouched. No RC version bump or release is included.

Closes #971.

@enaboapps enaboapps added this to the v1.0.0-rc.20 milestone Oct 4, 2026
OwenMcGirr and others added 9 commits October 4, 2026 10:05
The setup guide is revealed in the same render that removes the pairing
dialog, so wait for both in one assertion with a longer timeout instead
of a separate default one-second wait that could expire on slow CI.

Closes #947

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The flake came from the auto-open markSetupShown response, which still
carried the pending pairing, landing after the cancellation event and
restoring the pairing dialog. Wait for that response first and keep the
fallback state consistent with the cancellation event.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@enaboapps
enaboapps marked this pull request as ready for review October 4, 2026 10:40
@enaboapps
enaboapps marked this pull request as draft October 4, 2026 10:41
@enaboapps
enaboapps marked this pull request as ready for review October 4, 2026 11:18
@enaboapps
enaboapps merged commit 30e8322 into main Oct 4, 2026
6 checks passed
@enaboapps
enaboapps deleted the codex/971-default-neural-prediction branch October 4, 2026 11:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Make neural-assisted word prediction the default

2 participants