Skip to content

Chore/monorepo quality gates - #309

Merged
aamoghS merged 7 commits into
mainfrom
chore/monorepo-quality-gates
Aug 5, 2026
Merged

Chore/monorepo quality gates#309
aamoghS merged 7 commits into
mainfrom
chore/monorepo-quality-gates

Conversation

@aamoghS

@aamoghS aamoghS commented Aug 5, 2026

Copy link
Copy Markdown
Member

Note

Low Risk
Documentation and ignore-file updates plus a minor Next.js patch bump; no application logic changes in the diff.

Overview
Monorepo hygiene: Adds .cache/ to .gitignore so Turbo/tsc task outputs (e.g. .cache/tsbuildinfo.json from turbo.json) stay untracked and builds no longer dirty the working tree after every run.

Docs: Removes the sites/discordBot row from the README workspace table.

Dependencies: Bumps root next from 16.2.11 to 16.3.0.

Reviewed by Cursor Bugbot for commit 3f34b93. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions github-actions Bot added dependencies Pull requests that update a dependency file chore labels Aug 5, 2026
@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
npm/next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@trpc/client 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/next 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/react-query 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/server 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/dotenv ^16.6.1 UnknownUnknown
npm/@next/eslint-plugin-next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/bundle-analyzer 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/env 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/eslint-plugin-next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-darwin-arm64 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-darwin-x64 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-arm64-gnu 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-arm64-musl 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-x64-gnu 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-linux-x64-musl 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-win32-arm64-msvc 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/swc-win32-x64-msvc 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@trpc/client 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/next 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/react-query 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/server 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/eslint-plugin-next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/bundle-analyzer 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/eslint-plugin-next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@trpc/client 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/next 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/react-query 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/@trpc/server 11.18.0 🟢 5.9
Details
CheckScoreReason
Maintained🟢 68 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 6
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Code-Review🟢 6Found 13/21 approved changesets -- score normalized to 6
Security-Policy🟢 10security policy file detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Branch-Protection🟢 5branch protection is not maximal on development and all release branches
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
SAST🟢 10SAST tool is run on all commits
npm/next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/eslint-plugin-next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/@next/eslint-plugin-next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
npm/next 16.3.0 🟢 6.1
Details
CheckScoreReason
Code-Review🟢 8Found 26/30 approved changesets -- score normalized to 8
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Maintained🟢 1030 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10
License🟢 10license file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration
Security-Policy🟢 10security policy file detected
Signed-Releases⚠️ -1no releases found
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Packaging🟢 10packaging workflow detected
Binary-Artifacts⚠️ 0binaries present in source code
Fuzzing🟢 10project is fuzzed
Pinned-Dependencies🟢 4dependency not pinned by hash detected -- score normalized to 4
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0

Scanned Files

  • package.json
  • packages/api/package.json
  • packages/db/package.json
  • packages/ui/package.json
  • pnpm-lock.yaml
  • sites/discordBot/package.json
  • sites/hacklytics2027/package.json
  • sites/mainweb/package.json
  • tooling/eslint/package.json
  • tooling/tailwind/package.json

@aamoghS

aamoghS commented Aug 5, 2026

Copy link
Copy Markdown
Member Author

@greptile-apps

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your trial has ended. Reactivate Greptile to resume code reviews.

@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Visit the preview URL for this PR (updated for commit 3f34b93):

https://hacklytics2027--pr-309-pt7agxm3.web.app

