Skip to content

feat(OMN-10951): add delegation projection consumer to runtime-observability bundle - #1593

Merged
jonahgabriel merged 1 commit into
mainfrom
jonah/omn-10951-add-delegation-projection-to-bundle
May 14, 2026
Merged

jonahgabriel merged 1 commit into
mainfrom
jonah/omn-10951-add-delegation-projection-to-bundle

Conversation

@jonahgabriel

@jonahgabriel jonahgabriel commented May 14, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Add omnimarket-projection-delegation to the runtime-observability-projections bundle
  • The service was defined in docker/catalog/services/omnimarket-projection-delegation.yaml but never added to a bundle, so it was never deployed

Ticket: OMN-10951
Epic: OMN-10939

What this enables

After merge + onex up runtime, the delegation projection consumer will start alongside other projection consumers. It reads from onex.evt.omniclaude.task-delegated.v1 Kafka topic and writes to omnidash_analytics.delegation_events Postgres table.

Test plan

  • uv run python -m omnibase_infra.docker.catalog.cli validate runtime-observability-projections passes
  • Bundle includes the new service in generated compose
  • After deploy: consumer group visible via rpk group list
  • After deploy: delegation events appear in Postgres delegation_events table

Summary by CodeRabbit

Release Notes

  • Chores
    • Updated runtime observability configuration to expand monitoring and projection capabilities.

Review Change Stack

Evidence-Source: OCC#1007
Evidence-Ticket: OMN-10951

…rvability-projections bundle

The delegation projection consumer was defined in the service catalog but never
added to a bundle. It consumes delegation events from Kafka and writes them to
the omnidash_analytics.delegation_events Postgres table.
@coderabbitai

coderabbitai Bot commented May 14, 2026 •

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

A single service (omnimarket-projection-delegation) is added to the runtime-observability-projections bundle's service list in the Docker catalog configuration, extending the set of observability projection consumers deployed with runtime observability.

Changes

Runtime Observability Bundle Configuration

Layer / File(s) Summary
Add omnimarket-projection-delegation to observability projections bundle
docker/catalog/bundles.yaml
The omnimarket-projection-delegation service is added to the runtime-observability-projections bundle's services list.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 A service joins the bundle with a single, simple line,
Observability projections now shine ever more fine,
Delegation hops along in the configuration dance,
No conflicts to unravel, just a straightforward chance!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: adding the omnimarket-projection-delegation service to the runtime-observability-projections bundle.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jonah/omn-10951-add-delegation-projection-to-bundle

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

@jonahgabriel
jonahgabriel enabled auto-merge (squash) May 14, 2026 18:31

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docker/catalog/bundles.yaml (1)

54-59: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Missing analytics DB required env for the newly added delegation consumer.

omnimarket-projection-delegation is now part of runtime-observability-projections, but this bundle doesn’t require OMNIDASH_ANALYTICS_DB_URL. Given this consumer writes to omnidash_analytics.delegation_events, this can deploy a misconfigured service in onex up runtime.

Suggested fix
 runtime-observability-projections:
   description: "Runtime projection/observability consumers — postgres projections, cost aggregation, health projection, decision store (OMN-9332)"
   services:
     - injection-effectiveness-consumer
     - savings-estimation-consumer
     - llm-cost-aggregation-consumer
     - consumer-health-projection
     - decision-store-consumer
     - omnimarket-projection-delegation
   includes: []
   inject_env: {}
   inject_required_env:
     - OMNIBASE_INFRA_INJECTION_EFFECTIVENESS_POSTGRES_DSN
+    - OMNIDASH_ANALYTICS_DB_URL
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docker/catalog/bundles.yaml` around lines 54 - 59, The bundle declaration for
runtime-observability-projections was updated to include
omnimarket-projection-delegation but did not add the analytics DB env; update
the bundle's inject_required_env list to include OMNIDASH_ANALYTICS_DB_URL so
the consumer can write to omnidash_analytics.delegation_events. Locate the
runtime-observability-projections bundle entry (the includes/inject_required_env
block that references omnimarket-projection-delegation) and add
OMNIDASH_ANALYTICS_DB_URL to inject_required_env alongside
OMNIBASE_INFRA_INJECTION_EFFECTIVENESS_POSTGRES_DSN.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@docker/catalog/bundles.yaml`:
- Around line 54-59: The bundle declaration for
runtime-observability-projections was updated to include
omnimarket-projection-delegation but did not add the analytics DB env; update
the bundle's inject_required_env list to include OMNIDASH_ANALYTICS_DB_URL so
the consumer can write to omnidash_analytics.delegation_events. Locate the
runtime-observability-projections bundle entry (the includes/inject_required_env
block that references omnimarket-projection-delegation) and add
OMNIDASH_ANALYTICS_DB_URL to inject_required_env alongside
OMNIBASE_INFRA_INJECTION_EFFECTIVENESS_POSTGRES_DSN.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: c4baf9f8-ff7a-480a-a7ea-b9410535c74e

📥 Commits

Reviewing files that changed from the base of the PR and between 0471c6b and 977cd6c.

📒 Files selected for processing (1)
  • docker/catalog/bundles.yaml

@sonarqubecloud

Copy link
Copy Markdown

@jonahgabriel
jonahgabriel merged commit 7115481 into main May 14, 2026
60 of 64 checks passed
@jonahgabriel
jonahgabriel deleted the jonah/omn-10951-add-delegation-projection-to-bundle branch May 14, 2026 18:58
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