Files
hakorune/tools/test/smoke/selfhost/loopform_identity_smoke.sh
Selfhosting Dev 39f47cd628 Add Rust ownership fusion theory and fix smoke test paths
🦀📦 Added Rust×Nyash ownership fusion design (Phase 17+ candidate)
- Comprehensive ownership integration proposal with tags + borrowing tokens
- 3-tier safety levels (Safe/Unsafe/FFI) with opt-in adoption
- Complete link integration across roadmap and docs

🔧 Fixed smoke test path resolution
- Corrected ROOT_DIR calculation in selfhost smoke tests
- Updated scopebox_identity_smoke.sh, loopform_identity_smoke.sh, selfhost_runner_smoke.sh

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 23:25:35 +09:00

29 lines
737 B
Bash

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR=$(cd "$(dirname "$0")/../../../.." && pwd)
cd "$ROOT_DIR"
echo "[smoke] build nyash (release)"
cargo build --release -q
BIN=./target/release/nyash
CHILD=apps/selfhost/compiler/compiler.nyash
echo "[smoke] run child (baseline)"
BASE=$("$BIN" --backend vm "$CHILD" -- --min-json)
echo "[smoke] run child (loopform on)"
WITH=$("$BIN" --backend vm "$CHILD" -- --min-json --loopform)
if [[ "$BASE" != "$WITH" ]]; then
echo "❌ loopform identity prepass altered JSON" >&2
diff -u <(echo "$BASE") <(echo "$WITH") || true
exit 1
fi
echo "$BASE" | grep -q '"kind":"Program"' || { echo "❌ baseline JSON missing Program kind" >&2; exit 1; }
echo "✅ loopform identity smoke passed"