jatkinson1000 / jatkinson1000/archeryutils

Support Legacy AGB classifications for outdoor rounds?

Open
#102 4 comments 0 reactions 0 assignees Claimed by @TomHall2020 View on GitHub
enhancement help wanted
Dominant language
Python
Stars
20
Forks
5
PR merge metrics
No merged PRs in 30d

Description

Hello again!

Currently archeryutils supports calculating handicaps in the new and old AGB systems, and can provide classifications and classification score boundaries for Indoor and Outdoor (and now field) rounds under the new system, and also indoor rounds under the old system.

With the new system being essentially fully integrated now, is it possible to provide classification feature parity for outdoor rounds for the previous system as well? I have a use case for this in that we are trying to keep archr agnostic as to which handicap system it uses, so I would like to still be able to calculate classification score thresholds.

Of course we could already do this by reverse engineering the previous system and working out which handicaps correlate to which classifications, but I'd rather chuck all that in the bin and use archeryutils as a definitive single source of truth for all such matters.

This would at a minimum mean providing two new functions in the classifications namespace: `calculate_agb_old_outdoor_classification` and `agb_indoor_classification_scores`. It might also be a good opportunity to add a simplified generic api similar to the top level handicap functions where the handicap scheme and discipline (eg indoor, outdoor, field) can be passed as string arguments, leaving us with a pair of conviniences functions `calculate_classifcation` and `get_classification_scores`/`classification_thresholds` or something similar. Edit: I see that issue #24 remains open, which would be addressed by this if we went for the full flavour.

Happy to help with implementation as ever.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in the classifications namespace and compare the existing new-system and old-system classification APIs for indoor, outdoor, and field rounds. Confirm the legacy outdoor score thresholds and the requested function names, then verify that outdoor classification calculations and score boundaries match the intended AGB system; the linked pull request indicates work is already underway.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.