ライフスタイル
サブエージェントの範囲と品質確認
独立した入力、変更範囲、証拠を定義し、サブエージェントの結果と不足を確認します。
読了目安 15 分 · 操作 20 分

Codex 学習目次に戻るCodex 学習ガイド:全記事の目次導入と最初のタスクから MD の指示、高度な連携まで、60 レッスン・十単元を予定しています。習熟度、環境、目的、コマンドで次の記事を探せます。未公開の記事には状態を表示します。記事全文を読む
目標と準備
この段落の教材・資料: 分担サブエージェントと作業分担サブエージェントは独立した調査を分担し、主担当が統合する仕組みです。利用量が増え、依存や編集の重複があると競合します。記事全文を読む
親は結果受領後も検証に責任を持ちます。同じ旧要約や仮定を見た2つのエージェントの一致は独立確認ではありません。動作、試験成功、変更交付の主張を分け、実体、実行記録、Git に対応させます。読解と実行の証拠を混同しません。
手順1:説明を検証表に分ける
[
{
"report": "Fictional A",
"claim": "addTask accepts duplicate task IDs.",
"evidence": "No symbol or reproduction supplied"
},
{
"report": "Fictional B",
"claim": "All tests passed and the app is ready to deploy.",
"evidence": "No command, exit status, commit or browser result supplied"
}
]
A は既存 ID 追加の可否にし、B は試験実行と公開条件の二問に分けます。報告を丸ごと転送せず、主張、実体、必要証拠、結論、次を記録します。未検証と反証済みは異なる結果です。
| 主張 | 必要証拠 | 単独では不足 |
|---|---|---|
| 重複 ID 拒否 | 現関数と再現入力 | 過去要約 |
| 試験成功 | 実命令・場所・終了 | 通るはず |
| 分岐に変更 | コミットや現差分 | 保存したという文 |
| 公開可能 | 全検証と認可 | 一単体試験 |
検証方法の表であり今回の公開指示ではありません。
手順2:現在版のソースコードを確認
core.mjs の addTask で空・重複 ID 検査を見ます。別分岐や故障版は結論が異なり得るので expected を確認します。行は移動するためファイルと関数を併記し、必要なら現コミットを加えます。Git がなければ出所、日付、hash を記録しコミットを作りません。
node --input-type=module -e "import {addTask} from './core.mjs'; const first=addTask([], 'Read', 'a'); try { addTask(first, 'Build', 'a'); console.error('Unexpected duplicate acceptance'); process.exitCode=1; } catch (error) { if(error.message!=='task-id') throw error; console.log('Duplicate ID rejected: task-id'); }"
期待値は指定文と終了0です。予期しない受入れと非0なら観測を残しコピー・関数を調べ、通すため試験を変えません。task-id の一致で別原因の例外を成功とせず、保存データも書かないので画面の一覧を変えません。
PowerShell は直後の $LASTEXITCODE、他 OS は echo $? を別行で確認し、他命令で上書きしません。core.mjs 不在は経路問題で addTask 不具合の証明ではありません。対象関数と予定入力が実際に使われたか確認します。
手順3:再現可能な境界検査
import test from 'node:test';
import assert from 'node:assert/strict';
import { addTask, visibleTasks, decodeTasks } from './core.mjs';
test('duplicate IDs are rejected while the input is preserved', () => {
const original = addTask([], 'Read', 'a');
assert.throws(() => addTask(original, 'Build', 'a'), { message: 'task-id' });
assert.deepEqual(original, [{ id: 'a', title: 'Read', completed: false }]);
});
test('same titles with distinct IDs remain independent', () => {
const tasks = [
{ id: 'a', title: 'Read', completed: true },
{ id: 'b', title: 'Read', completed: false },
{ id: 'c', title: 'Build', completed: true },
];
assert.deepEqual(visibleTasks(tasks, 'active').map(task => task.id), ['b']);
assert.deepEqual(visibleTasks([], 'active'), []);
});
test('stored completion must be a boolean', () => {
const raw = JSON.stringify({ version: 1, tasks: [
{ id: 'a', title: 'Read', completed: 'false' },
] });
assert.throws(() => decodeTasks(raw), { message: 'storage-format' });
});
node --test core.test.mjs review-evidence.test.mjs
同名不在を確認して保存し、既存三つを残して合計六つにします。ID 重複拒否と異なる ID の同名許容を区別し、文字列 false も拒否します。エージェントが混同したらケースから説明をやり直させ、本体のプログラムはそのままにします。
任意:テストが故障を検出するか確認
六成功の実習から元五ファイルと追加テストを、新規 review-negative コピーへ複製します。完全パスが元と異なることを確認し、このコピーの core.mjs 原文を保存します。この使い捨てコピーの addTask だけで次の断片を一度除き、他の ID 検査を残します。元の読取り審査フォルダーは変更しません。
|| tasks.some((task) => task.id === id)
review-negative で同じ六テストを実行すると四成功・二失敗、終了値は非ゼロです。重複 ID を受理して元と追加の各一テストが失敗します。構文エラー、ファイル不在、全成功ならフォルダーと編集を確認し、目的の再現とは数えません。保存した core.mjs に戻して六成功を確認します。親の実験として記録し、代理実行や UI 検収とはしません。
手順4:矛盾・旧情報・未完了の扱い
Your claim conflicts with the current addTask implementation and the duplicate-ID reproduction.
Recheck core.mjs and report the exact function behavior, the input used and the observed result.
Distinguish duplicate IDs from duplicate titles. Keep the application files unchanged.
If your earlier report used another checkout or was not executed, state that explicitly.
A は反証済み、B は当初証拠なしと判定します。自分の六試験成功は新証拠で B の過去実行を遡って証明しません。公開はPR 手順テスト・コードレビュー・PRテストは条件下の動作、レビューは変更の問題、PR は統合候補を扱います。テスト成功、承認、マージは別の状態です。記事全文を読むを含む全検証が必要で、今回は公開成果なしです。元主張、訂正、時刻を残します。
旧コミットを読んだなら現在版を渡し、影響結論だけ再確認します。停止・許可待ちは取得済みを残し不足を親へ戻します。Done は全条件成功ではありません。両報告が同じ未検証文に依存するなら、エージェントの多数決ではなくソースコードや試験を加えます。
間違いと復元
別プロジェクトでの成功は場所と試験名、終了0だけの主張は予定ケース、負面例は正しい例外種類で見抜きます。偶発編集なら競合書込みを止めて差分を保存し、担当を確認して個別復元します。他人の仕事を強制 reset で消しません。
追加試験は保存しても構いません。元に戻すなら経路を確認して今回の一ファイルだけ除去し、元三試験を再実行します。原五ファイルは開始時と一致させ、他人の試験を消しません。外部動作や統合済みコミットは停止だけで戻りません。
検証と次の一歩
A の誤り、B の未証明、六試験の実結果、原本保全、未操作範囲の表を渡します。架空と実際のエージェントの記録は分け、同じ Node 命令でも未実行 OS を実測としません。次の並行成果の統合並行作業の統合と確認ファイルとインターフェースの契約に沿って変更を統合し、衝突と全体動作を確認します。記事全文を読むで二分岐に適用します。
Codex 学習目次に戻るCodex 学習ガイド:全記事の目次導入と最初のタスクから MD の指示、高度な連携まで、60 レッスン・十単元を予定しています。習熟度、環境、目的、コマンドで次の記事を探せます。未公開の記事には状態を表示します。記事全文を読む
詳しい説明を読む
Three numbered stages: identify the starting point, perform the exercise, and verify the result. Original illustration, not a product screenshot.
同じテーマの記事
ライフスタイル
Codex 学習ガイド:全記事の目次
導入と最初のタスクから MD の指示、高度な連携まで、60 レッスン・十単元を予定しています。習熟度、環境、目的、コマンドで次の記事を探せます。未公開の記事には状態を表示します。
ライフスタイル
Worktree とタスクの分離
Worktree は一つの Git リポジトリに別ブランチの作業場所を作ります。ファイルは分かれても DB、ポート、外部サービスは共有される場合があります。
ライフスタイル
実践:小さな Web サイトを作る
brief.md から Small Steps のタスクサイトを計画・制作し、追加、完了、削除、絞り込み、ローカル保存を実装します。HTML、CSS、データ関数、画面イベント、テストを分け、Node とブラウザーで検証して再起動・復元の手順を残します。
ライフスタイル
使用量と効率:やり直しを減らす
条件、モデル設定、時間、成果を記録し、不要な再試行と過剰な文脈を減らします。
この記事を引用している記事
最新の旅の情報・ガイド

