andreagrandi / andreagrandi/draftomen

Manage installed narration models and persisted opt-in

Đang mở
#458 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
draftomen enhancement size: M
Ngôn ngữ chính
Python
Star
0
Fork
0
Merge trung bình
1 giờ 23 phút
Pull request đã merge (30 ngày)
181

Mô tả

## Problem

Installed files, user opt-in, runtime compatibility, and update availability are distinct states; conflating them risks silent downloads, lost settings, or unsafe deletion.

## Proposed change

Add the shared model inventory/lifecycle and persistent preference service. Support not-installed, downloading, installed-disabled, enabled, incompatible/update-available, and recoverable error states. Default to disabled. Installation, enable/disable, explicit update, and removal remain separate intentions. Reuse application-data paths and atomic preference persistence. Define exclusive ownership and safe coordination of install/remove/update with active model use; frontend/session integration follows in Coordinate narration through the shared live session.

## Acceptance Criteria

- [ ] AC1: Lifecycle tests show installing does not silently enable narration, disabling retains files, and enabling requires a compatible verified installation.
- [ ] AC2: Restart and malformed-preference checks preserve valid user choices and fall back safely without implicit download or load.
- [ ] AC3: Compatibility tests detect unsupported/corrupt installations and available supported revisions without downloading updates automatically.
- [ ] AC4: Concurrent install/remove/update and active-use boundary tests enforce the #454 ownership policy without a half-installed usable model or access to removed files.
- [ ] AC5: Removal/reinstall checks delete only managed model data and leave ratings, images, other preferences, and core recommendation use intact.

## Implementation classification

- **Estimated size:** M
- **Orchestration risk:** High
- **Reason:** Persistent state, compatibility, and concurrent file lifecycle must remain consistent across restarts.

## Dependencies

Direct prerequisites: #457. Consumer: Coordinate narration through the shared live session.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.