-
Notifications
You must be signed in to change notification settings - Fork 0
Document asynchronous outbound messaging tasks #127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Reviewer's GuideThis PR introduces a new Asynchronous Outbound Messaging Roadmap document that outlines and tracks the tasks for building reliable server-initiated pushes, organized into four implementation phases with progress checkboxes and links to relevant design, resilience, and testing guides. Flow diagram for the asynchronous outbound messaging roadmap phasesflowchart TD
A[Foundations]
B[Public API and Ergonomics]
C[Production Hardening]
D[Observability and Quality Assurance]
A --> B --> C --> D
Flow diagram for server push message handling componentsflowchart TD
subgraph Push Queue
PQ1[High Priority Channel]
PQ2[Low Priority Channel]
end
PQ1 & PQ2 --> CA[Connection Actor]
CA -->|before_send, on_command_end| PH[PushHandle]
CA --> SR[SessionRegistry]
PH -->|push, try_push| Client[Client Connection]
SR -.->|Leak-proof registry| PQ1
SR -.->|Leak-proof registry| PQ2
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Warning Rate limit exceeded@leynos has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 14 minutes and 10 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
Summary by CodeRabbit
WalkthroughA new documentation file, Changes
Possibly related PRs
Suggested reviewers
Poem
✨ Finishing Touches🧪 Generate Unit Tests
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
docs/asynchronous-outbound-messaging-roadmap.md
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
`docs/**/*.md`: Use the markdown files within the `docs/` directory as a knowledge base and source of truth for project requirements, dependency choices, and architectural decision...
docs/**/*.md
: Use the markdown files within thedocs/
directory as a knowledge base and source of truth for project requirements, dependency choices, and architectural decisions.
Proactively update the relevant file(s) in thedocs/
directory to reflect the latest state when new decisions are made, requirements change, libraries are added/removed, or architectural patterns evolve.
Documentation in thedocs/
directory must use en-GB-oxendict spelling and grammar, except for the word 'license'.
docs/asynchronous-outbound-messaging-roadmap.md
`**/*.md`: Validate Markdown files using `markdownlint *.md **/*.md`. Run `mdformat-all` after any documentation changes to format all Markdown files and fix table markup. Validate...
**/*.md
: Validate Markdown files usingmarkdownlint *.md **/*.md
.
Runmdformat-all
after any documentation changes to format all Markdown files and fix table markup.
Validate Markdown Mermaid diagrams using thenixie
CLI by runningnixie *.md **/*.md
.
Markdown paragraphs and bullet points must be wrapped at 80 columns.
Code blocks in Markdown files must be wrapped at 120 columns.
Tables and headings in Markdown files must not be wrapped.
docs/asynchronous-outbound-messaging-roadmap.md
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: build-test
Summary
Testing
make fmt
make lint
make test
https://chatgpt.com/codex/tasks/task_e_685b12982aa8832283312a2b0727d4d7
Summary by Sourcery
Documentation:
docs/asynchronous-outbound-messaging-roadmap.md
with a structured task checklist and references to design, resilience, and testing guides.