From 5915062874f0697beb51bd80eabafb6cfa34d362 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Fri, 7 Jun 2024 15:50:11 -0400 Subject: [PATCH 1/2] Add missing notification types to the api spec --- changelog.d/notification-spex.skip | 0 .../web/api_spec/operations/notification_operation.ex | 8 +++++++- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 changelog.d/notification-spex.skip diff --git a/changelog.d/notification-spex.skip b/changelog.d/notification-spex.skip new file mode 100644 index 000000000..e69de29bb diff --git a/lib/pleroma/web/api_spec/operations/notification_operation.ex b/lib/pleroma/web/api_spec/operations/notification_operation.ex index a79eb8f74..2dc0f66df 100644 --- a/lib/pleroma/web/api_spec/operations/notification_operation.ex +++ b/lib/pleroma/web/api_spec/operations/notification_operation.ex @@ -203,7 +203,10 @@ defmodule Pleroma.Web.ApiSpec.NotificationOperation do "move", "follow_request", "poll", - "status" + "status", + "update", + "admin.sign_up", + "admin.report" ], description: """ The type of event that resulted in the notification. @@ -218,6 +221,9 @@ defmodule Pleroma.Web.ApiSpec.NotificationOperation do - `pleroma:chat_mention` - Someone mentioned you in a chat message - `pleroma:report` - Someone was reported - `status` - Someone you are subscribed to created a status + - `update` - A status you boosted has been edited + - `admin.sign_up` - Someone signed up (optionally sent to admins) + - `admin.report` - A new report has been filed """ } end From b52d772a6e66b13bac875b7289de3bd63c087db3 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Fri, 7 Jun 2024 16:03:10 -0400 Subject: [PATCH 2/2] Add some useful logging for ApiSpec errors --- lib/pleroma/web/api_spec/cast_and_validate.ex | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/pleroma/web/api_spec/cast_and_validate.ex b/lib/pleroma/web/api_spec/cast_and_validate.ex index f3e8e093e..eb487fce7 100644 --- a/lib/pleroma/web/api_spec/cast_and_validate.ex +++ b/lib/pleroma/web/api_spec/cast_and_validate.ex @@ -18,6 +18,8 @@ defmodule Pleroma.Web.ApiSpec.CastAndValidate do alias OpenApiSpex.Plug.PutApiSpec alias Plug.Conn + require Logger + @impl Plug def init(opts) do opts @@ -51,6 +53,10 @@ defmodule Pleroma.Web.ApiSpec.CastAndValidate do conn {:error, reason} -> + Logger.error( + "Strict ApiSpec: request denied to #{conn.path_info} with params #{inspect(conn.params)}" + ) + opts = render_error.init(reason) conn