|
|
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 |
|
|
|
caab63596a
|
webhook tokens of tombstoned users rejected
|
2026-10-26 03:17:00 +01:00 |
|
|
|
c9e74d9cc3
|
purge: redact user from global wrap-up reports
|
2026-10-26 03:16:12 +01:00 |
|
|
|
54c8433c78
|
purge: erase only finished outbox rows; cleanup waits for unfinished events
|
2026-10-26 02:43:11 +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 |
|
|
|
fe9f284531
|
sqlite ack/nack/defer only if claim still held; use shared backoff
|
2026-10-26 01:52:28 +01:00 |
|
|
|
0908b7046a
|
fix(sqlite): concurrent migrate retries
|
2026-10-26 01:40:40 +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 |
|
|
|
fa8e94817a
|
fix: relay shutdown, claim lease, dead-letter undecodable, dedup window
|
2026-10-26 00:11:06 +01:00 |
|
|
|
32dfc84697
|
feat: event ids, outbox identity migration
|
2026-10-25 23:57:24 +01:00 |
|
|
|
c31aa033cc
|
test: harden claim race test
|
2026-10-25 23:40:43 +01:00 |
|
|
|
b96f03f86f
|
fix(sqlite): dedup clears old external id before canonical upsert
|
2026-10-25 23:39:04 +01:00 |
|
|
|
d073922308
|
fix(sqlite): atomic event queue claim
|
2026-10-25 23:39:04 +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 |
|
|
|
f6383d6c04
|
test: move sqlite tests to tests/
No inline exceptions; migrate via sqlite::migrate, renamed diary/social tests.
|
2026-10-25 22:40:53 +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 |
|
|
|
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 |
|
|
|
ab4e4c3138
|
refactor: sqlite repositories per aggregate
|
2026-10-25 20:55:33 +01:00 |
|
|
|
67597ec9a6
|
refactor: merge sqlite adapter family into one crate
|
2026-10-25 20:48:30 +01:00 |
|
|
|
1ece8032ff
|
test: track pre_merge.db fixture
|
2026-10-25 20:44:46 +01:00 |
|
|
|
f8fe49f739
|
test: pin migration ledger
|
2026-10-25 20:44:10 +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 |
|
|
|
4d221e60de
|
feat: favorite actors top-5 stat in profile trends
CI / Check / Test (push) Successful in 1h5m14s
|
2026-08-09 20:59:18 +02: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 |
|
|
|
0eb56c2be6
|
fmt
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 |
|
|
|
6a9b4e5c00
|
refactor: LOW+MEDIUM cleanups — CQRS DiaryQuery/GoalCommand+GoalQuery,
test-helpers out of production, decompose get_user_profile_html,
dedup secure_flag, remove vestigial social_query, drop
PersistedImportSession, LoginCommand rename, DeleteAccountDeps,
PersonId macro, ReviewSortBy rename, TUI Command for fs::read,
generic PaginatedResponse<T>, noop ports for production fallbacks
|
2026-07-10 05:29:02 +02:00 |
|
|
|
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 |
|