Skip to content

feat(claude): add agent skill for notification package#4073

Open
gergely-kurucz-konghq wants to merge 1 commit intomainfrom
feat/skill-notification-package
Open

feat(claude): add agent skill for notification package#4073
gergely-kurucz-konghq wants to merge 1 commit intomainfrom
feat/skill-notification-package

Conversation

@gergely-kurucz-konghq
Copy link
Copy Markdown
Contributor

@gergely-kurucz-konghq gergely-kurucz-konghq commented Apr 2, 2026

Overview

Add agent skill for notification package.

Summary by CodeRabbit

  • Documentation
    • Added comprehensive documentation for the notification subsystem, covering event handling architecture, delivery mechanisms, state management, webhook integrations, and API resources.
    • Updated coding conventions guide to reference notification domain guidance topics.

@gergely-kurucz-konghq gergely-kurucz-konghq requested a review from a team as a code owner April 2, 2026 15:54
@gergely-kurucz-konghq gergely-kurucz-konghq added release-note/ignore Ignore this change when generating release notes area/notification labels Apr 2, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 2, 2026

📝 Walkthrough

Walkthrough

Adds comprehensive documentation for the notification agent skill at .agents/skills/notification/SKILL.md, covering the notification subsystem architecture, event domain model, delivery state machine, reconciliation behavior, HTTP API resources, and operational details. Updates AGENTS.md to reference the new skill in coding conventions.

Changes

Cohort / File(s) Summary
Notification Skill Documentation
.agents/skills/notification/SKILL.md
New comprehensive skill guide documenting the notification package layout, supported event types, EventPayload union structure with Type discriminator, delivery status state machine (PENDING/SENDING/RESENDING/SUCCESS/FAILED), reconciliation loop behavior, HTTP API resources (channels/rules/events), adapter persistence expectations, webhook integration with Svix, and operational defaults. Includes DI wiring points, worker service details, and unit test coverage guidance.
Coding Conventions Update
AGENTS.md
Updated "Coding Conventions" section to reference the new /notification skill alongside existing /service, /api, /ent, /ledger, and /subscription domain guidance.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the main change: adding a new agent skill documentation for the notification package.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/skill-notification-package

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 and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (4)
.agents/skills/notification/SKILL.md (3)

14-43: Add language specifier to code block.

The directory tree code block should specify a language for proper markdown linting. Consider using text or leave it as plain ``` if no specific language applies.

📝 Suggested fix
-```
+```text
 openmeter/notification/
 ├── (root)              — Domain types, interfaces, payload union types, event type constants
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/skills/notification/SKILL.md around lines 14 - 43, The fenced
directory-tree code block in .agents/skills/notification/SKILL.md lacks a
language specifier causing markdown lint warnings; update the opening fence for
that block (the tree starting with "openmeter/notification/") to include a
language tag such as text (e.g., change ``` to ```text) so the linter recognizes
the block as plain text and the tree renders correctly.

64-69: Add language specifier to code block.

The entity hierarchy diagram should have a language tag for consistency.

📝 Suggested fix
-```
+```text
 Channel        — webhook endpoint (URL, custom headers, signing secret)
 Rule           — event type + config + channels (M:N, max 5 channels per rule)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/skills/notification/SKILL.md around lines 64 - 69, Update the fenced
code block at the entity hierarchy (the block starting with the triple backticks
that contains "Channel — webhook endpoint..." and the following lines) to
include a language specifier (e.g., change the opening "```" to "```text") so
the code block is explicitly tagged; ensure only the opening fence is modified
and the closing "```" remains unchanged.

124-144: Add language specifier to code block.

The flow diagram should have a language tag.

📝 Suggested fix
-```
+```text
 Kafka (om_sys.api_events)
   ↓
 Consumer handler (consumer/)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/skills/notification/SKILL.md around lines 124 - 144, The fenced code
