phase-29y.1: add lifecycle pilot plumbing (ABI shim, rc pass skeleton, root summary)

This commit is contained in:
2025-12-27 02:07:10 +09:00
parent 8a5218a9ad
commit 2e99b14e24
11 changed files with 334 additions and 11 deletions

View File

@ -26,6 +26,24 @@ DocsPhase 29y 内の SSOT:
- RC insertion SSOT: `docs/development/current/main/phases/phase-29y/20-RC-INSERTION-SSOT.md`
- Observability SSOT: `docs/development/current/main/phases/phase-29y/30-OBSERVABILITY-SSOT.md`
## Implementation Pilot (Phase 29y.1)
Phase 29y は docs-first が主目的だが、後続の実装フェーズへ迷わず切るために “最小の導線” を先に用意する。
- Task 1: NyRT handle ABI shimlifecycle
- `crates/nyash_kernel/src/ffi/lifecycle.rs`
- `crates/nyash_kernel/src/ffi/mod.rs`
- `crates/nyash_kernel/src/lib.rs`
- fixture: `apps/tests/phase29y_handle_abi.hako`
- smokes: `tools/smokes/v2/profiles/integration/apps/phase29y_handle_abi_{vm,llvm}.sh`
- Task 2: RC insertion pass 入口skeleton, no-op
- `src/mir/passes/rc_insertion.rs`
- `src/mir/passes/mod.rs`
- `src/mir/mod.rs`compiler pipeline に接続)
- Task 3: Observability MVProot categories: handles のみ)
- `src/runtime/leak_tracker.rs`
- Phase 1 limitation を明示locals/temps/heap_fields/singletons は exit-time では未可視)
## Current Recommendation (consultation summary)
- **実体**: RC の値と Alive/Dead/Freed 判定は runtimeNyRTに置く