---
description: Stream R (R3): collection oversight for the super admin (the ops reads, the collection page, prune commands; the scheduler only when its decides are answered)
---

You are running **Stream R, phase R3** (collection oversight) of the Duty Free Professor build,
autonomously on Fable. Start with `pwd`; it must be `/srv/apps/dutyfreeprofessor`, or stop. R1 must be deployed on this host, and `L10` being `done` in `import/progress.json` does not
prove it (R1 never deploys): with `P=$(docker port dutyfreeprofessor-app 8000 | head -1)`,
`curl -s -o /dev/null -w '%{http_code}' http://$P/` prints `302` and `curl -s http://$P/api/products`
answers 401 with `NOT_SIGNED_IN` (members mode; a pre-R1 host answers 200 to both), and
`docker exec dutyfreeprofessor-app python -m app.cli accounts owner-check` succeeds (a pre-R1
image has no `accounts` command); otherwise stop and say so.

Read first: `.logs/planning/streams/OVERNIGHT-RULES.md` (binding), `.logs/planning/accounts-2026-09.md`
§9 and §4.7 (the design and the route policy), `.logs/planning/streams/R-accounts.md`, `agents.md`,
`brief.md`, `main/docs/ACCOUNTS.md`, `main/docs/COLLECTORS.md`, `main/docs/QUALITY.md`,
`main/docs/RUNBOOK.md`, the two newest handoff entries, and the running list, especially
`decide-where-collectors-run` and `decide-scheduled-collection-a-watched-trial-after-launch-or-han`.

Work tasks **V1, V2, V3** in order as plan §9 defines them, one `R:` commit per landed task,
`plan-set.py` for status. **V4 (the scheduler) is gated:** build it only if both decides are
answered on the running list (`python3 main/scripts/items.py list --decisions`); otherwise leave
V4 `blocked` with the two item ids in the note. Every oversight read is read-only and classified
`sources.manage` in `services/access.py`; retailer-derived text renders as text, never HTML;
dates, never rates, even here. Never run a collection, never deploy, never touch the crontab.
Done when V1 to V3 are `done` or `blocked` with a reason and V4 is `done` or `blocked` with the
gate, `check.sh` and `docs-check.sh --strict` are green, the handoff names what rian runs, and
`/checkpoint` has run. Eight-hour cap.

```
/goal Stream R phase R3 is complete: every one of the task ids V1, V2, V3, V4 in import/progress.json has status done, or blocked with a note saying why; main/check.sh printed "checks passed" and docs-check --strict printed "0 fail" on the final tree; every landed change has its own "R:" commit; the registers were regenerated by items.py export; a handoff entry for this session is at the top of .logs/handoff.md and /checkpoint has run; any rehearsal database, local server and main/static symlink are gone. Or stop after 150 turns.
```
