Skip to content

Add per-repo failure tracking to refresh scheduler#22

Open
garvitkaushik-123 wants to merge 1 commit into
DPGAlliance:mainfrom
garvitkaushik-123:feat/scheduler-failure-tracking
Open

Add per-repo failure tracking to refresh scheduler#22
garvitkaushik-123 wants to merge 1 commit into
DPGAlliance:mainfrom
garvitkaushik-123:feat/scheduler-failure-tracking

Conversation

@garvitkaushik-123
Copy link
Copy Markdown

Summary

  • Add RepoFailureTracker class that counts consecutive failures per repo across refresh cycles
  • Log warning when a repo fails 3+ consecutive times, critical at 5+
  • Log recovery when a previously failing repo succeeds
  • After each cycle, summarize all repos with repeated failures in the status log
  • Backwards compatible: failure tracker is optional (defaults to None if not passed)

This addresses the "repeating fails should trigger some kind of warning" requirement from #15.

Partial fix for #15

Test plan

  • Verify scheduler starts normally with no behavioral change when all repos succeed
  • Simulate a repo failure (e.g., invalid repo name) and verify warning logs appear after 3 consecutive failures
  • Verify the failing repo summary is logged at the end of each cycle
  • Verify recovery is logged when a previously failing repo succeeds

🤖 Generated with Claude Code

Track consecutive failures per repo across refresh cycles and log
escalating warnings (warning at 3+ failures, critical at 5+).
When a repo recovers after failures, log the recovery. After each
cycle, log a summary of all repos with repeated failures.

This makes it easier to identify persistently broken repos that
need attention, without stopping the scheduler.

Partial fix for DPGAlliance#15

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@partvishegy
Copy link
Copy Markdown
Collaborator

Hey @garvitkaushik-123! I appreciate the effort, but as you can see this issue is heavily underspecified at the moment. Althought the repo is open, I did not expect contirbutors yet. I do have some architectural rethinking to do, and the issues are more like half-thoughts on a todo list, then specs. #15 is a good example of this: the scheduling part is essential for this project, but in its current form patching it does not create much value. I do have a plan to redo it, but it is not recorded here. As you must know: if the business requirements are not defined clearly, the outcome can hardly be correct.

If you are serious about contributing to this project, let me know, and I am happy to put more effort into detailed specs on these issues, and the other unrecorded ones.

I can see that you added a nice Test plan! Have you done any testing yourself? Did you try running the project? How did it go?

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.

2 participants