#!/usr/bin/env bash
# R6 fixture + `cat` PATH shim. $1 = fixture dir (fresh).
set -euo pipefail
F="$1"; C=/tmp/ev-23690/capture
rm -rf "$F"; mkdir -p "$F/ws" "$F/claude/projects" "$F/codex" "$F/shim"
cat > "$F/shim/cat" <<'EOF'
#!/bin/sh
# Logs scanner-style `cat -- <path>` invocations, then becomes the real cat.
[ "$1" = "--" ] && printf '%s %s %s\n' "$(date +%s.%N)" "$$" "$2" >> /tmp/ev-23690/capture/r6-cat.log
exec /usr/bin/cat "$@"
EOF
chmod +x "$F/shim/cat"
cd "$F/ws"
export GIT_CONFIG_NOSYSTEM=1 HOME="$F"
git config --global user.email ev@x; git config --global user.name ev; git config --global init.defaultBranch main
git init -q normal && git -C normal remote add origin https://github.com/acme/normal.git
git init -q fifo-a && git -C fifo-a remote add origin https://github.com/acme/fifo-a.git
cp fifo-a/.git/config "$F/fifo-a.config.real" && rm fifo-a/.git/config && mkfifo fifo-a/.git/config
mkdir -p fifo-b/.git && mkfifo fifo-b/.git/config
i=0; for d in normal fifo-a fifo-b; do i=$((i+1)); mkdir -p "$F/claude/projects/p$i"
  printf '{"type":"user","cwd":"%s","sessionId":"s%d"}\n{"type":"assistant"}\n' "$F/ws/$d" $i > "$F/claude/projects/p$i/a.jsonl"; done
ls -l fifo-a/.git/config fifo-b/.git/config
