|
|
5e0dde656c
|
refactor: LOW cleanups — dedup secure_flag, remove vestigial social_query,
drop PersistedImportSession, rename LoginQuery→LoginCommand, own
DeleteAccountDeps, PersonId via uuid_id! macro, rename SortDirection→
ReviewSortBy, TUI fs::read→Command, generic PaginatedResponse<T>
|
2026-07-10 05:04:35 +02:00 |
|
|
|
5266646b0b
|
fix: remove unused watch_event_query binding, prefix dead field for clippy -D warnings
|
2026-07-10 04:32:54 +02:00 |
|
|
|
dee013c7eb
|
refactor: remaining MEDIUM — CQRS splits, DI Deps, profile dedup, event Value, response enum
M1: MovieRepository→MovieCommand/MovieQuery, WatchEventRepository→
WatchEventCommand/WatchEventQuery
M2: goals/ and import/ use Deps structs
M7: extract upload_image helper in update_profile
M8: FederationDeliveryRequested activity_json String→serde_json::Value
M11: UserProfileResponse uses ProfileViewData enum
|
2026-07-10 03:50:43 +02:00 |
|
|
|
12da356a40
|
refactor: fix HIGH+MEDIUM architectural violations from code review
HIGH: fix watch_medium data-loss bug, standardize error handling on
ApiError, fix dep direction (rss/template-askama no longer dep on
application), extract ImageFetcher port (remove reqwest from app layer),
move event construction from save_review to use case, extract
infra-wiring crate (DbPool/EventBusBackend dedup), deduplicate
presentation helpers (encode_error, export streaming, multipart parsing)
MEDIUM: split LocalApContentQuery god-trait 10→3 methods, dedup movie
resolution orchestration, add RemoteActorDto/PersonDto mappers, move
AppConfig to infra-wiring, fix SocialQueryPort Uuid→UserId, replace
stringly-typed api-types with domain enums, move count_reviews_in_year
to StatsRepository, dedup event publisher cfg blocks, extract
should_enrich, move group_by_month to application, dedup
count_local_posts, add FederationFlags Default, TUI input helper +
ShowError rename + typed auth errors, api-types cleanup
(UserSettingsDto/UserProfileBase/PreviewRowData)
102 files changed, -681 lines net
|
2026-07-10 02:08:39 +02:00 |
|
|
|
26152660bb
|
fix: show remote user's reviews on their profile (include_remote when user_id set)
CI / Check / Test (push) Failing after 21m16s
|
2026-07-10 00:51:33 +02:00 |
|
|
|
206ad44e82
|
fix: auto-set WatchMedium::MediaServer on webhook watch confirms
|
2026-07-10 00:07:52 +02:00 |
|
|
|
29cc68b07c
|
feat: add WatchMedium field, general review editing, configurable deploy
CI / Check / Test (push) Failing after 27m0s
- WatchMedium enum (cinema/streaming/tv/physical_media/download/media_server/other)
- PATCH /api/v1/reviews/:id partial update (rating, comment, watched_at, watch_medium)
- edit_review use case w/ ownership + remote review guard, best-effort AP Update broadcast
- SPA: icon picker, edit sheet (long-press mobile / pencil desktop), watch medium badge
- shared ReviewFormFields, EditableContextMenu, parse_watched_at/format_watched_at
- deploy.sh parameterized (--features, --tag), CORS allows PATCH
- CONTEXT.md glossary, ADR-0001 general review editing
|
2026-07-10 00:01:14 +02:00 |
|
|
|
9794babe06
|
feat: implement federated profile handling with support for remote actor URLs across multiple components
CI / Check / Test (push) Successful in 1h7m53s
|
2026-07-01 00:13:28 +02:00 |
|
|
|
5ae38c834a
|
making it AP complaint
CI / Check / Test (push) Has been cancelled
|
2026-06-30 02:25:42 +02:00 |
|
|
|
943a0abe54
|
refactor: reorganize HtmlPageContext and update imports across modules
CI / Check / Test (push) Failing after 46m33s
|
2026-06-30 00:07:20 +02:00 |
|
|
|
9c06fbd33e
|
refactor
|
2026-06-29 23:54:59 +02:00 |
|
|
|
bb17beb80d
|
restructure
|
2026-06-29 23:38:53 +02:00 |
|
|
|
ca7ca51949
|
feat: per-entity federation privacy toggles for reviews and watchlist
- add federate_reviews + federate_watchlist to UserSettings (default true)
- new UserFederationSettingsQuery port with FederationFlags struct
- remove get_user_federate_goals from LocalApContentQuery
- gate ReviewLogged, ReviewUpdated, WatchlistEntryAdded, on_poster_synced on flags
- goals gating migrated to UserFederationSettingsQuery
- ReviewDeleted and WatchlistEntryRemoved ungated (tombstones always fire)
- sqlite + postgres migrations and adapter impls
- settings API and SPA toggles
|
2026-06-12 02:26:01 +02:00 |
|
|
|
b844339795
|
fix(domain): ImportSession::new() generates own ID, add from_persistence()
|
2026-06-12 01:41:03 +02:00 |
|
|
|
cedb13d7a8
|
fix(domain): typed VOs in MovieEnrichmentRequested and PersonEnrichmentRequested
|
2026-06-12 01:34:47 +02:00 |
|
|
|
d4c42f8567
|
feat(application): export_diary::execute returns BoxStream<Bytes>
|
2026-06-12 01:11:36 +02:00 |
|
|
|
bf272bf8d9
|
perf(import): parallelize row processing with JoinSet + Semaphore (limit 10)
CI / Check / Test (push) Has been cancelled
|
2026-06-12 00:40:27 +02:00 |
|
|
|
6f34b7b5ec
|
fix(worker): nack on transient handler failures, ack on permanent
CI / Check / Test (push) Has been cancelled
|
2026-06-12 00:30:06 +02:00 |
|
|
|
57520c00f3
|
refactor: move AppContext to presentation crate, structurally enforce boundary
CI / Check / Test (push) Successful in 39m33s
|
2026-06-11 23:18:28 +02:00 |
|
|
|
b5cc7f8371
|
refactor(search): fix test to not use AppContext
|
2026-06-11 23:00:01 +02:00 |
|
|
|
9ca5ada924
|
refactor(auth): LoginDeps, RegisterDeps, RefreshDeps, RegisterAndLoginDeps, RefreshSessionCleanupJob
|
2026-06-11 22:58:42 +02:00 |
|
|
|
70d1f10e3d
|
refactor(users): fix test files to not use AppContext
|
2026-06-11 22:49:44 +02:00 |
|
|
|
61980b0cfb
|
refactor(users): GetProfileDeps, UpdateProfileDeps, scoped Arc deps
|
2026-06-11 22:47:17 +02:00 |
|
|
|
7bf5c47f5b
|
refactor(diary): DeleteReviewDeps, GetMovieSocialPageDeps, GetActivityFeedDeps
|
2026-06-11 22:37:35 +02:00 |
|
|
|
ddf100cfc2
|
refactor(wrapup): scoped deps — HandleWrapUpRequestedDeps, flat-Arc jobs
|
2026-06-11 22:29:30 +02:00 |
|
|
|
cdff0de53d
|
refactor(movies): collapse single-field deps structs to Arc params
|
2026-06-11 22:17:09 +02:00 |
|
|
|
1e62f12903
|
refactor(movies): EnrichMovieDeps, ReindexSearchDeps, SyncPosterDeps, SearchReindexHandler, EnrichmentStalenessJob
|
2026-06-11 22:13:25 +02:00 |
|
|
|
66bd138927
|
refactor(person): EnrichPersonDeps + GetPersonDeps, PersonEnrichmentHandler
|
2026-06-11 22:05:38 +02:00 |
|
|
|
b29f3020e6
|
refactor(integrations): IngestWatchEventDeps, scoped Arc deps, WatchEventCleanupJob
|
2026-06-11 22:01:15 +02:00 |
|
|
|
76edd52bb0
|
refactor(import): fix test files to not use AppContext
|
2026-06-11 21:51:24 +02:00 |
|
|
|
b5ff43d9dc
|
refactor(import): scoped Arc deps, ImportSessionCleanupJob
|
2026-06-11 21:49:15 +02:00 |
|
|
|
b552c1d156
|
refactor(watchlist): WatchlistAddDeps, scoped Arc deps
|
2026-06-11 21:40:48 +02:00 |
|
|
|
f006ba00a8
|
refactor(goals): scoped Arc deps instead of AppContext
|
2026-06-11 21:36:11 +02:00 |
|
|
|
2b295e10ba
|
refactor(search): scoped Arc dep instead of AppContext
|
2026-06-11 21:32:19 +02:00 |
|
|
|
20ac0d3adf
|
fmt
CI / Check / Test (push) Successful in 38m10s
|
2026-06-11 14:44:53 +02:00 |
|
|
|
8ac87a3735
|
refactor: split jobs.rs into per-context modules
|
2026-06-11 14:44:23 +02:00 |
|
|
|
4f0f44dec3
|
test: refresh token rotation, logout revocation, login refresh token
|
2026-06-11 14:42:39 +02:00 |
|
|
|
55feaa353f
|
app: refresh/logout use cases, update login with refresh token
|
2026-06-11 14:35:53 +02:00 |
|
|
|
ef9ecbae06
|
domain: add RefreshSession model + repository port
|
2026-06-11 14:29:43 +02:00 |
|
|
|
b09ef4686a
|
fmt
|
2026-06-11 14:03:05 +02:00 |
|
|
|
2074a2244e
|
refactor: move person enrichment staleness check to application layer
|
2026-06-11 14:01:44 +02:00 |
|
|
|
338ecb71c8
|
perf: reduce worker concurrency to 4 to ease SQLite write contention
|
2026-06-11 13:55:48 +02:00 |
|
|
|
c05087a6c7
|
fmt
|
2026-06-11 13:51:33 +02:00 |
|
|
|
57c720b22f
|
fix: collapse nested if per clippy
|
2026-06-11 13:47:32 +02:00 |
|
|
|
7437ed89ad
|
fix: handle PersonEnrichmentRequested in test fakes
|
2026-06-11 13:43:37 +02:00 |
|
|
|
371a3cdc46
|
app: person enrichment use case + staleness checks
|
2026-06-11 13:36:43 +02:00 |
|
|
|
7df24a19ee
|
domain: add person enrichment fields, event, port
|
2026-06-11 13:30:19 +02:00 |
|
|
|
6e21ec115d
|
fmt
CI / Check / Test (push) Has been cancelled
|
2026-06-10 03:24:17 +02:00 |
|
|
|
deae83cfd1
|
fix: Password uses char count not byte length, redact Debug output, tighten test assertion
CI / Check / Test (push) Failing after 49s
|
2026-06-10 03:23:23 +02:00 |
|
|
|
c4d6b68ef9
|
refactor: enforce password min-length via domain Password value object
CI / Check / Test (push) Failing after 49s
|
2026-06-10 03:15:43 +02:00 |
|