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.
This commit is contained in:
65
plans/restore-loop.sh
Executable file
65
plans/restore-loop.sh
Executable file
@@ -0,0 +1,65 @@
|
||||
#!/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
|
||||
Reference in New Issue
Block a user