You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 914c251
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: .github/workflows/just_build_no_signature.yml
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -133,7 +133,7 @@ jobs:
133
133
& $env:ComSpec /d /c $command
134
134
if ($LASTEXITCODE) { throw "Compatibility guard test failed: $name" }
135
135
}
136
-
foreach ($script in @('test_shutdown_routing.py','test_provider_publication_routes.py','test_provider_dll_boundary.py','test_combo_release.py')) {
136
+
foreach ($script in @('test_shutdown_routing.py','test_provider_publication_routes.py','test_provider_dll_boundary.py','test_combo_release.py','test_native_operation_routes.py')) {
Copy file name to clipboardExpand all lines: docs/CODEX_HANDOFF.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,3 +36,5 @@ The 2026-09-17 continuation fixes private provider construction/publication and
36
36
The same continuation also initializes DLL-provider depth pointers, guards missing per-operation exports (69 extracted checks), and fixes Combo partial-release ownership/retry (44 checks). See the same publication audit for limitations; this does not establish native API/device shutdown safety or game compatibility.
37
37
38
38
Latest validated code checkpoint: e737b087 (Windows build 35129887577 and format 35129887470 succeeded; 171 new publication/export/Combo checks passed). The publication audit records remaining native shutdown/device ownership findings, including the separate DLSSFeatureDx12 nested native-shutdown route; continue there rather than repeating these completed fixes.
39
+
40
+
The next checkpoint `3df84993` fixes native D3D12/Vulkan device-specific Init/Shutdown and removes the nested DLSSFeatureDx12 native shutdown. Windows build `35188944901` and format `35188944895` succeeded; 37 device and 43 extracted shutdown checks passed. See [native lifecycle audit](NATIVE_DEVICE_LIFECYCLE_20260917.md), including the operation-admission follow-up, test counts and exact remaining boundaries. Do not restart this ownership work or rerun unrelated installer suites. The latest user explicitly permits aurora synchronization after code/review/build completion without waiting for game tests; remaining lifecycle boundaries must still be resolved or explicitly scoped before that gate is met.
Copy file name to clipboardExpand all lines: docs/NATIVE_DEVICE_LIFECYCLE_20260917.md
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,3 +24,19 @@ This is an Init/Shutdown ownership checkpoint, not full concurrent operation adm
24
24
Replacement FG providers have separate device/handle ownership and shutdown semantics, not covered by this native registry. Outer adapters still ignore their shutdown result. Global module loading, mutable shared depth/HUD resources and general State/Config ownership are not solved here. Aurora still has a single current-device cache; native multidevice bookkeeping does not make every renderer feature multidevice-safe. The process-exit skip intentionally leaves native bookkeeping until DLL teardown.
25
25
26
26
The user has deferred real-game validation and authorized synchronization to aurora after code work/review/build completion. Remaining lifecycle work means that gate has not yet been reached. No main-branch merge or Release is performed by this checkpoint.
27
+
28
+
## Init/Shutdown checkpoint validation
29
+
30
+
Commit `3df849934112a115ef09fa280ffe810337b4042c` was pushed to Compatibility-fixes. [Windows DLL build, CPU checks and package](https://github.com/abc354402600/OptiScaler-Aurora/actions/runs/35188944901) and [incremental format](https://github.com/abc354402600/OptiScaler-Aurora/actions/runs/35188944895) succeeded. Job `105097010598` confirms 37 device checks and 43 shutdown checks passed. Artifact `OptiScaler_Aurora_v1.0_20260917_compat_3df84993.7z` was uploaded (ID `10484080454`, 234774490 bytes).
31
+
32
+
## Native operation admission follow-up
33
+
34
+
Nine D3D12/Vulkan Create/Evaluate/Release/DestroyParameters getters now return same-signature guarded entry points rather than raw native pointers. Export availability is stable after module initialization; readiness is checked at invocation, including when a caller cached a pointer before shutdown. Create outputs are cleared on rejected admission, and Vulkan CreateFeature1 additionally verifies its explicitly supplied device. Shutdown getters also route through the ownership helper so callers cannot bypass it.
35
+
36
+
An operation briefly increments an API-local active count and releases the metadata mutex before foreign code. Init of a new device and owned-device/global Shutdown reject while that API has active guarded calls. During a transition new calls are rejected. Exceptions unwind the active count. There is no wait across a native callback and no deferred teardown. Calls on another API remain independent. This is conservatively API-wide because legacy native handle and command-buffer routes do not expose complete device/generation ownership; it does not pretend those associations have been solved.
37
+
38
+
The changed Busy return exposed an existing bug in TryDestroyNGXParameters: it returned true even if native DestroyParameters failed. It now reports success only for native Success, preserving the existing internal-table deletion and unknown-table policy.
39
+
40
+
Focused tests now contain **55 device/admission checks** (18 added) and **236 new extracted-operation/parameter-destruction checks** covering all nine actual getters, cached pointers before/during/after shutdown, callback reentry, output clearing, absent exports, explicit unknown Vulkan device, retries, both shutdown getters and native destroy failure. The existing 43 shutdown routing checks were rerun because the shared lifecycle header changed; they passed. Local checks use counted native stand-ins. Cumulative MSVC validation will be recorded after this follow-up is pushed.
41
+
42
+
Still open: calls bypassing these getters, parameter acquisition/query routes, old native handles after a device generation closes/reopens, D3D11, replacement-provider lifecycle, and global module publication. Existing higher-level owners may discard resources after a failed release; no general ownership redesign is claimed. These checks do not establish in-game behavior or complete the main-branch merge gate.
0 commit comments