Parent: #335 Roadmap: #144, #134
The relocation audit found Function fields that carry live heap references but were absent from the marker: realm_global, arrow_new_target, this_cell.value, and the captured with_stack. Moving GC cannot safely copy or rewrite Function cells until marking and relocation share complete field coverage.
Acceptance:
- Trace closure, realm global, home/super/object links, import.meta, arrow this/new.target, derived-constructor this cell, and captured with objects.
- Relocation rewrites the same fields.
- Prove every edge independently with focused tests.
- Rescan old Function cells during minor collection because this_cell.value is initialized by super().
- Focused normal and TSan runs report zero failures and leaks.
- Update #335/#333 without enabling broader movement.