-
Notifications
You must be signed in to change notification settings - Fork 114
feat(cloud): projects #2882
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 09-18-fix_circumvent_fern_bug_with_utoipa_config
Are you sure you want to change the base?
feat(cloud): projects #2882
Conversation
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
How to use the Graphite Merge QueueAdd the label merge-queue to this PR to add it to the merge queue. You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
Claude encountered an error —— View job I'll analyze this and get back to you. |
The latest updates on your projects. Learn more about Vercel for GitHub.
|
isLoading, | ||
isError, | ||
refetch, | ||
} = useInfiniteQuery(projectsQueryOptions()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The projectsQueryOptions()
function requires an orgId
parameter but is being called without arguments. This will cause a runtime error when the component renders. The correct usage should be:
projectsQueryOptions({ orgId: organization })
This ensures the query has the necessary organization context to fetch the correct projects.
} = useInfiniteQuery(projectsQueryOptions()); | |
} = useInfiniteQuery(projectsQueryOptions({ orgId: organization })); |
Spotted by Diamond
Is this helpful? React 👍 or 👎 to let us know.
export const NamespaceNameId = z.string().brand(); | ||
export type NamespaceNameId = z.infer<typeof NamespaceNameId>; | ||
|
||
export const projectsQueryOptions = ({ orgId }: { orgId: string }) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The projectsQueryOptions
function is defined with a required orgId
parameter, but it's called without this parameter in the project detail page. This will cause TypeScript errors and potential runtime issues. Consider either:
-
Making the parameter optional with a default value:
export const projectsQueryOptions = ({ orgId }: { orgId?: string } = {}) => {
-
Or ensuring all calls to this function provide the required parameter:
useInfiniteQuery(projectsQueryOptions({ orgId: organization }))
This will ensure type safety and prevent potential runtime errors when fetching project data.
export const projectsQueryOptions = ({ orgId }: { orgId: string }) => { | |
export const projectsQueryOptions = ({ orgId }: { orgId?: string } = {}) => { |
Spotted by Diamond
Is this helpful? React 👍 or 👎 to let us know.
await queryClient.invalidateQueries({ | ||
...projectsQueryOptions(), | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The projectsQueryOptions()
function requires an orgId
parameter but is being called without arguments. This will cause a runtime error since the function signature expects { orgId: string }
. Consider passing the organization ID from the route params or context:
await queryClient.invalidateQueries({
...projectsQueryOptions({ orgId: values.organizationId }),
});
await queryClient.invalidateQueries({ | |
...projectsQueryOptions(), | |
}); | |
await queryClient.invalidateQueries({ | |
...projectsQueryOptions({ orgId: values.organizationId }), | |
}); |
Spotted by Diamond
Is this helpful? React 👍 or 👎 to let us know.
console.log(await clerk.session?.getToken()); | ||
return (await clerk.session?.getToken()) || ""; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Security Concern: The console.log
statement on line 21 of manager-cloud.ts
is exposing authentication tokens in the browser console. This presents a security risk as sensitive authentication data could be exposed to anyone with access to the developer tools.
console.log(await clerk.session?.getToken());
Recommendation: Remove this console.log
statement entirely or replace it with appropriate debug logging that doesn't expose the actual token value. Authentication tokens should never be logged in production code.
console.log(await clerk.session?.getToken()); | |
return (await clerk.session?.getToken()) || ""; | |
return (await clerk.session?.getToken()) || ""; |
Spotted by Diamond
Is this helpful? React 👍 or 👎 to let us know.
import { zodValidator } from "@tanstack/zod-adapter"; | ||
import { C } from "node_modules/@clerk/clerk-react/dist/useAuth-BVxIa9U7.mjs"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This import appears to be referencing an internal module path with a hash suffix (node_modules/@clerk/clerk-react/dist/useAuth-BVxIa9U7.mjs
), which is likely an implementation detail of the build system. Such imports are unstable across package versions and could break during dependency updates.
Consider importing from the public API surface instead:
import { useAuth } from "@clerk/clerk-react";
If this import is needed for a specific reason, it would be better to document why and consider creating a wrapper that could be updated if the internal path changes.
import { C } from "node_modules/@clerk/clerk-react/dist/useAuth-BVxIa9U7.mjs"; | |
import { useAuth } from "@clerk/clerk-react"; |
Spotted by Diamond
Is this helpful? React 👍 or 👎 to let us know.
Graphite Automations"Test" took an action on this PR • (09/08/25)1 assignee was added to this PR based on Kacper Wojciechowski's automation. |
fe6d7a9
to
746212f
Compare
f5f0bfd
to
ed2b820
Compare
Claude encountered an error —— View job I'll analyze this and get back to you. |
Claude encountered an error —— View job I'll analyze this and get back to you. |
commit: |
commit: |
ed2b820
to
602d1f3
Compare
746212f
to
423f29e
Compare
Claude encountered an error —— View job I'll analyze this and get back to you. |
Claude encountered an error —— View job I'll analyze this and get back to you. |
602d1f3
to
251b5a8
Compare
44b0828
to
cd5411f
Compare
Claude encountered an error —— View job I'll analyze this and get back to you. |
Claude encountered an error —— View job I'll analyze this and get back to you. |
2a5dc9d
to
f4a6c03
Compare
cd5411f
to
1a053df
Compare
Claude encountered an error —— View job I'll analyze this and get back to you. |
Claude encountered an error —— View job I'll analyze this and get back to you. |
f4a6c03
to
ad8a434
Compare
No description provided.