プロジェクト
巡回キャリーと空入力を試し、別の型を拒否し、非暗号学的な検査を認証と区別してください。
ゼロから65535バイトの16ビットインターネットチェックサムを計算し、奇数の最終バイトをゼロで補ってください。
def internet_checksum(data):
if type(data) is not bytes or len(data) > 65535:
raise ValueError("checksum.bytes")
total = 0
for i in range(0, len(data), 2):
total += (data[i] << 8) | (data[i+1] if i+1 < len(data) else 0)
while total >> 16:
total = (total & 65535) + (total >> 16)
return (~total) & 65535
巡回キャリーと空入力を試し、別の型を拒否し、非暗号学的な検査を認証と区別してください。
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
def internet_checksum(data):
if type(data) is not bytes or len(data) > 65535:
raise ValueError("checksum.bytes")
total = 0
for i in range(0, len(data), 2):
total += (data[i] << 8) | (data[i+1] if i+1 < len(data) else 0)
while total >> 16:
total = (total & 65535) + (total >> 16)
return (~total) & 65535
CarryLoamは、正しさが厳密なバイト解釈に依存する変更を調べるWindows向けAIコーディングソフトウェアです。プロジェクトを開き、コードが生成または読み取るべき形式を説明してください。モデルに実装と呼び出し側の調査を依頼し、独立に分かっている結果を会話に残して、もっともらしい説明だけに頼らないレビューを行います。
インターネットチェックサムの処理は有用な依頼例です。期待値付きの短い偶数長と奇数長のテスト例を示し、末尾のバイトと桁上がりの折り返しをどう扱うか尋ねてください。周辺のプロトコル実装が正しいと決めつけず、それらの詳細をパケット生成経路と結び付けてレビューできます。
修正案でバイト順、パディング、チェックサムの格納箇所が変わっていないか調べてください。プロジェクトのテストを実行し、形式に合った独立した参照と比較します。不一致があれば入力バイト列と両方の出力を保持し、再現できるケースとして次の検討に使います。
対応するOpenAI互換またはAnthropicのエンドポイントが提供する場合は無検閲AIモデルを選べます。必要な認証情報を追加し、利用できるツールとコンテキスト容量を確認してください。制限は引き続きモデルとプロバイダーが決めます。その名称もこの環境も、パケットの有効性や安全性を保証しません。
同じロジックで期待値を計算すると同じ誤りを繰り返す可能性があります。適切な参照や独立に検証したテスト例を使い、正確な入力バイト列を残してください。モデルとの検討とテストに、別の比較基準を与えられます。
末尾のバイトの扱いが期待値に現れるようにします。パディングとバイト順の案をモデルに説明してもらい、出力を比較してください。結果の型だけを調べるテストでは違いを見逃します。
いいえ。他のフィールド、長さ、プロトコル規則は別途検証が必要です。チェックサムの変更範囲内でレビューし、必要に応じて周辺の生成コードを調べてください。一つの値の一致をメッセージ全体の検証とみなしてはいけません。
実行前に送信先と影響を確認してください。人工的なローカルのテスト例で十分な場合もあります。ローカルモデルには別途起動するサーバーが必要で、パケットの送信や調査を行うものを含め、接続したすべてのツールがローカルになるわけではありません。
CarryLoam · 更新日 2026-10-25