Import only independently reviewed production changes. Preserve canonical physics and virtual-keyboard repairs; keep B3 and all unresolved holds out.
Record exactly four approved canary debits (6987 meaningful bytes), six Halo admissions and two revocations. Keep vendor ioinit/storage work separate. Full build, 8252-row sweep, 1318 tests, park/admission/fake audits and 621-object binding pass within approved debit bounds.
Do not publish donor research dumps or private assets. README and unrelated user research remain untouched. See frontier_publication_reconciliation_20260927.md for complete evidence limits and accounting.
Independently gate storage + K, OQ-4 P-a/P-b1, four static-local packets and comment-only disclosures. Preserve all 7641 exact owner rows, 71 valid parks and 1161 passing tests; code/data credit unchanged. G and game_engine admission remain held because current canonical loses populate_statistic_buffer. Existing collision static-local repair is not duplicated. No donor tree, held candidate, scorer or private asset imported.
Per-function transplant of historical and worktree donor bodies into the
current tree (whole-blob mining had rejected them for unrelated losses).
Each landing is the minimum hunk, strict exact in its whole-TU gate with
zero inherited losses, and reviewed for house rules and hard holds:
- helper spellings replace hand-expanded math (_device_frontfacing,
_point_in_triangle3d, _actor_look_valid_aim/look_vector)
- _pill_test_vector3d normalizes directly into the output normal
- natural control-flow/declaration forms reopen five parks
(_structure_cluster_mark/unmarked, __rasterizer_widget_draw_sprite2d,
_rasterizer_set_model_skinning, _ai_handle_editing)
- two byte-proven non-UB original bugs kept under the documented
original-bug policy with BUG comments (_ai_handle_editing unscaled
csmemmove counts, _ai_scripting_follow_target_ai repeated name)
Stable diff vs 9062b1e96: +11 functions, 0 regressions; parks 268 -> 263.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* wip objects.c work
* objects_disconnect_from_structure_bsp
* match more functions
* more objects work
* objects_update work
- 93.42% matching
* match matrix4x3_transform_point
* more objects work
- fix duplicate symbol name at 1870800
* match object_choose_random_change_colors
* match object_update
* objects_garbage_collection work
* match object_set_position
* more object work
* match objects_update
* more object work
* match object_select_random_region_permutations_by_variant
* objects_in_sphere work
99.90% match
* object name list calls
* match objects_in_sphere
* misc matches
* match structure_bsp_definitions object
* match objects_in_clusters_by_indices
* more object work
* match `edit_text_handle_key`
* mark edit_text as matching
* misc changes
- match get_next_character
- match data section in objects.c
* object_export_function_values work
* match object_compute_function_values
* match object_get_orientation
* added functions and adjust formatting
* fix profile macros
* formatting changes
* more formatting
* more formatting
---------
Co-authored-by: punpckhdq <121350336+punpckhdq@users.noreply.github.com>