codeant-ai-for-open-source[bot] commented on code in PR #38308:
URL: https://github.com/apache/superset/pull/38308#discussion_r3487336895
##########
superset-embedded-sdk/src/index.ts:
##########
@@ -113,12 +113,12 @@ export type EmbeddedDashboard = {
unmount: () => void;
getDashboardPermalink: (anchor: string) => Promise<string>;
getActiveTabs: () => Promise<string[]>;
- observeDataMask: (
- callbackFn: ObserveDataMaskCallbackFn,
- ) => void;
+ observeDataMask: (callbackFn: ObserveDataMaskCallbackFn) => void;
getDataMask: () => Promise<Record<string, any>>;
getChartStates: () => Promise<Record<string, any>>;
- getChartDataPayloads: (params?: { chartId?: number }) =>
Promise<Record<string, any>>;
+ getChartDataPayloads: (params?: {
+ chartId?: number;
+ }) => Promise<Record<string, any>>;
Review Comment:
**Suggestion:** Replace this `Record<string, any>` return type with a
concrete payload type (or a reusable existing interface) so the API contract is
strongly typed. [custom_rule]
**Severity Level:** Minor ⚠️
<details>
<summary><b>Why it matters? 🤔 </b></summary>
The modified TypeScript code uses `Record<string, any>` in a public API
return type, which matches the rule against using `any` in new or modified
TS/TSX code. A concrete or reusable type should be used instead.
</details>
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=2d3b03e1e1c14389ad2e2f77b954dad4&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=2d3b03e1e1c14389ad2e2f77b954dad4&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
*(Use Cmd/Ctrl + Click for best experience)*
<details>
<summary><b>Prompt for AI Agent 🤖 </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset-embedded-sdk/src/index.ts
**Line:** 119:121
**Comment:**
*Custom Rule: Replace this `Record<string, any>` return type with a
concrete payload type (or a reusable existing interface) so the API contract is
strongly typed.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=e3354f18c1f1d758447fc03de0f66e4e9aa8aacb780f516a80dc9c9610d25800&reaction=like'>👍</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=e3354f18c1f1d758447fc03de0f66e4e9aa8aacb780f516a80dc9c9610d25800&reaction=dislike'>👎</a>
##########
superset-embedded-sdk/src/const.ts:
##########
@@ -18,7 +18,9 @@
*/
export const IFRAME_COMMS_MESSAGE_TYPE = "__embedded_comms__";
-export const DASHBOARD_UI_FILTER_CONFIG_URL_PARAM_KEY: { [index: string]: any
} = {
+export const DASHBOARD_UI_FILTER_CONFIG_URL_PARAM_KEY: {
+ [index: string]: any;
+} = {
Review Comment:
**Suggestion:** Replace the `any` index signature value with a concrete
string-based type (or a narrower reusable type) to keep this constant fully
typed. [custom_rule]
**Severity Level:** Minor ⚠️
<details>
<summary><b>Why it matters? 🤔 </b></summary>
The newly added TypeScript declaration uses `any` in an index signature,
which directly violates the rule requiring a concrete or narrower type instead
of `any` in new or modified TS/TSX code.
</details>
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=61ca4187d96f47ada286f557ee980a2e&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=61ca4187d96f47ada286f557ee980a2e&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
*(Use Cmd/Ctrl + Click for best experience)*
<details>
<summary><b>Prompt for AI Agent 🤖 </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset-embedded-sdk/src/const.ts
**Line:** 21:23
**Comment:**
*Custom Rule: Replace the `any` index signature value with a concrete
string-based type (or a narrower reusable type) to keep this constant fully
typed.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=a3c7e3e711f19bbfbc494f404ae92255d2699efe9cfb70a00f83090bfc815a54&reaction=like'>👍</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=a3c7e3e711f19bbfbc494f404ae92255d2699efe9cfb70a00f83090bfc815a54&reaction=dislike'>👎</a>
##########
superset-embedded-sdk/src/index.ts:
##########
@@ -350,24 +350,25 @@ export async function embedDashboard({
mountPoint.replaceChildren();
}
- const getScrollSize = () => ourPort.get<Size>('getScrollSize');
+ const getScrollSize = () => ourPort.get<Size>("getScrollSize");
const getDashboardPermalink = (anchor: string) =>
- ourPort.get<string>('getDashboardPermalink', { anchor });
- const getActiveTabs = () => ourPort.get<string[]>('getActiveTabs');
- const getDataMask = () => ourPort.get<Record<string, any>>('getDataMask');
- const getChartStates = () => ourPort.get<Record<string,
any>>('getChartStates');
+ ourPort.get<string>("getDashboardPermalink", { anchor });
+ const getActiveTabs = () => ourPort.get<string[]>("getActiveTabs");
+ const getDataMask = () => ourPort.get<Record<string, any>>("getDataMask");
+ const getChartStates = () =>
+ ourPort.get<Record<string, any>>("getChartStates");
Review Comment:
**Suggestion:** Replace `Record<string, any>` with a typed chart-state model
(or a narrower generic) so consumers get compile-time guarantees. [custom_rule]
**Severity Level:** Minor ⚠️
<details>
<summary><b>Why it matters? 🤔 </b></summary>
This new TypeScript API uses `Record<string, any>`, which falls under the
custom rule prohibiting `any` in modified TS code. The concern is real and
verifiable.
</details>
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=87cb5ae1b6f2434590b70b8f047edf90&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=87cb5ae1b6f2434590b70b8f047edf90&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
*(Use Cmd/Ctrl + Click for best experience)*
<details>
<summary><b>Prompt for AI Agent 🤖 </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset-embedded-sdk/src/index.ts
**Line:** 358:359
**Comment:**
*Custom Rule: Replace `Record<string, any>` with a typed chart-state
model (or a narrower generic) so consumers get compile-time guarantees.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=0619943461ff1be3a55492b006435890739fb66fafa5e45f98831e2a8da21699&reaction=like'>👍</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=0619943461ff1be3a55492b006435890739fb66fafa5e45f98831e2a8da21699&reaction=dislike'>👎</a>
##########
superset-embedded-sdk/src/index.ts:
##########
@@ -350,24 +350,25 @@ export async function embedDashboard({
mountPoint.replaceChildren();
}
- const getScrollSize = () => ourPort.get<Size>('getScrollSize');
+ const getScrollSize = () => ourPort.get<Size>("getScrollSize");
const getDashboardPermalink = (anchor: string) =>
- ourPort.get<string>('getDashboardPermalink', { anchor });
- const getActiveTabs = () => ourPort.get<string[]>('getActiveTabs');
- const getDataMask = () => ourPort.get<Record<string, any>>('getDataMask');
- const getChartStates = () => ourPort.get<Record<string,
any>>('getChartStates');
+ ourPort.get<string>("getDashboardPermalink", { anchor });
+ const getActiveTabs = () => ourPort.get<string[]>("getActiveTabs");
+ const getDataMask = () => ourPort.get<Record<string, any>>("getDataMask");
+ const getChartStates = () =>
+ ourPort.get<Record<string, any>>("getChartStates");
const getChartDataPayloads = (params?: { chartId?: number }) =>
- ourPort.get<Record<string, any>>('getChartDataPayloads', params);
- const observeDataMask = (
- callbackFn: ObserveDataMaskCallbackFn,
- ) => {
- ourPort.defineMethod('observeDataMask', callbackFn);
+ ourPort.get<Record<string, any>>("getChartDataPayloads", params);
+ const observeDataMask = (callbackFn: ObserveDataMaskCallbackFn) => {
+ ourPort.defineMethod("observeDataMask", callbackFn);
};
// TODO: Add proper types once theming branch is merged
- const setThemeConfig = async (themeConfig: Record<string, any>):
Promise<void> => {
+ const setThemeConfig = async (
+ themeConfig: Record<string, any>,
Review Comment:
**Suggestion:** Change the `themeConfig` parameter type from `Record<string,
any>` to a defined theme config interface (or a narrower generic) to preserve
type safety. [custom_rule]
**Severity Level:** Minor ⚠️
<details>
<summary><b>Why it matters? 🤔 </b></summary>
The modified TypeScript code uses `any` in the `themeConfig` parameter type,
which is exactly what the rule forbids in new or modified TS/TSX code.
</details>
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=9938e80294d4445282644d7e88d03d77&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=9938e80294d4445282644d7e88d03d77&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
*(Use Cmd/Ctrl + Click for best experience)*
<details>
<summary><b>Prompt for AI Agent 🤖 </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset-embedded-sdk/src/index.ts
**Line:** 366:367
**Comment:**
*Custom Rule: Change the `themeConfig` parameter type from
`Record<string, any>` to a defined theme config interface (or a narrower
generic) to preserve type safety.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=1df4c23113913c389499c2fea6ee00ba32df919390026ac465b4dd3d0438919a&reaction=like'>👍</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=1df4c23113913c389499c2fea6ee00ba32df919390026ac465b4dd3d0438919a&reaction=dislike'>👎</a>
##########
superset-embedded-sdk/src/index.ts:
##########
@@ -350,24 +350,25 @@ export async function embedDashboard({
mountPoint.replaceChildren();
}
- const getScrollSize = () => ourPort.get<Size>('getScrollSize');
+ const getScrollSize = () => ourPort.get<Size>("getScrollSize");
const getDashboardPermalink = (anchor: string) =>
- ourPort.get<string>('getDashboardPermalink', { anchor });
- const getActiveTabs = () => ourPort.get<string[]>('getActiveTabs');
- const getDataMask = () => ourPort.get<Record<string, any>>('getDataMask');
- const getChartStates = () => ourPort.get<Record<string,
any>>('getChartStates');
+ ourPort.get<string>("getDashboardPermalink", { anchor });
+ const getActiveTabs = () => ourPort.get<string[]>("getActiveTabs");
+ const getDataMask = () => ourPort.get<Record<string, any>>("getDataMask");
Review Comment:
**Suggestion:** Change this `any`-based map to a concrete data-mask type (or
at least a narrower generic such as `unknown`) to avoid disabling type safety.
[custom_rule]
**Severity Level:** Minor ⚠️
<details>
<summary><b>Why it matters? 🤔 </b></summary>
This is a direct use of `any` in new TypeScript code. The rule requires
replacing `any` with a concrete or narrower type, so the suggestion correctly
identifies a real violation.
</details>
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=1539144f8dc840b29a94fc6e36343a17&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=1539144f8dc840b29a94fc6e36343a17&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
*(Use Cmd/Ctrl + Click for best experience)*
<details>
<summary><b>Prompt for AI Agent 🤖 </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset-embedded-sdk/src/index.ts
**Line:** 357:357
**Comment:**
*Custom Rule: Change this `any`-based map to a concrete data-mask type
(or at least a narrower generic such as `unknown`) to avoid disabling type
safety.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=9cd919ebe8ee8b5e76bd80db68a17bdd32dbb25126f353d5ae2d0ab925a71545&reaction=like'>👍</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=9cd919ebe8ee8b5e76bd80db68a17bdd32dbb25126f353d5ae2d0ab925a71545&reaction=dislike'>👎</a>
##########
superset-embedded-sdk/src/index.ts:
##########
@@ -350,24 +350,25 @@ export async function embedDashboard({
mountPoint.replaceChildren();
}
- const getScrollSize = () => ourPort.get<Size>('getScrollSize');
+ const getScrollSize = () => ourPort.get<Size>("getScrollSize");
const getDashboardPermalink = (anchor: string) =>
- ourPort.get<string>('getDashboardPermalink', { anchor });
- const getActiveTabs = () => ourPort.get<string[]>('getActiveTabs');
- const getDataMask = () => ourPort.get<Record<string, any>>('getDataMask');
- const getChartStates = () => ourPort.get<Record<string,
any>>('getChartStates');
+ ourPort.get<string>("getDashboardPermalink", { anchor });
+ const getActiveTabs = () => ourPort.get<string[]>("getActiveTabs");
+ const getDataMask = () => ourPort.get<Record<string, any>>("getDataMask");
+ const getChartStates = () =>
+ ourPort.get<Record<string, any>>("getChartStates");
const getChartDataPayloads = (params?: { chartId?: number }) =>
- ourPort.get<Record<string, any>>('getChartDataPayloads', params);
- const observeDataMask = (
- callbackFn: ObserveDataMaskCallbackFn,
- ) => {
- ourPort.defineMethod('observeDataMask', callbackFn);
+ ourPort.get<Record<string, any>>("getChartDataPayloads", params);
Review Comment:
**Suggestion:** Update this generic argument to a concrete chart data
payload type (or a narrower generic) rather than `any`. [custom_rule]
**Severity Level:** Minor ⚠️
<details>
<summary><b>Why it matters? 🤔 </b></summary>
This line uses `any` in a newly added TypeScript generic argument, so it
violates the rule and should be replaced with a concrete or reusable type.
</details>
[](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=d6de2a63833a4cd2a46598f3d6b612ce&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
[](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=d6de2a63833a4cd2a46598f3d6b612ce&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
*(Use Cmd/Ctrl + Click for best experience)*
<details>
<summary><b>Prompt for AI Agent 🤖 </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset-embedded-sdk/src/index.ts
**Line:** 361:361
**Comment:**
*Custom Rule: Update this generic argument to a concrete chart data
payload type (or a narrower generic) rather than `any`.
Validate the correctness of the flagged issue. If correct, How can I resolve
this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask
user if the user wants to fix the rest of the comments as well. if said yes,
then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=082f6e4cdc195f88414b2f47abfae1e2bc83c4edb6756aa859fdcfcad5bbd0c6&reaction=like'>👍</a>
| <a
href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F38308&comment_hash=082f6e4cdc195f88414b2f47abfae1e2bc83c4edb6756aa859fdcfcad5bbd0c6&reaction=dislike'>👎</a>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]