Commit Graph

5 Commits

Author SHA1 Message Date
giles
44dbc063ee Make followers/following collections public (paginated format)
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 39s
Mastodon requires OrderedCollection with a `first` page link to
consider the collection public. Without it, it shows "This user
has chosen to not make this information available."

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 09:59:26 +00:00
giles
06d694eff2 Fix AP Accept: add activity id + upsert followers
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 41s
- Accept activity now includes required 'id' field (uuid-based)
- Updated shared submodule: add_follower upserts to prevent IntegrityError

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 22:43:33 +00:00
giles
725546f298 Fix Accept delivery for Follow activities and actor profile
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 39s
- Fix sign_request() call: parse URL into path/host (was passing 'url' kwarg that doesn't exist)
- Fix verify_request_signature() call to match actual function signature
- Add manuallyApprovesFollowers: false to actor JSON-LD so Mastodon auto-accepts follows

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 21:55:46 +00:00
giles
ea2a2c87b6 Enhanced inbox: Follow/Accept, Undo, HTTP sig verification
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 39s
- Inbox POST now handles Follow (add follower + send Accept),
  Undo (remove follower), Like/Announce (logged)
- HTTP signature verification (best-effort, logs but doesn't block)
- CSRF exempt on inbox (external servers POST here)
- Updated shared submodule with event handlers + delivery + anchoring

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 16:00:20 +00:00
giles
41e9670975 Initial federation app — ActivityPub server for Rose-Ash
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 41s
Phase 0+1 of AP integration. New 5th Quart microservice:

Blueprints:
- wellknown: WebFinger, NodeInfo 2.0, host-meta
- actors: AP actor profiles (JSON-LD + HTML), outbox, inbox, followers
- identity: username selection flow (creates ActorProfile + RSA keypair)
- auth: magic link login/logout (ported from blog, self-contained)

Services:
- Registers SqlFederationService (real impl) for federation domain
- Registers real impls for blog, calendar, market, cart
- All cross-domain via shared service contracts

Templates:
- Actor profiles, username selection, platform home
- Auth login/check-email (ported from blog)

Infrastructure:
- Dockerfile + entrypoint.sh (matches other apps)
- CI/CD via Gitea Actions
- shared/ as git submodule

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 15:11:52 +00:00