Skip to content

Refactor: Move multi-DLL search logic to Editor.Core #15

Open

Description

@brmassa

Move all "search in multiple DLLs" (engine assembly, user code assembly, etc) logic from the Studio UI (Gaya.Plugin.GameStudio) to Turian.Editor.Core so the Studio stays a UI shell with minimal non-UI code.

Currently, assembly scanning and type discovery across loaded DLLs is partially in Editor.Core (ComponentRegistry, NodeInspectorController) but some search-related logic remains in the Studio UI layer. Consolidating this in Core will make the Studio a thinner UI shell.

Tasks:

  • Audit Gaya.Plugin.GameStudio for any remaining multi-assembly search logic (e.g. AssetBrowserPanel, ValueEditorRegistry)
  • Move search services, providers, or query logic to Editor.Core under an appropriate namespace (e.g., Turian.Editor.Core.Search or extend existing Inspector/Build modules)
  • Define clean interfaces in Core that Studio can consume without knowing about assembly loading details
  • Ensure BuildManager.LoadedAssemblies and related assembly enumeration is fully abstracted in Core
  • Update Studio to only bind to Core search results without performing its own DLL scanning
  • Verify no UI dependencies leak into Core during the move

Acceptance Criteria:

  • Turian.Editor.Core contains all logic for searching across multiple loaded DLLs (engine, user code, etc).
  • Gaya.Plugin.GameStudio only handles UI binding and delegates all search queries to Core.
  • No Guinevere, Gaya or other UI-specific dependencies exist in Editor.Core.
  • Existing search functionality (component search, asset search, etc) continues to work unchanged.

Activity

  1. added
    c:editorEditor: Studio, Inspector, Scene Tree, Asset Browser
    p:mediumMedium priority — fix in next sprint
    size:M~3-5 days — moderate effort
    t:refactorCode restructuring without behavior change
    on Sep 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    c:editorEditor: Studio, Inspector, Scene Tree, Asset Browserp:mediumMedium priority — fix in next sprintsize:M~3-5 days — moderate effortt:refactorCode restructuring without behavior change

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions