Commit graph

320 commits

Author SHA1 Message Date
Hazelnoot
9de5ecae51 delete fetch logs when a note or user is deleted 2025-02-16 19:25:42 -05:00
Hazelnoot
4858276465 don't log slow activities, as this is known to happen under regular circumstances 2025-02-16 19:25:24 -05:00
Hazelnoot
81944b3bdf implement AP fetch logs 2025-02-16 19:25:22 -05:00
Hazelnoot
cc2edae7ab rename activity_log and activity_context to ap_inbox_log and ap_context 2025-02-16 19:25:04 -05:00
Hazelnoot
15148b7875 fix activity duration calculation
* Ensure that timing is recorded even if an exception is thrown.
* Round to the correct decimal place.
2025-02-16 19:25:04 -05:00
Hazelnoot
871c63b48b print warning when activity processing exceeds 10 seonds 2025-02-16 19:25:04 -05:00
Hazelnoot
e35e92beb9 log inbound activity duration 2025-02-16 19:25:04 -05:00
Hazelnoot
b65b4ecadc add inbound activity logger for debugging 2025-02-16 19:25:02 -05:00
Hazelnoot
f2fb408ffc fix import order in DeleteAccountProcessorService.ts 2025-02-04 09:57:02 -05:00
Hazelnoot
3391c2414b add IdentifiableError.isRetryable to ensure that Identifiable Errors can still terminate a batch process 2025-02-03 15:03:42 -05:00
Hazelnoot
a4e86758c1 merge upstream 2025-02-03 2025-02-03 14:36:09 -05:00
dakkar
eef8a9e24c use import configuration for media downloads in notes importer 2025-01-23 12:26:51 +00:00
dakkar
b3d2cd65aa use import configuration for downloads in emoji importer 2025-01-23 12:24:06 +00:00
おさむのひと
f9ad127aaf
feat: 新カスタム絵文字管理画面(β)の追加 (#13473)
* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* fix

* fix

* fix

* fix size

* fix register logs

* fix img autosize

* fix row selection

* support delete

* fix border rendering

* fix display:none

* tweak comments

* support choose pc file and drive file

* support directory drag-drop

* fix

* fix comment

* support context menu on data area

* fix autogen

* wip イベント整理

* イベントの整理

* refactor grid

* fix cell re-render bugs

* fix row remove

* fix comment

* fix validation

* fix utils

* list maximum

* add mimetype check

* fix

* fix number cell focus

* fix over 100 file drop

* remove log

* fix patchData

* fix performance

* fix

* support update and delete

* support remote import

* fix layout

* heightやめる

* fix performance

* add list v2 endpoint

* support pagination

* fix api call

* fix no clickable input text

* fix limit

* fix paging

* fix

* fix

* support search

* tweak logs

* tweak cell selection

* fix range select

* block delete

* add comment

* fix

* support import log

* fix dialog

* refactor

* add confirm dialog

* fix name

* fix autogen

* wip

* support image change and highlight row

* add columns

* wip

* support sort

* add role name

* add index to emoji

* refine context menu setting

* support role select

* remove unused buttons

* fix url

* fix MkRoleSelectDialog.vue

* add route

* refine remote page

* enter key search

* fix paste bugs

* fix copy/paste

* fix keyEvent

* fix copy/paste and delete

* fix comment

* fix MkRoleSelectDialog.vue and storybook scenario

* fix MkRoleSelectDialog.vue and storybook scenario

* add MkGrid.stories.impl.ts

* fix

* [wip] add custom-emojis-manager2.stories.impl.ts

* [wip] add custom-emojis-manager2.stories.impl.ts

* wip

* 課題はまだ残っているが、ひとまず完了

* fix validation and register roles

* fix upload

* optimize import

* patch from dev

* i18n

* revert excess fixes

* separate sort order component

* add SPDX

* revert excess fixes

* fix pre test

* fix bugs

* add type column

* fix types

* fix CHANGELOG.md

* fix lit

* lint

* tweak style

* refactor

* fix ci

* autogen

* Update types.ts

* CSS Module化

* fix log

* 縦スクロールを無効化

* MkStickyContainer化

* regenerate locales index.d.ts

* fix

* fix

* テスト

* ランダム値によるUI変更の抑制

* テスト

* tableタグやめる

* fix last-child css

* fix overflow css

* fix endpoint.ts

* tweak css

* 最新への追従とレイアウト微調整

* ソートキーの指定方法を他と合わせた

* fix focus

* fix layout

* v2エンドポイントのルールに対応

* 表示条件などを微調整

* fix MkDataCell.vue

* fix error code

* fix error

* add comment to MkModal.vue

* Update index.d.ts

* fix CHANGELOG.md

* fix color theme

* fix CHANGELOG.md

* fix CHANGELOG.md

* fix center

* fix: テーブルにフォーカスがあり、通常状態であるときはキーイベントの伝搬を止める

* fix: ロール選択用のダイアログにてコンディショナルロールを×ボタンで除外できなかったのを修正

* fix remote list folder

* sticky footers

* chore: fix ci error(just single line-break diff)

* fix loading

* fix like

* comma to space

* fix ci

* fix ci

* removed align-center

---------

Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2025-01-20 11:35:37 +00:00
Take-John
dc48c49f95
refactor: WebhookDeliverJobDataのcontentフィールドの型を具体的に (#15310)
* WebhookDeliverJobDataのcontentフィールドの型を具体的に

* typeフィールドの型も変更
2025-01-19 12:08:29 +00:00
おさむのひと
d2e22f9050
refactor: SystemWebhook/UserWebhookの配信処理呼び出し部分の改善 (#15035)
* UserWebhook側の対処

* SystemWebhook側の対処

* fix test
2025-01-14 11:14:02 +00:00
かっこかり
c4192e81ed
enhance(backend): チャートの処理を一つずつ行うことでDBの同時接続とタイムアウトを削減 (#15239)
* sync charts one-at-a-time to reduce database contention and timeouts

* fix merge resolve failure

* Update Changelog

* update changelog

* add comments

---------

Co-authored-by: Hazelnoot <acomputerdog@gmail.com>
2025-01-11 13:43:42 +00:00
dakkar
f4aa986abd fix scheduled replies becoming quote-boosts
thanks to @CenTdemeern1 for triggering this bug!
see https://kitsunes.club/notes/a2h1y2rq9n

also compare with https://s.thenautilus.net/notes/a2h1y2rqx9

my instance errored out with:

> WARN 1	[remote ap]	Failed to resolve quote
> https://mastodon.social/users/DrALJONES/statuses/110586222749407429
>  for note https://kitsunes.club/notes/a2h1y2rq9n: StatusError: 404 Not
> Found

What happened?

* Charlotte scheduled a reply
* the processor called `findOneBy` with an undefined `note.renote`,
  which probably caused a `select` without any `where`
* a random note was attached as a quote
* that note has been deleted on the original instance but not on
kitsuclub's database
* the rest of fedi didn't notice the quote
2025-01-01 17:10:56 +00:00
Hazelnoot
abb2c37591 re-implement "reduce inbox log spam when fetching blocked / unavailable notes" 2024-12-22 15:28:28 -05:00
dakkar
e4047b4076 rethrow everything but non-retryable HTTP errors
every job that ends without an exception will be considered
"completed" and not retried
2024-12-22 15:28:21 -05:00
Hazelnoot
0b40f2734e sync charts one-at-a-time to reduce database contention and timeouts 2024-12-17 10:37:29 -05:00
dakkar
6d4ae93592 Merge branch 'develop' into feature/2024.10 2024-12-12 13:04:51 +00:00
Marie
bf01dcd8fb
Apply suggestions 2024-12-09 18:58:57 +01:00
Marie
152cc07483
Apply suggestions 2024-12-09 05:58:25 +01:00
Marie
1d3c825398
upd: add notification for when scheduled note gets posted 2024-12-09 05:33:19 +01:00
Marie
fc9d777dc3
upd: add notification for failures, add reasons for failure, apply suggestions 2024-12-09 05:32:51 +01:00
NoriDev
2528508cff
feat: 노트 게시를 예약할 수 있음 (yojo-art/cherrypick#483, [Type4ny-Project/Type4ny@271c872c](271c872c97)) 2024-12-09 05:31:03 +01:00
dakkar
66dd12fb8a Merge branch 'develop' into feature/2024.10 2024-11-29 11:42:47 +00:00
Hazelnoot
536060e63c merge: Clear jobs from blocked domains (resolves #773) (!720)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/720

Closes #773

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2024-11-29 10:29:27 +00:00
dakkar
eb25238a8e Merge branch 'develop' into feature/2024.10 2024-11-28 11:17:27 +00:00
Hazelnoot
1e99782666 allow anonymous activities (resolves #819) 2024-11-26 09:05:04 -05:00
Hazelnoot
3f5ea11a1f clarify logging when an inbox job is skipped or fails 2024-11-26 08:59:08 -05:00
dakkar
6c13dc04f2 Merge branch 'develop' into feature/2024.10 2024-11-23 10:41:33 +00:00
Hazelnoot
2bbccde2ce reduce inbox log spam when fetching blocked / unavailable notes 2024-11-22 09:16:03 -05:00
dakkar
585052646a better wording for moderator inactivity messages 2024-11-22 10:49:16 +00:00
dakkar
d069d78c21 Merge branch 'develop' into feature/2024.10 2024-11-22 10:42:58 +00:00
Julia Johannesen
23c4aa2571
Fix style error 2024-11-20 20:24:59 -05:00
Laura Hausmann
ad8e8793c7
fix: primitives 5 & 8: reject activities with non-string identifiers 2024-11-20 19:17:24 -05:00
Julia
5f675201f2
Merge commit from fork
* enhance: Add a few validation fixes from Sharkey

See the original MR on the GitLab instance:
https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/484

Co-Authored-By: Dakkar <dakkar@thenautilus.net>

* fix: primitive 2: acceptance of cross-origin alternate

Co-Authored-By: Laura Hausmann <laura@hausmann.dev>

* fix: primitive 3: validation of non-final url

* fix: primitive 4: missing same-origin identifier validation of collection-wrapped activities

* fix: primitives 5 & 8: reject activities with non
string identifiers

Co-Authored-By: Laura Hausmann <laura@hausmann.dev>

* fix: primitive 6: reject anonymous objects that were fetched by their id

* fix: primitives 9, 10 & 11: http signature validation
doesn't enforce required headers or specify auth header name

Co-Authored-By: Laura Hausmann <laura@hausmann.dev>

* fix: primitive 14: improper validation of outbox, followers, following & shared inbox collections

* fix: code style for primitive 14

* fix: primitive 15: improper same-origin validation for
note uri and url

Co-Authored-By: Laura Hausmann <laura@hausmann.dev>

* fix: primitive 16: improper same-origin validation for user uri and url

* fix: primitive 17: note same-origin identifier validation can be bypassed by wrapping the id in an array

* fix: code style for primitive 17

* fix: check attribution against actor in notes

While this isn't strictly required to fix the exploits at hand, this
mirrors the fix in `ApQuestionService` for GHSA-5h8r-gq97-xv69, as a
preemptive countermeasure.

* fix: primitive 18: `ap/get` bypasses access checks

One might argue that we could make this one actually preform access
checks against the returned activity object, but I feel like that's a
lot more work than just restricting it to administrators, since, to me
at least, it seems more like a debugging tool than anything else.

* fix: primitive 19 & 20: respect blocks and hide more

Ideally, the user property should also be hidden (as leaving it in leaks
information slightly), but given the schema of the note endpoint, I
don't think that would be possible without introducing some kind of
"ghost" user, who is attributed for posts by users who have you blocked.

* fix: primitives 21, 22, and 23: reuse resolver

This also increases the default `recursionLimit` for `Resolver`, as it
theoretically will go higher that it previously would and could possibly
fail on non-malicious collection activities.

* fix: primitives 25-33: proper local instance checks

* revert: fix: primitive 19 & 20

This reverts commit 465a9fe6591de90f78bd3d084e3c01e65dc3cf3c.

---------

Co-authored-by: Dakkar <dakkar@thenautilus.net>
Co-authored-by: Laura Hausmann <laura@hausmann.dev>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-11-21 08:20:09 +09:00
dakkar
f079edaf3c Merge tag '2024.10.1' into feature/2024.10 2024-11-08 15:52:37 +00:00
Hazelnoot
27b502fab5 normalize re-fetch logic between InboxProcessorService and ActivityPubServerService 2024-10-26 10:40:15 -04:00
Hazelnoot
5eb9a263e2 fix public key re-fetch logic 2024-10-26 10:40:15 -04:00
おさむのひと
33b34ad7b8
feat: 運営のアクティビティが一定期間ない場合は通知+招待制に移行した際に通知 (#14757)
* feat: 運営のアクティビティが一定期間ない場合は通知+招待制に移行した際に通知

* fix misskey-js.api.md

* Revert "feat: 運営のアクティビティが一定期間ない場合は通知+招待制に移行した際に通知"

This reverts commit 3ab953bdf87f28411a1a10bce787a23d238cda80.

* 通知をやめてユーザ単位でのお知らせ機能に変更

* テスト用実装を戻す

* Update packages/backend/src/queue/processors/CheckModeratorsActivityProcessorService.ts

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>

* fix remove empty then

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-10-13 20:32:12 +09:00
syuilo
ff47fef572
feat: リモートサーバーのサーバー情報を収集しないオプション (#14634)
* wip

* wip

* Update FetchInstanceMetadataService.ts

* Update FetchInstanceMetadataService.ts

* Update types.ts
2024-10-13 20:22:16 +09:00
かっこかり
2f09d69773
fix(backend): キューのエラーログを簡略化するように (#14748)
* reduce federation log spam

* Don't record stack trace for unrecoverable errors.
* Avoid logging duplicate stace traces.

(cherry picked from commit ed0570110b)

* improve error summaries

(cherry picked from commit 20dd66f735)

* fix lint errors

(cherry picked from commit 83869e1c47)

* condense job info

(cherry picked from commit 786702e076)

* fix maxAttempts calculation

(cherry picked from commit b4d10aa8f8)

* condense error info

(cherry picked from commit f62cd8941c)

* normalize ID logging

(cherry picked from commit d8e1e4890d)

* further condense error details

(cherry picked from commit d867c2089b)

* collapse AbortErrors

(cherry picked from commit 5171ba7113)

* don't log job name unless it has one

(cherry picked from commit a5316c06ed)

* Update Changelog

* Record origin

---------

Co-authored-by: Hazel K <acomputerdog@gmail.com>
2024-10-11 21:29:03 +09:00
おさむのひと
a2cd6a7709
feat(backend): 7日間運営のアクティビティがないサーバを自動的に招待制にする (#14746)
* feat(backend): 7日間運営のアクティビティがないサーバを自動的に招待制にする

* fix RoleService.

* fix

* fix

* fix

* add test and fix

* fix

* fix CHANGELOG.md

* fix test
2024-10-11 20:59:36 +09:00
dakkar
02d36c4518 Merge branch 'develop' into feature/2024.9.0 2024-10-11 10:10:16 +01:00
dakkar
f00576bce6 Merge remote-tracking branch 'misskey/master' into feature/2024.9.0 2024-10-09 15:17:22 +01:00
Hazel K
a5316c06ed don't log job name unless it has one 2024-10-08 11:01:24 -04:00
Hazel K
5171ba7113 collapse AbortErrors 2024-10-08 10:43:58 -04:00