Skip to content

Commit

Permalink
Merge pull request #48 from team4099/2025-falconscoutcore
Browse files Browse the repository at this point in the history
added 2025 falconscoutcore
  • Loading branch information
CodingMaster121 authored Mar 1, 2025
2 parents 66fa7d4 + 437f11a commit 0c41f80
Show file tree
Hide file tree
Showing 10 changed files with 485 additions and 37 deletions.
4 changes: 2 additions & 2 deletions falconscoutcore/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)

from data_validation.data_val_2024 import DataValidation2024
from data_validation.data_val_2025 import DataValidation2025

load_dotenv()
github_instance = Github(os.getenv("GITHUB_KEY"))
Expand Down Expand Up @@ -205,7 +205,7 @@ def run_dataval(success_col) -> None:
:param success_col: The column to write status messages for running the data validator in.
"""
data_validator = DataValidation2024("./data_validation/config.yaml")
data_validator = DataValidation2025("./data_validation/config.yaml")

with open(CONFIG["data_config"]["json_file"]) as scouting_data_file:
data_validator.validate_data(load(scouting_data_file))
Expand Down
14 changes: 8 additions & 6 deletions falconscoutcore/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,23 @@
"Alliance",
"DriverStation",
"TeamNumber",
"StartingPosition",
"AutoLeave",
"ScoringSide",
"AutoCoralL1",
"AutoCoralL2",
"AutoCoralL3",
"AutoCoralL4",
"AutoBarge",
"AutoProcessor",
"AutoCenterline",
"AutoLeave",
"AutoNotes",
"TeleopCoralL1",
"TeleopCoralL2",
"TeleopCoralL3",
"TeleopCoralL4",
"TeleopAlgaeBarge",
"TeleopAlgaeProcessor",
"TeleopAlgaeRemoval",
"TeleopNotes",
"Parked",
"ClimbStatus",
Expand All @@ -47,13 +49,13 @@
"ClimbAlignmentSpeed",
"EndgameGeneralNotes"
],
"json_file": "./data/2024cur_match_data.json",
"qualitative_json_file": "./data/2024cur_qualitative_data.json",
"json_file": "./data/2025vapor_match_data.json",
"qualitative_json_file": "./data/2025vapor_qualitative_data.json",
"error_json": "./data/errors.json"
},
"repo_config": {
"repo": "team4099/ScoutingAppData",
"update_json": "2024cur_match_data.json",
"update_qualitative_json": "2024cur_qualitative_data.json"
"update_json": "2025vapor_match_data.json",
"update_qualitative_json": "2025vapor_qualitative_data.json"
}
}
142 changes: 142 additions & 0 deletions falconscoutcore/data/2025vapor_match_data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
[
{
"ScoutId": "Ryan",
"MatchKey": "qm1",
"Alliance": "blue",
"DriverStation": 3,
"TeamNumber": 4099,
"StartingPosition": "Far Coral Station",
"AutoLeave": true,
"ScoringSide": "Far Coral Station",
"AutoCoralL1": 0,
"AutoCoralL2": 0,
"AutoCoralL3": 0,
"AutoCoralL4": 4,
"AutoBarge": 0,
"AutoProcessor": 0,
"AutoNotes": "",
"TeleopCoralL1": 0,
"TeleopCoralL2": 0,
"TeleopCoralL3": 5,
"TeleopCoralL4": 5,
"TeleopAlgaeBarge": 0,
"TeleopAlgaeProcessor": 1,
"TeleopAlgaeRemoval": true,
"TeleopNotes": "",
"Parked": false,
"ClimbStatus": "Deep Climb",
"ClimbSpeed": "Fast (<5 seconds)",
"EndgameNotes": "",
"Disabled": false,
"StabilityRating": "Stable",
"RobotStyleType": "Offensive",
"DriverRating": "Very Fluid",
"IntakeDefenseRating": "",
"RatingNotes": ""
},
{
"ScoutId": "Ryan",
"MatchKey": "qm2",
"Alliance": "red",
"DriverStation": 1,
"TeamNumber": 4099,
"StartingPosition": "Middle",
"AutoLeave": true,
"ScoringSide": "Close Coral Station",
"AutoCoralL1": 1,
"AutoCoralL2": 0,
"AutoCoralL3": 0,
"AutoCoralL4": 3,
"AutoBarge": 0,
"AutoProcessor": 0,
"AutoNotes": "",
"TeleopCoralL1": 2,
"TeleopCoralL2": 3,
"TeleopCoralL3": 0,
"TeleopCoralL4": 5,
"TeleopAlgaeBarge": 0,
"TeleopAlgaeProcessor": 1,
"TeleopAlgaeRemoval": true,
"TeleopNotes": "",
"Parked": false,
"ClimbStatus": "Deep Climb",
"ClimbSpeed": "Average (5-10 seconds)",
"EndgameNotes": "",
"Disabled": false,
"StabilityRating": "Stable",
"RobotStyleType": "Offensive",
"DriverRating": "Fluid",
"IntakeDefenseRating": "Good",
"RatingNotes": ""
},
{
"ScoutId": "Ryan",
"MatchKey": "qm3",
"Alliance": "red",
"DriverStation": 1,
"TeamNumber": 4099,
"StartingPosition": "Middle",
"AutoLeave": false,
"ScoringSide": "Close Coral Station",
"AutoCoralL1": 1,
"AutoCoralL2": 0,
"AutoCoralL3": 0,
"AutoCoralL4": 2,
"AutoBarge": 0,
"AutoProcessor": 0,
"AutoNotes": "",
"TeleopCoralL1": 1,
"TeleopCoralL2": 0,
"TeleopCoralL3": 5,
"TeleopCoralL4": 5,
"TeleopAlgaeBarge": 0,
"TeleopAlgaeProcessor": 1,
"TeleopAlgaeRemoval": false,
"TeleopNotes": "",
"Parked": true,
"ClimbStatus": "No Climb",
"ClimbSpeed": "",
"EndgameNotes": "",
"Disabled": false,
"StabilityRating": "Stable",
"RobotStyleType": "Offensive",
"DriverRating": "Fluid",
"IntakeDefenseRating": "Very Good",
"RatingNotes": ""
},
{
"ScoutId": "Ryan",
"MatchKey": "qm4",
"Alliance": "blue",
"DriverStation": 3,
"TeamNumber": 4099,
"StartingPosition": "Middle",
"AutoLeave": true,
"ScoringSide": "Close Coral Station",
"AutoCoralL1": 1,
"AutoCoralL2": 0,
"AutoCoralL3": 0,
"AutoCoralL4": 2,
"AutoBarge": 0,
"AutoProcessor": 0,
"AutoNotes": "",
"TeleopCoralL1": 1,
"TeleopCoralL2": 0,
"TeleopCoralL3": 3,
"TeleopCoralL4": 5,
"TeleopAlgaeBarge": 0,
"TeleopAlgaeProcessor": 2,
"TeleopAlgaeRemoval": true,
"TeleopNotes": "",
"Parked": false,
"ClimbStatus": "Deep Climb",
"ClimbSpeed": "Slow (>10 seconds)",
"EndgameNotes": "",
"Disabled": false,
"StabilityRating": "Stable",
"RobotStyleType": "Offensive",
"DriverRating": "Very Fluid",
"IntakeDefenseRating": "Okay",
"RatingNotes": ""
}
]
2 changes: 2 additions & 0 deletions falconscoutcore/data/2025vapor_qualitative_data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[
]
2 changes: 1 addition & 1 deletion falconscoutcore/data/errors.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
[]
[]
2 changes: 1 addition & 1 deletion falconscoutcore/data/match_schedule.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{}
{}
41 changes: 24 additions & 17 deletions falconscoutcore/data_validation/config.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# core setup features
year: 2024
event_code: "mdowi"
year: 2025
event_code: "vapor"
run_with_tba: false
path_to_data: "data/2024cur_match_data.json"
path_to_data: "data/2025vapor_match_data.json"
path_to_output: "data/errors.json"

# required translation
Expand All @@ -15,24 +15,31 @@ driver_station": "DriverStation"
# optional parameters - if it is needed for a data check and is
# not listed, the check will not run

# Crescendo 2024: hyper-specific parameters
auto_speaker: "AutoSpeaker"
auto_amp: "AutoAmp"
# Reefscape 2025: hyper-specific parameters
auto_starting_position: "StartingPosition"
auto_leave: "AutoLeave"
auto_scoring_side: "ScoringSide"
auto_coral_l1: "AutoCoralL1"
auto_coral_l2: "AutoCoralL2"
auto_coral_l3: "AutoCoralL3"
auto_coral_l4: "AutoCoralL4"
auto_barge: "AutoBarge"
auto_processor: "AutoProcessor"
auto_centerline: "AutoCenterline"
teleop_speaker: "TeleopSpeaker"
teleop_amp: "TeleopAmp"
teleop_trap: "TeleopTrap"
teleop_passing: "TeleopPassing"
parked: "Parked"
climbed: "ClimbStatus"
harmonized: "Harmonized"
climb_speed: "ClimbSpeed"
teleop_coral_l1: "TeleopCoralL1"
teleop_coral_l2: "TeleopCoralL2"
teleop_coral_l3: "TeleopCoralL3"
teleop_coral_l4: "TeleopCoralL4"
teleop_algae_barge: "TeleopAlgaeBarge"
teleop_algae_processor: "TeleopAlgaeProcessor"
endgame_parked: "Parked"
endgame_climb_status: "ClimbStatus"
endgame_climb_speed: "ClimbSpeed"
disabled: "Disabled"
stability_rating: "StabilityRating"
robot_style_type: "RobotStyleType"
driver_rating: "DriverRating"
defense_time: "DefenseTime"
defense_skill: "DefenseSkill"
counter_defense_skill: "CounterDefenseSkill"
intake_defense_rating: "IntakeDefenseRating"

# parameters for notes
auto_notes: "AutoNotes"
Expand Down
2 changes: 1 addition & 1 deletion falconscoutcore/data_validation/data_val_2024.py
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ def scored_more_than_seven_pieces_in_auto(
self, match_key: str, team_number: int, auto_speaker: int, auto_amp: int
):
"""Marks an error if more than nine pieces were scored in auto (impossible)."""
if auto_speaker + auto_amp > 9 and not auto_leave:
if auto_speaker + auto_amp > 9:
self.add_error(
f"In {match_key}, {team_number} was said to have scored {auto_speaker + auto_amp} GAME PIECES IN AUTO WHICH IS IMPOSSIBLE.",
ErrorType.INCORRECT_DATA,
Expand Down
Loading

0 comments on commit 0c41f80

Please sign in to comment.