Skip to content

[WIP] Verify Gua native files from game-owned build policy - #187

Draft
link1345 wants to merge 2 commits into
mainfrom
feat/game-owned-remote-integrity
Draft

link1345 wants to merge 2 commits into
mainfrom
feat/game-owned-remote-integrity

Conversation

@link1345

@link1345 link1345 commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

A game-owned integrity check is needed so replacing Gua DLLs with a legitimate remote-enabled build cannot restore remote control in a normal game. This Draft starts with Windows x64 .NET policy compiled into the game assembly, checks expected native/managed files before native load, pins handles, and selects prebuilt off/testing/player modes without consumer CMake builds.

This is the Windows .NET foundation, not complete Unity/Godot/Web or package-distribution migration. It does not change public publication, overwrite v1.2.0, or claim release readiness. Implementation logic, trust and load boundaries, contract-to-test mapping, local evidence and remaining scope are in docs/game-owned-remote-integrity.md.

Validated locally: OFF local APIs; ON real WebSocket actions; Player bounds; OFF-to-ON native pair plus manifest rejected before load; deliberately early native load detected; automatic mode selection; OFF game IL without a remote-start reference; native environment overrides cannot replace pinned handles; full official v1.2.0 managed/native DLL set rejected before native load. Native local inputs are prior PR186 artifacts, not new-HEAD native evidence. Old official packages are reproduction inputs, not recommendations.

First focused read-only audit found trailing-separator handling and missing independent no-load observation; both were fixed, rerun and mutation-checked. Final focused audit and commit-specific CI remain pending.

This branch has not been deployed

No deployments
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.

1 participant