
Frontendに欠けたMetric:TBT Window — 2026年 第23週 ウェブ開発
今週のウェブ開発全般カテゴリはAddy OsmaniのAI支援エンジニアリングに関する2本の記事が中心でした。1本目はLoop Engineeringを紹介しました。Automations・Worktrees・Skills・MCPコネクター・サブエージェントという5つの要素を基盤に、コーディングエージェントをターンごとに手動プ… 開発ですぐ活用できるよう整理しました。


ループエンジニアリング
SKILL.mdファイルによるプロジェクトコンテキストの明文化)、プラグインとMCPコネクター(ツール統合)、そしてサブエージェント(作成者と検証者の分離)。CodexとClaude Codeの両方がこの5つをサポートしており、ループ設計は特定ツールに依存しません。Osmaniは、ループが無人状態でのミス、理解負債、認知的降伏という3つのリスクを悪化させると警告しています。
Intent Debt
AGENTS.mdをインテント台帳として活用、意思決定時の軽量なADR記録、エージェントがセッション後に学習内容を永続ファイルに書き戻すフィードバックループの構築を推奨しています。
GitHub Copilot App:Agent-native Desktop Experience

現代エンジニアリングの価値観

Source Mapについて知るべきすべて
sources、names、base64 VLQエンコードされたmappings、元のソーステキストをインラインに含むsourcesContent)と、sourcemapが逆転させるTypeScriptからミニファイされたバンドルへの変換パイプラインを説明します。セキュリティリスクは具体的です。2025年11月のAppleのウェブApp Storeリリースと2026年3月のAnthropicのclaude-code npmパッケージ(1,900ファイル、512,000行をカバーする59.8MBのcli.js.map)が誤って本番sourcemapを含んで出荷されました。Anthropicのリークはnpmパッケージがキャッシュ・ミラーされるため永続的でした。Danは4つの防御層を推奨しています:本番ビルドでsourcemapを無効化(ViteとNext.jsのデフォルトはすでにfalse)、エラー追跡専用のhidden sourcemap使用(Viteのsourcemap: 'hidden'、Webpackのhidden-source-map)、サーバーで.mapリクエストをブロック、distアーティファクトでsourcesContentをスキャンするpostbuild CIチェックの自動化。
Vibe Code時代のOWASP Top Ten入り

