fix: third-party login is broken#39523
fix: third-party login is broken#39523dionisio-bot[bot] wants to merge 1 commit intorelease-7.13.5from
Conversation
🦋 Changeset detectedLatest commit: a746ad9 The changes in this PR will be included in the next version bump. This PR includes changesets to release 41 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
There was a problem hiding this comment.
2 issues found across 10 files
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/meteor/app/api/server/helpers/parseJsonQuery.ts">
<violation number="1" location="apps/meteor/app/api/server/helpers/parseJsonQuery.ts:31">
P1: Defaulting `queryFields` to `[]` changes behavior and rejects queries on routes that do not define `queryFields`. Keep it `undefined` when absent so the existing validation gate remains correct.</violation>
<violation number="2" location="apps/meteor/app/api/server/helpers/parseJsonQuery.ts:32">
P1: Defaulting `queryOperations` to `[]` disables the intended fallback operator allowlist. Use `undefined` for missing route config so `pathAllowConf.def` is still applied.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
| const { userId = '', response, route, logger } = api; | ||
|
|
||
| const params = isPlainObject(api.queryParams) ? api.queryParams : {}; | ||
| const queryFields = Array.isArray(api.queryFields) ? (api.queryFields as string[]) : []; |
There was a problem hiding this comment.
P1: Defaulting queryFields to [] changes behavior and rejects queries on routes that do not define queryFields. Keep it undefined when absent so the existing validation gate remains correct.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/meteor/app/api/server/helpers/parseJsonQuery.ts, line 31:
<comment>Defaulting `queryFields` to `[]` changes behavior and rejects queries on routes that do not define `queryFields`. Keep it `undefined` when absent so the existing validation gate remains correct.</comment>
<file context>
@@ -24,10 +25,14 @@ export async function parseJsonQuery(api: PartialThis): Promise<{
+ const { userId = '', response, route, logger } = api;
+
+ const params = isPlainObject(api.queryParams) ? api.queryParams : {};
+ const queryFields = Array.isArray(api.queryFields) ? (api.queryFields as string[]) : [];
+ const queryOperations = Array.isArray(api.queryOperations) ? (api.queryOperations as string[]) : [];
</file context>
| const queryFields = Array.isArray(api.queryFields) ? (api.queryFields as string[]) : []; | |
| const queryFields = Array.isArray(api.queryFields) ? (api.queryFields as string[]) : undefined; |
|
|
||
| const params = isPlainObject(api.queryParams) ? api.queryParams : {}; | ||
| const queryFields = Array.isArray(api.queryFields) ? (api.queryFields as string[]) : []; | ||
| const queryOperations = Array.isArray(api.queryOperations) ? (api.queryOperations as string[]) : []; |
There was a problem hiding this comment.
P1: Defaulting queryOperations to [] disables the intended fallback operator allowlist. Use undefined for missing route config so pathAllowConf.def is still applied.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/meteor/app/api/server/helpers/parseJsonQuery.ts, line 32:
<comment>Defaulting `queryOperations` to `[]` disables the intended fallback operator allowlist. Use `undefined` for missing route config so `pathAllowConf.def` is still applied.</comment>
<file context>
@@ -24,10 +25,14 @@ export async function parseJsonQuery(api: PartialThis): Promise<{
+
+ const params = isPlainObject(api.queryParams) ? api.queryParams : {};
+ const queryFields = Array.isArray(api.queryFields) ? (api.queryFields as string[]) : [];
+ const queryOperations = Array.isArray(api.queryOperations) ? (api.queryOperations as string[]) : [];
let sort;
</file context>
| const queryOperations = Array.isArray(api.queryOperations) ? (api.queryOperations as string[]) : []; | |
| const queryOperations = Array.isArray(api.queryOperations) ? (api.queryOperations as string[]) : undefined; |
Backport of #37707