4 Commits
Author SHA1 Message Date
ulleo 337c75549b fix(chat): constrain SQL row-limit placement to outermost query in prompt templates (#1202)
The row-limit policy in query_limit/no_query_limit did not specify WHERE
the limit should be applied, so LLMs could put LIMIT/ROWNUM/TOP inside
subqueries, truncating the data feeding aggregation (limiting accessed
rows instead of the final result set).

- query_limit/no_query_limit: limit must be applied only to the outermost
  query; never inside subqueries, derived tables or CTEs; add conditional
  per-group top-N note (window functions where supported)
- process_check (template.yaml + Oracle override): step 4 now verifies
  limit placement
- sql_examples: add nested-aggregation bad/good examples for all 11
  engines showing the limit on the outer query only
- Oracle: fix invalid GROUP BY...WHERE ROWNUM example and wrong
  ROWNUM-before-ORDER BY few-shot answers (wrap with outer query)
2026-09-21 14:50:55 +08:00
ulleo a76f8e7f9b fix: correct database query examples in templates 2026-06-17 16:37:24 +08:00
yym 1cf4f249ed feat/fix(charts): Normalize qualified SQL column names for display
- Add DataFormat.normalize_qualified_sql_column_keys* so driver keys like
  "_u2.table_name" also expose "table_name", matching chart columns[].value.
- Apply after SQL execution (LLM save path), format_json_list_data (API/history),
  and get_chart_data_ds (live refresh).

Hive prompts: Document explicit table aliases for duplicate column names in JOINs.

Frontend: Add datasource form i18n key "file_path" (en/zh-CN/zh-TW/ko-KR).
Update Hive/SQLite datasource icons. Remove hive from haveSchema list.
2026-05-08 11:53:08 +08:00
yym eb587fce7b fix(Hive): normalize identifier quoting and stabilize metadata/query paths
Use Hive-compatible identifier handling and template defaults so generated SQL returns real column values, while also fixing table schema parsing and adding required Hive runtime dependencies.

Made-with: Cursor
2026-05-08 11:53:08 +08:00