block containing the ASCII flow diagram in SKILL.md lacks a language specifier;
update the opening fence to include a language tag (e.g., ```text) so syntax
highlighters treat the diagram as plain text; find the block that starts with
"Kafka (om_sys.api_events)" and modify its opening fence accordingly—the diagram
references symbols like Service.CreateEvent(), adapter.CreateEvent(),
EventHandler.Dispatch(), reconcileEvent()/reconcileWebhookEvent(), and
webhook.SendMessage() to help you locate the correct block.
AGENTS.md (1)

180-180: Consider varying sentence structure for better readability.

Five consecutive sentences starting with "See" makes the paragraph a bit repetitive. You might rephrase to something like:

"Refer to the following skills: /service for service/adapter patterns, constructors, input types, errors, transactions, hooks, logging, multi-tenancy, and DI wiring; /api for HTTP handler patterns and ValidationIssue; /ent for Ent ORM patterns and Postgres type gotchas; /ledger for ledger package architecture, wiring, and testing; /subscription for subscription domain model, sync algorithm, patch system, workflow layer, and addon sub-system; /notification for notification event pipeline, Kafka consumers, Svix webhook delivery, reconciliation loop, and payload versioning."

Or keep them separate but vary the openings ("Refer to", "Check", "Consult", etc.).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@AGENTS.md` at line 180, The paragraph is repetitive because five consecutive
sentences start with "See"; rewrite it to vary sentence openings or combine into
a single sentence listing the skills for readability—e.g., start with "Refer to
the following skills:" and then list `/service` (service/adapter patterns,
constructors, input types, errors, transactions, hooks, logging, multi-tenancy,
DI wiring), `/api` (HTTP handler patterns, ValidationIssue), `/ent` (Ent ORM
patterns, Postgres type gotchas), `/ledger` (ledger package architecture,
wiring, testing), `/subscription` (subscription domain model, sync algorithm,
patch system, workflow layer, addon sub-system), and `/notification`
(notification event pipeline, Kafka consumers, Svix webhook delivery,
reconciliation loop, payload versioning); alternatively keep separate sentences
but vary openings (e.g., "Refer to", "See", "Consult") for `/service`, `/api`,
`/ent`, `/ledger`, `/subscription`, and `/notification`.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.agents/skills/notification/SKILL.md:
- Around line 14-43: The fenced directory-tree code block in
.agents/skills/notification/SKILL.md lacks a language specifier causing markdown
lint warnings; update the opening fence for that block (the tree starting with
"openmeter/notification/") to include a language tag such as text (e.g., change
``` to ```text) so the linter recognizes the block as plain text and the tree
renders correctly.
- Around line 64-69: Update the fenced code block at the entity hierarchy (the
block starting with the triple backticks that contains "Channel — webhook
endpoint..." and the following lines) to include a language specifier (e.g.,
change the opening "```" to "```text") so the code block is explicitly tagged;
ensure only the opening fence is modified and the closing "```" remains
unchanged.
- Around line 124-144: The fenced code block containing the ASCII flow diagram
in SKILL.md lacks a language specifier; update the opening fence to include a
language tag (e.g., ```text) so syntax highlighters treat the diagram as plain
text; find the block that starts with "Kafka (om_sys.api_events)" and modify its
opening fence accordingly—the diagram references symbols like
Service.CreateEvent(), adapter.CreateEvent(), EventHandler.Dispatch(),
reconcileEvent()/reconcileWebhookEvent(), and webhook.SendMessage() to help you
locate the correct block.

In `@AGENTS.md`:
- Line 180: The paragraph is repetitive because five consecutive sentences start
with "See"; rewrite it to vary sentence openings or combine into a single
sentence listing the skills for readability—e.g., start with "Refer to the
following skills:" and then list `/service` (service/adapter patterns,
constructors, input types, errors, transactions, hooks, logging, multi-tenancy,
DI wiring), `/api` (HTTP handler patterns, ValidationIssue), `/ent` (Ent ORM
patterns, Postgres type gotchas), `/ledger` (ledger package architecture,
wiring, testing), `/subscription` (subscription domain model, sync algorithm,
patch system, workflow layer, addon sub-system), and `/notification`
(notification event pipeline, Kafka consumers, Svix webhook delivery,
reconciliation loop, payload versioning); alternatively keep separate sentences
but vary openings (e.g., "Refer to", "See", "Consult") for `/service`, `/api`,
`/ent`, `/ledger`, `/subscription`, and `/notification`.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 01995ddb-c3f3-4b89-95ce-303b17d01127

📥 Commits

Reviewing files that changed from the base of the PR and between 494829a and b46138f.

📒 Files selected for processing (2)
  • .agents/skills/notification/SKILL.md
  • AGENTS.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/notification release-note/ignore Ignore this change when generating release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant