docs: remove completed recommendation plan
This commit is contained in:
@@ -1,44 +0,0 @@
|
|||||||
---
|
|
||||||
finding: "Surface recommendation rationale"
|
|
||||||
catalog: "Direction"
|
|
||||||
impact:
|
|
||||||
"Recommendation results would be more trustworthy if the UI explained why each title was picked."
|
|
||||||
base_commit: "0d31d46"
|
|
||||||
---
|
|
||||||
|
|
||||||
## Effort
|
|
||||||
|
|
||||||
M - shape rationale data and render compact UI without changing ranking.
|
|
||||||
|
|
||||||
## Risk
|
|
||||||
|
|
||||||
LOW - this can be presentation-only if ranking is left unchanged.
|
|
||||||
|
|
||||||
## Confidence
|
|
||||||
|
|
||||||
HIGH - the recommender computes interpretable signals that are not currently shown.
|
|
||||||
|
|
||||||
## Evidence
|
|
||||||
|
|
||||||
- `internal/anime/recommendations/profile.go:64-101` builds a taste profile from genres, themes,
|
|
||||||
studios, demographics, airing preference, and recency.
|
|
||||||
- `internal/anime/recommendations/types.go:21-28` stores match counts for recommendation candidates.
|
|
||||||
- `templates/top_picks.gohtml:22-25` renders only anime cards for Top Picks.
|
|
||||||
|
|
||||||
## Resolution Approach
|
|
||||||
|
|
||||||
Extend the recommendation result view model with concise, user-readable rationale. Keep ranking
|
|
||||||
unchanged for the first iteration. Examples of acceptable rationale are matched genre/theme/studio
|
|
||||||
badges, “similar to titles in your watchlist,” or “because you watch recent airing shows,” but exact
|
|
||||||
copy should be generated from data already computed by the engine.
|
|
||||||
|
|
||||||
Avoid exposing raw scores or overly technical terms. The UI should stay compact enough for card
|
|
||||||
grids and the home carousel. If space is constrained, start with the full `/top-picks` page and
|
|
||||||
leave the home carousel unchanged.
|
|
||||||
|
|
||||||
Add recommendation tests that assert rationale is produced for candidates with
|
|
||||||
genre/theme/studio/demographic matches and omitted gracefully when signals are weak. Add template
|
|
||||||
tests or snapshots only if the repo already uses that pattern for similar UI.
|
|
||||||
|
|
||||||
Verify with `go test ./internal/anime/... ./templates` and `bunx tsc -p tsconfig.json --noEmit` if
|
|
||||||
any TypeScript changes are needed.
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
# Advisory Plans
|
|
||||||
|
|
||||||
Plans written against commit `0d31d46`.
|
|
||||||
|
|
||||||
## Status
|
|
||||||
|
|
||||||
| # | Plan | Catalog | Status | Dependency |
|
|
||||||
|---|---|---|---|---|
|
|
||||||
| 001 | Fix broken Go lint baseline | DX / Tooling | TODO | None |
|
|
||||||
| 002 | Stop marking JSON attributes as trusted HTML | Security | TODO | None |
|
|
||||||
| 003 | Gate or remove unauthenticated pprof routes | Security | TODO | None |
|
|
||||||
| 004 | Validate playback proxy targets before signing/fetching | Security | TODO | None |
|
|
||||||
| 005 | Limit home continue-watching carousel query | Performance | TODO | None |
|
|
||||||
| 006 | Move top-picks recommendation expansion off request path | Performance | TODO | None |
|
|
||||||
| 007 | Characterize the browser player flow | Tests | TODO | Before major player refactors |
|
|
||||||
| 008 | Add data-fix runner characterization tests | Tests | TODO | None |
|
|
||||||
| 009 | Add CI for the existing verification command | DX / Tooling | TODO | 001 |
|
|
||||||
| 010 | Add watchlist import / restore | Direction | TODO | None |
|
|
||||||
| 011 | Surface recommendation rationale | Direction | TODO | None |
|
|
||||||
| 012 | Expose episode availability freshness / retry state | Direction | TODO | None |
|
|
||||||
|
|
||||||
## Recommended Order
|
|
||||||
|
|
||||||
1. `001-fix-broken-go-lint-baseline.md`
|
|
||||||
2. `009-add-ci-for-existing-verification-command.md`
|
|
||||||
3. `002-stop-marking-json-attributes-trusted-html.md`
|
|
||||||
4. `003-gate-or-remove-unauthenticated-pprof-routes.md`
|
|
||||||
5. `005-limit-home-continue-watching-carousel-query.md`
|
|
||||||
6. `008-add-data-fix-runner-characterization-tests.md`
|
|
||||||
7. `004-validate-playback-proxy-targets.md`
|
|
||||||
8. `007-characterize-browser-player-flow.md`
|
|
||||||
9. `006-move-top-picks-recommendation-expansion-off-request-path.md`
|
|
||||||
10. Direction plans as product priorities: `010`, `011`, `012`.
|
|
||||||
|
|
||||||
## Verification Baseline
|
|
||||||
|
|
||||||
Known passing during audit:
|
|
||||||
|
|
||||||
- `go test ./...`
|
|
||||||
- `bun test`
|
|
||||||
- `bunx tsc -p tsconfig.json --noEmit`
|
|
||||||
- `bun run lint:ts`
|
|
||||||
- `bun audit`
|
|
||||||
|
|
||||||
Known failing during audit:
|
|
||||||
|
|
||||||
- `bun run lint:go` fails on `internal/observability/fx.go:22` for `cyclop` complexity.
|
|
||||||
|
|
||||||
Unavailable during audit:
|
|
||||||
|
|
||||||
- `govulncheck ./...` because `govulncheck` was not installed.
|
|
||||||
Reference in New Issue
Block a user