Skip to content

feat!: State plugin refactor - #227

Open
Felix Frank (feliopterix) wants to merge 10 commits into
trunkfrom
feat/state-plugin-refactor
Open

feat!: State plugin refactor#227
Felix Frank (feliopterix) wants to merge 10 commits into
trunkfrom
feat/state-plugin-refactor

Conversation

@feliopterix

@feliopterix Felix Frank (feliopterix) commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

1. Why is this change necessary?

The current implementation of the State plugin is deeply integrated in the actual engine code. This decision comes from the initial integration into the Scene Editor in the Shopware Administration, which was the first use-case for Dive.

Now we want to change that: remove the State plugin code from the engine (as much as possible), add a gateway between engine and State plugin, thin down the engine code to load less when State plugin is not used at all.

2. What does this change do, exactly?

  • Removes State plugin-related code from the engine (schemas, scene management, communication)
  • Adds proper JS events to control State updates from scene object side (e.g. update state object position when it is moved via a gizmo in the scene).
  • Adds EngineGateway class to take control of the scene, renderer and so on via actions (and not the engine directly).

3. Describe each step to reproduce the issue or behaviour.

4. Please link to the relevant issues (if any).

5. Checklist

  • I have rebased my changes to remove merge conflicts
  • I have written tests and verified that they fail without my change
  • I have written or adjusted the documentation according to my changes
  • This change has comments for package types, values, functions, and non-obvious lines of code
  • I have read the contribution requirements and fulfil them.

@feliopterix
Felix Frank (feliopterix) requested a review from a team as a code owner August 7, 2026 08:10
@feliopterix Felix Frank (feliopterix) added the service/shopping-experience Issues and PRs related to this service. label Aug 7, 2026
@codecov

codecov Bot commented Aug 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.67%. Comparing base (d33e39c) to head (7ef63bb).
⚠️ Report is 19 commits behind head on trunk.

Additional details and impacted files
@@            Coverage Diff             @@
##            trunk     #227      +/-   ##
==========================================
- Coverage   99.69%   99.67%   -0.02%     
==========================================
  Files         141      148       +7     
  Lines        7435     7765     +330     
  Branches     1723     1802      +79     
==========================================
+ Hits         7412     7740     +328     
- Misses         23       25       +2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@feliopterix Felix Frank (feliopterix) changed the title !feat: State plugin refactor feat!: State plugin refactor Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

service/shopping-experience Issues and PRs related to this service.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant