Commit Graph

155 Commits

Author SHA1 Message Date
e8d42b01dc fix: look up remote parent by ap_id to thread remote-to-remote replies
Some checks failed
lint / lint (push) Has been cancelled
test / unit (push) Has been cancelled
2026-05-28 02:59:45 +02:00
4038a6b554 ci: remove failing integration tests job
Some checks failed
lint / lint (push) Failing after 7m13s
test / unit (push) Has been cancelled
2026-05-28 02:48:21 +02:00
be4a37546c refactor: delegate mark_follower_accepted/rejected through k-ap service, remove federation_repo from ApFederationAdapter
Some checks failed
test / unit (push) Has been cancelled
test / integration (push) Has been cancelled
lint / lint (push) Has been cancelled
2026-05-28 02:45:59 +02:00
7a2d8308d9 fix: extract initiate_actor_move use case — remove event publish from handler 2026-05-28 02:41:42 +02:00
4a5d5df884 fix(tests): update federation_management tests for EventPublisher arg 2026-05-28 02:34:30 +02:00
421cb463e3 feat: split accept/reject into DB+event; broadcast_move via event in API 2026-05-28 02:32:50 +02:00
925f4f8bf3 feat(worker): add FederationManagementHandler and wire into event loop 2026-05-28 02:30:22 +02:00
e5c8380ba7 feat(application): add FederationManagementEventService 2026-05-28 02:28:15 +02:00
97bc918bbc fix(bootstrap,worker): pass shared federation_repo to ApFederationAdapter 2026-05-28 02:26:57 +02:00
805240aaf8 feat(activitypub): add federation_repo field and thin DB-only methods to ApFederationAdapter 2026-05-28 02:24:43 +02:00
cd6148eff9 feat(domain): add mark_follower_accepted/rejected thin port methods 2026-05-28 02:22:52 +02:00
6f1a0572df fix(event-payload): correct NATS subjects for federation events 2026-05-28 02:20:43 +02:00
0841554dbe feat(domain): add RemoteFollowAccepted, RemoteFollowRejected, ActorMoved events 2026-05-28 02:19:46 +02:00
c30243f1c8 feat: add alsoKnownAs field to federation settings
Some checks failed
lint / lint (push) Failing after 7m10s
test / unit (push) Successful in 16m28s
test / integration (push) Failing after 17m52s
2026-05-28 02:01:56 +02:00
1ad02e0806 feat: add PATCH /federation/me/also-known-as endpoint
Some checks failed
test / unit (push) Has been cancelled
test / integration (push) Has been cancelled
lint / lint (push) Has been cancelled
Adds alsoKnownAs column to users table (migration 013), reads it in
the AP actor JSON, and exposes PATCH /federation/me/also-known-as to
set or clear it. Required pre-condition for broadcast_move.
2026-05-28 01:59:35 +02:00
23a8444b5c fix: update user URL handling in ThoughtsObjectHandler to use user_id
Some checks failed
lint / lint (push) Failing after 7m19s
test / integration (push) Has been cancelled
test / unit (push) Has been cancelled
2026-05-28 01:51:55 +02:00
b20b60ad10 fix: add broadcast_move stub to TestStore
Some checks failed
test / unit (push) Has been cancelled
test / integration (push) Has been cancelled
lint / lint (push) Has been cancelled
2026-05-28 01:50:37 +02:00
54bd2b60d0 feat: add POST /federation/me/move endpoint 2026-05-28 01:47:29 +02:00
94193f2d2e feat: bump k-ap to v0.1.9 and implement migrate_follower_actor 2026-05-28 01:43:06 +02:00
f54fb543b2 feat: update k-ap dependency to v0.1.8 and enhance middleware for ActivityPub requests 2026-05-28 01:08:45 +02:00
a460428be1 feat: update dependencies to k-ap v0.1.7 and add profileHref utility for user links
Some checks failed
lint / lint (push) Failing after 7m11s
test / unit (push) Successful in 16m59s
test / integration (push) Failing after 18m3s
2026-05-27 23:38:14 +02:00
95dea06c55 feat: add /about/fediverse info page with glass accordion panels 2026-05-27 23:38:14 +02:00
c085067318 feat: add Fediverse nav link 2026-05-27 23:38:14 +02:00
d831784489 feat: add copy handle button and fediverse info link to profile 2026-05-27 23:38:14 +02:00
4c203bed1d fix: handle clipboard errors and cleanup timeout in CopyButton 2026-05-27 23:38:14 +02:00
21b8684608 feat: add CopyButton client component 2026-05-27 23:38:14 +02:00
74eeb9fcb9 docs: replace activitypub-base with k-ap in architecture overview
Some checks failed
lint / lint (push) Failing after 7m3s
test / unit (push) Successful in 16m26s
test / integration (push) Failing after 17m39s
Reflects the migration from the local activitypub-base crate to the
external k-ap library, with an accurate description of what it provides.
2026-05-25 00:57:29 +02:00
7ee22ae79f feat: store AP note extensions in JSONB and render movies-diary posts as rich cards
Some checks failed
lint / lint (push) Failing after 7m24s
test / unit (push) Successful in 17m17s
test / integration (push) Failing after 18m2s
2026-05-24 04:29:04 +02:00
3f26456d77 feat: custom CSS editor with CodeMirror, live preview, and /docs/css reference
Some checks failed
lint / lint (push) Failing after 7m36s
test / unit (push) Successful in 17m12s
test / integration (push) Failing after 18m34s
2026-05-24 03:26:34 +02:00
379f31e27d fix(federation): include header_url as AP banner (image) in actor JSON
Some checks failed
lint / lint (push) Failing after 7m3s
test / unit (push) Successful in 16m12s
test / integration (push) Failing after 17m24s
2026-05-24 02:18:41 +02:00
9c99f7a7a8 feat: add image upload for avatar and banner
Some checks failed
lint / lint (push) Has been cancelled
test / unit (push) Has been cancelled
test / integration (push) Has been cancelled
2026-05-24 02:06:47 +02:00
636d3d453d fix: resolve thoughts compile errors after k-ap migration
Some checks failed
lint / lint (push) Failing after 5m0s
test / unit (push) Failing after 4m59s
test / integration (push) Failing after 5m2s
2026-05-17 23:02:49 +02:00
9172c82d54 chore: move ap_ports into activitypub adapter, delete activitypub-base 2026-05-17 22:48:22 +02:00
cd2eb48ddb chore: switch activitypub-base to k-ap git dep 2026-05-17 22:47:32 +02:00
c5d9833c8b refactor: replace long arg lists with input/config structs and builder
Some checks failed
lint / lint (push) Failing after 7m8s
test / unit (push) Successful in 17m2s
test / integration (push) Failing after 17m47s
- Thought::new_local → NewThought struct (7 args → 1)
- UserWriter::update_profile → UpdateProfileInput struct (6 args → 2)
- update_profile use case → UpdateProfileInput (8 args → 3)
- ActivityPubService::new → builder pattern (9 args → 5 required + 4 optional setters)
- accept_note → AcceptNoteInput struct (8 args → 1)
- ThoughtNote::new_public → ThoughtNoteInput struct (8 args → 1)

Remove all #[allow(clippy::too_many_arguments)] annotations.
2026-05-17 12:25:53 +02:00
f39c1a614d clean up
Some checks failed
lint / lint (push) Failing after 7m18s
test / integration (push) Has been cancelled
test / unit (push) Has been cancelled
2026-05-17 12:15:27 +02:00
30c8a17168 clean up
Some checks failed
test / unit (push) Has been cancelled
lint / lint (push) Has been cancelled
test / integration (push) Has been cancelled
2026-05-17 12:14:45 +02:00
6a8c8b1fb8 chore: add pre-commit fmt+clippy hooks, fix clippy warnings 2026-05-17 12:09:24 +02:00
4ec0725ff8 fmt
Some checks failed
lint / lint (push) Failing after 5m3s
test / integration (push) Has been cancelled
test / unit (push) Has been cancelled
2026-05-17 12:04:51 +02:00
31e0f2958c fix: make ThoughtNote sensitive field optional (default false) 2026-05-17 12:02:58 +02:00
555121ea75 fix: promote worker event logs from debug to info 2026-05-17 12:02:13 +02:00
9e795eefdc fix: make ThoughtNote url field optional for AP compat
Some checks failed
lint / lint (push) Failing after 5m1s
test / integration (push) Has been cancelled
test / unit (push) Has been cancelled
2026-05-17 11:57:10 +02:00
18cf2c9f54 feat: implement verify() for all stub activity handlers
Undo: inner activity actor must match Undo actor
Announce/Like/Block: verify_domains_match(activity_id, actor_url)
Add: attributedTo must match actor (same as Create/Update)
2026-05-17 11:55:17 +02:00
b58c96b843 feat: implement federation post/connections backfill schedulers
Some checks failed
lint / lint (push) Failing after 5m12s
test / integration (push) Has been cancelled
test / unit (push) Has been cancelled
schedule_actor_posts_fetch now spawns backfill_outbox in background,
fetching all pages of a remote outbox and persisting via accept_note.
schedule_connections_fetch follows AP collection next-links, resolves
profiles, and caches them in the DB. Both were no-ops ("deferred").

Add connections_repo field to ActivityPubService; wire both factories.
2026-05-17 11:49:53 +02:00
8ea24461ba feat: load more pagination for user profile thoughts 2026-05-16 15:21:18 +02:00
e14a9f90c8 fix: route local users to /users/{username} in remote connection lists 2026-05-16 15:17:58 +02:00
28756ef4cd feat: load more pagination for remote user posts 2026-05-16 15:14:53 +02:00
7f27ae49c3 fix: overflow-y scroll on html to prevent layout shift on dropdown open 2026-05-16 15:12:41 +02:00
59f3423c00 fix: break-all on fediverse handle to prevent overflow 2026-05-16 15:07:30 +02:00
c48aa33592 fix: scrollbar-gutter stable to prevent bg flicker on dropdown open 2026-05-16 15:05:28 +02:00