prodlint 0.9.3 → 0.9.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/action.yml +1 -1
- package/dist/cli.js +16 -1
- package/dist/index.js +16 -1
- package/dist/mcp.js +16 -1
- package/package.json +5 -3
package/README.md
CHANGED
package/action.yml
CHANGED
|
@@ -132,7 +132,7 @@ runs:
|
|
|
132
132
|
|
|
133
133
|
- name: Post PR comment
|
|
134
134
|
if: inputs.comment == 'true' && github.event_name == 'pull_request'
|
|
135
|
-
uses: marocchino/sticky-pull-request-comment@
|
|
135
|
+
uses: marocchino/sticky-pull-request-comment@v3
|
|
136
136
|
with:
|
|
137
137
|
header: prodlint
|
|
138
138
|
path: /tmp/prodlint-comment.md
|
package/dist/cli.js
CHANGED
|
@@ -723,10 +723,25 @@ var SECRET_PATTERNS = [
|
|
|
723
723
|
{ name: "Supabase service role key", pattern: /eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\.[A-Za-z0-9_-]{50,}\.[A-Za-z0-9_-]{20,}/ },
|
|
724
724
|
{ name: "OpenAI API key (legacy)", pattern: /sk-[a-zA-Z0-9]{20,}T3BlbkFJ[a-zA-Z0-9]{20,}/ },
|
|
725
725
|
{ name: "OpenAI API key", pattern: /sk-proj-[a-zA-Z0-9_\-]{20,}/ },
|
|
726
|
+
{ name: "Anthropic API key", pattern: /sk-ant-(?:api|admin)[0-9]{2}-[a-zA-Z0-9_\-]{20,}/ },
|
|
726
727
|
{ name: "GitHub token", pattern: /gh[ps]_[A-Za-z0-9_]{36,}/ },
|
|
727
728
|
{ name: "GitHub fine-grained token", pattern: /github_pat_[A-Za-z0-9_]{22,}/ },
|
|
728
729
|
{ name: "Generic API key assignment", pattern: /(?:api_key|apikey|api_secret|secret_key|private_key)\s*[=:]\s*['"][a-zA-Z0-9_\-]{20,}['"]/ },
|
|
729
|
-
{ name: "SendGrid API key", pattern: /SG\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9_-]{43}/ }
|
|
730
|
+
{ name: "SendGrid API key", pattern: /SG\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9_-]{43}/ },
|
|
731
|
+
// Cloud / platform keys
|
|
732
|
+
{ name: "Google API key", pattern: /AIza[0-9A-Za-z_\-]{35}/ },
|
|
733
|
+
{ name: "Google OAuth client secret", pattern: /GOCSPX-[a-zA-Z0-9_\-]{20,}/ },
|
|
734
|
+
{ name: "GitLab personal access token", pattern: /glpat-[A-Za-z0-9_\-]{20,}/ },
|
|
735
|
+
{ name: "npm access token", pattern: /npm_[A-Za-z0-9]{36}/ },
|
|
736
|
+
{ name: "Slack token", pattern: /xox[baprs]-[A-Za-z0-9-]{10,}/ },
|
|
737
|
+
{ name: "Slack webhook URL", pattern: /hooks\.slack\.com\/services\/[A-Za-z0-9_\-\/]{20,}/ },
|
|
738
|
+
{ name: "Supabase secret key", pattern: /sb_secret_[a-zA-Z0-9_\-]{20,}/ },
|
|
739
|
+
// AI provider keys
|
|
740
|
+
{ name: "Hugging Face token", pattern: /hf_[a-zA-Z0-9]{34,}/ },
|
|
741
|
+
{ name: "Groq API key", pattern: /gsk_[a-zA-Z0-9]{40,}/ },
|
|
742
|
+
// Structural / high-signal
|
|
743
|
+
{ name: "private key", pattern: /-----BEGIN (?:RSA |EC |DSA |OPENSSH |PGP )?PRIVATE KEY-----/ },
|
|
744
|
+
{ name: "database connection string with credentials", pattern: /(?:postgres(?:ql)?|mysql|mongodb(?:\+srv)?|redis|amqps?):\/\/[^\s:@/]+:[^\s@/]{3,}@/ }
|
|
730
745
|
];
|
|
731
746
|
var secretsRule = {
|
|
732
747
|
id: "secrets",
|
package/dist/index.js
CHANGED
|
@@ -717,10 +717,25 @@ var SECRET_PATTERNS = [
|
|
|
717
717
|
{ name: "Supabase service role key", pattern: /eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\.[A-Za-z0-9_-]{50,}\.[A-Za-z0-9_-]{20,}/ },
|
|
718
718
|
{ name: "OpenAI API key (legacy)", pattern: /sk-[a-zA-Z0-9]{20,}T3BlbkFJ[a-zA-Z0-9]{20,}/ },
|
|
719
719
|
{ name: "OpenAI API key", pattern: /sk-proj-[a-zA-Z0-9_\-]{20,}/ },
|
|
720
|
+
{ name: "Anthropic API key", pattern: /sk-ant-(?:api|admin)[0-9]{2}-[a-zA-Z0-9_\-]{20,}/ },
|
|
720
721
|
{ name: "GitHub token", pattern: /gh[ps]_[A-Za-z0-9_]{36,}/ },
|
|
721
722
|
{ name: "GitHub fine-grained token", pattern: /github_pat_[A-Za-z0-9_]{22,}/ },
|
|
722
723
|
{ name: "Generic API key assignment", pattern: /(?:api_key|apikey|api_secret|secret_key|private_key)\s*[=:]\s*['"][a-zA-Z0-9_\-]{20,}['"]/ },
|
|
723
|
-
{ name: "SendGrid API key", pattern: /SG\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9_-]{43}/ }
|
|
724
|
+
{ name: "SendGrid API key", pattern: /SG\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9_-]{43}/ },
|
|
725
|
+
// Cloud / platform keys
|
|
726
|
+
{ name: "Google API key", pattern: /AIza[0-9A-Za-z_\-]{35}/ },
|
|
727
|
+
{ name: "Google OAuth client secret", pattern: /GOCSPX-[a-zA-Z0-9_\-]{20,}/ },
|
|
728
|
+
{ name: "GitLab personal access token", pattern: /glpat-[A-Za-z0-9_\-]{20,}/ },
|
|
729
|
+
{ name: "npm access token", pattern: /npm_[A-Za-z0-9]{36}/ },
|
|
730
|
+
{ name: "Slack token", pattern: /xox[baprs]-[A-Za-z0-9-]{10,}/ },
|
|
731
|
+
{ name: "Slack webhook URL", pattern: /hooks\.slack\.com\/services\/[A-Za-z0-9_\-\/]{20,}/ },
|
|
732
|
+
{ name: "Supabase secret key", pattern: /sb_secret_[a-zA-Z0-9_\-]{20,}/ },
|
|
733
|
+
// AI provider keys
|
|
734
|
+
{ name: "Hugging Face token", pattern: /hf_[a-zA-Z0-9]{34,}/ },
|
|
735
|
+
{ name: "Groq API key", pattern: /gsk_[a-zA-Z0-9]{40,}/ },
|
|
736
|
+
// Structural / high-signal
|
|
737
|
+
{ name: "private key", pattern: /-----BEGIN (?:RSA |EC |DSA |OPENSSH |PGP )?PRIVATE KEY-----/ },
|
|
738
|
+
{ name: "database connection string with credentials", pattern: /(?:postgres(?:ql)?|mysql|mongodb(?:\+srv)?|redis|amqps?):\/\/[^\s:@/]+:[^\s@/]{3,}@/ }
|
|
724
739
|
];
|
|
725
740
|
var secretsRule = {
|
|
726
741
|
id: "secrets",
|
package/dist/mcp.js
CHANGED
|
@@ -726,10 +726,25 @@ var SECRET_PATTERNS = [
|
|
|
726
726
|
{ name: "Supabase service role key", pattern: /eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\.[A-Za-z0-9_-]{50,}\.[A-Za-z0-9_-]{20,}/ },
|
|
727
727
|
{ name: "OpenAI API key (legacy)", pattern: /sk-[a-zA-Z0-9]{20,}T3BlbkFJ[a-zA-Z0-9]{20,}/ },
|
|
728
728
|
{ name: "OpenAI API key", pattern: /sk-proj-[a-zA-Z0-9_\-]{20,}/ },
|
|
729
|
+
{ name: "Anthropic API key", pattern: /sk-ant-(?:api|admin)[0-9]{2}-[a-zA-Z0-9_\-]{20,}/ },
|
|
729
730
|
{ name: "GitHub token", pattern: /gh[ps]_[A-Za-z0-9_]{36,}/ },
|
|
730
731
|
{ name: "GitHub fine-grained token", pattern: /github_pat_[A-Za-z0-9_]{22,}/ },
|
|
731
732
|
{ name: "Generic API key assignment", pattern: /(?:api_key|apikey|api_secret|secret_key|private_key)\s*[=:]\s*['"][a-zA-Z0-9_\-]{20,}['"]/ },
|
|
732
|
-
{ name: "SendGrid API key", pattern: /SG\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9_-]{43}/ }
|
|
733
|
+
{ name: "SendGrid API key", pattern: /SG\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9_-]{43}/ },
|
|
734
|
+
// Cloud / platform keys
|
|
735
|
+
{ name: "Google API key", pattern: /AIza[0-9A-Za-z_\-]{35}/ },
|
|
736
|
+
{ name: "Google OAuth client secret", pattern: /GOCSPX-[a-zA-Z0-9_\-]{20,}/ },
|
|
737
|
+
{ name: "GitLab personal access token", pattern: /glpat-[A-Za-z0-9_\-]{20,}/ },
|
|
738
|
+
{ name: "npm access token", pattern: /npm_[A-Za-z0-9]{36}/ },
|
|
739
|
+
{ name: "Slack token", pattern: /xox[baprs]-[A-Za-z0-9-]{10,}/ },
|
|
740
|
+
{ name: "Slack webhook URL", pattern: /hooks\.slack\.com\/services\/[A-Za-z0-9_\-\/]{20,}/ },
|
|
741
|
+
{ name: "Supabase secret key", pattern: /sb_secret_[a-zA-Z0-9_\-]{20,}/ },
|
|
742
|
+
// AI provider keys
|
|
743
|
+
{ name: "Hugging Face token", pattern: /hf_[a-zA-Z0-9]{34,}/ },
|
|
744
|
+
{ name: "Groq API key", pattern: /gsk_[a-zA-Z0-9]{40,}/ },
|
|
745
|
+
// Structural / high-signal
|
|
746
|
+
{ name: "private key", pattern: /-----BEGIN (?:RSA |EC |DSA |OPENSSH |PGP )?PRIVATE KEY-----/ },
|
|
747
|
+
{ name: "database connection string with credentials", pattern: /(?:postgres(?:ql)?|mysql|mongodb(?:\+srv)?|redis|amqps?):\/\/[^\s:@/]+:[^\s@/]{3,}@/ }
|
|
733
748
|
];
|
|
734
749
|
var secretsRule = {
|
|
735
750
|
id: "secrets",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prodlint",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.5",
|
|
4
4
|
"description": "Production readiness for vibe-coded apps — know your AI code is ready to ship",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "prodlint contributors",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"url": "https://github.com/prodlint/prodlint/issues"
|
|
14
14
|
},
|
|
15
15
|
"homepage": "https://prodlint.com",
|
|
16
|
-
"mcpName": "io.github.
|
|
16
|
+
"mcpName": "io.github.prodlint/prodlint",
|
|
17
17
|
"bin": {
|
|
18
18
|
"prodlint": "./dist/cli.js",
|
|
19
19
|
"prodlint-mcp": "./dist/mcp.js"
|
|
@@ -52,12 +52,14 @@
|
|
|
52
52
|
"zod": "^4.4.3"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@rollup/rollup-win32-x64-msvc": "^4.62.2",
|
|
56
55
|
"@types/node": "^26.0.1",
|
|
57
56
|
"tsup": "^8.4.0",
|
|
58
57
|
"typescript": "^5.9.3",
|
|
59
58
|
"vitest": "^3.2.6"
|
|
60
59
|
},
|
|
60
|
+
"optionalDependencies": {
|
|
61
|
+
"@rollup/rollup-win32-x64-msvc": "^4.62.2"
|
|
62
|
+
},
|
|
61
63
|
"overrides": {
|
|
62
64
|
"esbuild": "^0.28.1"
|
|
63
65
|
},
|