auto-translation on first manual save unreliable #116

Closed
opened 2026-08-01 07:04:58 +00:00 by hugo · 1 comment
Owner

I get empty translations on the auto-translate on first manual save. if there are problems in those processes, I expect at minimum a toast about the problem, it looks to me like there is no proper error handling in that code path. manual translation via quick action works. This is mainly to make sure that we have proper error reporting, I don't currently have a reliable way to reproduce it myself, but you can use computer use to try to simulate the situation. this might be related to #114 findings about broken cold start not having ai settings set, but verify nontheless.

I get empty translations on the auto-translate on first manual save. if there are problems in those processes, I expect at minimum a toast about the problem, it looks to me like there is no proper error handling in that code path. manual translation via quick action works. This is mainly to make sure that we have proper error reporting, I don't currently have a reliable way to reproduce it myself, but you can use computer use to try to simulate the situation. this might be related to #114 findings about broken cold start not having ai settings set, but verify nontheless.
hugo added the bug label 2026-08-01 07:04:58 +00:00
Author
Owner

Implemented in c4e5dbb. Automatic first-save translation now rejects blank AI fields before persistence, retries one failed attempt with a localized warning toast, reports the second failure as a task error toast, resumes a missing media cascade after partial success, emits a post update so open editors refresh, and preserves unsaved editor changes. The UI now schedules from hydrated AI settings so Keychain resolution runs only in the background worker and cannot freeze Save. Verified against bDS2 manual-save/task/editor behavior and the Allium translation/action rules. Gates: fmt, workspace build, Clippy with warnings denied, full cargo test --workspace (all passed; one explicit model-download test ignored), Allium check/analyse for modified specs, final macOS bundle, and real-app first-save test. The app stayed responsive in 0.91 s, no blank translation row was created, nothing was published, and all three test drafts were removed through the core deletion engine.

Implemented in c4e5dbb. Automatic first-save translation now rejects blank AI fields before persistence, retries one failed attempt with a localized warning toast, reports the second failure as a task error toast, resumes a missing media cascade after partial success, emits a post update so open editors refresh, and preserves unsaved editor changes. The UI now schedules from hydrated AI settings so Keychain resolution runs only in the background worker and cannot freeze Save. Verified against bDS2 manual-save/task/editor behavior and the Allium translation/action rules. Gates: fmt, workspace build, Clippy with warnings denied, full cargo test --workspace (all passed; one explicit model-download test ignored), Allium check/analyse for modified specs, final macOS bundle, and real-app first-save test. The app stayed responsive in 0.91 s, no blank translation row was created, nothing was published, and all three test drafts were removed through the core deletion engine.
hugo closed this issue 2026-08-01 10:20:09 +00:00
Sign in to join this conversation.