andreagrandi / andreagrandi/draftomen

Download and verify narration artifacts on explicit request

Open
#457 0 comments 0 reactions 0 assignees View on GitHub
draftomen enhancement size: M
Dominant language
Python
Stars
0
Forks
0
Avg merge
1h 23m
Merged PRs (30d)
181

Description

## Problem

Large model files need a cancellable, integrity-checked installation path that cannot leave an interrupted or corrupt artifact appearing installed.

## Proposed change

Implement a frontend-neutral acquisition service using #456 metadata and the existing application-data and verified atomic-install conventions. Require an explicit install request, expose expected size/progress, bound transfers, validate locations and checksums, and stage before committing installation. Adopt the resume or safe-restart decision from #454; do not claim resumability if not implemented. Own only artifact acquisition, not preference state or UI.

## Acceptance Criteria

- [ ] AC1: An explicit-download smoke check shows no request occurs during construction/discovery and progress reports expected and received bytes once installation is requested.
- [ ] AC2: Corrupt, oversized, truncated, and failed downloads never become usable installations; verified by isolated acquisition failure tests.
- [ ] AC3: Interruption/retry tests demonstrate the documented resume or restart behavior and preserve any previously usable installation.
- [ ] AC4: Destination/origin boundary tests prevent writes outside the managed model subtree and reject locations outside the agreed distribution policy.
- [ ] AC5: A real pinned-artifact download smoke check verifies the committed installed files against the published manifest.

## Implementation classification

- **Estimated size:** M
- **Orchestration risk:** High
- **Reason:** Network interruption, integrity verification, and atomic multi-file installation require explicit failure coverage.

## Dependencies

Direct prerequisites: #456. Consumer: Manage installed narration models and persisted opt-in.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.