Files
hakorune/docs/private/roadmap/phases/phase-20.21/CHECKLIST.md

1.2 KiB
Raw Blame History

Phase 20.21 — チェックリストManual Memory Management / CABI

開始前

  • 既定OFFFailFastSSOT 方針の合意
  • libc 既定hakmem 切替は ENV のみ(実装は次)

実装

  • hako_alloc/hako_freelibc ABI名 hako_mem_alloc/free エイリアス
  • 任意hako_realloc安全に提供できる条件を満たす場合
  • HakoHandle retain/releaseatomichandle_registry 実装)
  • ENV: HAKO_C_ABI_ALLOC={libc|hakmem}

テスト/スモーク

  • alloc→write→free 正常cabi_mem_alloc_free_vm.sh
  • unknown handle → Failcabi_handle_unknown_fail_vm.sh
  • retain→release の基本0→freecabi_handle_retain_release_vm.sh
  • double freehandle→ Fail任意で追加
  • 任意ASan/Valgrind ガイド+実行

ドキュメント

  • abi/README.md に Memory Ownership Rules 追記
  • 失敗時の安定文言unknown handledouble releaseallocator mismatchを明記

受入基準

  • スモーク緑回帰なしquick 既定)
  • ENV 既定OFFで既存経路の挙動不変メモリAPIはC側で独立・default=libc
  • SSOTが最新の実装・CLIと一致abi/README.md / env-variables