ガイド東京
東京ではどのエリアに泊まる?新宿・上野・東京駅・渋谷・浅草・池袋・銀座の七エリア比較。空港アクセス、宿泊税、荷物配送も解説
東京ではどのエリアに泊まる?新宿、上野、東京駅、渋谷、浅草、池袋、銀座の七エリアを同じ基準で比較。成田・羽田空港からのアクセス、利用できる路線、周辺にあるもの、街の雰囲気、向いている人を、比較表と山手線の概略図とともに紹介します。2026年9月に確認した東京都の宿泊税(2027年4月から3%)と、空港宅急便で荷物を送る際のルールも解説します。
- 予算
- ホテル

ガイド東京
東京の交通パスの選び方:Suica/Welcome Suica、Tokyo Subway Ticket、JR Passは買うべき?
初めての東京では、まず一人一枚ICカードで都度払い(Welcome Suicaはデポジット不要、有効期間28日)。一日に地下鉄へ4回以上乗るならTokyo Subway Ticketの72時間券2,000円を追加し、関西へ行かず東京だけならJR Passは必ず割高です。TOURIST PASMO、iPhoneのSuica、東京メトロ一日乗車券で乗れる路線・乗れない路線を決定チャートで比較。価格は2026年9月に確認。
- 交通
- 予算

ガイド東京
東京ディズニーランド・シー攻略:チケット料金、ファンタジースプリングス、ディズニー・プレミアアクセス(DPA)とスタンバイパスの使い方、初めてならどちらを選ぶ?
東京ディズニーの一日パスポートは変動価格制で、2026 年 9 月は平日の多くが 9,900 円、週末が 10,900 円。公式サイトでは毎日 14:00 に二か月後の同日分を発売します。無料のプライオリティパスは公式サイトのサービス一覧に載っておらず、待ち時間を短縮できるのは有料のディズニー・プレミアアクセス(一人一回 1,000~3,500 円)のみ。運営時間、25 周年イベント、スタンバイパス、エントリー受付、ファンタジースプリングスの利用方法、初回にランドとシーのどちらを選ぶかも解説。2026 年 9 月に公式サイトで確認しました。
- モデルコース
- 家族向け