{
  "schema": "low_risk_pilot_candidates_inventory.v1",
  "ts_kst": "2026-05-23 11:55 KST",
  "track": "Track B (read-only inventory · 실행 0)",
  "scope_constraint": "test/fixture only · ≤10 files · Critical7 0 · credential 0 · rollback easy · Track A overlap 0",
  "base_main": "88a1f2b0",
  "candidates": [
    {
      "id": "B1",
      "title": "dryrun_shadow INDEX.md row 추가 (또는 신규 trailing-edge fixture 1종 doc-only)",
      "scope": "tests/fixtures/dryrun_shadow/INDEX.md 1 file + (옵션) 추가 fixture 시나리오 doc-only 1 row",
      "files_count": "1~4",
      "production_code_impact": 0,
      "rollback_difficulty": "trivial (git revert · doc/fixture only)",
      "critical7_risk": 0,
      "credential_risk": 0,
      "overlap_with_track_a": false,
      "rationale": "shadow validation fixture 카탈로그 보강. dryrun_route 코드 무수정. 실제 routing 행동 변화 0."
    },
    {
      "id": "B2",
      "title": "callback_collector_canonical_root 추가 edge fixture (예: trailing-slash canonical_root 또는 symlink path)",
      "scope": "tests/fixtures/callback_collector_canonical_root/<scenario>/{evidence,expected,PROVENANCE} 3 files + INDEX 갱신 1 file",
      "files_count": "4",
      "production_code_impact": 0,
      "rollback_difficulty": "trivial",
      "critical7_risk": 0,
      "credential_risk": 0,
      "overlap_with_track_a": false,
      "rationale": "resolver edge-case 커버리지 확장. helper 코드 무수정. canonical_root resolve 동작은 기존과 동일."
    },
    {
      "id": "B3",
      "title": "merge_ready_dryrun INDEX 또는 PROVENANCE wording drift 정정 (doc-only)",
      "scope": "tests/fixtures/merge_ready_dryrun/INDEX.md (있을 경우) 또는 PROVENANCE.md 단어 통일",
      "files_count": "1~5",
      "production_code_impact": 0,
      "rollback_difficulty": "trivial",
      "critical7_risk": 0,
      "credential_risk": 0,
      "overlap_with_track_a": false,
      "rationale": "회장 verbatim wording drift 정합 (callback_envelope_schema enum 명칭과 일치). 실 routing 영향 0."
    }
  ],
  "recommended_pilot_first": "B1 (가장 단순 · 1 file 시도 → 모든 gate 검증 채널 첫 활성화 안전)",
  "pilot_execution": "본 inventory 는 read-only 식별만. 실 pilot 실행 = 회장 명시 결정 + chair_authorization 발급 + Track A 머지 후",
  "forbidden_within_track_b": [
    "real pilot 실행 0",
    "chair_authorization 작성 0",
    "merge 실행 0",
    "Track A 와 expected_files overlap 0",
    "production code 변경 0",
    "forbidden paths 11+종 수정 0"
  ],
  "next_step": "Track A (PR #140) 머지 + 회장 pilot target 선정 결정 시 → 별도 task 발행"
}