Frontendに欠けたMetric:TBT Window
ループエンジニアリング
SKILL.mdファイルによるプロジェクトコンテキストの明文化)、プラグインとMCPコネクター(ツール統合)、そしてサブエージェント(作成者と検証者の分離)。CodexとClaude Codeの両方がこの5つをサポートしており、ループ設計は特定ツールに依存しません。Osmaniは、ループが無人状態でのミス、理解負債、認知的降伏という3つのリスクを悪化させると警告しています。Intent Debt
AGENTS.mdをインテント台帳として活用、意思決定時の軽量なADR記録、エージェントがセッション後に学習内容を永続ファイルに書き戻すフィードバックループの構築を推奨しています。GitHub Copilot App:Agent-native Desktop Experience
現代エンジニアリングの価値観
Source Mapについて知るべきすべて
sources、names、base64 VLQエンコードされたmappings、元のソーステキストをインラインに含むsourcesContent)と、sourcemapが逆転させるTypeScriptからミニファイされたバンドルへの変換パイプラインを説明します。セキュリティリスクは具体的です。2025年11月のAppleのウェブApp Storeリリースと2026年3月のAnthropicのclaude-code npmパッケージ(1,900ファイル、512,000行をカバーする59.8MBのcli.js.map)が誤って本番sourcemapを含んで出荷されました。Anthropicのリークはnpmパッケージがキャッシュ・ミラーされるため永続的でした。Danは4つの防御層を推奨しています:本番ビルドでsourcemapを無効化(ViteとNext.jsのデフォルトはすでにfalse)、エラー追跡専用のhidden sourcemap使用(Viteのsourcemap: 'hidden'、Webpackのhidden-source-map)、サーバーで.mapリクエストをブロック、distアーティファクトでsourcesContentをスキャンするpostbuild CIチェックの自動化。Vibe Code時代のOWASP Top Ten入り
今週のウェブ開発全般カテゴリはAddy OsmaniのAI支援エンジニアリングに関する2本の記事が中心でした。1本目はLoop Engineeringを紹介しました。Automations・Worktrees・Skills・MCPコネクター・サブエージェントという5つの要素を基盤に、コーディングエージェントをターンごとに手動プロンプトするのではなく自律的にオーケストレーションするシステムを設計するアプローチです。CodexとClaude Codeの両方がこの5つをサポートします。Osmaniはループが3つのリスクを増幅させると警告しました。無人状態でのミス、書いていないコードの理解負債、独立した判断を放棄する認知的降伏です。2本目の記事はMargaret-Anne StoreyのTriple Debt Modelをエージェント時代に適用し、インテント負債という概念を導入しました。AIが生成できない目標と根拠が外部化されていないことで発生するセッションごとのコストです。目標をspecに記述し、AGENTS.mdをインテント台帳として活用し、意思決定時に軽量なADRを記録し、エージェントがセッション後に学習内容を永続ファイルに書き戻すフィードバックループの構築を推奨しました。
GitHubはMicrosoft BuildでGitHub Copilotアプリを発表しました。単一のMy Workビューから並列エージェントセッションを管理するデスクトップコントロールセンターで、各セッションはgit worktreeで分離されます。Canvases機能はエージェントと開発者が同じ画面で作業できる双方向のワークサーフェスを提供します。Agent MergeはCIモニタリング・レビュアー追跡・条件付き自動マージを含むPRライフサイクルを自動化します。Copilotコードレビューは高い推論モデルにPRをルーティングするmediumティアモードを追加し、Copilot SDKはNode.js/TypeScript・Python・Go・.NET・Rust・Javaの6言語でGAになりました。Christoph Nakazawa(cpojer)は30日間でVite+・fate 1.0・Codiff・Athena Crisisに770コミットを積み上げたと報告し、AI時代でも普遍的な6つのエンジニアリング価値を提唱しました。ドメインオーナーシップ、テイスト、厳格なガードレール、リポジトリ内コンテキスト、スタックの自前保有、オプション価値の保全です。
Harry RobertsはTBT Windowという概念を提唱しました。FCPからTTIまでの区間でTotal Blocking Timeを計測する範囲です。あるクライアントのTBTがJavaScriptの悪化ではなくpreloadヒントがTTIの5秒クワイエットウィンドウ条件に違反したことで495msから5,789msに急増した事例を診断しました。OWASP Top 10 2025共著者Tanya Jankaは脆弱なコンポーネント項目をソフトウェアサプライチェーン全体に拡大し、曖昧な「コード品質の低さ」を「例外条件の誤った処理」に置き換えた2つの主要変更を解説しました。AIコーディングアシスタントがデフォルトでセキュリティ脆弱性を導入しがちだと警告し、securemyvibe.caの無料プロンプトライブラリを紹介しました。sourcemapセキュリティガイドはApple(2025年11月)とAnthropicの(2026年3月、59.8MBのcli.js.map)が誤って本番sourcemapを含めて出荷したことを明らかにし、hidden sourcemapとpostbuild CIスキャンを推奨しました。
- インテント負債(記録されていない目標と根拠)はすべての並列AIエージェントセッションにわたって蓄積します。エージェントを起動する前に、spec・ADR・AGENTS.mdにインテントを外部化してください。
- Harry RobertsのTBT Window分析は、LCP向けのpreloadヒント追加が逆説的に計測ウィンドウを拡大してTBTを爆発的に増やす可能性を示しています。TBTとTTIを併せて追跡し、絶対スコアだけでなく両者のずれを調査してください。
- 本番sourcemapの出荷はソースツリー全体を永続的に流出させます(npmキャッシュはすべてミラーする)。Viteのsourcemap: 'hidden'またはWebpackのhidden-source-mapを使用し、distアーティファクトのsourcesContentをスキャンするpostbuild CIチェックを追加してください。