Skip to content

Conversation

@vanshitahujaa
Copy link

@vanshitahujaa vanshitahujaa commented Jan 28, 2026

Summary

Adds a contributor-focused architecture overview document with Mermaid diagrams.

Closes #38393

Changes

  • System architecture diagram - Shows client layer, API gateway, Meteor core, microservices, and data layer
  • Enterprise microservices diagram - Visualizes NATS-based communication between services
  • Data flow diagram - Real-time messaging sequence from user to client
  • Production deployment diagram - Multi-node architecture with load balancer, app tier, microservices, and database

Content Overview

  • Technology stack table
  • Simplified monorepo structure
  • Core feature modules mapping
  • Development commands reference

Notes for Reviewers

  • All diagrams use Mermaid (GitHub renders these natively)
  • Focused on contributor orientation, not marketing
  • Intentionally concise - links to existing docs for details

Summary by CodeRabbit

  • Documentation
    • Added comprehensive architectural documentation with diagrams, technology stack, monorepo layout, data flows, deployment guidance, core modules, and developer commands.
  • Bug Fixes
    • Fixed sort parameter validation on audit settings to accept string-format sorting.
  • Tests
    • Added end-to-end sorting tests for audit settings (ascending, descending, default).
  • Chores
    • Added a changeset entry recording patch bumps for related packages.

✏️ Tip: You can customize this high-level summary in your review settings.

@dionisio-bot
Copy link
Contributor

dionisio-bot bot commented Jan 28, 2026

Looks like this PR is not ready to merge, because of the following issues:

  • This PR is missing the 'stat: QA assured' label
  • This PR is missing the required milestone or project

Please fix the issues and try again

If you have any trouble, please check the PR guidelines

@changeset-bot
Copy link

changeset-bot bot commented Jan 28, 2026

⚠️ No Changeset found

Latest commit: 2b70661

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 28, 2026

Walkthrough

Adds a new repository architecture overview document and a small API/schema change with tests and a changeset: introduces overview.md; changes audit.settings sort schema to a string; adds E2E tests for sorting; and adds a changeset entry for related packages.

Changes

Cohort / File(s) Summary
Architecture documentation
overview.md
New high-level architecture overview including system and enterprise Mermaid diagrams, technology stack, monorepo mapping, data flows, production deployment notes, core feature modules, and development commands.
Changeset
.changeset/odd-colts-doubt.md
Adds a changeset marking patch bumps for @rocket.chat/rest-typings and @rocket.chat/meteor; documents that /api/v1/audit.settings sort now accepts string format.
Tests (E2E)
apps/meteor/tests/end-to-end/api/settings.ts
Adds "Sorting" test suite for audit.settings endpoint with helpers and three tests asserting ascending/descending timestamp sorting and default descending behavior.
Typings / API schema
packages/rest-typings/src/v1/server-events/ServerEventsAuditSettingsParamsGET.ts
Alters sort schema from an object with nested ts property to a plain string type (removes nested ts structure).

Sequence Diagram(s)

(No sequence diagrams generated — changes are documentation and a small schema/test update that do not introduce new multi-component control flow.)

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested labels

stat: ready to merge, stat: QA assured

Suggested reviewers

  • ggazzo
  • KevLehman
  • julio-rocketchat

Poem

🐰 I hopped through docs with pen so bright,

Drew mermaid streams in morning light,
Sorted timestamps, tests in sight,
A tiny changeset tucked in tight,
Hooray — the repo feels just right.

🚥 Pre-merge checks | ✅ 4 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning Changes to sort parameter validation in ServerEventsAuditSettingsParamsGET.ts and new sort-order tests appear to extend beyond the stated architecture documentation scope. Clarify whether the sort parameter changes are intentional and related to architecture documentation, or if they should be separated into a distinct PR.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'docs: add high-level architecture overview' directly and concisely describes the main change: adding documentation for system architecture.
Linked Issues check ✅ Passed The PR successfully addresses all coding/documentation objectives from #38393: provides architecture diagrams, monorepo-to-runtime mapping, data flows, technology stack, and development commands as requested.
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
  • Post copyable unit tests in a comment

Warning

Review ran into problems

🔥 Problems

Errors were encountered while retrieving linked issues.

Errors (1)
  • OVERVIEW-38393: Request failed with status code 404

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.

@CLAassistant
Copy link

CLAassistant commented Jan 28, 2026

CLA assistant check
All committers have signed the CLA.

