-
02e478a157
refactor(domain): freeze Movie and Episode, switch track collections to tuple
main
francwa
2026-05-21 13:40:22 +02:00
-
3dc73a5214
feat(release): add fullwidth vertical bar | (U+FF5C) to separators
francwa
2026-05-21 08:05:56 +02:00
-
88f156b7a4
refactor(subtitles): rename SubtitleCandidate → SubtitleScanResult
francwa
2026-05-21 08:05:46 +02:00
-
5107cb32c0
feat(release): InspectedResult.recommended_action centralizes exclusion decision
francwa
2026-05-21 07:54:17 +02:00
-
b7979c0f8b
refactor(release): freeze ParsedRelease + enrich_from_probe returns new instance
francwa
2026-05-21 07:51:49 +02:00
-
9f1ce94690
refactor(application): inject kb/prober into resolve_destination use cases
francwa
2026-05-21 07:46:13 +02:00
-
5e0ed11672
refactor(release): rename ParsePath enum to TokenizationRoute
francwa
2026-05-21 07:39:42 +02:00
-
0246f85ef8
refactor(release): move codec mappings from code to YAML knowledge
francwa
2026-05-21 07:37:42 +02:00
-
e62dc90bd1
refactor(release): make tech_string a derived property
francwa
2026-05-21 07:33:53 +02:00
-
688c37bbec
docs(changelog): recap session 2026-05-20 tech-debt cleanup
francwa
2026-05-20 23:57:06 +02:00
-
757e4045ee
refactor(release): ParsedRelease.media_type & parse_path are strict enums
francwa
2026-05-20 23:52:30 +02:00
-
c3767aacb6
refactor(release): rename ParsedRelease.normalised → clean
francwa
2026-05-20 23:50:05 +02:00
-
5bcf22b408
refactor(shared): Language VO is strict; from_raw() factory for un-normalized input
francwa
2026-05-20 23:48:30 +02:00
-
cfa9f54d9f
refactor(shared): FilePath VO uses __post_init__ instead of custom __init__
francwa
2026-05-20 23:47:03 +02:00
-
f0aaf50c97
refactor(subtitles): RuleScope.level → RuleScopeLevel enum
francwa
2026-05-20 23:46:22 +02:00
-
a09262b33f
chore(settings): remove unused min_movie_size_bytes
francwa
2026-05-20 23:41:41 +02:00
-
9c7cd66d2b
Merge branch 'refactor/flatten-shared-media'
francwa
2026-05-20 23:35:52 +02:00
-
-
83dbed887b
refactor(domain): flatten shared/media package into single module
francwa
2026-05-20 23:35:49 +02:00
-
-
0c9489e16b
Merge branch 'feat/parser-phase-d'
francwa
2026-05-20 23:30:36 +02:00
-
-
621bb96995
fix(release/parser): pre-strip apostrophes so titles like Don't parse cleanly
francwa
2026-05-20 23:29:10 +02:00
-
448ef3b79c
fix(release/parser): recognize Sxx-yy season range as tv_complete
francwa
2026-05-20 23:26:40 +02:00
-
b1c7f35ffb
fix(release/parser): drop pure-punctuation TITLE tokens at assembly
francwa
2026-05-20 23:24:40 +02:00
-
5bbdc9081f
fix(release/parser): collapse chained multi-episode markers to full range
francwa
2026-05-20 23:23:08 +02:00
-
-
5d7b214af2
Merge branch 'refactor/language-port'
francwa
2026-05-20 23:20:18 +02:00
-
-
18267d0165
refactor(language): LanguageRepository port + SubtitleKnowledgeBase wired to it
francwa
2026-05-20 23:18:25 +02:00
-
-
19fe8a519a
Merge branch 'feat/release-inspect-orchestrator'
francwa
2026-05-20 09:31:22 +02:00
-
-
a0d1846ff2
refactor(release): move detect_media_type & enrich_from_probe to application/release
francwa
2026-05-20 09:29:58 +02:00
-
0fb59a4581
feat(filesystem): wire inspect_release into resolve_destination
francwa
2026-05-20 09:26:30 +02:00
-
e79ca462b8
fix(release): refresh tech_string after enrich_from_probe
francwa
2026-05-20 09:26:09 +02:00
-
03aa844d7d
feat(release): inspect_release orchestrator + InspectedResult VO
francwa
2026-05-20 09:15:29 +02:00
-
c303efea48
refactor(probe): consolidate full probe() into MediaProber port
francwa
2026-05-20 09:11:24 +02:00
-
-
5db350a1df
Merge branch 'feat/release-parser-scoring'
francwa
2026-05-20 08:47:38 +02:00
-
-
12dc796ea2
docs(changelog): freeze confidence scoring + exclusion work block
francwa
2026-05-20 08:47:29 +02:00
-
9ddd85929e
feat(release): pre-pipeline exclusion helpers
francwa
2026-05-20 01:34:32 +02:00
-
ed7680b58f
docs(changelog): log parse-confidence scoring + ParseReport tuple
francwa
2026-05-20 01:21:47 +02:00
-
b4c9efd13b
feat(release): parse_release returns (ParsedRelease, ParseReport)
francwa
2026-05-20 01:21:30 +02:00
-
98c688f29b
feat(release): foundations for parse-confidence scoring
francwa
2026-05-20 01:21:17 +02:00
-
-
fcd80763e2
Merge branch 'refactor/release-parser-v2'
francwa
2026-05-20 01:08:20 +02:00
-
-
629387591f
docs(changelog): freeze release parser v2 work block (2026-05-20)
francwa
2026-05-20 01:08:17 +02:00
-
230a7ab88a
docs(changelog): log SHITTY simplification + distributor split
francwa
2026-05-20 01:03:52 +02:00
-
3737f66851
refactor(release): simplify SHITTY to dict-driven token tagging
francwa
2026-05-20 01:03:25 +02:00
-
fd3bd1ad8c
feat(release): distinguish streaming distributors from sources
francwa
2026-05-20 01:03:11 +02:00
-
7dc7f0c241
feat(release): v2 enricher pass for audio/video-meta/edition/language
francwa
2026-05-20 00:26:05 +02:00
-
075a827b0e
feat(release): wire v2 EASY path for known release groups
francwa
2026-05-20 00:21:11 +02:00
-
a2c917618f
feat(release): scaffold v2 parser package (annotate-based pipeline)
francwa
2026-05-20 00:12:33 +02:00
-
-
9f10f4e0ad
Merge branch 'refactor/domain-release-knowledge'
francwa
2026-05-19 22:05:36 +02:00
-
-
cd814c7922
docs(changelog): log refactor/domain-release-knowledge work block
francwa
2026-05-19 22:05:29 +02:00
-
6802933acd
test(release): adapt suite to explicit ReleaseKnowledge injection
francwa
2026-05-19 22:05:26 +02:00
-
bf37a9d09e
refactor(release): thread ReleaseKnowledge through callers
francwa
2026-05-19 22:05:19 +02:00
-
4a74fff9cc
refactor(release): purify domain — parse_release(name, kb) + ParsedRelease Option B
francwa
2026-05-19 22:05:10 +02:00
-
c3a3cb50c9
refactor(release): introduce ReleaseKnowledge Protocol port + YamlReleaseKnowledge adapter
francwa
2026-05-19 22:05:01 +02:00
-
-
14941d47c0
Merge branch 'refactor/domain-io-extraction'
francwa
2026-05-19 15:16:59 +02:00
-
-
df798f55cc
refactor(subtitles): introduce SubtitleKnowledge Protocol port
francwa
2026-05-19 15:15:43 +02:00
-
535935cc73
docs(changelog): summarize refactor/domain-io-extraction work block
francwa
2026-05-19 15:11:17 +02:00
-
6e252d1e81
refactor(subtitles): inject default rules into SubtitleRuleSet.resolve()
francwa
2026-05-19 15:10:06 +02:00
-
903e9e7117
refactor(subtitles): move SubtitlePlacer to application layer
francwa
2026-05-19 15:07:39 +02:00
-
9556bf9e08
refactor(domain): strip live filesystem I/O from VOs and entities
francwa
2026-05-19 14:58:59 +02:00
-
e6ee700825
refactor(subtitles): inject MediaProber/FilesystemScanner ports into domain services
francwa
2026-05-19 14:52:24 +02:00
-
ced72547f7
refactor(knowledge): extract YAML loaders from domain to infrastructure
francwa
2026-05-19 14:35:18 +02:00
-
-
f338b08706
refactor(release): type media_type/parse_path as true enums
francwa
2026-05-19 14:21:27 +02:00
-
da484d7474
refactor(release): typed enums + __post_init__ validation on ParsedRelease
francwa
2026-05-19 14:17:56 +02:00
-
481eeb5afd
refactor(domain): identity-based equality + dedup track helpers
francwa
2026-05-19 14:17:47 +02:00
-
7cd24f3a31
refactor(domain): freeze media track value objects
francwa
2026-05-19 14:17:27 +02:00
-
eb8995cfc3
refactor(subtitles): drop dead scanner module
francwa
2026-05-19 14:17:15 +02:00
-
f6eef59fca
refactor: tech debt mini-pass (items 5, 6, 7, 20)
francwa
2026-05-18 16:24:28 +02:00
-
273510dff8
test(fixtures): seed PATH OF PAIN bucket with 10 worst-case fixtures
francwa
2026-05-18 15:57:56 +02:00
-
c1831e3f46
test(fixtures): drop derry_duplicate_naming (was a copy-paste artifact)
francwa
2026-05-18 15:51:11 +02:00
-
aa182458b8
test(fixtures): seed SHITTY release bucket with 15 anti-regression cases
francwa
2026-05-18 15:48:41 +02:00
-
774f71c8cc
chore(gitignore): track CHANGELOG.md explicitly
francwa
2026-05-18 15:39:04 +02:00
-
7bc50fd5b8
test: add real-world release fixtures (EASY bucket)
francwa
2026-05-18 15:36:19 +02:00
-
f17abdbaec
chore: cleanup — remove shims, fix ruff warnings, ignore noisy rules
francwa
2026-05-18 00:02:45 +02:00
-
1d50b63af2
Merge branch 'dev/sprint-cleanup'
francwa
2026-05-17 23:42:05 +02:00
-
-
891ba502a2
chore: apply pre-commit auto-fixes (trim trailing whitespace, EOF)
francwa
2026-05-17 23:41:54 +02:00
-
e07c9ec77b
chore: sprint cleanup — language unification, parser unification, fossils removal
francwa
2026-05-17 23:38:00 +02:00
-
-
ba6f016d49
feat: generic MetadataStore + read_release_metadata + query_library
francwa
2026-05-15 11:02:25 +02:00
-
3c7c6695f2
feat(memory): Phase 1 — STM ToolResultsCache + ReleaseFocus + cache flag in YAML specs
francwa
2026-05-15 10:44:14 +02:00
-
2db3198ef2
feat(agent): migrate all remaining tools to YAML specs (21/21 covered)
francwa
2026-05-14 21:18:43 +02:00
-
23a9dd7990
refactor(memory): rename workflow.target -> params, type -> name
francwa
2026-05-14 21:11:23 +02:00
-
74a52ba6a3
feat(agent): workflow-scoped tool catalog + start/end_workflow meta-tools
francwa
2026-05-14 21:07:36 +02:00
-
97adfbda45
refactor(workflows): adopt media.* naming convention
francwa
2026-05-14 20:55:35 +02:00
-
239fce9e4e
chore(agent): remove dead parameters.py
francwa
2026-05-14 18:06:34 +02:00
-
99c95af64e
feat(agent): YAML tool specs as the LLM-facing semantic layer
francwa
2026-05-14 18:06:27 +02:00
-
b5025bb5f8
refactor(resolve_destination): factor shared series-folder resolution + DTO base
francwa
2026-05-14 16:09:33 +02:00
-
e45465d52d
feat: split resolve_destination, persona-driven prompts, qBittorrent relocation
francwa
2026-05-14 05:01:59 +02:00
-
1723b9fa53
feat: release parser, media type detection, ffprobe integration
francwa
2026-05-12 16:14:20 +02:00
-
249c5de76a
feat: major architectural refactor
francwa
2026-05-11 21:33:37 +02:00
-
62b5d0b998
Settings + fix startup
francwa
2026-04-30 12:41:42 +02:00
-
213b8e3c95
fix(deps): update dependency uvicorn to ^0.46.0
renovate/uvicorn-0.x
Renovate Bot
2026-04-27 04:03:01 +00:00
-
610dee365c
mess: UV + settings KISS + fixes
francwa
2026-04-24 18:10:55 +02:00
-
d88915f098
fix(deps): update dependency fastapi to ^0.136.0
renovate/fastapi-0.x
Renovate Bot
2026-04-20 04:01:06 +00:00
-
-
a1b2119612
chore(deps): update pgvector/pgvector docker tag to v0.8.2
renovate/pgvector-pgvector-0.x
Renovate Bot
2026-03-16 04:00:39 +00:00
-
-
0755811853
chore(deps): update dependency pytest-cov to v7
renovate/pytest-cov-7.x
Renovate Bot
2026-02-09 04:02:38 +00:00
-
-
9ecda8c6b0
chore(deps): update dependency pytest-asyncio to v1
renovate/pytest-asyncio-1.x
Renovate Bot
2026-02-09 04:02:36 +00:00
-
-
0b3c4b135b
chore(deps): update dependency pytest to v9
renovate/pytest-9.x
Renovate Bot
2026-02-09 04:02:34 +00:00
-
-
3dd92933e1
chore(deps): update dependency ruff to ^0.15.0
renovate/ruff-0.x
Renovate Bot
2026-02-09 04:02:29 +00:00
-
-
34fd3ae290
chore(deps): update dependency pytest-asyncio to ^0.26.0
renovate/pytest-asyncio-0.x
Renovate Bot
2026-02-09 04:02:27 +00:00
-
-
92f42ffce3
feat: implemented declarative schema-based settings system
feat/improved_settings
francwa
2026-01-06 04:55:52 +01:00
-
-
-
58408d0dbe
fix: fixed vectordb loneliness
francwa
2026-01-06 04:39:42 +01:00
-
2f1ac3c758
infra: simplified mongodb healthcheck
francwa
2026-01-06 04:36:01 +01:00
-
d3b69f7459
feat: enabled logging for alfred(-core)
francwa
2026-01-06 04:33:59 +01:00