Skip to content

Commit 2ff5e82

Browse files
committed
fix(safety): fix OpenAI pattern to not match Anthropic keys, enhance Python queries
- OpenAI pattern now requires sk-proj- or sk-svcacct- prefix for new keys, or exact sk-[48 chars] for legacy — no longer matches sk-ant- - Python tree-sitter query now captures decorated functions and classes
1 parent 6272040 commit 2ff5e82

2 files changed

Lines changed: 4 additions & 1 deletion

File tree

src/queries/python.scm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,5 @@
44

55
(function_definition name: (identifier) @name) @definition
66
(class_definition name: (identifier) @name) @definition
7+
(decorated_definition definition: (function_definition name: (identifier) @name)) @definition
8+
(decorated_definition definition: (class_definition name: (identifier) @name)) @definition

src/services/safety.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,8 @@ fn builtin_patterns() -> Vec<SecretPattern> {
8484
// ── AI/ML Provider Keys ──
8585
SecretPattern {
8686
name: Cow::Borrowed("OpenAI Key"),
87-
regex: Regex::new(r"sk-(?:proj-|svcacct-)?[a-zA-Z0-9\-_]{20,}").unwrap(),
87+
regex: Regex::new(r"sk-(?:proj-|svcacct-)[a-zA-Z0-9\-_]{20,}|sk-[a-zA-Z0-9]{48}")
88+
.unwrap(),
8889
description: Cow::Borrowed(
8990
"OpenAI API key (legacy, project-scoped, or service account)",
9091
),

0 commit comments

Comments
 (0)