Skip to content

Add bounded engine-thread action queue - #35

Merged
EricSun0218 merged 1 commit into
mainfrom
codex/issue-33-action-queue
Aug 15, 2026
Merged

Add bounded engine-thread action queue#35
EricSun0218 merged 1 commit into
mainfrom
codex/issue-33-action-queue

Conversation

@EricSun0218

Copy link
Copy Markdown
Owner

What changed

  • add an engine-neutral QueuedGameActionHandler over the existing IGameActionHandler contract
  • provide bounded FIFO admission, per-pump work limits, active-operation bounds, queued cancellation, stop/dispose lifecycle, and single-thread pump ownership
  • route both execute and recovery callbacks through the host-owned engine thread
  • preserve the existing durable journal and receipt protocol; started mutations are never canceled solely because the original caller timed out
  • document the integration pattern and expose it in the capability tables

Why

In-process Unity, Godot, and other C# hosts currently have to rebuild the same background-to-engine-thread action handoff. The reusable queue removes that boilerplate without moving game authority or generation validation into the framework.

Validation

  • complete Release solution build: 0 warnings, 0 errors
  • complete Release suite: 885 tests passed
  • queue concurrency/lifecycle suite repeated 10/10 times
  • API surface freeze and formatting checks passed
  • public-tree validation passed
  • Godot 4.7.1 .NET real-editor smoke passed
  • Unity 6000.5.6f1 real-editor smoke passed

Fixes #33

@EricSun0218
EricSun0218 merged commit ff67156 into main Aug 15, 2026
6 checks passed
@EricSun0218
EricSun0218 deleted the codex/issue-33-action-queue branch August 15, 2026 16:01
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.

是否需要为 IGameActionHandler 提供一个通用的主线程队列实现?

1 participant