Skip to content

fix(OMN-15978): bind gateway operations to command topics - #2729

Merged
jonahgabriel merged 2 commits into
devfrom
codex/omn-15978-gateway-routing
Aug 13, 2026
Merged

jonahgabriel merged 2 commits into
devfrom
codex/omn-15978-gateway-routing

Conversation

@jonahgabriel

@jonahgabriel jonahgabriel commented Aug 12, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • bind each operation_match gateway handler to its single command topic in the node contract
  • add a production-wiring regression test proving every subscribe topic has exactly one owner and every operation owns exactly one topic

Defect

With event_model: null and no handler-level topic, the runtime's _topics_for_handler_entry returns every declared subscribe topic for every handler. Attach, heartbeat, and detach dispatchers therefore all subscribe to all three request topics, allowing a healthy consumer group to invoke the wrong typed request handler.

Verification

  • focused routing regression: 1 passed
  • complete gateway attach-effect node suite: 36 passed
  • rebased pre-push governed unit suite: 23,357 passed, 40 skipped
  • Ruff, git diff --check, mypy, architecture validation, and deploy-scope hook: passed

Dependency

OMN-15918 / omnibase_infra#2727 is merged. This branch is rebased directly onto that merge and targets dev. Do not deploy a runtime-effects image until this change also lands and its OCC evidence is merged.

Summary by CodeRabbit

  • Bug Fixes

    • Added command topics for gateway attach, heartbeat, and detach operations to ensure correct handler routing.
    • Corrected gateway dispatch and handler associations for attach, heartbeat, and detach operations, improving routing consistency.
  • Tests

    • Added regression coverage verifying that each gateway operation maps to exactly one command topic and that subscribed topics have a single owner.
    • Updated dispatch validation baselines to reflect the corrected gateway routing records.

Evidence-Ticket: OMN-15978
Evidence-Source: OCC#6413

@coderabbitai

coderabbitai Bot commented Aug 12, 2026 •

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a6015cce-c417-4352-ae87-86700bbfef5d

📥 Commits

Reviewing files that changed from the base of the PR and between af23742 and 7e3faad.

📒 Files selected for processing (1)
  • tests/fixtures/dispatch_parity/baseline-selection-v2.json

📝 Walkthrough

Walkthrough

The gateway attach effect contract now maps attach, heartbeat, and detach operations to command topics. Regression tests verify unique topic ownership. The dispatch parity baseline updates the related identifiers, selections, route records, route count, and timestamp.

Changes

Gateway routing

Layer / File(s) Summary
Contract routing and validation
src/omnibase_infra/nodes/node_gateway_attach_effect/contract.yaml, tests/unit/nodes/node_gateway_attach_effect/test_contract_routing.py
The contract adds command topics for the three gateway handlers. The test validates each operation-to-topic mapping and unique topic ownership.
Dispatch parity refresh
tests/fixtures/dispatch_parity/baseline-selection-v2.json
The baseline regenerates gateway dispatcher, handler, and route identifiers. Selections now use handler-specific dispatcher IDs, and the registered route count changes from 130 to 124.

Estimated code review effort: 2 (Simple) | ~10 minutes

Mergeability Score: ⚪ Minimal · up to 7e3fa

The routing contract and regression fixture are aligned, and no actionable merge-blocking risk remains after normal checks and review.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: binding gateway operations to their corresponding command topics.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/omn-15978-gateway-routing

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

@jonahgabriel
jonahgabriel marked this pull request as draft August 12, 2026 22:28
Base automatically changed from jonah/omn-15918-attach-hardening to dev August 12, 2026 23:52
@jonahgabriel
jonahgabriel force-pushed the codex/omn-15978-gateway-routing branch from fd0060f to af23742 Compare August 13, 2026 00:03
@jonahgabriel
jonahgabriel marked this pull request as ready for review August 13, 2026 00:03
@jonahgabriel
jonahgabriel enabled auto-merge (squash) August 13, 2026 00:03
jonahgabriel pushed a commit to OmniNode-ai/onex_change_control that referenced this pull request Aug 13, 2026
…ibase_infra#2729 (#6412)

* evidence(OMN-15978): author OCC companion for OmniNode-ai/omnibase_infra#2729

OCC companion by node_pr_lifecycle_fix_effect (OMN-13317 F1 / OMN-13990 / OMN-14285). Product PR head af2374233b1d3a3ce9068ff6bd74e624e2facf8a.

* evidence(OMN-15978): self-bind OCC#6412 + rebind contract_sha256

---------

Co-authored-by: omnimarket-bot <bot@omninode.ai>
@github-actions

github-actions Bot commented Aug 13, 2026 •

Copy link
Copy Markdown
Contributor

✅ Hostile Reviewer — PASSED

Blocking findings (critical): 0
Total findings: 0
Models succeeded: qwen3-review,qwen3-review-b


Gate semantics (pilot phase)

Verdict Meaning Blocks merge?
passed No critical findings No
blocked CRITICAL findings found Yes
degraded All models unavailable (infra) No (pilot)

Powered by omniintelligence.review_pairing.cli_review — node-based adversarial review via HandlerLlmCliSubprocess (OMN-8468/OMN-8524)

@jonahgabriel
jonahgabriel merged commit 37462ee into dev Aug 13, 2026
305 of 391 checks passed
@jonahgabriel
jonahgabriel deleted the codex/omn-15978-gateway-routing branch August 13, 2026 02:14
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