CLAUDE LABEN
PRICING — 本日9月1日は Sonnet 5 の値上げ予定日でしたが、引き上げは実施されませんでした。導入価格の $2/$10 per MTok がそのまま標準価格として確定していますPARTNER — Salesforce と Anthropic が拡張提携「Claudeforce」を発表しました。Salesforce in Claude プラグインは商談準備やパイプライン管理など37のセールススキルを同梱しますTRUST — Claudeforce の推論は Amazon Bedrock 経由で Salesforce Trust Boundary の内側に留まります。データが境界の外へ出ない構成が、規制業種への回答になっていますBETA — Salesforce in Claude は現在は選抜パイロット顧客向けです。9月中のオープンベータ移行が予告されていますLIMITS — 週次上限の50%増は9月13日までです。9月14日からはプロモ前比+25%が恒久水準になります。今日の水準と比べると約17%の削減にあたりますRELEASE — Claude Code は v2.1.251(8月28日)から新しいリリースが出ていません。約0.8日に1本というペースからすると、4日の間隔は最長クラスですPRICING — 本日9月1日は Sonnet 5 の値上げ予定日でしたが、引き上げは実施されませんでした。導入価格の $2/$10 per MTok がそのまま標準価格として確定していますPARTNER — Salesforce と Anthropic が拡張提携「Claudeforce」を発表しました。Salesforce in Claude プラグインは商談準備やパイプライン管理など37のセールススキルを同梱しますTRUST — Claudeforce の推論は Amazon Bedrock 経由で Salesforce Trust Boundary の内側に留まります。データが境界の外へ出ない構成が、規制業種への回答になっていますBETA — Salesforce in Claude は現在は選抜パイロット顧客向けです。9月中のオープンベータ移行が予告されていますLIMITS — 週次上限の50%増は9月13日までです。9月14日からはプロモ前比+25%が恒久水準になります。今日の水準と比べると約17%の削減にあたりますRELEASE — Claude Code は v2.1.251(8月28日)から新しいリリースが出ていません。約0.8日に1本というペースからすると、4日の間隔は最長クラスです
記事一覧/Claude Code
Claude Code/2026-07-15上級

型は付いたのに、安全にはならなかった — JS→TS 移行で Claude Code に任せた範囲と任せなかった範囲

tsc が緑でも any は静かに漏れます。型カバレッジで移行の実態を測り、Claude Code に任せて速い作業と人が決めるべき判断を線引きし、悪化を止める CI ゲートまでを実装付きで整理した運用メモです。

Claude Code242TypeScript24型カバレッジ移行5CI5個人開発122

プレミアム記事

tsc --noEmit が緑になった翌週に、本番で Cannot read properties of undefined が出ました。

移行そのものは順調だったのです。JavaScript のままだったユーティリティ層をひととおり .ts に変え、strict: true も入れ、CI も通っていました。手元では「終わった」と思っていました。

落ちた場所を追うと、外部 API のレスポンスを受け取る関数でした。型はちゃんと付いています。ただしその型は、私が書いたのでも Claude Code が推論したのでもなく、as ApiResponse と手で押し込んだ嘘でした。

型が付いていることと、安全であることは別でした。個人開発で四つのサイトを回している身としては、痛いところを突かれた気分でした。

tsc が緑でも安全にならない、四つの漏れ道

移行後のコードベースを調べ直して分かったのは、any は「消した」つもりでも別の姿で残るということでした。私の場合、漏れ道は四つに整理できました。

漏れ道tsc は通るか実際に起きたこと
as による断定通る外部レスポンスを as ApiResponse で押し込み、欠けたフィールドが undefined のまま流れた
型定義のない依存パッケージ通る(noImplicitAny でも import 経由なら素通り)@types がない小さなライブラリの戻り値が実質 any で、そのまま伝播した
ジェネリクスの既定値通るuseState() や自作関数の型引数を省略し、推論が広がった
catch 節の値通るunknown のまま扱わず error.message に触れる分岐が残った

いずれも「エラーが出ないから気付けない」という共通点があります。移行の進捗を「変換したファイル数」で見ているかぎり、この四つは最後まで見えません。

進捗の指標を、ファイル数から型カバレッジに変える

そこで指標を入れ替えました。式レベルで型が付いている割合、いわゆる型カバレッジです。type-coverage を使えば一行で出ます。

npx type-coverage --detail --strict
# 12043 / 12876 94.53%
# src/lib/api-client.ts:42:15 - res
# src/lib/api-client.ts:58:9 - payload

--detail を付けると、any のまま残っている式が行番号付きで並びます。これが移行の実態でした。ファイル単位では 100% 変換済みなのに、式単位では 94.5% だったのです。残りの 5.5%、約 830 箇所が、先ほどの四つの漏れ道に分布していました。

数値そのものより、内訳が読めることに価値があります。漏れをファイル別に束ねると、手を入れる順番が決まります。

#!/usr/bin/env bash
# scripts/type-coverage-report.sh — any 残存をファイル別に集計する
set -euo pipefail
 
npx type-coverage --detail --strict 2>/dev/null \
  | grep -E '^[^ ]+\.tsx?:[0-9]+:[0-9]+' \
  | cut -d: -f1 \
  | sort | uniq -c | sort -rn \
  | head -20

私の場合、上位 5 ファイルに漏れの 6 割が集まっていました。全体を薄く直すより、この 5 ファイルの境界設計をやり直すほうが確実に速い、という判断がここで立ちます。移行は面ではなく、点から崩れていました。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
type-coverage で式単位の型付与率を測り、ファイル数 100% 裏の 94.5% を可視化する集計スクリプト
Claude Code に任せて速い三つの作業と、as を嘘に変えないため人が決める四つの判断の線引き表
型カバレッジ 94.5%→99.2% を守ったラチェット式 CI ゲート(GitHub Actions・baseline 更新の記録法)
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

Claude Code2026-08-27
リポジトリに置いた allow を信じるか、環境側の信頼登録に寄せるか
使い捨ての実行環境で Claude Code を非対話で走らせると、リポジトリ内の permissions.allow が信頼待ちのまま落ちます。何が落ちて何が残るのかを 2.1.246 で確かめ、許可設定の置き場所を決め、起動前に検出するプリフライトを用意します。
Claude Code2026-08-25
空白ひとつで、80件の検査が0件になる — 一括処理を任せる前に置くガード
空白を含むフォルダ名の下で走らせた検査ループが、80件のうち1件も開いていませんでした。断片が実在パスに化ける仕組みを実測で切り分け、削除を伴うバッチに置く件数アサーションまで書き残します。
Claude Code2026-08-22
Claude Code の headersHelper に移したら、プロジェクト配下のカタログだけ認証が通らなくなりました
自前のプラグインカタログを headersHelper へ移す途中で、ユーザースコープでは動くヘルパーがプロジェクト配下だけ落ちました。原因は認証情報の非継承です。動くヘルパー2種と実測した実行コスト、無人実行での注意点をまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →