Commit Graph

526 Commits

Author SHA1 Message Date
00395357ac handlers: image/reindex/auth via use cases; auth::authenticate replaces ensure_active; check-handler-services guard
All checks were successful
CI / Check / Test (push) Successful in 1h10m22s
2026-10-26 10:51:32 +01:00
017b58d6fa code refactor
Some checks failed
CI / Check / Test (push) Has been cancelled
Reviewed-on: #26
2026-10-26 09:36:23 +00:00
2ce7db12c2 fix(rss): absolute item/channel links, atom self, application/xml
Some checks failed
CI / Check / Test (push) Failing after 30m12s
2026-10-25 19:59:07 +01:00
4f3d99ec8e feature/spoiler-flag (#25)
Some checks failed
CI / Check / Test (push) Has been cancelled
Reviewed-on: #25
2026-10-25 18:52:11 +00:00
9dd9df1f73 perf(spa): drop backdrop blur on cards, fixed wallpaper layer, auto reduced effects on low-end (#24)
All checks were successful
CI / Check / Test (push) Successful in 1h11m34s
Reviewed-on: #24
2026-10-12 18:58:50 +00:00
e303ae7f08 insights-correlations (#22)
Some checks failed
CI / Check / Test (push) Has been cancelled
Reviewed-on: #22
2026-10-12 18:56:55 +00:00
4d221e60de feat: favorite actors top-5 stat in profile trends
All checks were successful
CI / Check / Test (push) Successful in 1h5m14s
2026-08-09 20:59:18 +02:00
d282e8ea7e fix: correct order of weekdays and ensure week starts on Monday 2026-08-09 15:00:39 +02:00
c9715baab8 structural refactor and codebase improvements 2026-08-09 14:58:14 +02:00
22b1dd3f56 fix: portal wrapup share card to escape transform stacking context
All checks were successful
CI / Check / Test (push) Successful in 1h5m29s
2026-07-27 14:07:36 +02:00
813778dc7e fix: users table has avatar_path not avatar_url, resolve to full URL
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-27 13:08:45 +02:00
063bab910b ADR-0003: local follows bypass AP, unified FollowCommand/FollowQuery ports, FederationRepos struct, base_url normalization
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-27 12:56:30 +02:00
839cababe4 bump k-ap 0.5.0, decompose repo traits, LocalObject, ActivityStreamsType enum, split follow modules
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-27 11:46:24 +02:00
fdf286ca94 fix: remove split-debuginfo option from dev profile in Cargo.toml
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-27 11:19:54 +02:00
e30e785936 bump k-ap to 0.4.6, add nodeinfo metadata 2026-07-16 09:56:54 +02:00
10be024bdf fix: update k-ap dependency version to 0.4.4
All checks were successful
CI / Check / Test (push) Successful in 1h5m51s
2026-07-11 10:45:43 +02:00
1e33c6d184 fix: update k-ap dependency version to 0.4.4
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-11 10:40:53 +02:00
96168cfc7b fix: update k-ap dependency version to 0.4.3
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-11 10:21:28 +02:00
95b839355f fix: portal search overlay to escape transform stacking context, auto-fill IMDB from ttXXXX input
All checks were successful
CI / Check / Test (push) Successful in 1h12m50s
2026-07-11 01:44:08 +02:00
85285b2a52 github ci fix
All checks were successful
CI / Check / Test (push) Successful in 1h9m41s
2026-07-10 23:29:17 +02:00
c3d8bcad29 fix: collapse nested if for clippy
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-10 23:20:49 +02:00
8aa64ab174 fix: restrict swipe-tabs drag to touch-only, prevent ghost swipe after drawer close
Some checks failed
CI / Check / Test (push) Failing after 8m25s
2026-07-10 22:52:50 +02:00
d84c54bb30 feat: page transitions, poster hover, star bounce, reveal scale-up 2026-07-10 22:51:09 +02:00
41bed3583d feat: calendar diary view on profile (#15)
Some checks failed
CI / Check / Test (push) Failing after 8m29s
2026-07-10 22:32:47 +02:00
0a8b52514d feat: calendar diary view on profile (#15) 2026-07-10 22:22:13 +02:00
a0c0ba1c5d rename profile Trends tab to Stats
Some checks failed
CI / Check / Test (push) Failing after 8m35s
2026-07-10 22:01:56 +02:00
94cab1ea7c fix: lock body scroll + remove scrollbar on wrapup share card
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-10 21:58:38 +02:00
3dde0d13db docs: sync README + architecture diagram with current codebase 2026-07-10 21:56:16 +02:00
1c81d7768c fix: duplicate count in wrapup watch medium display 2026-07-10 21:53:21 +02:00
07df6fe207 review detail sheet on diary/profile/community, wrapup period presets 2026-07-10 21:51:42 +02:00
1a7448fd3d fix: use strict > for min-count filters in wrapup stats
Some checks failed
CI / Check / Test (push) Failing after 8m38s
2026-07-10 21:42:29 +02:00
587dcc04de feat: richer profile stats, wrapup min-count filter, watch medium distribution
Some checks failed
CI / Check / Test (push) Has been cancelled
- filter wrapup top directors/actors with count < 2
- add watch_medium to wrapup report + adapters
- profile trends: genre breakdown, rating histogram, watch medium dist
- fix unused StarDisplay import in movie detail
2026-07-10 21:38:08 +02:00
498f3b1818 edit sheet delete btn, fix medium icons, 44px touch targets, fix drag leak on drawer close
Some checks failed
CI / Check / Test (push) Failing after 8m44s
2026-07-10 17:46:56 +02:00
0ee2e04fe5 refactor(spa): collapse api/hooks telescope, merge review sheets, extract tab+list modules
- merge lib/api/* + hooks/use-* → features/* domain modules
- log-sheet + edit-review-sheet → review-sheet with mode discriminant
- index.tsx → feed-tab, watchlist-tab, queue-tab
- social actor-list pattern → ActorList component
- movie detail inline sections → community-reviews, viewing-history
2026-07-10 17:38:58 +02:00
89045414cf fmt
Some checks failed
CI / Check / Test (push) Failing after 9m15s
2026-07-10 17:10:59 +02:00
2de6690401 fix: import remote outbox on outbound follow accept (k-ap 0.4.2)
k-ap now emits OutboundFollowAccepted when remote accepts our follow.
Bridge maps it to FollowAccepted domain event. Worker handler looks up
the actor's outbox URL and calls import_remote_outbox. Previously the
accept was silent — no backfill happened, feed stayed empty.
2026-07-10 17:02:14 +02:00
12378c3649 fmt 2026-07-10 16:32:07 +02:00
46b8488b09 refactor: Feed uses SocialIdentity matching, deps From impl, remove get_accepted_following_urls
Feed builds FollowingFilter by matching SocialIdentity::Local/Remote
instead of URL-prefix heuristic. Removed get_accepted_following_urls
from SocialQuery (no longer needed). Added From<&AppState> for deps
structs — 20 construction sites collapsed to one-liners.
2026-07-10 16:31:05 +02:00
7e02f15a85 refactor: consolidate 11 social use cases → SocialCmd/SocialQry enum dispatch
-280 net lines. 11 one-file use cases replaced by execute_command/
execute_query with enum dispatch. Added FollowRejected event (reject
was silently dropping). Command→event mapping now explicit in one match.
2026-07-10 16:26:57 +02:00
d60c47199c fix: FollowTarget enum — actor_url no longer lies about holding a handle
FollowCommand.target is now FollowTarget (Identity|Handle) instead of
SocialIdentity. actor_url field always holds a URL; handles go through
FollowTarget::Handle. Adapter resolves handles explicitly. Type system
prevents misuse in future commands.
2026-07-10 16:18:57 +02:00
2484f1e603 fmt 2026-07-10 16:03:36 +02:00
44d7df33a2 refactor: remove SocialQueryPort — replaced by SocialQuery + FederationAdminQuery
-319 lines. Legacy SocialQueryPort trait, NoopSocialQueryPort,
PanicSocialQueryPort all deleted. Federation repos now implement
FederationAdminQuery (single method). get_users uses FederationAdminQuery.
All other consumers use unified SocialQuery.
2026-07-10 16:02:27 +02:00
7cfa234902 refactor: SocialActor rich queries, migrate remaining handlers, slim SocialQueryPort
SocialQuery returns SocialActor (identity+handle+display_name+avatar_url)
instead of bare SocialIdentity. Migrated get_following_page,
get_followers_page, get_blocked_actors_page to use cases. Moved
get_activity_feed + get_profile from SocialQueryPort to SocialQuery.
Legacy SocialQueryPort remains only for get_users listing.
2026-07-10 15:52:37 +02:00
3ee75305a9 refactor: move ap_service from AppState to AppContext.Services 2026-07-10 15:34:23 +02:00
322e9ee81a feat: unified social identity layer — SocialIdentity, ports, use cases, adapter
SocialIdentity value object (Local|Remote), SocialCommand/SocialQuery
domain ports, 11 CQRS use cases w/ 14 tests, CompositeSocialAdapter
wrapping k_ap, 6 new domain events, handlers migrated from ap_service
to use cases. Closes #12 foundation — AP handlers + legacy cleanup TBD.
2026-07-10 15:29:46 +02:00
96ce5f7d26 docs: domain glossary (16 terms) + ADR-0002 unified social identity
CONTEXT.md expanded with Movie, Person, Review, Rating, WatchMedium,
Watchlist, Goal, WrapUp, User, Follow, Feed, WatchEvent, Import,
ImportProfile, SocialIdentity. ADR-0002 documents wrap-k_ap decision.
2026-07-10 15:29:31 +02:00
6bf4ffc4ab refactor: update rating validation logic — enforce minimum rating value
All checks were successful
CI / Check / Test (push) Successful in 1h5m56s
2026-07-10 13:22:21 +02:00
fa881c3fd1 docs: update architecture.mmd+README — DiaryQuery, GoalCommand/GoalQuery, adapter-common crate
Some checks failed
CI / Check / Test (push) Failing after 21m52s
2026-07-10 05:48:17 +02:00
0eb56c2be6 fmt
Some checks failed
CI / Check / Test (push) Has been cancelled
2026-07-10 05:45:44 +02:00
c224cc6bd2 refactor: extract adapter-common crate — shared sqlx error mapping,
row-to-domain conversions, date/uuid utils

Eliminates 39 map_err copies, consolidates parse_uuid/parse_datetime/
datetime_to_str/format_year_month, extracts 7 shared row-to-domain
conversion functions (movie, review, watchlist, stats, user_summary).
Row structs stay per-adapter (FromRow is db-specific), only conversion
logic is shared. Net -281 lines.
2026-07-10 05:44:42 +02:00