andreagrandi / andreagrandi/draftomen

Run bounded local narration in a reusable worker

Abierto
#459 0 comentarios 0 reacciones 0 asignados Ver en GitHub
draftomen enhancement size: M
Lenguaje dominante
Python
Estrellas
0
Forks
0
Merge medio
1 h 23 min
PR fusionados (30 d)
181

Descripción

## Problem

Native inference can block the interface, reload expensive state on every pick, or fail independently of the Python application.

## Proposed change

Implement the #454 local runtime boundary consuming #452 facts through #455 prompt/admission logic. Use the selected worker/isolation strategy, lazy load and reuse, deterministic-leaning settings, bounded output/time, cooperative cancellation where supported, and the selected unload/shutdown policy. Accept a verified artifact location; do not download from the inference path. Keep frontend imports and scheduling policy outside the service. Native faults must degrade through the selected isolation boundary rather than terminate recommendation delivery.

## Acceptance Criteria

- [ ] AC1: A real-runtime offline smoke check produces admitted narration using the pinned local artifact without API keys or external connections.
- [ ] AC2: A repeated-request instrumented check shows lazy first load and reuse for later picks; disabled application startup neither imports/initializes heavy runtime behavior nor loads weights as defined by #454.
- [ ] AC3: Cancellation, timeout, malformed-output, and worker/native-failure checks return bounded failure outcomes without bringing down the recommendation process.
- [ ] AC4: A repeated-corpus run meets the #454 quality, variability, generation and resource limits.
- [ ] AC5: Disable/shutdown/unload checks release worker resources according to policy without hanging the application.

## Implementation classification

- **Estimated size:** M
- **Orchestration risk:** High
- **Reason:** Native dependency failures, resource ownership, streaming, and cancellation need isolation and real-runtime proof.

## Dependencies

Direct prerequisites: #455. Consumer: Coordinate narration through the shared live session. Packaging consumer: Package the optional local inference component. Artifact identity is already fixed by #454; production publication is owned by #456.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.