Sandbox calendar
One feed whose URL never changes and whose contents do. Paste it into a property once, then change it here and wait for the next poll. That is the difference between this and the three preset feeds, whose only way of saying something new is a different URL.
https://turnsweep-test-feed.pages.dev/feeds/sandbox.ics
A change takes up to a minute to reach every edge. The state lives in Workers KV, which is eventually consistent, so a feed fetched immediately after clicking can still serve the previous answer. That is invisible to the poller, which runs every fifteen minutes anyway, and very visible if you click here and pull to refresh straight away. If the app disagrees with this page, wait a minute and refresh again before concluding anything.
Make the server read it now
The server polls every fifteen minutes on its own. This runs the same poll immediately, so a change made above reaches the app without waiting for the schedule or pulling to refresh on the device.
Give the feed a few seconds first. The state above lives in Workers KV and takes up to a minute to reach every edge, so a poll fired the instant you click can still read the previous answer and report nothing changed.
It polls every connected calendar, not only this one, because that is what the scheduled job does and there is no way to ask it for a subset. Limited to one every fifteen seconds.
What the feed does when asked
Which platform it claims to be
Changes the dialect: the PRODID, the UID shape, the summary, whether there is a description at all. The app reads the platform off the URL's host, so it will still label this feed "Other" whichever you pick.
Bookings
| Guest | Check-in | Nights | Checkout |
|---|
Add one
Leave the guest empty for a name from the pile. To make a same-day changeover, use the +same-day button on the booking you want somebody arriving behind.
Start over
Removing every booking leaves a real, empty calendar. Resetting seeds three bookings relative to today, one of them checking out this morning with somebody arriving the same day.
What a poll will see
| Checkout | Guest leaving | UID |
|---|
Read out of the calendar that was just built, not out of the bookings above, so the two diverge exactly where the feed does: an event with no DTEND becomes one night, and one with no UID is skipped by the server's parser entirely.