Skip to content

Refactor SQLite transactions, settings, and web reader - #5

Merged
dowellhz merged 1 commit into
mainfrom
agent/refactor-sqlite-settings-web
Aug 13, 2026
Merged

Refactor SQLite transactions, settings, and web reader#5
dowellhz merged 1 commit into
mainfrom
agent/refactor-sqlite-settings-web

Conversation

@dowellhz

Copy link
Copy Markdown
Owner

What changed

  • Added a shared checked SQLite transaction executor and migrated word records, PDF embeddings, and personal vocabulary writes.
  • Split AI settings construction into focused General and Model builders, and separated speech runtime downloads/diagnostics from speech selection logic.
  • Split the Web Reader entry script into focused TTS and selection modules while preserving the existing WebKit bridge API.
  • Updated regression tests and architecture/code-map documentation.

Why

Several files were at or near the repository's 500-line limit and combined unrelated responsibilities. SQLite transaction handling was also duplicated across stores, which allowed PersonalVocabularyProfileStore to return success without checking whether COMMIT succeeded.

Impact

There should be no user-visible behavior change. The new boundaries make transaction failure handling consistent, reduce controller and JavaScript module size, and make future changes easier to test without exceeding the line limit.

Validation

  • ./tests/run.sh — all 144 logic tests passed
  • ./scripts/check.sh --no-build — passed
  • ./scripts/check_ui_theme.sh --warnings-as-errors — passed
  • ./scripts/build_app.sh — debug arm64 build and signing passed
  • git diff --check — passed

@dowellhz
dowellhz marked this pull request as ready for review August 13, 2026 01:30
@dowellhz
dowellhz merged commit 6fdc2ee into main Aug 13, 2026
2 checks passed
@dowellhz
dowellhz deleted the agent/refactor-sqlite-settings-web branch August 13, 2026 01:30
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.

1 participant