Docs: VM dispatch policy for length() and default quick canaries; Add array length canary; Enable json_lint in quick by default

This commit is contained in:
nyash-codex
2025-11-01 19:33:43 +09:00
parent 25b6bd3ae1
commit e74fe8d3b0
3 changed files with 55 additions and 6 deletions

View File

@ -59,6 +59,15 @@ Quick profile optin switches (smokes)
- `SMOKES_ENABLE_OOB_STRICT=1` — GateC(Core) strict OOB failfast canary (`gate_c_oob_strict_fail_vm.sh`)
- `SMOKES_ENABLE_LLVM_SELF_PARAM=1` — LLVM instruction boxes selfparam builder tests (const/binop/compare/branch/jump/ret)
Default quick canaries (regression)
- apps/json_lint_vm.sh — JSON Lint expected outputs (OK×10 / ERROR×6)
- core/array/array_length_vm.sh — ArrayBox.length returns 0→1→2→3 for push sequence
Dispatch policy: length()
- String 受けに対してのみ StringBox ハンドラが length() を処理する。
- Array/Map などは各 Box 専用ハンドラで length/len/size を処理する。
- これにより、配列に対して誤って文字列長を返す回帰を防止する202511 修正)。
Deprecations
- `NYASH_GATE_C_DIRECT` は移行中の互換トグルTTLだよ。将来は GateC(Core)
直行(`HAKO_GATE_C_CORE=1`)に統一予定。新しい導線では Core の実行仕様(数値=rc,