V4.5 Complete - Enhanced trancription context, added option to restranscribe source under different models.

This commit is contained in:
Jim Lancaster
2026-08-16 09:06:56 -05:00
parent bdb1b31b0a
commit 7054cd8af9
28 changed files with 2883 additions and 1485 deletions
+1 -2
View File
@@ -57,5 +57,4 @@ Each page contract contains:
## Current Baseline
These contracts describe the completed V4 through V4.4 behavior.
V4.5 planned behavior remains defined by its frozen scope and implementation plan until implementation updates the applicable page contracts.
These contracts describe the completed V4 through V4.5 behavior.
+3 -1
View File
@@ -36,6 +36,8 @@ Jobs manages transcription processing runs. A Job belongs to one Document, links
- Files can be removed individually or cleared before submission.
- Helper text explains numeric filename prefixes for page ordering.
- Submission creates the Job, Source records, and JobSource links, notifies the worker, and opens Job Detail.
- When opened with `source_id`, creation becomes a retranscription flow: Source and Document are locked, Provider is
read-only, Model is restricted to `PROVIDER_MODELS`, no upload is accepted, and one existing Source is linked.
## Detail and Lifecycle Behavior
@@ -61,7 +63,7 @@ Jobs manages transcription processing runs. A Job belongs to one Document, links
- The page explains that resubmission queues failed linked Sources while preserving immutable prior attempt evidence.
- The service blocks submission while processing is active or when no failed Sources exist.
- `JobSource` remains the latest compatibility projection, while every provider call appends an `ExecutionAttempt`.
- The latest successful `Source.raw_transcription` projection remains available while a retry is pending or fails.
- The selected `Source.raw_transcription` projection remains available while a retry is pending or fails.
- Success reports the number of resubmitted Sources and returns to Job Detail.
## Delete Behavior
+9 -1
View File
@@ -30,14 +30,20 @@ The list accepts optional `document_id` and `job_id` query parameters. Document
- The heading shows page number, upload name, and Source ID.
- **Back to Sources** returns to the global list.
- **Retranscribe Source** opens Create Processing Job with this Source and its Document locked.
- **Delete Source** opens the guarded delete route.
- Previous and Next navigate only among Sources belonging to the same Document in page order; unavailable boundary actions are disabled.
- The media viewer resolves the stored Source path through the configured upload root.
- Transcription Text is read-only and prefers the latest JobSource transcription, then the Source projection.
- Transcription Text is read-only and displays the preferred machine projection, with a legacy latest-JobSource
fallback only when no Source projection exists.
- Editable Revision is seeded from an existing revision or the machine transcription.
- Source Metadata shows upload name, stored filename, page number, Document Name, Document ID, and stored path. Source ID appears in the page-header subtitle.
- SourceJob Metadata shows latest status, Job ID, execution time, provider, model, prompt, and failure detail.
- Revision Logistics shows revised state, last-revised time, and upload time.
- Candidate Machine Transcriptions remains compact until a candidate is expanded, then compares it with the preferred
machine result and requires confirmation before **Use this transcription**.
- Candidate promotion does not alter a human revision. Empty states distinguish no machine result from no candidates.
- An orientation-normalized artifact appears in evidence only when recognized metadata required a physical rotation.
## Provider Evidence
@@ -47,6 +53,7 @@ The list accepts optional `document_id` and `job_id` query parameters. Document
- Historical `raw_api_response` values are labeled as OpenRouter SDK response snapshots.
- Missing evidence has an explicit empty state.
- Historical executions explicitly state that exact transport evidence was not captured.
- Quality warning artifacts remain attached to their machine attempt and are not recomputed during page rendering.
- **Export Evidence** downloads a versioned package containing source identity, attempts, artifacts, relationships,
schema versions, and integrity digests without source binaries, credentials, or machine-local source paths.
@@ -71,6 +78,7 @@ The list accepts optional `document_id` and `job_id` query parameters. Document
- List columns and alignments match this contract and omit Stored Filename.
- Previous/next navigation never crosses Document boundaries.
- Detail keeps machine output read-only and human revision separately editable.
- Retranscription, candidate comparison, warnings, and explicit promotion preserve every prior attempt.
- Empty, failed, and missing-evidence states remain explicit.
- JSON evidence is readable without being mislabeled as native transport evidence.
- Delete cannot remove a Source with processing-history links.