Correct media playback views and preserve URL import ownership #1

Merged
conrad merged 3 commits from codex/media-acquisition-ownership into main 2026-09-05 03:42:34 -04:00
Owner

Videos without transcripts appeared under Audio, while transcript layouts were presented as separate media types. Show the actual Video/Audio type, keep playback controls present, and make Transcript an optional control within the player. Toggling preserves the media element and playback position. Consolidate the duplicated playback branches and delete their unused CSS.

Authenticated URL imports now grant ownership within canonical import transactions, scope source/provider identity per user, and return all imported or reused record IDs. A singular completion link appears only for one distinct result. Existing CLI report output and native non-article catalog visibility remain unchanged.

Built-in HTTP acquisition validates public destinations and complete DNS answer sets, pins those answers to the connector, and disables proxies. Reqwest handles redirects through the same checked policy, replacing the manual redirect loop. Rejected destinations cannot fall back to an archive service. External downloader subprocess networking and whole-job quotas remain outside this guard.

Validation: the ownership/network baseline passed 797 library and 10 integration tests (four existing opt-in ignores). The final redirect change passed six HTTP and four direct-acquisition tests; the player correction passed 62 frontend/controller tests. Full production web/WASM build, typecheck, and server/client suites run in the ordinary main CI pipeline before deployment. Local typecheck requires the generated WASM declarations supplied by that build.

Release context: production is currently on 4b8d1438. This release also includes main's acquisition migration45. A fresh verified target backup is retained; reverting to the old image alone cannot reopen a database that records migration45.

Videos without transcripts appeared under Audio, while transcript layouts were presented as separate media types. Show the actual Video/Audio type, keep playback controls present, and make Transcript an optional control within the player. Toggling preserves the media element and playback position. Consolidate the duplicated playback branches and delete their unused CSS. Authenticated URL imports now grant ownership within canonical import transactions, scope source/provider identity per user, and return all imported or reused record IDs. A singular completion link appears only for one distinct result. Existing CLI report output and native non-article catalog visibility remain unchanged. Built-in HTTP acquisition validates public destinations and complete DNS answer sets, pins those answers to the connector, and disables proxies. Reqwest handles redirects through the same checked policy, replacing the manual redirect loop. Rejected destinations cannot fall back to an archive service. External downloader subprocess networking and whole-job quotas remain outside this guard. Validation: the ownership/network baseline passed 797 library and 10 integration tests (four existing opt-in ignores). The final redirect change passed six HTTP and four direct-acquisition tests; the player correction passed 62 frontend/controller tests. Full production web/WASM build, typecheck, and server/client suites run in the ordinary main CI pipeline before deployment. Local typecheck requires the generated WASM declarations supplied by that build. Release context: production is currently on 4b8d1438. This release also includes main's acquisition migration45. A fresh verified target backup is retained; reverting to the old image alone cannot reopen a database that records migration45.
Keep transcripts inside the video and audio player
All checks were successful
deploy-fly / validate (push) Successful in 13m32s
deploy-fly / deploy (push) Successful in 5m38s
5cfac6aaa7
conrad changed title from Preserve URL import ownership and restrict built-in HTTP destinations to Correct media playback views and preserve URL import ownership 2026-09-05 03:42:33 -04:00
conrad merged commit 5cfac6aaa7 into main 2026-09-05 03:42:34 -04:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
conrad/media!1
No description provided.