|
|
874de68fb5
|
wire mid-roll breaks into schedule engine with chapter-aware splitting
|
2026-07-12 14:12:59 +02:00 |
|
|
|
79e975f057
|
wire gap_filler into schedule engine, API, MCP
|
2026-07-12 14:08:55 +02:00 |
|
|
|
8edd7a9c0b
|
wire interstitial insertion into schedule engine resolve_block
|
2026-07-12 14:05:33 +02:00 |
|
|
|
8e4f724562
|
add integration tests for all 6 FillStrategy variants, role filter on LibrarySearchFilter
|
2026-07-12 14:02:45 +02:00 |
|
|
|
a6558e15b2
|
kill LibraryItem, unify to MediaItem; decouple schedule engine from providers
ADR-0001: MediaItem absorbs LibraryItem fields (provider_id, external_id,
collection_name, collection_type, synced_at, role/MediaRole).
LibraryItem + LibraryItemRow deleted. All ports/adapters/tests updated.
ADR-0002: schedule engine takes LibraryQuery instead of IProviderRegistry.
Algorithmic blocks query library via search(), manual blocks via get_by_id().
get_stream_url removed from engine; provider_registry moved to ScheduleDeps
for playback-time stream URL resolution in application layer.
BlockContent provider_id field removed (meaningless when querying library).
|
2026-07-12 07:02:08 +02:00 |
|
|
|
773e228e21
|
rename RecyclePolicy→RotationPolicy, collapse AccessMode, clean OIDC refs
|
2026-07-12 06:50:25 +02:00 |
|
|
|
c0e685a4ee
|
refactor(domain): Row structs for from_persistence, ID newtypes, kill clippy.toml
- delete clippy.toml (too-many-arguments-threshold=20 hack)
- ChannelRow/MediaItemRow/LibraryItemRow structs for from_persistence
- SnapshotId/ActivityEventId/PlaybackRecordId newtypes
- DomainError variants use ChannelId/UserId instead of Uuid
- ActivityEvent.channel_id: Option<ChannelId> not Option<Uuid>
- InMemory repos key on newtype IDs
- AlgorithmicParams struct for schedule engine
- update all adapters/application/presentation callers
|
2026-07-12 05:00:49 +02:00 |
|
|
|
98a54245b1
|
domain crate code quality cleanup
strip all comments, extract tests to tests/ dirs,
remove #[allow(clippy::...)], extract magic numbers to
constants, refactor schedule engine private methods to
use param structs, add Default impls, clippy.toml for
persistence constructors
|
2026-07-12 04:02:12 +02:00 |
|
|
|
7ddf94c75f
|
domain services: schedule engine, fill strategies, IPTV
|
2026-07-12 01:35:01 +02:00 |
|