@vanshitahujaa vanshitahujaa marked this pull request as ready for review January 28, 2026 13:58
Closes RocketChat#38393

- Add system architecture diagram (Mermaid)
- Add enterprise microservices diagram
- Add data flow diagram for real-time messaging
- Add production deployment architecture
- Include monorepo structure mapping
- Document technology stack and core modules
@vanshitahujaa vanshitahujaa force-pushed the docs/architecture-overview-38393 branch from 15ef893 to 7e3e25c Compare January 28, 2026 14:01
@vanshitahujaa vanshitahujaa requested review from a team as code owners January 28, 2026 14:01
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

No issues found across 1 file

Copy link
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.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@overview.md`:
- Around line 199-206: Update the product name capitalization in the Providers
module list: replace the module label "github" with the correctly capitalized
"GitHub" in the Providers table entry so the product name matches official
casing; locate the "Providers" row containing "apple, github, gitlab,
google-oauth, ldap" and change only "github" to "GitHub".
🧹 Nitpick comments (1)
overview.md (1)

1-1: Consider aligning the title with the document's purpose.

The PR objectives describe this as an "architecture overview" for contributors, but the title says "Architecture Report." Consider using "Architecture Overview" for better alignment with the stated purpose.

📝 Suggested title adjustment
-# Rocket.Chat Architecture Report
+# Rocket.Chat Architecture Overview

overview.md Outdated
Comment on lines 199 to 206
## Core Feature Modules (`apps/meteor/app/`)

| Category | Modules |
|----------|---------|
| **Communication** | livechat, threads, reactions, mentions, e2e |
| **Auth** | 2fa, authentication, authorization, meteor-accounts-saml, custom-oauth |
| **Integrations** | apps, integrations, slackbridge, irc, importer-slack |
| **Providers** | apple, github, gitlab, google-oauth, ldap |
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix product name capitalization.

Line 206: "github" should be "GitHub" to match the official product name.

✏️ Proposed fix
-| **Providers** | apple, github, gitlab, google-oauth, ldap |
+| **Providers** | apple, GitHub, gitlab, google-oauth, ldap |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## Core Feature Modules (`apps/meteor/app/`)
| Category | Modules |
|----------|---------|
| **Communication** | livechat, threads, reactions, mentions, e2e |
| **Auth** | 2fa, authentication, authorization, meteor-accounts-saml, custom-oauth |
| **Integrations** | apps, integrations, slackbridge, irc, importer-slack |
| **Providers** | apple, github, gitlab, google-oauth, ldap |
## Core Feature Modules (`apps/meteor/app/`)
| Category | Modules |
|----------|---------|
| **Communication** | livechat, threads, reactions, mentions, e2e |
| **Auth** | 2fa, authentication, authorization, meteor-accounts-saml, custom-oauth |
| **Integrations** | apps, integrations, slackbridge, irc, importer-slack |
| **Providers** | apple, GitHub, gitlab, google-oauth, ldap |
🧰 Tools
🪛 LanguageTool

[uncategorized] ~206-~206: The official name of this software platform is spelled with a capital “H”.
Context: ...porter-slack | | Providers | apple, github, gitlab, google-oauth, ldap | --- ## ...

(GITHUB)

🤖 Prompt for AI Agents
In `@overview.md` around lines 199 - 206, Update the product name capitalization
in the Providers module list: replace the module label "github" with the
correctly capitalized "GitHub" in the Providers table entry so the product name
matches official casing; locate the "Providers" row containing "apple, github,
gitlab, google-oauth, ldap" and change only "github" to "GitHub".

Copy link
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.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@overview.md`:
- Line 3: Update the Technology Stack entry in overview.md so the Node version
matches package.json: change the string containing "**Version:** 8.1.0-develop |
**Node:** 22.16.0 | **Yarn:** 4.12.0" to use Node 22.16.5 (e.g., "**Node:**
22.16.5") so documentation aligns with the ~22.16.5 constraint specified in
package.json.
🧹 Nitpick comments (1)
overview.md (1)

75-78: Consider dropping exact module/package counts to reduce churn.
These counts will age quickly; removing them (or making them approximate) keeps the overview stable.

♻️ Proposed tweak
-│   ├── meteor/          # Core server (97 feature modules)
+│   ├── meteor/          # Core server (feature modules)
-├── packages/            # 55 shared packages
+├── packages/            # shared packages

@MartinSchoeler
Copy link
Member

Not needed, same as #38401 (comment)

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Missing high-level architecture overview for contributors

3 participants