docs(changelog): log parse-confidence scoring + ParseReport tuple
This commit is contained in:
@@ -15,6 +15,29 @@ callers).
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- **Release parser — parse-confidence scoring** (`alfred/domain/release/parser/scoring.py`,
|
||||||
|
`alfred/knowledge/release/scoring.yaml`). `parse_release` now returns
|
||||||
|
`(ParsedRelease, ParseReport)`. The new `ParseReport` frozen VO
|
||||||
|
carries a 0–100 `confidence`, a `road` (`"easy"` / `"shitty"` /
|
||||||
|
`"path_of_pain"`), the residual UNKNOWN tokens, and the missing
|
||||||
|
critical fields. EASY is decided structurally (a group schema
|
||||||
|
matched); SHITTY vs PATH_OF_PAIN is decided by score against a
|
||||||
|
YAML-configurable cutoff (default 60). Weights and penalties also
|
||||||
|
live in `scoring.yaml` — title 30, media_type 20, year 15, season
|
||||||
|
10, episode 5, tech 5 each; penalty 5 per UNKNOWN token capped at
|
||||||
|
-30. `Road` is a new enum, distinct from `ParsePath` (which records
|
||||||
|
the tokenization route, not the confidence tier). `ReleaseKnowledge`
|
||||||
|
port gains a `scoring: dict` field.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- **`parse_release` signature** is now `(name, kb) → tuple[ParsedRelease,
|
||||||
|
ParseReport]` instead of returning a bare `ParsedRelease`. Call
|
||||||
|
sites updated in `application/filesystem/resolve_destination.py` and
|
||||||
|
`agent/tools/filesystem.py`. Tests updated accordingly.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## [2026-05-20] — Release parser v2 (EASY + SHITTY)
|
## [2026-05-20] — Release parser v2 (EASY + SHITTY)
|
||||||
|
|||||||
Reference in New Issue
Block a user