📚 すべての記事
全 115 件 / 5 ページ目(全 10 ページ)
Storybook × a11y 実機編 — 「テストは緑、でも無スタイル DOM を検査していた」を実機で暴くまで【実践編 第6章】
WCAG 準拠を test-storybook で機械ゲート化した実録。SB9+ では axe-playwright が不要になっていた公式仕様の裏取り、build-storybook の styles 欠落で axe が無スタイル DOM を検査していた実機発見、styled 再検査で露出した color-contrast 52 件、zoneless Angular の aria-invalid 罠まで — 「テスト緑 ≠ 検査できている」の教科書的事例。
テスト品質・網羅性編 — カバレッジは「上げる」前に「正しく測る」。偽の穴・計測盲点・1,124 行の隠れコピペ【実践編 第7章】
Python ジョブ群をカバレッジ 96% 一律ゲート化し、.NET/フロントエンドの計測負債を解消した実録。計画値 72% vs 実測 29% の乖離、テストレビュアーが発見した production+test 約 1,124 行の完全コピペ、丸ごと計測除外されていた BC、0% クラス 47 個中 22 個が「偽の穴」だった話、そして ratchet 方式での段階引き上げまで — %稼ぎをせずカバレッジと向き合う方法。
Python ジョブ群編 — 握り潰された except は 3 箇所ではなく 8 箇所あった。スタブ・enum 三重定義の一掃【実践編 第8章】
AI が量産しがちな Python の「静かな負債」を一掃した実録。NotImplementedError スタブの二世代併存を実態調査でまとめて削除、LLM レスポンス parse の except-pass 握り潰しをゼロベースライン確認で 3 → 8 箇所に拡張検出、振る舞いが微妙に違う enum 三重定義の統合、複数行 grep やコメント誤検出と戦う機械ガードの細部まで。
パフォーマンス編 — 「数えるだけ」が 52.7 秒かかり SAGA を止めた。そして最適化が障害の元凶になった【実践編 第9章】
件数カウントが全件マテリアライズで statement_timeout を踏み、リトライ経由で SAGA 全体を止めた障害の解剖(COUNT 化で 500 倍改善)。5 属性完全一致キャッシュをコサイン類似度キャッシュ(閾値 0.95・pgvector)へ刷新した設計と、その最適化が後に「Create Chunk 重量化の元凶」と名指しされ契約 C-1/C-8 で正しい置き場所に戻されるまで — 性能改善も、アーキテクチャ契約の中でやる。
セキュリティ編 — token をログに書かせない arch-test、YAGNI で消す勇気、「ローカル緑でも本番 400」の罠【実践編 第10章】
実践編最終章。トークン平文ログを grep ベースのアーキテクチャテストで構造禁止し、呼び出しゼロの認可コードを YAGNI で削除し、CORS の localhost を本番だけ閉じる — その過程で踏んだ「.NET 10 は record の検証属性を param target で要求し、[property:] だと 400 を返す」という実挙動の罠と、design-reviewer の SHOULD 指摘が的中した CORS 訂正劇。セキュリティ負債の返済も、機械ガードと実挙動検証で。
Terraform IaC 実践ガイド:モジュール設計編 — 再利用できるモジュールの作法
再利用可能な Terraform モジュールの設計原則。単一責任・命名規約・variables の validation/optional/object 型・outputs 設計・バージョン固定・モジュールコンポジション・マルチクラウドの扱いを、実運用のコード例で解説する。Terraform IaC 実践ガイド第 3 回。
Terraform IaC 実践ガイド:運用編 — State drift 解消とトラブルシューティング
Terraform を本番運用するうえで避けて通れない State drift の検知・解消、State 操作の安全手順、よくある障害(stale plan・state lock・403 SERVICE_DISABLED・allUsers IAM)の対処、環境移行、そして運用タスクのサイジングと AI ステアリング連動を実例で解説する。Terraform IaC 実践ガイド第 5 回。
Ubuntu リモート開発セットアップ — Tailscale + SSH + VS Code Remote で Wayland ホストに繋ぐ
Ubuntu 26.04 (Wayland) を開発サーバー化したとき、xrdp / Chrome Remote Desktop は X11 必須で詰む。Tailscale + SSH + VS Code Remote SSH + Dev Container で「画面ではなくセッションを持ち運ぶ」構成にする実録。WSL と Windows ネイティブ SSH 鍵の落とし穴、CGNAT IP の固定、systemd で SSH を常時待ち受けに、までを 1 日で組み上げる。シリーズ「脱Microsoft・OSS移行」第 7 回。
Microsoft 365 → Google Workspace 全面移行 — メール・DKIM/DMARC・OneDrive→Google Drive
Microsoft 365 から Google Workspace へ 1 日完結で移行する実録。Exchange Online のメールを取りこぼし 0 で Gmail へインポート、MX/SPF/DKIM/DMARC で認証三冠、NCE 違約金回避、Chrome + PWA で Meet 真っ白問題解消、OneDrive → Google Drive 差分同期。シリーズ「脱Microsoft・OSS移行」第 6 回。