Skip to Content
FeaturesTeam Learning

Team Learning

CodeStax’s review engine adapts to your team’s codebase and preferences. Every time a developer accepts or dismisses a finding, the system learns what matters to your team.

How It Works

Feedback Loop

  1. A PR review or scan produces findings
  2. Developers review each finding and provide feedback:
    • Accept — confirms the finding is a real issue
    • Dismiss — marks it as a false positive or not applicable
    • Fix — applies the suggested fix (counts as an accept)
  3. Feedback is aggregated per pattern, per repository, and per organization
  4. Future reviews adjust confidence scores based on accumulated feedback

Confidence Adjustment

Each detection pattern maintains a confidence score (0.0 to 1.0):

  • Starts at the pattern’s default confidence (typically 0.7-0.9)
  • Each acceptance increases confidence by a small amount
  • Each dismissal decreases confidence
  • When confidence drops below 0.3, the pattern is automatically deprioritized

Deprioritized patterns still run but their findings are collapsed in the UI and do not count toward the risk score.

Feedback Actions

On PR Reviews

When viewing a PR review, each finding has action buttons:

ActionEffect
AcceptConfirms the finding; increases pattern confidence
DismissMarks as false positive; decreases pattern confidence
Dismiss with reasonAdds context (e.g., “This is test code”, “Intentional for backwards compatibility”)
Fix with AIApplies the suggested fix and counts as an accept

On Scan Results

In the scan results view, findings can be triaged the same way:

  • Right-click or use the action menu on any finding
  • Select Accept, Dismiss, or Fix

Tracking Acceptance Rates

Navigate to Dashboard → Reviews → Learnings to view:

Pattern Performance Table

ColumnDescription
PatternDetection pattern name
FindingsTotal times this pattern triggered
AcceptedCount of acceptances
DismissedCount of dismissals
Acceptance RateAccepted / (Accepted + Dismissed)
ConfidenceCurrent confidence score
StatusActive or Deprioritized
  • Acceptance rate trend over time per pattern
  • Overall team acceptance rate (higher means fewer false positives)
  • Repository-level breakdown showing which repos have the most dismissals

What Improves Over Time

AspectHow It Improves
False positive ratePatterns your team consistently dismisses get deprioritized
Severity accuracyFindings on code your team considers low-risk are softened
Context awarenessTest files, configuration files, and generated code are treated differently based on feedback
Review focusHigh-confidence findings are surfaced first, low-confidence findings are collapsed

Resetting Feedback

Organization admins can reset feedback data:

  • Per pattern: Reset a single pattern’s confidence to its default
  • Per repository: Clear all feedback for a specific repo
  • Organization-wide: Reset all feedback (use with caution)

Navigate to Dashboard → Reviews → Learnings to access these options.

Best Practices

  • Encourage consistent feedback: The system learns fastest when all team members provide feedback, not just a few
  • Use dismiss reasons: Reasons help distinguish between “this is wrong” and “this is not relevant here”
  • Review deprioritized patterns quarterly: Some may become relevant again as your codebase evolves
  • Check acceptance rates after onboarding: New repos may have high dismissal rates initially as the system calibrates