Repository navigation
Releases: rcarmo/python-umcp-calibre
Release list
v0.3.4 — Calibre 9.15.0 contract
Pin fail-closed mutation discovery and execution to audited Calibre 9.15.0. Includes source-contract tests against upstream v9.15.0 and isolated Calibre 9.15 runtime checks for library copy, export, configured mail, and authenticated content-server behaviour. No production-library mutations were used for validation.
calibre-umcp 0.3.3
Scheduled-news recurrence control
- Adds
disable_scheduled_news_mutationfor a known Calibre recipe. It uses the GUI-threadRecipeModel.un_schedule_recipe()API, never edits scheduler files ormetadata.dbdirectly, and remains guarded by the established mutation policy, Calibre 9.12.0 runtime requirement, UI token, explicit mutation enablement and active-library/generation checks. - Rejects queued or running Fetch News work, verifies the recipe is still registered but unscheduled, preserves its schedule, customisation and library records, and retains prior schedule and
last_downloadedmetadata in bridge preferences for a future explicit resume feature. - Disabled recipes remain visible through
list_scheduled_news_readonlywithenabled: false,previous_schedule_typeandprevious_schedule; repeated disable calls are idempotent. No re-enable mutation is included. - Fixes recognition of valid, childless Calibre recipe XML elements in the live recipe model.
Validation
- 130 unit tests passed (9 expected Calibre-contract skips); compilation and diff checks passed.
- Live deployment verified on Calibre 9.12.0: bridge 0.3.3, schema 2, toolset 8.
Closes #9.
v0.3.2
Add a guarded native scheduled-news schedule mutation using Calibre RecipeModel, with active-library guards, live verification, preservation checks, and rollback.
calibre-umcp 0.3.1
Fixes native scheduled-news execution under Calibre 9.12.
Calibre delivers Scheduler.start_recipe_fetch through a queued Qt connection. The bridge now waits briefly for event delivery and correlates the native Fetch News job by recipe URN before reporting success.
Validation: 124 tests passed (9 skipped).