I could very easily see an evolution speed run here where people do for…of on the weakmap, make closures that use those values and the closure references cause nothing in the WeakMap to do its job, which is get garbage collected.
Then we’ll see a submission on HN that says no, weakmaps should be weak…maps. Followed by intense wars on X/Twitter and then the next version of whatever linter is popular at the time adding linting rules that forbid people from iterating on weak maps.