Amin Ghadersohi
9d40fe913f
update: wip
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
748ae49c8c
update: wip
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
a9d543b6f4
update: unify FastMCP server, modularize tools, and document new DAO-based architecture
...
- Replace dual Flask/FastAPI setup with a single, unified FastMCP server (`server.py`)
- Introduce `MCPDAOWrapper` for secure, context-aware DAO access (`dao_wrapper.py`)
- Refactor all MCP tools to be modular and domain-organized (`tools/dashboard/`, `tools/chart/`, `tools/dataset/`, `tools/system/`)
- Strongly type all tool contracts with Pydantic v2 models, including full field documentation for LLM/OpenAPI compatibility
- Refactor and extend `BaseDAO` for robust, generic CRUD/list operations
- Add and update documentation:
- Architecture and flow diagrams (`README_ARCHITECTURE.md`)
- Tool schema reference and usage instructions (`README.md`, `README_SCHEMAS.md`)
- Phase 1 status and roadmap (`README_PHASE1_STATUS.md`)
- Implement and test all core list/info tools for dashboards, datasets, and charts, with full search and filter support
- Add chart creation tool (`create_chart_simple`)
- Provide extension points for Preset-specific auth, RBAC, and logging (stubbed in Phase 1)
- Prepare for LLM/agent workflows and future command-based mutations (create/update/delete)
- Expand and update unit/integration test coverage for all tools
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
55d6130fc4
update: docs and deps
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
b98e3eb309
Superset MCP Service - Adding get_instance_info tool
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
b469077e0e
update: add list function to BaseDAO and use it to get and filter the dashboards
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
397b4e450b
Superset MCP Service - Initial Commit DRAFT
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
0f97002520
update: Refactor BaseDAO: enhance column operator logic and expand test coverage
...
- Improved the BaseDAO class to robustly handle column operator logic, ensuring all supported operators (eq, ne, sw, ew, in, nin, gt, gte, lt, lte, like, ilike, is_null, is_not_null) are consistently applied via ColumnOperatorEnum.
- Refactored the apply_column_operators and list methods for clarity and reliability, including better handling of columns, relationships, and search.
- Removed 1 index base page handing from list
2025-07-30 14:20:37 -04:00
Amin Ghadersohi
2312250127
update: add idea of ColumnOperator
2025-07-30 14:20:36 -04:00
Amin Ghadersohi
cd52193869
update: add helper for applying base filter
2025-07-30 14:20:36 -04:00
Amin Ghadersohi
9ffe680aaa
feat(dao): add robust generic list and count methods to BaseDAO with full test coverage
...
- Introduced generic `list` and `count` methods to BaseDAO for consistent querying and counting across all DAOs.
- Both methods support filtering (including IN queries), ordering, pagination, search across columns, custom FAB-style filters, and always-on base filters.
- Added comprehensive unit tests for `list` and `count` in `tests/unit_tests/dao/base_test.py`, covering:
- Filtering (including boolean, None, and IN queries)
- Ordering (asc/desc, multiple columns)
- Pagination (including out-of-range)
- Search across columns
- Custom filter logic
- Always-on base filter logic
- Edge cases and skip_base_filter
- Moved common test fixtures to `conftest.py` for reuse.
2025-07-30 14:20:36 -04:00
dependabot[bot]
5c2eb0a68c
build(deps): bump reselect from 4.1.7 to 5.1.1 in /superset-frontend ( #30119 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: hainenber <dotronghai96@gmail.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: hainenber <dotronghai96@gmail.com >
2025-07-30 08:54:58 -07:00
dependabot[bot]
0cbf4d5d4d
chore(deps): bump d3-scale from 3.3.0 to 4.0.2 in /superset-frontend/packages/superset-ui-core ( #31534 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: hainenber <dotronghai96@gmail.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: hainenber <dotronghai96@gmail.com >
Co-authored-by: Đỗ Trọng Hải <41283691+hainenber@users.noreply.github.com >
2025-07-30 08:52:30 -07:00
Hari Kiran
6006a21378
docs(development): fix comment in the dockerfile ( #34391 )
2025-07-29 21:53:46 -07:00
Maxime Beauchemin
bf967d6ba4
fix(charts): Fix unquoted 'Others' literal in series limit GROUP BY clause ( #34390 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-07-29 17:36:10 -07:00
Hari Kiran
131ae5aa9d
docs(development): fix typo in the dockerfile ( #34387 )
2025-07-29 14:24:18 -07:00
Cesc Bausà
eca28582b6
feat(i18n): update Spanish translations (messages.po) ( #34206 )
2025-07-29 13:49:40 -07:00
Maxime Beauchemin
14e90a0f52
feat: Add GitHub Codespaces support with docker-compose-light ( #34376 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-07-29 13:10:17 -07:00
Maxime Beauchemin
a1c39d4906
feat(charts): Enable async buildQuery support for complex chart logic ( #34383 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-07-29 13:08:55 -07:00
Maxime Beauchemin
0964a8bb7a
fix(big number with trendline): running 2 identical queries for no good reason ( #34296 )
2025-07-29 13:07:28 -07:00
Beto Dealmeida
8de8f95a3c
feat: allow creating dataset without exploring ( #34380 )
2025-07-29 15:43:47 -04:00
Maxime Beauchemin
16db999067
fix: rate limiting issues with example data hosted on github.com ( #34381 )
2025-07-29 11:19:29 -07:00
Beto Dealmeida
972be15dda
feat: focus on text input when modal opens ( #34379 )
2025-07-29 14:01:10 -04:00
Maxime Beauchemin
c9e06714f8
fix: prevent theme initialization errors during fresh installs ( #34339 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-07-29 09:32:53 -07:00
Beto Dealmeida
32626ab707
fix: use catalog name on generated queries ( #34360 )
2025-07-29 12:30:46 -04:00
dependabot[bot]
a9cd58508b
chore(deps): bump cookie and @types/cookie in /superset-websocket ( #34335 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: hainenber <dotronghai96@gmail.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: hainenber <dotronghai96@gmail.com >
2025-07-29 20:19:31 +07:00
Beto Dealmeida
122bb68e5a
fix: subquery alias in RLS ( #34374 )
2025-07-28 22:58:15 -04:00
Beto Dealmeida
914ce9aa4f
feat: read column metadata ( #34359 )
2025-07-28 22:57:57 -04:00
Gabriel Torres Ruiz
bb572983cd
feat(theming): Align embedded sdk with theme configs ( #34273 )
2025-07-28 19:26:17 -07:00
Đỗ Trọng Hải
ff76ab647f
build(deps): update ag-grid to non-breaking major v34 ( #34326 )
2025-07-29 07:46:55 +07:00
Mehmet Salih Yavuz
f554848c9f
fix(PivotTable): Render html in cells if allowRenderHtml is true ( #34351 )
2025-07-29 01:12:37 +03:00
Hari Kiran
dc0c389488
docs(development): fix 2 typos in the dockerfile ( #34341 )
2025-07-28 15:06:21 -07:00
Beto Dealmeida
22b3cc0480
chore: bump BigQuery dialect to 1.15.0 ( #34371 )
2025-07-28 16:39:18 -04:00
Maxime Beauchemin
604d72cc98
feat: introducing a docker-compose-light.yml for lighter development ( #34324 )
2025-07-28 09:27:07 -07:00
Enzo Martellucci
913e068113
style(FastVizSwitcher): Adjust padding for FastVizSwitcher selector ( #34317 )
2025-07-28 14:39:10 +03:00
Geido
1a4e2173f5
fix(NavBar): Add brand text back ( #34318 )
2025-07-28 12:19:14 +03:00
Ian McEwen
c49789167b
style(chart): restyle table pagination ( #34311 )
2025-07-27 19:39:10 -07:00
Maxime Beauchemin
1be2287b3a
feat(timeseries): enhance 'Series Limit' to support grouping the long tail ( #34308 )
2025-07-25 16:26:32 -07:00
Maxime Beauchemin
e741a3167f
feat: add a theme CRUD page to manage themes ( #34182 )
...
Co-authored-by: Mehmet Salih Yavuz <salih.yavuz@proton.me >
2025-07-25 13:26:41 -07:00
Michael S. Molina
5f11f9097a
fix: Charts list is displaying empty dataset names when there's no schema ( #34315 )
2025-07-25 14:07:50 -03:00
Jan Suleiman
8783579aa8
fix(cartodiagram): add missing locales for rendering echarts ( #34268 )
2025-07-25 09:59:28 -07:00
Evan Rusackas
c25b4221f8
fix(npm): more reliable execution of npm run update-maps ( #34305 )
2025-07-25 13:48:05 -03:00
Pius Iniobong
9c771fb2ba
fix: preserve correct column order when table layout is changed with time comparison enabled ( #34300 )
2025-07-25 15:31:33 +03:00
sha174n
7f44992c4b
fix: enhance disallowed SQL functions list for improved security ( #33084 )
2025-07-24 16:36:32 -07:00
Beto Dealmeida
8df5860826
chore: bump sqlglot to latest version (27.3.0) ( #34302 )
2025-07-24 15:38:29 -07:00
Beto Dealmeida
b794b192d1
fix: return 422 on invalid SQL ( #34303 )
2025-07-24 16:40:56 -04:00
Maxime Beauchemin
3177131d52
feat: re-order CRUD list view action buttons ( #34294 )
2025-07-24 12:46:34 -07:00
Enzo Martellucci
89bf77b5c9
fix(theming): Fix visual regressions from theming P7 ( #34237 )
2025-07-24 19:57:50 +02:00
Maxime Beauchemin
30e5684006
fix: address numerous long-standing console errors (python & web) ( #34299 )
2025-07-24 09:50:26 -07:00
Maxime Beauchemin
3f8472ca7b
chore: move some rules from ruff -> pylint ( #34292 )
2025-07-24 09:40:49 -07:00