Rothamsted-Ecoinformatics / farm_rothamsted

Custom farmOS features for Rothamsted Research.
GNU General Public License v2.0
6 stars 1 forks source link

Experiment module: move variables to Design Entity #743

Open aislinnpearson opened 1 month ago

aislinnpearson commented 1 month ago

One of the problems I have noticed as we have moved from 2023 to 2024 is there is a lot of duplicating of variables and csv/ excel spreadsheets. For example, if you upload variables for an experiment one year and then make some edits (e.g. typos, improved descriptions, etc) you have to go back through all previous years and make those same edits. This is annoying for the user, but it also means the system becomes prone to error. It's also only really a problem for our biggest and long-term experiments - Broadbalk, LSRE, etc.

The ideal solution (if it is possible) is to upload the columns and column levels to the Design (creating the variables tab that is currently on the plans) and then add the plot level attributes to the study plan so they can be reallocated every study/ year.

We would ideally start with csv uploads, but then move into editable text.

We also need to think carefully about the update hook for this, which makes me think it is better to do this sooner rather than later.

aislinnpearson commented 3 weeks ago

I discussed this with @paul121 and @mstenta yesterday and we decided instead to duplicate proposals while writing a bit of code to check variables against each other as part of the QA process.

There were several reasons for this:

  1. The first is that age old issue of how do you update variables, only now that issue relates to updating edited variables on multiple plans.
  2. In addition, in some years you might want to add additional variables (e.g. drilling errors) that aren't present in every year.
  3. Finally, but perhaps most importantly, we want to work towards making the experiment module integrate with FarmOS core and @paul121 made the excellent point that the MVP is an experiment plan, which needs to have variables.

I have created separate issues for this here:

aislinnpearson commented 3 weeks ago

Finally, but perhaps most importantly, we want to work towards making the experiment module integrate with FarmOS core and @paul121 made the excellent point that the MVP is an experiment plan, which needs to have variables.

Marking as won't do for the above reason