Skip to content

Initial Backend Component Mapping Diagram#12

Open
AndrejK666 wants to merge 4 commits into
constructorfabric:mainfrom
AndrejK666:docs/arch-diag
Open

Initial Backend Component Mapping Diagram#12
AndrejK666 wants to merge 4 commits into
constructorfabric:mainfrom
AndrejK666:docs/arch-diag

Conversation

@AndrejK666

@AndrejK666 AndrejK666 commented Jul 10, 2026

Copy link
Copy Markdown

This PR introduces an initial Backend Component Mapping Diagram to document the current backend architecture.

The diagram provides a high-level overview of the system by:

Showing the main backend components and their relationships.
Mapping components to existing Gears.
Identifying components that could potentially be extracted into separate Gears in the future.

The diagram is intended to be a living architecture document that evolves together with the codebase. By keeping it in the repository, architectural changes can be reviewed alongside implementation changes during merge requests.

Notes

To make the architecture easier to understand, I intentionally added an implementation-level layer of detail. The diagram includes several potential Gear candidates based on the current understanding of the system. As the architecture evolves, the diagram should be updated accordingly.

If the team finds this approach useful, the diagram can become part of the repository and serve as the primary architectural overview for future development.

Summary by CodeRabbit

  • Documentation
    • Added a “Studio v2 architecture” diagram covering platform components, services, clients, integrations, and data stores.
    • Included labeled relationships between major components, including APIs, synchronization, core services, runtimes, and storage systems.
    • Added a visual legend distinguishing existing assets, planned items, new services, dependencies, and data stores.

@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (2)
  • draft clear studio-v2-architecture-hypothesis.drawio.png is excluded by !**/*.png
  • draft-studio-v2-architecture.drawio.png is excluded by !**/*.png

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a0120566-1119-42d9-b74d-bf89173eb037

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds a draw.io XML diagram mapping Studio v2 platform components, their labeled relationships, data stores, and category legend.

Changes

Studio v2 architecture

Layer / File(s) Summary
Architecture component and relationship map
draft-studio-v2-architecture.drawio
Adds the Studio v2 architecture graph with platform services, clients, plugins, data stores, labeled connections, and a color-coded legend.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Possibly related issues

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is concise and matches the main change: adding an initial architecture/component mapping diagram.
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.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@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.

Actionable comments posted: 2

🤖 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.

Inline comments:
In `@draft-studio-v2-architecture.drawio`:
- Around line 94-107: Add a gray category entry to the diagram legend alongside
the existing mxCell entries leg1 through leg5, using a gray fill and stroke
style and a label such as “gray = external / future / unspecified.” Position it
consistently with the other legend items and ensure the entry clearly explains
gray components.
- Around line 109-126: The diagram defines only six relationships, leaving key
runtime, client, persistence, and observability components disconnected. Extend
the edge definitions alongside e1–e6 with explicit, accurately labeled
connections for the API gateway, BFF, Core, UI/client surfaces, MCP server,
partner apps, desktop app, and Langfuse, covering request flow, execution,
persistence, and telemetry; remove any components intentionally out of scope
instead.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 282cfcd7-7be5-4bbf-8edb-ac4a3428be42

📥 Commits

Reviewing files that changed from the base of the PR and between 0f6e30a and 206681a.

⛔ Files ignored due to path filters (1)
  • draft-studio-v2-architecture.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • draft-studio-v2-architecture.drawio

Comment thread draft-studio-v2-architecture.drawio Outdated
Comment on lines +94 to +107
<mxCell id="leg1" value="green = exists as gear/asset" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=#82b366;fontSize=11" parent="1" vertex="1">
<mxGeometry x="142.5" y="1050" width="200" height="35" as="geometry"/>
</mxCell>
<mxCell id="leg2" value="orange = planned / needs extraction" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontSize=11" parent="1" vertex="1">
<mxGeometry x="357.5" y="1050" width="220" height="35" as="geometry"/>
</mxCell>
<mxCell id="leg3" value="blue = new Studio v2 service" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontSize=11" parent="1" vertex="1">
<mxGeometry x="612.5" y="1050" width="200" height="35" as="geometry"/>
</mxCell>
<mxCell id="leg4" value="teal = Insight (runtime dependency)" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#b0e3e6;strokeColor=#0e8088;fontSize=11" parent="1" vertex="1">
<mxGeometry x="842.5" y="1050" width="220" height="35" as="geometry"/>
</mxCell>
<mxCell id="leg5" value="purple = data stores" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11" parent="1" vertex="1">
<mxGeometry x="1092.5" y="1050" width="180" height="35" as="geometry"/>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Define the gray category in the legend.

Gray components are used throughout the diagram, but the legend does not explain what gray represents. Add a legend entry such as “gray = external / future / unspecified” so component status is unambiguous.

🤖 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 `@draft-studio-v2-architecture.drawio` around lines 94 - 107, Add a gray
category entry to the diagram legend alongside the existing mxCell entries leg1
through leg5, using a gray fill and stroke style and a label such as “gray =
external / future / unspecified.” Position it consistently with the other legend
items and ensure the entry clearly explains gray components.

Comment thread draft-studio-v2-architecture.drawio Outdated
Comment on lines +109 to +126
<mxCell id="e1" value="mirrored objects + metrics" style="endArrow=classic;html=1;dashed=1;fontSize=11" parent="1" source="insight" target="objmgmt" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="e2" value="MCP" style="endArrow=classic;html=1;fontSize=11" parent="1" source="serverless" target="genai" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="e3" value="scan / validate" style="endArrow=classic;html=1;fontSize=11" parent="1" source="sync" target="git" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="e4" value="artifacts as PR" style="endArrow=classic;html=1;dashed=1;fontSize=11" parent="1" source="serverless" target="git" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="e5" value="" style="endArrow=classic;html=1;fontSize=11" parent="1" source="objmgmt" target="pg" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="e6" value="" style="endArrow=classic;html=1;fontSize=11" parent="1" source="objmgmt" target="nebula" edge="1">
<mxGeometry relative="1" as="geometry"/>
</mxCell>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift

Add the missing runtime and client relationships.

Only six edges are defined, leaving the API gateway, BFF, Core, UI/client surfaces, MCP server, partner apps, desktop app, and Langfuse disconnected. This prevents reviewers from tracing the main request, execution, persistence, and observability paths described by the diagram’s components. Add explicit labeled edges for supported relationships, or remove components intentionally outside this diagram’s scope.

🤖 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 `@draft-studio-v2-architecture.drawio` around lines 109 - 126, The diagram
defines only six relationships, leaving key runtime, client, persistence, and
observability components disconnected. Extend the edge definitions alongside
e1–e6 with explicit, accurately labeled connections for the API gateway, BFF,
Core, UI/client surfaces, MCP server, partner apps, desktop app, and Langfuse,
covering request flow, execution, persistence, and telemetry; remove any
components intentionally out of scope instead.

Comment thread draft-studio-v2-architecture.drawio Outdated
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.

2 participants