Files
manga-recap-pipeline/AGENTS.md
T
kami c51871348f Rewrite the handoff for this session, document the restart trap
HANDOFF.md now covers the fourth session: the four identity changes, the measured
numbers they were decided from, what was deliberately not built, and panel 7's
before-table so the next run has something to compare against.

AGENTS.md gains the worker-restart procedure, because tmux respawn-window -k
leaves a bare shell instead of re-running the command and took both vision and
identity down silently this session.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-12 19:33:06 +04:00

2.0 KiB

Repository guidance

Restarting one worker

Python binds a module at process start, so a worker keeps serving the code it loaded. Run ./check_stale.sh before any stage run meant to prove a change. It exits non-zero and names the tmux window for every worker older than its file (decisions/identity-bbox.md#stale-worker-invalidates).

tmux respawn-window -k does not re-run the window's command. It leaves a bare shell and the worker stays down, silently. Restart by re-sending the send-keys line from start_workers.sh for that one worker, then confirm on /health and with check_stale.sh:

M="export MIOPEN_USER_DB_PATH=$HOME/.config/miopen MIOPEN_SYSTEM_DB_PATH=$HOME/.config/miopen MIOPEN_FIND_MODE=2 && unset MIOPEN_FIND_ENFORCE"
tmux send-keys -t manga-workers:vision C-c
tmux send-keys -t manga-workers:vision "$M && source $PWD/.venv/bin/activate && python -m uvicorn worker_vision:app --app-dir $PWD --host 0.0.0.0 --port 8002" C-m
curl -s http://127.0.0.1:8002/health && ./check_stale.sh

The orchestrator's equivalent is docker compose up -d --build orchestrator on homesrv, because the image bakes its source. That recreates the container, which drops any docker cp'd file such as audit_registry.py.

Video analysis

When diagnosing render motion, transitions, timing, or visual artifacts, use scripts/analyze_video_frames.sh instead of manually seeking through the video.

scripts/analyze_video_frames.sh VIDEO [OUTPUT_DIR] \
  --window START:DURATION [--window START:DURATION ...]

The script creates:

  • timestamped overview contact sheets sampled at 2 fps;
  • scene-change frames and a scene-timestamps.txt index;
  • optional dense 10-fps contact sheets for specified transition windows.

Inspect the overview first, then request dense windows around transitions or artifacts. Sampling and scene sensitivity can be adjusted with OVERVIEW_FPS, WINDOW_FPS, and SCENE_THRESHOLD.

The generated files are analysis artifacts and belong in /tmp or another requested output directory; do not commit them to the repository.