Smart-Add/Kategorie-Vorschlaege auf iPhone/iPad speicherschonend wieder aktivieren #208
Labels
No labels
priority/could
priority/must
priority/should
priority/wont
status/blocked
status/claimed
status/done-migrated
type/bug
type/feature
type/infra
type/tech-debt
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
robert/todo#208
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Folgt auf #207: dort wurde das Embedding-Modell auf iOS/iPadOS komplett abgeschaltet (utils/embeddingSupport.ts), weil Safari die Einkaufsliste wegen Speichermangel wiederholt abstuerzen liess. iOS-Nutzer haben damit aktuell keine KI-Vorschlaege beim Hinzufuegen und keine Kategorie-Vorschlaege.
Vorschlag:
Akzeptanzkriterien:
Claimed by session "Go [bc9bbc]"
Starting work: shared single embedding worker (ref-counted singleton for Smart-Add + category suggestions), lean ONNX config (numThreads=1, explicit quantized dtype, WASM device), and a WebKit/iPhone Playwright project covering the shopping-list basic flow.
Session "Go [bc9bbc]": technical part done and on master (
051c1cf7,d051736a,04512463), CI green incl. the new WebKit leg (run for9ff77cc4).Done
embeddingWorkerClient.ts), each with its own corpus inside it (client id); shared category embeddings are computed once. Verified in a real browser: shopping list page runs 1 worker (was 2), model still gets ready in ~5 s.numThreads = 1,device: 'wasm',dtype: 'q8'.Mobile Safari (iPhone 15)(WebKit) with a shopping-list basic flow (create list, add item, check off); same spec also runs on Pixel. WebKit needs a test-only fixture (e2e/mobile/fixtures.ts) because it never sends the Secure session cookie to http://localhost - server cookie policy unchanged.Not done - needs a human with an iPhone (AC 1)
The iOS/iPadOS exclusion is still ON by default - removing it without a real-device check risks the #207 crash for every iPhone user. Instead there is a per-device switch: on an iPhone/iPad open Settings > Appearance > "AI suggestions" > "Turn on AI suggestions on this device (experimental)", then open a shopping list, type a few items and leave it open for several minutes.
utils/embeddingSupport.ts(isEmbeddingModelSupported) and the settings switch, then close this issue.Label changed to status/blocked (waiting for that manual check), claim released.