docs(joinir): Phase 86 SSOT 追記完了 + Phase 88 準備
Phase 86 SSOT 追記(P0 完了): - 10-Now.md: carrier_init_builder / error_tags 確立を追記 - CURRENT_TASK.md: P0→P1 繰り上げ、Done 節追加 Phase 88 準備: - nyash_kernel/lib.rs: AOT 実行器で Ring0Context 初期化 - nyash.toml: プラグインパス正規化(plugins/...) - auto_detect.conf: integration タイムアウト 120秒に延長 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@ -31,15 +31,7 @@
|
||||
|
||||
## 次の指示書(優先順位)
|
||||
|
||||
### P0: SSOT の軽い追記(docs-only)
|
||||
|
||||
- `docs/development/current/main/10-Now.md` の「Scope / BindingId」節に Phase 86 の到達点(carrier init / error tags)を 2〜3 行で追記。
|
||||
- `docs/development/current/main/joinir-architecture-overview.md` の関連ドキュメントに Phase 86 の成果物(該当モジュール)を追記。
|
||||
|
||||
受け入れ基準:
|
||||
- docs-only でコミットできる粒度(コード差分ゼロ)。
|
||||
|
||||
### P1: JoinIR / Selfhost depth-2 の前進(Phase 88 候補)
|
||||
### P0: JoinIR / Selfhost depth-2 の前進(Phase 88 候補)
|
||||
|
||||
目的:
|
||||
- JsonParserBox の残り複合ループを JoinIR 対応する。
|
||||
@ -53,7 +45,7 @@
|
||||
受け入れ基準:
|
||||
- 代表ケースが 1 コマンドで再現可能(CI は増やさない、quick を重くしない)。
|
||||
|
||||
### P2: Ownership/Relay runtime 対応の再開(Phase 88 候補)
|
||||
### P1: Ownership/Relay runtime 対応の再開(Phase 88 候補)
|
||||
|
||||
目的:
|
||||
- multihop/merge relay を “runtime でも” 受理できるところまで契約を伸ばす(Fail-Fast の段階解除)。
|
||||
@ -61,10 +53,14 @@
|
||||
受け入れ基準:
|
||||
- dev-only 既定OFF のまま、既存ラインを壊さない。
|
||||
|
||||
### Done: P0 SSOT の軽い追記(docs-only)
|
||||
|
||||
- `docs/development/current/main/10-Now.md` の「Scope / BindingId」節に Phase 86 の到達点(carrier init / error tags)を追記済み。
|
||||
- `docs/development/current/main/joinir-architecture-overview.md` の Phase 86 SSOT Modules は記載済み(追記不要)。
|
||||
|
||||
---
|
||||
|
||||
## すぐ走らせる確認コマンド
|
||||
|
||||
- `cargo test --release --lib`
|
||||
- `NYASH_JOINIR_NORMALIZED_DEV_RUN=1 cargo test --features normalized_dev --test normalized_joinir_min -- --nocapture`
|
||||
|
||||
|
||||
@ -686,6 +686,12 @@ pub extern "C" fn nyash_map_birth_h_export() -> i64 {
|
||||
#[cfg(not(test))]
|
||||
#[no_mangle]
|
||||
pub extern "C" fn main() -> i32 {
|
||||
// Phase 88: AOT 実行器でも Ring0Context は必須(PluginHost/ログなどが依存する)。
|
||||
// EXE 直起動では host 側の init が存在しないため、ここで先に初期化する。
|
||||
if nyash_rust::runtime::ring0::GLOBAL_RING0.get().is_none() {
|
||||
nyash_rust::runtime::ring0::init_global_ring0(nyash_rust::runtime::ring0::default_ring0());
|
||||
}
|
||||
|
||||
// Initialize plugin host: prefer nyash.toml next to the executable; fallback to CWD
|
||||
let exe_dir = std::env::current_exe()
|
||||
.ok()
|
||||
|
||||
@ -65,6 +65,8 @@
|
||||
- JoinIR lowering 側は name-based から BindingId-based へ段階移行中:
|
||||
- `ScopeManager.lookup_with_binding()` / `ConditionEnv.binding_id_map` を導入し、shadowing を壊さずに解決できる足場を作った。
|
||||
- promoted carriers(DigitPos/Trim)については `BindingId(original) → BindingId(promoted) → ValueId(join)` の鎖を dev-only で整備中。
|
||||
- Phase 86 で `carrier_init_builder` / `error_tags` を SSOT 化し、段階移行ラインの基盤(ValueId 生成とエラー語彙)が確立した。
|
||||
- これにより、BindingId dual-path の拡張・統合時に「生成」と「表示」の責務が混ざらない構造が固定された。
|
||||
- Phase 81 で Pattern2(DigitPos/Trim)の ExitLine 契約(ConditionOnly を exit PHI から除外、LoopState のみを reconnect)を E2E で固定した。
|
||||
- 参照:
|
||||
- `docs/development/current/main/phase73-scope-manager-design.md`
|
||||
|
||||
@ -668,7 +668,7 @@ fini = { method_id = 4294967295 }
|
||||
# ArrayBox Plugin (Core Box)
|
||||
[libraries."libnyash_array_plugin.so"]
|
||||
boxes = ["ArrayBox"]
|
||||
path = "target/release/libnyash_array_plugin.so"
|
||||
path = "plugins/nyash-array-plugin/libnyash_array_plugin.so"
|
||||
|
||||
[libraries."libnyash_array_plugin.so".ArrayBox]
|
||||
type_id = 5
|
||||
@ -688,7 +688,7 @@ fini = { method_id = 4294967295 }
|
||||
# MapBox Plugin (Core Box)
|
||||
[libraries."libnyash_map_plugin.so"]
|
||||
boxes = ["MapBox"]
|
||||
path = "target/release/libnyash_map_plugin.so"
|
||||
path = "plugins/nyash-map-plugin/libnyash_map_plugin.so"
|
||||
|
||||
[libraries."libnyash_map_plugin.so".MapBox]
|
||||
type_id = 6
|
||||
@ -708,7 +708,7 @@ fini = { method_id = 4294967295 }
|
||||
# ConsoleBox Plugin (Core Box)
|
||||
[libraries."libnyash_console_plugin.so"]
|
||||
boxes = ["ConsoleBox"]
|
||||
path = "target/release/libnyash_console_plugin.so"
|
||||
path = "plugins/nyash-console-plugin/libnyash_console_plugin.so"
|
||||
|
||||
[libraries."libnyash_console_plugin.so".ConsoleBox]
|
||||
type_id = 7
|
||||
|
||||
@ -61,7 +61,8 @@ adjust_for_profile() {
|
||||
# 統合テストは安定性重視
|
||||
export NYASH_CLI_VERBOSE=0
|
||||
export SMOKES_FAST_FAIL=0
|
||||
export SMOKES_DEFAULT_TIMEOUT=60
|
||||
# EXE build/link を含むケース(例: Phase 87 LLVM exe line)は 60s を超えやすいので余裕を持たせる。
|
||||
export SMOKES_DEFAULT_TIMEOUT=120
|
||||
echo "[INFO] Integration profile: Stability optimized" >&2
|
||||
;;
|
||||
"full")
|
||||
|
||||
Reference in New Issue
Block a user