Files
rose-ash/plans/restore-loop.sh
giles 9e568ad886 js-on-sx: baseline commit (278/280 unit, 148/148 slice, runner stub)
Initial commit of the lib/js/ tree and plans/ directory. A previous
session left template-string work in progress — 278/280 unit tests pass
(2 failing: tpl part-count off-by-one, escaped-backtick ident lookup).
test262-runner.py and scoreboard are placeholders (0/8 with 7 timeouts);
fixing the runner is the next queue item.
2026-04-23 19:42:16 +00:00

66 lines
2.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# restore-loop.sh — print recovery state for the js-on-sx loop.
#
# Claude Code can't be driven from shell, so this script shows you where things
# stand and points at the briefing file. To respawn the agent, feed
# plans/agent-briefings/loop.md into Claude via the Agent tool with
# run_in_background=true.
#
# Usage:
# bash plans/restore-loop.sh # status snapshot
# bash plans/restore-loop.sh --print # also cat the briefing
#
set -uo pipefail
cd "$(dirname "$0")/.."
echo "=== js-on-sx loop state ==="
echo
echo "Branch: $(git rev-parse --abbrev-ref HEAD)"
echo "HEAD: $(git log -1 --oneline)"
echo
echo "Recent commits on lib/js/ and plans/:"
git log -10 --oneline -- lib/js/ plans/js-on-sx.md 2>/dev/null || echo " (none yet)"
echo
echo "=== Test baseline ==="
if [ -x hosts/ocaml/_build/default/bin/sx_server.exe ]; then
echo -n "Unit tests: "; bash lib/js/test.sh 2>&1 | tail -1 || true
echo -n "Conformance: "; bash lib/js/conformance.sh 2>&1 | tail -1 || true
else
echo "sx_server.exe not built — run ./scripts/sx-build-all.sh first."
fi
echo
echo "=== test262 scoreboard ==="
if [ -f lib/js/test262-scoreboard.json ]; then
echo " ✓ lib/js/test262-scoreboard.json exists"
python3 -c "import json;d=json.load(open('lib/js/test262-scoreboard.json'));t=d.get('totals', d.get('overall', {}));print(f\" totals: {t}\")" 2>/dev/null || true
else
echo " ✗ lib/js/test262-scoreboard.json NOT found"
fi
echo
echo "=== regex platform hook ==="
if grep -q js-regex-platform-override lib/js/runtime.sx 2>/dev/null; then
echo " ✓ js-regex-platform-override! wired in runtime.sx"
else
echo " ✗ js-regex-platform-override! not yet wired"
fi
echo
echo "=== Briefing ==="
for f in plans/agent-briefings/*.md; do
[ -f "$f" ] && echo " $f"
done
echo
echo "To respawn: paste plans/agent-briefings/loop.md into Claude via the Agent tool"
echo " with run_in_background=true. The agent reads the plan's progress"
echo " log and picks up wherever the queue left off."
if [ "${1:-}" = "--print" ]; then
echo
echo "=== Briefing contents ==="
for f in plans/agent-briefings/*.md; do
echo
echo "---- $f ----"
cat "$f"
done
fi