-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: Proxyアカウントをシステムアカウントにしてわかりやすくした #15026
refactor: Proxyアカウントをシステムアカウントにしてわかりやすくした #15026
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #15026 +/- ##
============================================
- Coverage 40.86% 21.24% -19.62%
============================================
Files 1609 774 -835
Lines 161806 74353 -87453
Branches 3786 1375 -2411
============================================
- Hits 66119 15797 -50322
+ Misses 95239 58127 -37112
+ Partials 448 429 -19 ☔ View full report in Codecov by Sentry. |
このPRによるapi.jsonの差分 差分はこちら--- base
+++ head
@@ -17838,6 +17838,194 @@
}
}
},
+ "/admin/update-proxy-account": {
+ "post": {
+ "operationId": "post___admin___update-proxy-account",
+ "summary": "admin/update-proxy-account",
+ "description": "No description provided.\n\n**Credential required**: *Yes* / **Permission**: *write:admin:update-proxy-account*",
+ "externalDocs": {
+ "description": "Source code",
+ "url": "https://github.com/misskey-dev/misskey/blob/develop/packages/backend/src/server/api/endpoints/admin/update-proxy-account.ts"
+ },
+ "tags": [
+ "admin"
+ ],
+ "security": [
+ {
+ "bearerAuth": []
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "minLength": 1,
+ "maxLength": 50
+ },
+ "description": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "minLength": 1,
+ "maxLength": 1500
+ },
+ "avatarId": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "format": "misskey:id"
+ },
+ "bannerId": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "format": "misskey:id"
+ }
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK (with results)",
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "$ref": "#/components/schemas/UserDetailed"
+ }
+ }
+ }
+ },
+ "400": {
+ "description": "Client error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Error"
+ },
+ "examples": {
+ "ACCESS_DENIED": {
+ "value": {
+ "error": {
+ "message": "Only administrators can edit members of the role.",
+ "code": "ACCESS_DENIED",
+ "id": "101f9105-27cb-489c-842a-69b6d2092c03"
+ }
+ }
+ },
+ "INVALID_PARAM": {
+ "value": {
+ "error": {
+ "message": "Invalid param.",
+ "code": "INVALID_PARAM",
+ "id": "3d81ceae-475f-4600-b2a8-2bc116157532"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Authentication error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Error"
+ },
+ "examples": {
+ "CREDENTIAL_REQUIRED": {
+ "value": {
+ "error": {
+ "message": "Credential required.",
+ "code": "CREDENTIAL_REQUIRED",
+ "id": "1384574d-a912-4b81-8601-c7b1c4085df1"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "403": {
+ "description": "Forbidden error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Error"
+ },
+ "examples": {
+ "AUTHENTICATION_FAILED": {
+ "value": {
+ "error": {
+ "message": "Authentication failed. Please ensure your token is correct.",
+ "code": "AUTHENTICATION_FAILED",
+ "id": "b0a7f5f8-dc2f-4171-b91f-de88ad238e14"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "418": {
+ "description": "I'm Ai",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Error"
+ },
+ "examples": {
+ "I_AM_AI": {
+ "value": {
+ "error": {
+ "message": "You sent a request to Ai-chan, Misskey's showgirl, instead of the server.",
+ "code": "I_AM_AI",
+ "id": "60c46cd1-f23a-46b1-bebe-5d2b73951a84"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "500": {
+ "description": "Internal server error",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Error"
+ },
+ "examples": {
+ "INTERNAL_ERROR": {
+ "value": {
+ "error": {
+ "message": "Internal error occurred. Please contact us if the error persists.",
+ "code": "INTERNAL_ERROR",
+ "id": "5d37dbcb-891e-41ca-a3d6-e690c97775ac"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
"/admin/update-user-note": {
"post": {
"operationId": "post___admin___update-user-note", |
現時点でプロキシアカウントが存在する場合にそのフォロー情報を引き継がないからきちんと移行できなさそう(コード斜め読みのため間違っていたらすみません) |
現時点のプロキシアカウントを削除するわけではないから動くと思っていましたが、有識者のコメントを求めたいです。 |
システムアカウントとしてProxyが生えたなら、これまで生やしていたProxyアカウントを残す理由はないようにも感じられるので、そこでフォロー情報が引き継がれていないと事故に繋がりそうではあるかもしれません。 |
システムアカウントになった後も、既存のProxyアカウント同様、リモートの相手はProxyからのフォローを却下可能という理解であっていますか…? |
システムアカウントはユーザー名の規則しか違わない認識なので、現在と変わらずフォロー却下できるはずです。 |
アカウントの名前はサーバー名に、アイコンはサーバーアイコンで固定にしてアカウントのdescriptionだけ編集可能にしても良いかもしれないです |
実装のシンプルさ優先してとりあえず↑にします |
実装内容がかなり変わってくるので別でPR作ることにします 🙏🏻 |
What
Why
#14857
Additional info (optional)
Checklist