Timer, request, coercion and JSON.parse effects recognized unbound globals
without consulting visible source-local writes, so `setTimeout = f` or
`self.fetch = f` still produced Node timer and fetch operations.
The ambient write owner now classifies a global reference as unmodified,
possibly replaced (a write under an unknown key, such as
`globalThis[k] = v`), or replaced (an exact visible write). Replaced globals
no longer produce built-in effects; possibly replaced ones keep the effect
with partial resolution instead of dropping it. The member-specific
`isUnmodifiedGlobalMember` helper is superseded and removed.
Fixes#3367
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>