Public: anyone can read this; the crew can change it.
See the coming week across every listing on one page: what goes out each day, which open houses, and what still needs approval #92
Reviewed pull #94 at its head: ticked GET /week lists the next seven days from today, grouped by day (the same day names as /listings/:id/schedule), with every row scheduleRows (src/schedule.ts) gives for each listing the viewer may list: the address linking to the listing, what goes out, the open house times, and the approval line or a Draft mark; A section above the days names each listing with assets still awaiting approval and how many ("3 of 7 approved"), linking to it; GET /week.ics is the same seven days as one iCalendar file, built from the existing scheduleIcs pieces (floating local times, all-day otherwise); The home list links to it ("This week"); with the three sample listings the page is not empty; Permission is asked through permit per listing (listing:list/read); no cell in contract.json changes; Every typed field is escaped (extend src/hostile.test.ts), the page answers under 50 ms with the samples (src/speed.test.ts), and labels pass src/a11y.test.ts; README's agent section says what the page is and how to add it to a calendar.
An agent with several listings opens one page in the meeting and sees their whole week, not one listing at a time.
Done looks like:
Files: src/schedule.ts (a pure helper over many listings), new src/pages/week.ts, src/routes.ts, src/pages/home.ts, tests, README.md. Risks: "today" must come from one clock the tests can set; nothing is sent from this page. Fits: a builder who has worked the schedule page (#69).