Repository navigation
Conversation
ミュート / ブロックの一覧は本体に持たず、設定のトップではなく該当ページへ送る。 コマンドパレットのアカウント操作にも同じ項目を足す。パスを確かめてあるのは対応して いるソフトウェアだけなので、それ以外では出さない。 ROADMAP に、管理画面を採用しない判断と、例外の候補 (ユーザーミュートの一覧) を測る線を残す。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
user.mute / unmute / renoteMute / unrenoteMute の確認は相手を内部の ID で出していて、 承認する人が誰のことか読めなかった。確認を組むときに相手を引いて「表示名 (@user@host)」 で出す。引けないとき (アカウントが決まらない / 相手が居ない / 通信の失敗) は ID のまま出し、 確認そのものは止めない。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
feat(account): アカウントメニューから本家 Web の「ミュートとブロック」へ直接送る (#1267)
fix(ai): AI のミュート確認に相手の表示名と acct を出す (#1358)
ミュート / ブロックの権限はログイン時の要求に後から足したので、それより前のトークンの ままの口座では mute/list が PERMISSION_DENIED になる。これを「再試行してよい失敗」として 扱っていたため、復帰のたびに打ち直して失敗し続け、利用者には何も見えなかった。 権限不足は認証エラーと同じく取り直さず、何に要るのかを言って再ログインを 1 回案内する。 ログインし直すと口座の行が置き換わるので、そこで取り直す。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…enied fix(mute): ミュートの同期が権限不足のとき、取り直さずに再ログインを案内する (#1359)
本家の users/following / users/followers はフォロー関係の記録の id で前後を絞る。一覧は 取得した行を相手のユーザーに置き換えてから持つので、次のページの起点に末尾のユーザーの id を 渡していた。id は作成時刻の順なので、相手のアカウントが作られた時刻を境に取りに行くことに なり、取りこぼしと重複が出る。取得した末尾の記録の id を覚えて起点にする。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
fix: フォロー / フォロワー一覧の次ページの起点を、フォロー関係の記録の id にする (#1360)
- drafts.list: 取得の失敗 (下書き API の無いサーバー、通信断) を「0 件」(実際は前回の 一覧) にせず、失敗として返す。投稿フォームの下書きピッカーは失敗を受けて今までどおり 前回の一覧を見せる。drafts.update の読み直しも、取得の失敗が「not found」に化けなくなる - capability の失敗の文言: Rust 由来の失敗は Error ではなく object で投げられ、String() で [object Object] に潰れて AI・外部 API・MCP・Nd:call に返っていた。message を取り出して 返す。表示言語には描き直さない。外へ出る文言なので、ホームディレクトリは ~ にして OS の ユーザー名を載せない - ウィジェットのエラーの帯: 再実行するまで消えなかった。次に画面を描き直せたら消す - プラグイン開発ドキュメントに「失敗したとき」を足す。Nd:call の error 値は名前で判定する Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
サーバーのエラー応答・レート制限・通信断は throw をやめ、values.ERROR('request_failed',
{ code, message }) を返す。code は Misskey のエラーコードがあればそれ、無ければ NoteDeck の
種別。AiScript に try/catch は無く、止めると作者は失敗を自分の UI で扱えない。本家向けに
書かれた「error 値なら失敗」の分岐もそのまま動く。
呼べなかったもの (権限 gate の拒否 / アカウントが無い / 要求の形の誤り / 内部の失敗) は
止めるまま。Nd:call は変えない。
止まらなくなる分の手当て:
- error 値で返した失敗も実行ログに 1 行残す (io.onNotice、全実行面)
- プラグインが登録した capability の handler が error 値をそのまま戻したら、値の変換で
理由が潰れる前に、理由つきの失敗として呼び出し元 (AI など) に返す
- ドキュメント (4 言語): 書込のあとは必ず結果を確かめる。サーバーごとの差を自分の画面で
扱うなら Mk:api を使う
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- ホームディレクトリの伏せ方: 空白を含む Windows のユーザー名と、JSON にした後の 二重のバックスラッシュのパスも対象にする - 失敗しても前に取得した下書きの一覧が残ることをテストで押さえる - ドキュメント: コマンドパレットのコマンドは失敗してもトーストが出ない (実行ログだけ)。 「引数の誤りはどの API でも止まる」は Nd:http の無視される引数と合わないので外す Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- ホームディレクトリの伏せ方: 空白を含む macOS のユーザー名も対象にする - ドキュメント: Nd:http は要求を出せなかったとき (未対応のメソッド、許可されない接続先) は止まる。権限の拒否はバッジと、場合によってトーストにも出る Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…orting fix(capability): 失敗を握り潰さず、理由を潰さずに返す (#1255)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
feat(aiscript): Mk:api の失敗を、本家と同じ error 値 (request_failed) で返す (#1249)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 30 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
API surface diff外部アプリ向け API 面 ( Full diffdiff --git a/src-tauri/openapi.json b/src-tauri/openapi.json
index 2b19acd..fd23a76 100644
--- a/src-tauri/openapi.json
+++ b/src-tauri/openapi.json
@@ -6,7 +6,7 @@
"license": {
"name": "MIT"
},
- "version": "1.105.1"
+ "version": "1.106.0"
},
"paths": {
"/api": {
|
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
変更
機能
Mk:apiの失敗を、Misskey 本体と同じ error 値 (request_failed) で返す (Mk:api の失敗を本家と同じ error 値で返す — 失敗の返し方の方針 (Nd:call は止まるまま) #1249) — サーバーのエラー応答・レート制限・通信断は止めずに値で返す。res.info.codeに Misskey のエラーコードが入るので、本体向けに書いたプラグインの「error 値なら失敗」の分岐がそのまま動く。権限の拒否・アカウントなしは止めるまま。Nd:callは変えない修正
drafts.listが失敗を握り潰さない (fix(capability): 未対応サーバー・古いフォークへの頑健性 — drafts.list が失敗を [] に握り潰す / federation.instance の serde が必須フィールドで落ちる #1255) — 下書き API の無いサーバーや通信断を「0 件」(実際は前回の一覧) として返していた[object Object]に潰れない (fix(capability): 未対応サーバー・古いフォークへの頑健性 — drafts.list が失敗を [] に握り潰す / federation.instance の serde が必須フィールドで落ちる #1255) — Rust 由来の失敗が AI・外部 API・MCP・Nd:callに[object Object]で返っていた。理由を返す。ホームディレクトリは~にして OS のユーザー名を載せないドキュメント
プラグイン / ウィジェットの作者へ
Mk:apiが止まらなくなる。結果を見ないコードは、失敗しても先へ進む (Misskey 本体と同じ)。書込のあとはCore:type(res) == "error"を確かめてから成功を表示すること。ストアの配布物は修正済み (misstore#102)。閉じる issue
Closes #1249
Closes #1255
Closes #1358
Closes #1359
Closes #1360
確認
いずれも実機では未確認 (テスト・型検査・lint は通過)。
🤖 Generated with Claude Code