Repository navigation
refactor(arch): core/ and shared/ no longer import features/ (#1239) - #1258
Merged
Merged
Conversation
…lQueryRunner SqlQueryRunner (core/database) is the read side of a SQL session: execute, explain, dispose; SqlExecutionResult moves with it. The workspace's SqlExecutionDelegate implements it and re-exports the file, so its users are unchanged. ErdCatalog, ErdSchema and ErdTableNames move to core/erd: the catalog only runs queries, and MCP needs it without depending on the SQL workspace.
core/ no longer imports the dialogs and SQL drivers it calls: - the palette's built-in commands move to app/querya_core_commands.dart; QueryaCommandRegistry.coreCommands builds them - ExtensionCommandSync.connectionPicker shows the ambiguous-target picker - McpServerController.delegateFactory opens MCP's read-only sessions; createReadOnlyMcpDelegate moves to app/mcp_sql_delegates.dart installAppWiring() (app/app_wiring.dart) sets them in main(), QueryaApp and test/flutter_test_config.dart.
It builds connection tree rows, a connections widget, and the panel is its only user; the SDUI schema stays in core.
… app/ docs/architecture.md describes the hooks app/app_wiring.dart installs.
2 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
lib/core/importedlib/features/in four places. Nowgit grep "package:querya_desktop/features/" lib/core lib/sharedis empty, and a guard test keeps it that way.SqlQueryRunner(core/database/sql_query_runner.dart: execute, explain, dispose).SqlExecutionResultmoves with it.SqlExecutionDelegateimplements the interface and re-exports the file, so its users are unchanged.ErdCatalog,ErdSchemaandErdTableNamesmove tocore/erd/, since the catalog only runs queries.installAppWiring()(app/app_wiring.dart) sets three hooks inmain(),QueryaAppandtest/flutter_test_config.dart:QueryaCommandRegistry.coreCommandsbuilds the palette's built-in commands, which moved toapp/querya_core_commands.dart.ExtensionCommandSync.connectionPickershows the ambiguous-target picker.McpServerController.delegateFactoryopens MCP's read-only sessions;createReadOnlyMcpDelegatemoved toapp/mcp_sql_delegates.dart.features/connections/, where its only user, the connections panel, lives. The SDUI schema stays in core.test/guards/core_does_not_import_features_test.dartfails if anything incore/orshared/importsfeatures/orapp/.docs/architecture.mdlists the hooks.No behaviour change is intended. Without
installAppWiring(), the registry has no built-in commands, the extension picker returns null and MCP refuses calls with "MCP SQL sessions are not installed".Closes #1239
Test plan