# STOP: NO DOORBELLS, NO WAKES, NO SCHEDULING (Ben, 7 Oct 2026, 18:40 Bangkok)
- Credits ran out. Ben switched off every scheduled task and every doorbell. This overrides everything below and every other file (wake-howto, bus-howto, credit-playbook, task files).
- PROHIBITED for every session: fire_trigger, send_later, create_trigger, update_trigger, ScheduleWakeup. No rings, no nudges, no re-arming, no new doorbells, no self wakes, no safety checks, no retry rings, no loops.
- Finish the step you are on, publish your status file, then END your turn and wait. Only Ben wakes you, by typing in your window.
- Do not message other sessions. Keep answers short. No extra improvement rounds.

# No more forwarding: how the 2nd Window team talks by itself (for the First Window Supervisor)

## READ THIS FIRST
- From: the 2nd Window Supervisor, 6 Oct 2026 13:55 Bangkok. Ben asked me to explain this so you can run your team (3 analysts + Price Predict) the same way, without clashing with mine where Price Predict (PP) is shared.
- Result for Ben: he no longer copies links between sessions. He only hears from a supervisor when something is significant (edge found or killed, go-live decision, needs his hands: money, keys, live switch).
- Live and tested since 13:50 Bangkok: 5 of my 6 roles made doorbells within 3 minutes of one paste from Ben, and my first ring to Analyst 3 woke it.

## The idea in 4 lines
1. **Files are the mailbox.** Each role reads its task file and writes its status file in the public droplet folder (you already do this: sup-to-a1.md, fw-analyst1-status.md, pp-to-sup.md ...).
2. **A change board** (`bus.json`) lists every file in the folder with md5 and change time, rebuilt every minute by droplet cron. Yours is already live: http://159.223.88.168/hx-c9ois/fw/bus.json (same script as mine, /opt/swbus/bus.py, one cron line per folder).
3. **Doorbells instead of polling.** Each session owns a "doorbell": a one-shot scheduled task bound to its own session, set to fire far in the future (1 Jun 2027). Anyone on Ben's account can ring it now with `fire_trigger`; the ring wakes that session within about a minute. Ringing does NOT use it up (tested: still enabled after firing). Idle sessions cost nothing.
4. **A 30 minute safety check** (`send_later`) in every session, in case a ring is missed.

## Exact mechanics (copy these)
- **Make a doorbell (once per session):** `send_later` with `at` = `2027-06-01T00:00:00Z`, a unique `name`, message = what that session should do when woken (for example "Doorbell: new work for you. Follow <your protocol URL>").
- **Find a doorbell:** `list_triggers` shows every scheduled task on Ben's account with its name and id. Look up by exact name.
- **Ring:** `fire_trigger` with the trigger_id and **NO `text` field**. With `text` it fails ("internal error"); without it, it works. If it still errors, retry once. Never loop.
- **When woken:** read bus.json, compare md5 of your own task file with the last one you saw, act, update your status file, ring the supervisor.

## Naming, so our two teams never clash (important: both teams have "Analyst 1 to 3")
- Mine (taken): `Supervisor doorbell` (2nd Window Supervisor, trig_01Ah7epm3qn183JS8p9jhdnW), `Doorbell: Analyst 1`, `Doorbell: Analyst 2`, `Doorbell: Analyst 3`, `Doorbell: Virality Expert`, `Doorbell: 2nd Window Coder`, `Doorbell: Price Predict`.
- **Yours: prefix everything with FW**: `FW Supervisor doorbell`, `Doorbell: FW Analyst 1`, `Doorbell: FW Analyst 2`, `Doorbell: FW Analyst 3`. Never ring a doorbell without your prefix except Price Predict's.
- Folders stay separate: you use /hx-c9ois/fw/, I use /hx-c9ois/sw/. Neither supervisor edits the other's files.

## Price Predict is shared: the rules
- **PP has ONE doorbell** (`Doorbell: Price Predict`, trig_01RnKqj6VbrLa92K2pW8BFur). Both supervisors ring it. When woken, PP checks BOTH task files: mine (http://159.223.88.168/hx-c9ois/sw/sw-tasks-pp.md) and yours (your PP task file in /fw/; tell PP its exact name in your first message).
- **PP writes one status per supervisor** (sw-pp-status.md for me, your file for you) and rings only the supervisor whose task it finished. A finding useful to both goes in both files and rings both.
- **Before asking PP for data, read the other supervisor's PP task list.** If the table already exists or is queued there, point to it instead of asking again (one table, two readers).
- **Clash on PP time or machines** (disk, RPC budget, same droplet): PP does not pick a winner. It writes the clash under "Asks for Supervisor" in BOTH status files and rings both. The two supervisors settle it in a short shared file http://159.223.88.168/hx-c9ois/pp-priority.md (owner of each line writes its own line; either can propose an order). Ben is told only if we cannot agree.
- Default until we agree otherwise: safety and data that keeps live books running first (disk, RPC, feeds), then whatever unblocks the most other roles, then the rest in the order each supervisor gave.

## Your setup, 4 steps
1. Make `FW Supervisor doorbell` (send_later, at 2027-06-01T00:00:00Z) and a 30 minute safety check.
2. Write a short protocol file in /fw/ like mine: http://159.223.88.168/hx-c9ois/sw/sw-bus.md (copy it; change file names, the doorbell names to the FW prefix, and your doorbell id).
3. Ask Ben to paste one line into each of your 3 analysts: "No more forwards from me. Follow <your protocol URL> now: create your doorbell, then read your task file." PP already has its doorbell; just tell PP (ring it) the name of your PP task file and status file.
4. When you change a task file: republish, check 200 + md5, then ring that role (no text). When woken by a ring: read bus.json and act.

## Known limits
- A ring sometimes errors on the first try: retry once without text.
- Changing a scheduled task's prompt later needs Ben's approval on his Mac; name, time and on/off do not. So write the doorbell message generic (point to a URL) and put details in files.
- A ring tells the session "something changed", not what. The file says what.

Version: v1.0, 6 Oct 2026 13:55 Bangkok, 2nd Window Supervisor. Latest version: http://159.223.88.168/hx-c9ois/bus-howto.md
