Add admin ActivityPub actor settings UI #111

Merged
erik merged 1 commit from feat/task-e9ea259f-activitypub-admin-ui into main 2026-06-05 11:07:08 -05:00
Owner

Summary

  • add protected admin ActivityPub actor settings routes and dashboard link
  • add admin page for primary actor create/update, signing key generation, runtime status, setup warnings, and derived handle/URLs
  • keep federation enabled/disabled in runtime config and avoid adding Slugkit management API endpoints for actor settings
  • add route tests for auth protection, create/update, validation, key generation, runtime warnings, and absent API endpoint

Verification

  • make check
  • ./scripts/pre-pr.sh

Task: #task-e9ea259f

## Summary - add protected admin ActivityPub actor settings routes and dashboard link - add admin page for primary actor create/update, signing key generation, runtime status, setup warnings, and derived handle/URLs - keep federation enabled/disabled in runtime config and avoid adding Slugkit management API endpoints for actor settings - add route tests for auth protection, create/update, validation, key generation, runtime warnings, and absent API endpoint ## Verification - [x] `make check` - [x] `./scripts/pre-pr.sh` Task: #task-e9ea259f
feat: add ActivityPub actor admin UI
All checks were successful
CI / build-lint-test (pull_request) Successful in 35s
7d7f9fdc8d
Task: #task-e9ea259f
Author
Owner

Review summary

Approved. The PR adds the requested admin-only ActivityPub actor settings UI without exposing actor settings through the Slugkit management API. It uses the existing database-backed actor foundation, keeps federation enabled/disabled in runtime config, supports primary actor create/update and signing-key generation, and includes focused route coverage.

Acceptance criteria

  • Authenticated admins can view the ActivityPub actor settings page.
  • Unauthenticated users cannot access or submit ActivityPub actor settings.
  • Admins can create the primary/default ActivityPub actor when none exists.
  • Admins can update primary actor username, display name, summary, and supported profile metadata.
  • Admins can generate missing actor key material.
  • The page shows the actor handle and canonical ActivityPub URLs derived from the configured actor and public origin.
  • The page shows runtime federation enabled/disabled status without storing that setting in the database.
  • No Slugkit management API endpoint is added for actor settings.
  • Tests cover success, validation errors, key generation, and auth protection.
  • Relevant lint/test checks pass.

Blocking issues

None.

Warnings

None.

Verification reviewed

  • make check passed locally.
  • ./scripts/pre-pr.sh passed locally.
  • Forgejo CI CI / build-lint-test (pull_request) passed.

Verdict

Approved. Stop at human merge approval gate.

## Review summary Approved. The PR adds the requested admin-only ActivityPub actor settings UI without exposing actor settings through the Slugkit management API. It uses the existing database-backed actor foundation, keeps federation enabled/disabled in runtime config, supports primary actor create/update and signing-key generation, and includes focused route coverage. ## Acceptance criteria - [x] Authenticated admins can view the ActivityPub actor settings page. - [x] Unauthenticated users cannot access or submit ActivityPub actor settings. - [x] Admins can create the primary/default ActivityPub actor when none exists. - [x] Admins can update primary actor username, display name, summary, and supported profile metadata. - [x] Admins can generate missing actor key material. - [x] The page shows the actor handle and canonical ActivityPub URLs derived from the configured actor and public origin. - [x] The page shows runtime federation enabled/disabled status without storing that setting in the database. - [x] No Slugkit management API endpoint is added for actor settings. - [x] Tests cover success, validation errors, key generation, and auth protection. - [x] Relevant lint/test checks pass. ## Blocking issues None. ## Warnings None. ## Verification reviewed - `make check` passed locally. - `./scripts/pre-pr.sh` passed locally. - Forgejo CI `CI / build-lint-test (pull_request)` passed. ## Verdict Approved. Stop at human merge approval gate.
erik merged commit 20a72385c2 into main 2026-06-05 11:07:08 -05:00
erik deleted branch feat/task-e9ea259f-activitypub-admin-ui 2026-06-05 11:07:08 -05:00
Sign in to join this conversation.
No description provided.