(expires Wed, 12 Aug 2026 03:33:00 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: c48ba34db61581e25fe2978355160b5eefe0e83f

Comment thread sites/mainweb/app/(portal)/api/webhooks/stripe/route.ts Fixed
@aamoghS

aamoghS commented Aug 5, 2026

Copy link
Copy Markdown
Member Author

@greptile-apps

@greptile-apps

greptile-apps Bot commented Aug 5, 2026

Copy link
Copy Markdown

Greptile Summary

This PR substantially updates monorepo API, membership, judging, payment, frontend, dependency, and workspace behavior beyond the hygiene changes described. The Stripe ownership fix closes the reported blank-name bypass, but its replacement matching rejects legitimate compound names when checkout and account emails differ.

  • Adds extensive API edge tests and restructures membership and portal-context services.
  • Revises Stripe payment linking, checkout, webhook, and cache invalidation behavior.
  • Removes the Discord bot and several frontend components/assets while adding a new judging page.
  • Updates Next.js, tRPC, workspace dependencies, and build-cache handling.

Confidence Score: 4/5

The PR is not yet safe to merge because legitimate payers with compound names can be prevented from linking their paid membership.

The new ownership check splits the stored payment name into individual tokens but compares each submitted name field as a whole token, so compound first or last names fail whenever the account-email fallback is unavailable.

Files Needing Attention: packages/api/src/routers/stripe.ts

Important Files Changed

Filename Overview
packages/api/src/routers/stripe.ts Reworks Stripe payment and membership flows; the ownership fix rejects legitimate compound-name payers using a different account email.
sites/mainweb/app/(portal)/api/webhooks/stripe/route.ts Expands Stripe webhook processing and membership synchronization without an accepted finding in this pass.
packages/db/src/services/membership.ts Introduces shared membership resolution and update behavior without an accepted finding in this pass.
packages/api/src/routers/judge/portal.ts Substantially revises judging portal behavior and related state handling without an eligible follow-up finding.
pnpm-lock.yaml Updates locked workspace dependencies to match manifest and workspace changes.

Reviews (2): Last reviewed commit: "yea" | Re-trigger Greptile

Comment thread packages/api/src/routers/stripe.ts Outdated
Comment thread sites/mainweb/app/(portal)/api/webhooks/stripe/route.ts Fixed
Comment thread packages/db/src/services/membership.ts
Comment thread packages/api/src/.internal-tests/routers.test.ts
});
} catch {
// Swallowed deliberately — see above. Nothing here may break sign-in.
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign-in link skips cache eviction

Medium Severity

The new signIn event grants membership via linkPaidPaymentByVerifiedEmail but never clears membership or portal caches. A cached “not a member” result can persist for minutes after a successful link on login.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit b0986e8. Configure here.

@aamoghS

aamoghS commented Aug 5, 2026

Copy link
Copy Markdown
Member Author

@greptile-apps

Comment thread packages/api/src/routers/stripe.ts Outdated
Comment on lines +503 to +515
const paymentTokens = new Set(
normalize(payment.customerName ?? "")
.split(" ")
.filter(Boolean),
);
const firstName = normalize(input.firstName);
const lastName = normalize(input.lastName);

const nameMatches =
firstName.length > 0 &&
lastName.length > 0 &&
paymentTokens.has(firstName) &&
paymentTokens.has(lastName);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Compound names fail ownership checks

When a legitimate payer uses a different account email and submits a compound name such as lastName: "Jane Watson" for the stored name Mary Jane Watson, the code splits the stored name into individual tokens but searches for jane watson as one token. This makes nameMatches false and prevents the payer from linking their paid membership.

@greptile-apps

greptile-apps Bot commented Aug 5, 2026

Copy link
Copy Markdown

Too many files changed for review. (237 files found, 100 file limit)

Bypass the limit by tagging @greptile-apps to review.

Comment thread packages/api/src/routers/member.ts Fixed
Comment thread packages/db/src/services/membership.ts
expect(end.getTime()).toBeGreaterThan(Date.now() + 360 * DAY);
expect(end.getTime()).toBeLessThan(Date.now() + 370 * DAY);
});
});

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New db tests skip CI

Low Severity

The PR adds packages/db/src/services/membership.test.ts for the updated renewal term logic, but root pnpm test still runs only vitest run packages/api, whose config includes tests under packages/api/src only. These cases never execute in the default quality gate.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit aa6a04c. Configure here.

@aamoghS
aamoghS merged commit 1737083 into main Aug 5, 2026
21 checks passed

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

There are 3 total unresolved issues (including 2 from previous reviews).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 3f34b93. Configure here.


// The sign-in hook in @query/auth grants memberships and cannot reach this
// cache; registering here is how those grants get their entries evicted.
setMembershipChangeHandler(clearMembershipCaches);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign-in cache eviction never runs

Medium Severity

The setMembershipChangeHandler(clearMembershipCaches) registration in portal-context.ts is not active during the OAuth sign-in flow. Since the sign-in process doesn't import portal-context.ts, notifyMembershipChanged calls don't trigger cache eviction. This leaves member status caches stale, incorrectly showing users as "not a member" after a membership grant until the cache expires.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 3f34b93. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants