Skip to content

Conversation

@erichs
Copy link
Owner

@erichs erichs commented Jan 15, 2026

Remove Rotting Secrets signal (duplicative with Dumpster Fire).

Replace arbitrary entry limits with adaptive time-budget gating:

  • Global 8ms time budget shared across parallel directory scans
  • Scans as many entries as possible within budget
  • Fast systems scan more, slow systems gracefully degrade
  • Added context check after expensive stat() syscalls

Performance improvement:

Metric Before After
Cold cache time 85ms <8ms
~/Downloads (716 files) First 100 entries All within budget

Files removed:

  • src/signals/rotting_secrets.go
  • src/signals/rotting_secrets_test.go
  • docs/signals/rotting_secrets.md

Remove Rotting Secrets signal (duplicative with Dumpster Fire).

Replace arbitrary entry limits with adaptive time-budget gating:
- Global 8ms time budget shared across parallel directory scans
- Scans as many entries as possible within budget
- Fast systems scan more, slow systems gracefully degrade
- Added context check after expensive stat() syscalls

Performance improvement:
| Metric              | Before   | After    |
|---------------------|----------|----------|
| Cold cache time     | 85ms     | <8ms     |
| ~/Downloads (716 files) | First 100 entries | All within budget |

Files removed:
- src/signals/rotting_secrets.go
- src/signals/rotting_secrets_test.go
- docs/signals/rotting_secrets.md

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings January 15, 2026 22:28
@codecov-commenter
Copy link

codecov-commenter commented Jan 15, 2026

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

❌ Patch coverage is 82.85714% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.40%. Comparing base (2d5dc85) to head (67e4828).

Files with missing lines Patch % Lines
src/signals/internal/filestat/filestat.go 33.33% 4 Missing ⚠️
src/signals/dumpster_fire.go 92.85% 1 Missing and 1 partial ⚠️
❗ Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #52      +/-   ##
==========================================
- Coverage   81.44%   81.40%   -0.04%     
==========================================
  Files          62       61       -1     
  Lines        4656     4609      -47     
==========================================
- Hits         3792     3752      -40     
+ Misses        672      669       -3     
+ Partials      192      188       -4     
Flag Coverage Δ
unittests 81.40% <82.85%> (-0.04%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request optimizes the Dumpster Fire signal by replacing arbitrary entry limits with adaptive time-based scanning. The Rotting Secrets signal is removed as it was duplicative with Dumpster Fire.

Changes:

  • Removed the Rotting Secrets signal (implementation, tests, and documentation) as it was duplicative with Dumpster Fire
  • Implemented parallel directory scanning with a global 8ms time budget for the Dumpster Fire signal
  • Changed default scanning configuration from hard entry limits (500 entries, 2ms per directory) to time-based gating (0 entry limit, 0 timeout - uses caller's context)
  • Added responsive context checking after expensive stat() syscalls in the scanning loop

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/signals/rotting_secrets.go Removed duplicative signal implementation
src/signals/rotting_secrets_test.go Removed tests for deleted signal
docs/signals/rotting_secrets.md Removed documentation for deleted signal
src/signals/registry.go Removed Rotting Secrets from signal registry (count: 38 → 37)
SIGNALS.md Removed Rotting Secrets entry from signals list
README.md Updated security checks count from 38 to 37
src/signals/internal/filestat/filestat.go Changed defaults to support time-based gating; added context check after stat() syscall
src/signals/dumpster_fire.go Implemented parallel scanning with 8ms global time budget

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@erichs erichs merged commit f9b1bbb into main Jan 15, 2026
5 checks passed
@erichs erichs deleted the faster-fs-checks branch January 15, 2026 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants