Skip to content

Conversation

@mxtmx
Copy link

@mxtmx mxtmx commented Jan 24, 2026

Adds a flexible phase management system for FTC match time periods. Includes:

  • Phase class for defining named time periods with configurable durations and time units
  • PhaseManager for automatic phase transitions based on elapsed match time with listener callbacks
  • Comprehensive unit tests covering initialization, transitions, and edge cases

Allows teams to easily structure autonomous and teleop logic around match phases with automatic time-based transitions.

@opi3636
Copy link
Member

opi3636 commented Jan 24, 2026

Thank you very much for your PR.
I have some questions about the PhaseManager class.

  • Why is everything static? To me, it seems better for it to be an object rather than static methods.
  • Why is the index of the current and previous Phase stored instead of the objects themself? It introduces some unnecessary logic that can be a bit confusing.

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