2026年10月のサイトメンテナンス
依存パッケージの更新をきっかけに、Chrome の検証や PageSpeed Insights の指摘を順に片付けました。1日で終わる規模の、日常のメンテナンスです。
依存パッケージの更新
セクション「依存パッケージの更新」指定範囲の中で、最新のパッチ版に更新しました。
| パッケージ | 更新内容 |
|---|---|
| Astro | 7.3.5 → 7.3.8 |
| @astrojs/starlight | 0.42.5 → 0.42.7 |
| @astrojs/check | 0.9.10 → 0.9.12 |
ほかに sharp・prettier・Babel などもパッチ版に上げています。
Partytown をやめた
セクション「Partytown をやめた」Chrome の DevTools で、「Fenced Frame API は非推奨となり、削除される予定です」という警告が出ていました。出どころは、Google Analytics を Web Worker で動かすために使っていた Partytown です。
Partytown は6月の改善で、メインスレッドのブロックを解消するために入れたものです。外すと遅くなるのかを、Lighthouse(モバイル、5回の中央値)で比べました。
| 指標 | トップ(あり → なし) | 記事ページ(あり → なし) |
|---|---|---|
| Performance | 98 → 98 | 100 → 100 |
| FCP(最初の表示) | 1.35秒 → 1.20秒 | 1.35秒 → 1.35秒 |
| LCP(主な内容の表示) | 2.40秒 → 2.25秒 | 1.35秒 → 1.35秒 |
| TBT(操作をふさぐ時間) | 0ms → 69ms | 0ms → 33ms |
Partytown ありのほうが TBT は 0ms で、6月の改善の効果は今も残っていました。一方で、外しても表示の速さは変わらず、TBT の増え方も「良い」とされる 200ms 未満に収まります。
Partytown は、1ページを開くたびに Service Worker を通して50件ほどの通信をしていました。差が小さいなら、仕組みが単純なほうを選ぶことにして、Partytown を外しました。
あわせて、Google Analytics は本番のサイトでだけ読み込むようにしました。手元で確認しているときのアクセスが、アクセス解析に混ざらなくなります。
PageSpeed Insights の指摘への対応
セクション「PageSpeed Insights の指摘への対応」公開サイトをモバイルで測ると、次の2点を指摘されました。
- 日付の文字色のコントラスト不足: お知らせやブログ一覧の日付が、ダークテーマで基準にわずかに届いていませんでした。文字色を一段濃くし、ユーザー補助のスコアが 96 から 100 になりました。
- 使われていない preconnect: Google Analytics が接続しなくなったドメインへの preconnect が残っていたので、削除しました。
ほかにも、レンダリングをブロックする CSS や、使われていない JavaScript などが表示されました。どれもスコアに影響しない改善のヒントで、Starlight 本体や Google Analytics のスクリプトによるものなので、そのままにしています。
Chrome の検証では、検索欄やテーマの切り替えに id / name がないという指摘もありました。これも Starlight と検索機能(Pagefind)の部品によるもので、動作には影響しないため、対応していません。
デプロイスクリプトの改善
セクション「デプロイスクリプトの改善」デプロイは、ビルドしてサーバーに転送するシェルスクリプトで行っています。これまではビルドと転送の出力が数百行流れるため、途中に警告が出ても見落としがちでした。
スクリプトを次のように変えました。
- 出力はすべてログファイルに残し、画面には段階ごとの進み具合だけを表示する
- 最後に、ログから警告とエラーの行を拾って表示する
- 転送したファイルの数を表示する
- どこかで失敗したら、その時点で止める
画面の表示は、これだけになりました。
▶ 型定義を同期… 完了▶ ビルド中… 完了(373ページ)▶ 転送中… 完了(dist: 373件 / public: 0件 / .htaccess: 0件)⚠ 警告: なしこれまでは、ビルドに失敗しても転送に進んでいました。不完全な内容で公開サイトを上書きするおそれがなくなったのも、改善点のひとつです。
会社案内
セクション「会社案内」会社案内のスパム対策を、英語版にも日本語版と同じように適用しました。