From a596281daee180af16e1d5107e3d6093607abdcd Mon Sep 17 00:00:00 2001 From: rafapolo Date: Sat, 5 Sep 2026 18:04:29 +0200 Subject: [PATCH] fix: score tech lead as its own signal so it clears minScore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A bare "Technical Lead" or "Tech Lead" only ever matched the generic seniority bucket (2 pts, same as senior/staff), landing below the minScore of 4 — so an explicit target role silently never reached the digest. Give it 3 pts of its own, matching the other role-specific signals. --- profile.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/profile.ts b/profile.ts index 0a7e3ea..d240188 100644 --- a/profile.ts +++ b/profile.ts @@ -37,6 +37,12 @@ const SIGNALS: [RegExp, number, string][] = [ [/\bbackend\b|\bfull.?stack\b|\bapi\b|\bintegration\b/i, 2, "backend/API"], [/forward\s+deployed|\bfield\s+engineer|solutions?\s+engineer|customer\s+engineer/i, 4, "forward-deployed"], [/\bsoftware\s+engineer\b|\bdeveloper\b/i, 2, "software"], + // Tech Lead is an explicit target role (see CLAUDE.md), but a bare title like + // "Technical Lead" or "Tech Lead" alone only ever hit the generic seniority + // bucket below (2pts, same as "senior"/"staff") — below minScore(4), so it + // silently never reached the digest. Give it its own weight so it clears + // the bar on its own, same as the other role-specific signals above. + [/\btech(?:nical)?\s*lead\b/i, 3, "tech lead"], // seniority — he's Staff-level; junior titles are already dropped upstream [/\b(?:senior|staff|principal|lead|head\s+of|architect)\b/i, 2, "senior"], ];