Skip to content

Reuse verified Windows cleanup parent bindings - #853

Open
Infiland wants to merge 3 commits into
mainfrom
dev/828-windows-cleanup-parent-bindings
Open

Reuse verified Windows cleanup parent bindings#853
Infiland wants to merge 3 commits into
mainfrom
dev/828-windows-cleanup-parent-bindings

Conversation

@Infiland

@Infiland Infiland commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Fixes #828.

Present Windows Included Files trees now reuse retained, verified cleanup-parent bindings instead of recapturing the same ancestor chain for every child. Nested cleanup performs iterative full-tree preflight and bottom-up removal while retaining only the active ancestor chain, closing each child binding before removal and keeping its parent bound.

The fallback preserves exact identity and digest checks, no-follow behavior, junction/reparse and mount rejection, hard-link and read-only defenses, late relocation/replacement checks, tombstone ownership, and rollback behavior. Deterministic flat, nested, multilevel, and depth-128 tests bind the optimized operation counts and handle lifetime to linear work with O(depth) live handles.

This bumps the release to 0.7.65. GameMaker LTS 2026 behavior and exact Godot 4.7.1 output are unchanged.

Local validation passed: Ruff; Pyright with zero errors or warnings; 200 Included Files tests with 15 expected platform skips; 88 version/docs/workflow tests; 10 focused modeled-Windows scale/depth/adversarial tests; all GitHub YAML parsing; git diff --check; and the full exact-Godot-4.7.1 suite with 2,590 passed and 78 skipped. Native Windows CI remains the merge gate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reuse verified Windows cleanup parents for present Included Files trees

1 participant