f020108024
strip session-added comments
CI / Check / Test (push) Has been cancelled
CI / Check / Test (pull_request) Has been cancelled
2026-10-26 10:32:38 +01:00
9215f3db69
workspace deps hygiene: minimal features, default-members sans tui; drop utoipa-scalar + /scalar; ci test --workspace; .sqlx dockerignore
2026-10-26 04:25:43 +01:00
b9cdb54340
tombstone gate all user paths; cleanup deletes late follower rows; spa self-delete to /; adr 0016 + purge comment
2026-10-26 03:22:13 +01:00
9d0166f5cb
service actor undeletable: domain const, 403, hide delete UI
2026-10-26 03:15:27 +01:00
bc3c9e3d23
fix: invalid-credentials code, no refresh on wrong pw
2026-10-26 02:58:55 +01:00
80dbdec107
purge: skip broadcasts of deleted authors, purge outbox log, guards, 410 inbox test
2026-10-26 02:39:06 +01:00
51a70b5260
feat: account purge handler, tombstone cleanup, AP tombstone signing + 410
2026-10-26 02:30:09 +01:00
9a03de8956
mark_deleted: atomic last-admin guard; review minors
2026-10-26 02:16:35 +01:00
0b5d18c4ee
feat: account deletion request and active-user check
2026-10-26 02:12:29 +01:00
31f5d5f337
feat: user tombstone and retired usernames
2026-10-26 02:03:36 +01:00
bde8040cc3
watchlist add: event only if inserted; adr 0015 jetstream/relay accuracy; drop vacuous assert
2026-10-26 01:56:38 +01:00
dfa5e1a4db
nats nak w/ shared retry_backoff, exhausted log; no 'will retry' lie
2026-10-26 01:52:28 +01:00
818ab893a1
fix: real AP id tests, exact poster key check, exists port, list_movies fake
2026-10-26 01:33:29 +01:00
4cb2972f63
feat: idempotent handlers, deterministic activity ids
2026-10-26 01:27:03 +01:00
7f9c252d35
fix: NewRemoteReview param struct, atomic review+orphan movie delete
2026-10-26 01:19:09 +01:00
9a4d0c1714
feat: atomic social local writes, remote review enrichment
...
SocialCommand methods take events. Local follow ops = one FollowCommand::apply
tx (rows + events). k_ap path (remote, block/unblock): best-effort publish in
CompositeSocialAdapter after k_ap write; not atomic, k_ap owns tx.
save_remote_review takes events, enqueued in same tx via
sqlite::persistence::enqueue_events. Deps drop event_publisher: social
command, ReviewObjectHandler.
Remaining .publish( sites:
announce-only: users/delete_account UserDeleted, person/get + get_credits
PersonEnrichmentRequested, jobs/enrichment_staleness, http-axum search,
ImageStored (sync_poster, poster_sync_handler, image-converter backfill,
update_profile; object storage), federation_event_bridge (handler reaction),
nats relay (transport).
non-atomic by necessity: CompositeSocialAdapter::announce (k_ap-owned write).
Everything else rides its write.
2026-10-26 01:12:58 +01:00
6c295866a0
feat: atomic wrapup, movie, integration writes
...
Ride writes: WrapUpRequested/Completed (wrapup create/set_complete),
MovieDiscovered (resolve upsert, new+ext id only), PosterSynced (poster
handler upsert), MovieDeleted (delete_movie), WatchEventIngested (save).
Deps drop event_publisher: wrapup, ingest, delete_review, watchlist add,
review logger.
Remaining .publish( sites:
announce-only: users/delete_account UserDeleted, person/get +
get_credits PersonEnrichmentRequested, jobs/enrichment_staleness,
http-axum search, movies/sync_poster + poster_sync_handler +
image-converter backfill + users/update_profile ImageStored (object
storage), activitypub federation_event_bridge (reacting to events).
rides write, deferred: social/execute (see report),
activitypub review_handler MovieEnrichmentRequested (after
save_remote_review).
2026-10-26 01:02:34 +01:00
2f133afb96
fix: honest review update rollback test, goal delete NotFound fake, read before write
2026-10-26 00:52:45 +01:00
62ad9f4017
feat: atomic goal, watchlist, profile writes
2026-10-26 00:49:28 +01:00
c8a1e8bfe4
feat: atomic review writes with events
2026-10-26 00:40:43 +01:00
0236a488fa
fix: defer blocked deliveries, claim owner token
2026-10-26 00:33:29 +01:00
53892847f2
fix: per-handler claim lease in ledger, nats max_deliver, pin handler names
2026-10-26 00:24:56 +01:00
5681d0c034
feat: processed-event ledger, idempotent dispatch
2026-10-26 00:17:28 +01:00
32dfc84697
feat: event ids, outbox identity migration
2026-10-25 23:57:24 +01:00
b7e69b69dc
refactor: drop postgres leftovers, narrow bootstrap api
2026-10-25 23:25:16 +01:00
ec2760fd48
chore: drop unused deps
2026-10-25 23:19:19 +01:00
980de9697a
refactor: rename application AppConfig to AppSettings
2026-10-25 23:19:18 +01:00
7c6dff7f70
docs: fix config table, test-location claims
2026-10-25 23:07:14 +01:00
80072eb463
docs: update for new crate layout
2026-10-25 22:58:46 +01:00
b76f5996da
chore: dockerfile manifest guard
2026-10-25 22:58:46 +01:00
fdf4df38af
test: get_users use case
...
Fake list_with_stats now returns stored users (was always empty).
2026-10-25 22:41:54 +01:00
8526b77f18
test: move application tests to tests/
...
test_support/test_helpers -> tests/support; watched_at unified w/ domain test_watched_at (2024-03-15).
Kept inline: users::diary_filter tests (feed_sort_to_direction_all_variants, paged_user_filter_builds_correctly) - pub(super) helpers in private module.
Dropped stale never-compiled users/tests/get_users.rs (old execute signature).
2026-10-25 22:36:52 +01:00
5256c6e851
test: refusing fakes, failure-path tests, shared panic stubs
2026-10-25 22:25:36 +01:00
06eec2feae
test: cascading in-memory store
2026-10-25 22:19:24 +01:00
51d92e08a7
test: shared factories and command builders
2026-10-25 22:08:17 +01:00
b5bfdadcd9
refactor: merge media-server parsers, move poster sync and event payload
2026-10-25 21:22:59 +01:00
9bf9342fc0
refactor: bootstrap crate, thin server/worker binaries
2026-10-25 21:16:38 +01:00
04f9c13625
refactor: adapters configured from config crate
2026-10-25 21:07:19 +01:00
59238a36d8
refactor: typed errors in rss/import ports
2026-10-25 20:30:28 +01:00
18c179e14c
chore: gate test helpers, code style, stricter clippy
2026-10-25 20:26:50 +01:00
4f3d99ec8e
feature/spoiler-flag ( #25 )
...
CI / Check / Test (push) Has been cancelled
Reviewed-on: #25
2026-10-25 18:52:11 +00:00
e303ae7f08
insights-correlations ( #22 )
...
CI / Check / Test (push) Has been cancelled
Reviewed-on: #22
2026-10-12 18:56:55 +00:00
c9715baab8
structural refactor and codebase improvements
2026-08-09 14:58:14 +02:00
587dcc04de
feat: richer profile stats, wrapup min-count filter, watch medium distribution
...
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
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