Skip to content

Guard Lua provider admission and verify rooted coroutine dispatch - #90

Merged
ShadowNineX merged 3 commits into
mainfrom
codex/all-tool-dispatch-qualification
Oct 11, 2026
Merged

ShadowNineX merged 3 commits into
mainfrom
codex/all-tool-dispatch-qualification

Conversation

@ShadowNineX

@ShadowNineX ShadowNineX commented Oct 11, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Reject a host-provided Lua state with a negative stack top before stamp verification, and reject stamp verification that changes that top. Both paths release operation admission through the existing exception cleanup; they do not reset the stack or retry the provider.

Add managed boundary tests for negative or changed stack-top observations, with invariant failure diagnostics. Add real Lua 5.3 fixtures that preserve existing stack values and exercise rooted worker/main coroutine dispatch, repeated success and exception paths, and queued-stop cleanup.

Scope and ownership

SDK Lua admission and Hosting regression fixtures only. No Client workflow, native bridge, dependency, or public API changes. The guards contain invalid provider state; the original released-bundle dispatcher failure remains unexplained and is not claimed fixed.

Validation

Check Evidence Result
CI / Gate Pull request CI run, commit 39e9813 Passed; all checks green
Local build and tests Release builds of Lua.Tests and Hosting.Tests; full Lua module: 345 passed (includes 13 numeric guard boundary/culture cases); Hosting MainThreadTests + CeCoroutineDispatchTests: 14 passed, bounded to 55 seconds Passed, zero failures or skips
Packed package Private ordinary-SDK qualification candidate passed isolated bundle/catalog and AOT gateway smoke checks; no release package published Passed for private candidate only
Public API / CompatibilitySuppressions No public API or declared compatibility changes Not applicable
Qualification level / Q-IDs Standalone native Lua fixtures provide C2 regression evidence; Q19 exact-host worker hand-off/concurrency qualification remains unqualified C2 passed; C3/C4 not established
Live Cheat Engine host Private two-host workflow session 20261011T151957Z-8cfc passed bounded checks and target/gateway/host restarts; zero plugin reload cycles; restored user state and installation unchanged Passed for that candidate workload only
Release manifest impact No bridge, SBOM, package layout, dependency, or release-manifest edits Not applicable

The earlier live dispatcher failure did not reproduce during the diagnostic replay. Plugin reload remains blocked by the private Settings bridge's empty plugin checklist. Neither observation establishes full SDK host qualification.

Compatibility and release impact

No public API change. Invalid provider states fail earlier with an InvalidOperationException; existing admission cleanup is preserved. Valid caller-owned stack values remain intact. CHANGELOG.md records the behavior under Unreleased. Installed and released binaries are unchanged.

Checklist

  • The change is focused and follows CONTRIBUTING.md.
  • Relevant regressions pass with no skipped tests.
  • Consumer-visible behavior is recorded under Unreleased.
  • No public API or dependency changes require API files or lock regeneration.
  • Documentation and claims distinguish fixture evidence from exact-host qualification.
  • Exact-host Q19 qualification and same-process plugin reload are still outstanding.

@ShadowNineX
ShadowNineX requested a review from AriusII as a code owner October 11, 2026 15:41
@coderabbitai

coderabbitai Bot commented Oct 11, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Repository: CheatEngineNet/CheatEngine.SDK/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 9fb28c73-6f9a-4aad-9886-4bb60f168025

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

Copy link
Copy Markdown

@ShadowNineX
ShadowNineX merged commit 9823170 into main Oct 11, 2026
20 checks passed
@ShadowNineX
ShadowNineX deleted the codex/all-tool-dispatch-qualification branch October 11, 2026 16:21
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