# Phase 20.23 — Arc/RefCell in Hakorune(チェックリスト / MVP) 開始前 - [x] Phase 20.21 完了(C‑ABI メモリ/RC の SSOT 確立) - [x] 20.22 は P1(FFI 用)として後回し(セルフホスト優先) 実装(MVP) - [x] ArcBox(Policy plane: Hakorune) - [x] birth(ptr) / retain() / release() / clone() - [x] Fail‑Fast: underflow/unknown(安定タグ `[arc/underflow]`, `[arc/unknown]`) - [x] 追跡: `NYASH_DEBUG_ARC=1`(`HAKO_DEBUG_ARC` エイリアス)で簡易トレース - [x] RefCellBox(Policy plane: Hakorune) - [x] try_borrow()/try_borrow_mut()/release_shared()/release_mut()/state() - [x] Fail‑Fast: 二重の可変借用/可変と不変の競合(`[refcell/conflict_*]`) データプレーン連携(後続可) - [ ] env.arc.* / env.refcell.* の extern 仕様(SSOT) - [ ] Data plane(C)ブリッジは 20.21 の RC/alloc を再利用(必要時のみ) テスト/スモーク(opt‑in, quick) - [x] Arc: retain→release→0(OK) - [x] Arc: underflowでFail([arc/underflow]) - [x] RefCell: borrow_mut→borrow 競合(Fail 検出=PASS) - [x] RefCell: try_borrow OK(init→try_borrow→release_shared→0) ドキュメント - [x] externs SSOT に env.arc.* / env.refcell.* を追記 - [ ] README(API/所有権/Fail‑Fast 診断) - [ ] 20.21 RC との整合と例を追加(abi/README.md への短記) 受入基準 - [ ] quick(opt‑in)緑/回帰なし - [ ] 既定OFFで既存挙動不変(Arc/RefCell は opt‑in API)