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
10 changes: 2 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -590,8 +590,8 @@ jobs:

native-capsule:
# The capsule crates compile into the desktop shells. They get their own macOS + Windows
# runners only because their `ui,host` feature set is not built anywhere else (the shells
# use `build:native-capsule:dev`), and that warm cache makes the job ~40 s. It is gated on
# runners only because their `ui,host` feature set is not built anywhere else, and that
# warm cache makes the job ~40 s. It is gated on
# its own area, so the common PR pays zero runners for it: measured on run 40510306688,
# moving these three commands into `cross-platform` cost 117 s on the critical-path Windows
# job, which is more than the two runners it saved.
Expand Down Expand Up @@ -736,10 +736,6 @@ jobs:
if: runner.os == 'macOS'
run: npm test

# Direct Cargo checks do not execute Tauri beforeBuildCommand.
- name: Build native capsule for Tauri checks
run: npm run build:native-capsule:dev

- name: Install pinned Codex CLI for sandbox contract
if: runner.os == 'macOS'
run: npm install --global @openai/codex@0.146.0
Expand Down Expand Up @@ -880,8 +876,6 @@ jobs:
openless-all/app/src-tauri/backend-tests -> target
- run: npm ci
- run: npm run build
- name: Build native capsule for Tauri checks
run: npm run build:native-capsule:dev
- name: Check Tauri backend with Rust 1.99 MSRV
run: cargo +1.99.0 check --locked --manifest-path src-tauri/Cargo.toml --timings
- name: Compile backend tests with Rust 1.99 MSRV
Expand Down
309 changes: 0 additions & 309 deletions docs/desktop-low-memory-mode.md

This file was deleted.

