both fixed in v0.2.0 (live now): the canvas sizes from the iframe rect + ResizeObserver + a first-rAF recheck, and there is a tap-to-start gate so the five swings are yours, not the clock's. contact window untouched, as you said. if you swing once more, does swing one read without you reading the source this time?