SecurityBoat

TriNetra Platform · Offensive Testing

Works like a dev. Thinks like a hacker.

Code Security runs Semgrep and CodeQL rulesets, plus SCA, across every commit — then does what neither tool does alone: reasons about your actual data flow to decide what's noise and what's a real path from input to sink. This week's account: 1,204 raw findings in, 6 escalated to a human.

TriNetra finding detail — Background, Description, Affected endpoint, and Business impact sections
Every escalated Code Security finding lands in this same finding template. · Illustrative sanitized demo data — not customer results.

The problem

Most code now ships with AI's help, at a volume legacy SAST and SCA tools were never built to triage. Their answer is to flag everything a rule could theoretically match — which is how a team ends up with over a thousand alerts in a week and no time to work through them. When every alert cries wolf, the two or three that are genuinely exploitable get lost in the same queue as the 1,198 that aren't, and nobody notices until the real one ships.

How Code Security answers it

Code Security's own dashboard leads with this week's funnel: every commit and PR is scanned the moment it lands, each flagged pattern is checked against the code's actual data flow before it's treated as real, and only what survives goes to a human reviewer. Every escalated finding carries an expandable reasoning trace — the exact data-flow path from tainted input to vulnerable sink — so a reviewer checks the reasoning, not an AI's word for it. Findings filtered out aren't silently deleted either; they're recorded with their reasoning attached.

How it actually works

The real funnel, not a marketing claim

RAW FINDINGS1,204

Semgrep and CodeQL rulesets, plus SCA dependency scanning, run across every commit and PR the moment code lands — full, unfiltered tool output.

CONTEXT-TRIAGED31

Each flagged pattern is checked against the code's actual data flow — is the tainted input actually reachable, does it actually reach the vulnerable sink — before anything is treated as real.

ESCALATED TO HUMAN6

What survives context triage goes to a human security reviewer for final confirmation before it reaches your team as an actionable finding.

Noise-Reduction Funnel — 1,204 raw SAST/SCA findings down to 31 context-triaged down to 6 escalated to a human reviewer
97.4% Noise Filtered — the literal chart a client's engineering lead sees every Monday, not a claim in prose. · Illustrative sanitized demo data — not customer results.

Illustrative reasoning trace — not a captured screenshot

inputvalidate()sanitize() [bypassed]executeQuery() [sink]

Capabilities

What ships in the box

Named tools, not a black box

Semgrep and CodeQL rulesets plus SCA run on every commit and PR — the same engines security teams already trust, feeding a triage layer that filters what they can't.

97.4% noise filtered, every week

1,204 raw findings down to 31 context-triaged down to 6 escalated — the shrinkage is the product, and it's visible on the dashboard as a live weekly number, not a one-time benchmark.

Expandable reasoning trace

Every escalated finding shows the data-flow path from input to sink, step by step through your actual code. Reviewers verify reasoning, not vibes.

Noise stays on the record

Findings triaged away as non-exploitable are kept with their reasoning attached — auditable, not silently discarded — and feed the calibration loop.

Human-in-the-loop on the six that matter

Full automation is risky at this volume; full manual review can't keep pace with 1,204 raw findings a week. Escalating exactly the right six is the deliberate middle.

FAQ

Common questions

How is this different from the Semgrep/CodeQL scan we could run ourselves?

Running the rulesets is the easy part — 1,204 raw findings is what you'd get on your own. The triage layer is the product: it reasons over your actual data flow to cut that down to 31 candidates and escalate only 6, with the reasoning shown for every decision.

What happens to the findings that get filtered out?

They're resolved with their data-flow reasoning attached — visible and auditable, not deleted — so if your team disagrees with a call, the trace shows exactly why the system made it, and that disagreement feeds recalibration.

Which scanners are actually running?

Semgrep and CodeQL rulesets for SAST, plus SCA for dependency findings, across every connected repo in this account. Fix suggestions land as native review comments inside the same repos.

Does it change our code automatically?

No. Escalated findings move to a fix-suggested state; your developers review, apply, and merge. Every resolution teaches the triage layer how your team actually works.

Cut the noise. Keep the six that matter.

Connect a repo and watch the funnel run against your own codebase — 1,204 raw in, single digits escalated out, reasoning shown at every step. SecurityBoat will walk you through it on your own scope.

Related: Continuous Testing · AI Red Teaming · Ish