120 changes: 0 additions & 120 deletions docs/macos-native-capsule-fixes.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -172,13 +172,6 @@ pub const PREFERENCE_FIELDS: &[PreferenceField] = &[
shape: PreferenceShape::Text,
reason: "device_bound",
},
PreferenceField {
rust_name: "low_memory_background_enabled",
key: "lowMemoryBackgroundEnabled",
class: PreferenceClass::DeviceProfile,
shape: PreferenceShape::Boolean,
reason: "device_bound",
},
PreferenceField {
rust_name: "low_latency_dictation_enabled",
key: "lowLatencyDictationEnabled",
Expand Down
1 change: 1 addition & 0 deletions openless-all/app/crates/openless-core/src/preferences.rs
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ fn strip_local_only_preferences(value: &mut serde_json::Value) {
object.remove("lowLatencyDictationEnabled");
object.remove("echoCancellationEnabled");
object.remove("audioDsp");
// Retire the removed low-memory mode from legacy sync payloads.
object.remove("lowMemoryBackgroundEnabled");
}
Comment on lines 126 to 131

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep obsolete low-memory preference out of cloud sync

For upgraded installations that still have lowMemoryBackgroundEnabled in their persisted preferences, preferences_json_preserving_unknown retains this now-unknown key, but removing it from strip_local_only_preferences allows sync_snapshot to export it as an unregistered preference document. This republishes a device-local setting that the refactor removed; keep stripping or explicitly migrate the legacy key before syncing.

Useful? React with 👍 / 👎.

}
Expand Down
27 changes: 0 additions & 27 deletions openless-all/app/crates/openless-core/src/shared_types.rs
Original file line number Diff line number Diff line change
Expand Up @@ -440,9 +440,6 @@ pub struct UserPreferences {
/// This is opt-in because the OS microphone indicator remains active while enabled.
#[serde(default)]
pub low_latency_dictation_enabled: bool,
/// Desktop-only UI resource policy. Applied on the next application launch.
#[serde(default)]
pub low_memory_background_enabled: bool,
/// Play an instantly synthesized cue when the recording hotkey enters the
/// recording state ("recording started"). Default on; can be disabled in
/// the "Recording & Input" settings. The cue is synthesized by the capsule
Expand Down Expand Up @@ -1053,8 +1050,6 @@ struct UserPreferencesWire {
stable_transcription_enabled: bool,
#[serde(default)]
low_latency_dictation_enabled: bool,
#[serde(default)]
low_memory_background_enabled: bool,
#[serde(default = "default_true")]
audio_cue_on_record: bool,
#[serde(default)]
Expand Down Expand Up @@ -1344,7 +1339,6 @@ impl Default for UserPreferencesWire {
audio_dsp: prefs.audio_dsp.normalized(),
stable_transcription_enabled: prefs.stable_transcription_enabled,
low_latency_dictation_enabled: prefs.low_latency_dictation_enabled,
low_memory_background_enabled: prefs.low_memory_background_enabled,
audio_cue_on_record: prefs.audio_cue_on_record,
silence_auto_stop_enabled: prefs.silence_auto_stop_enabled,
silence_auto_stop_seconds: prefs.silence_auto_stop_seconds,
Expand Down Expand Up @@ -1569,7 +1563,6 @@ impl<'de> Deserialize<'de> for UserPreferences {
audio_dsp: wire.audio_dsp.normalized(),
stable_transcription_enabled: wire.stable_transcription_enabled,
low_latency_dictation_enabled: wire.low_latency_dictation_enabled,
low_memory_background_enabled: wire.low_memory_background_enabled,
audio_cue_on_record: wire.audio_cue_on_record,
silence_auto_stop_enabled: wire.silence_auto_stop_enabled,
silence_auto_stop_seconds: wire.silence_auto_stop_seconds,
Expand Down Expand Up @@ -1972,7 +1965,6 @@ impl Default for UserPreferences {
audio_dsp: Default::default(),
stable_transcription_enabled: false,
low_latency_dictation_enabled: false,
low_memory_background_enabled: false,
audio_cue_on_record: true,
silence_auto_stop_enabled: false,
silence_auto_stop_seconds: default_silence_auto_stop_seconds(),
Expand Down Expand Up @@ -4057,22 +4049,3 @@ mod capsule_transcript_preferences_tests {
);
}
}

#[cfg(test)]
mod low_memory_background_preferences_tests {
use super::UserPreferences;

#[test]
fn low_memory_background_is_opt_in_and_keeps_low_latency_preference() {
let old: UserPreferences = serde_json::from_str("{}").unwrap();
assert!(!old.low_memory_background_enabled);
let preferences: UserPreferences = serde_json::from_str(
r#"{"lowMemoryBackgroundEnabled":true,"lowLatencyDictationEnabled":true}"#,
)
.unwrap();
let restored: UserPreferences =
serde_json::from_value(serde_json::to_value(preferences).unwrap()).unwrap();
assert!(restored.low_memory_background_enabled);
assert!(restored.low_latency_dictation_enabled);
}
}
11 changes: 2 additions & 9 deletions openless-all/app/harmony/ipc-audit.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"scope": "Static shared IPC command coverage; excludes event subscriptions, dynamic commands and desktop-only calls outside src/lib/ipc.",
"total": 200,
"total": 199,
"wired": 103,
"missing": 97,
"missing": 96,
"commands": [
{
"name": "accept_pending_correction",
Expand Down Expand Up @@ -837,13 +837,6 @@
],
"implementation": "rust"
},
{
"name": "native_capsule_status",
"calledFrom": [
"src/lib/ipc/settings.ts"
],
"implementation": "unimplemented"
},
{
"name": "open_android_local_migration",
"calledFrom": [
Expand Down
4 changes: 1 addition & 3 deletions openless-all/app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@
"check:android-shizuku-scaffolding": "node scripts/merge-android-shizuku-manifest.test.mjs && node scripts/patch-android-shizuku-deps.test.mjs",
"format": "prettier --write \"src/**/*.{ts,tsx,css}\" \"android/frontend/**/*.{ts,tsx}\" \"scripts/**/*.{js,mjs,sh}\" \"*.{ts,json,html,sh}\" \"assets/remote-input/*.{js,css,html}\"",
"format:check": "prettier --check \"src/**/*.{ts,tsx,css}\" \"android/frontend/**/*.{ts,tsx}\" \"scripts/**/*.{js,mjs,sh}\" \"*.{ts,json,html,sh}\" \"assets/remote-input/*.{js,css,html}\"",
"test:ui-motion": "playwright test",
"build:native-capsule": "node scripts/build-native-capsule.mjs",
"build:native-capsule:dev": "node scripts/build-native-capsule.mjs --debug"
"test:ui-motion": "playwright test"
},
"dependencies": {
"@base-ui/react": "^1.6.0",
Expand Down
44 changes: 0 additions & 44 deletions openless-all/app/scripts/build-native-capsule.mjs

This file was deleted.

Loading
Loading