francwa
|
1723b9fa53
|
feat: release parser, media type detection, ffprobe integration
Replace the old domain/media release parser with a full rewrite under
domain/release/:
- ParsedRelease with media_type ("movie" | "tv_show" | "tv_complete" |
"documentary" | "concert" | "other" | "unknown"), site_tag, parse_path,
languages, audio_codec, audio_channels, bit_depth, hdr_format, edition
- Well-formedness check + sanitize pipeline (_is_well_formed, _sanitize,
_strip_site_tag) before token-level parsing
- Multi-token sequence matching for audio (DTS-HD.MA, TrueHD.Atmos…),
HDR (DV.HDR10…) and editions (DIRECTORS.CUT…)
- Knowledge YAML: file_extensions, release_format, languages, audio,
video, editions, sites/c411
New infrastructure:
- ffprobe.py — single-pass probe returning MediaInfo (video, audio
tracks, subtitle tracks)
- find_video.py — locate first video file in a release folder
New application helpers:
- detect_media_type — filesystem-based type refinement
- enrich_from_probe — fill missing ParsedRelease fields from MediaInfo
New agent tools:
- analyze_release — parse + detect type + ffprobe in one call
- probe_media — standalone ffprobe for a specific file
New domain value object:
- MediaInfo + AudioTrack + SubtitleTrack (domain/shared/media_info.py)
Testing CLIs:
- recognize_folders_in_downloads.py — full pipeline with colored output
- probe_video.py — display MediaInfo for a video file
|
2026-05-12 16:14:20 +02:00 |
|
francwa
|
249c5de76a
|
feat: major architectural refactor
- Refactor memory system (episodic/STM/LTM with components)
- Implement complete subtitle domain (scanner, matcher, placer)
- Add YAML workflow infrastructure
- Externalize knowledge base (patterns, release groups)
- Add comprehensive testing suite
- Create manual testing CLIs
|
2026-05-11 21:55:06 +02:00 |
|
francwa
|
62b5d0b998
|
Settings + fix startup
|
2026-04-30 12:41:42 +02:00 |
|
francwa
|
ab1df3dd0f
|
fix: forgot to lint/format
|
2026-01-01 04:48:32 +01:00 |
|
francwa
|
c50091f6bf
|
feat: added proper settings handling
|
2026-01-01 04:48:32 +01:00 |
|
francwa
|
52f025ae32
|
chore: ran linter & formatter again
|
2025-12-27 20:07:48 +01:00 |
|
francwa
|
261a1f3918
|
fix: fixed real data directory being used in tests
|
2025-12-27 19:48:13 +01:00 |
|
francwa
|
3880a4ec49
|
chore: ran linter and formatter
|
2025-12-27 19:41:22 +01:00 |
|
francwa
|
6195abbaa5
|
chore: fixed imports and tests configuration
|
2025-12-27 19:39:36 +01:00 |
|
francwa
|
d10c9160f3
|
infra: renamed broken references to alfred
|
2025-12-24 08:09:26 +01:00 |
|
francwa
|
1f88e99e8b
|
infra: reorganized repo
|
2025-12-24 07:50:09 +01:00 |
|
francwa
|
ec7d2d623f
|
Updated folder structure (for Docker)
|
2025-12-09 05:35:59 +01:00 |
|
francwa
|
6940c76e58
|
Updated README and did a little bit of cleanup
|
2025-12-09 04:24:16 +01:00 |
|
francwa
|
0c48640412
|
Fixed all ruff issues
|
2025-12-07 05:59:53 +01:00 |
|
francwa
|
a21121d025
|
Fix more ruff issues
|
2025-12-07 05:42:29 +01:00 |
|
francwa
|
10704896f9
|
Fix some ruff issues in code
|
2025-12-07 05:33:39 +01:00 |
|
francwa
|
4eae1d6d58
|
Formatting
|
2025-12-07 03:33:51 +01:00 |
|
francwa
|
a923a760ef
|
Unfucked gemini's mess
|
2025-12-07 03:27:45 +01:00 |
|
francwa
|
5b71233fb0
|
Recovered tests
|
2025-12-06 23:55:21 +01:00 |
|
francwa
|
9ca31e45e0
|
feat!: migrate to OpenAI native tool calls and fix circular deps (#fuck-gemini)
- Fix circular dependencies in agent/tools
- Migrate from custom JSON to OpenAI tool calls format
- Add async streaming (step_stream, complete_stream)
- Simplify prompt system and remove token counting
- Add 5 new API endpoints (/health, /v1/models, /api/memory/*)
- Add 3 new tools (get_torrent_by_index, add_torrent_by_index, set_language)
- Fix all 500 tests and add coverage config (80% threshold)
- Add comprehensive docs (README, pytest guide)
BREAKING: LLM interface changed, memory injection via get_memory()
|
2025-12-06 19:11:05 +01:00 |
|