Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement all warnings/errors #57

Open
21 of 35 tasks
mhauru opened this issue Oct 25, 2022 · 4 comments
Open
21 of 35 tasks

Implement all warnings/errors #57

mhauru opened this issue Oct 25, 2022 · 4 comments
Assignees

Comments

@mhauru
Copy link
Contributor

mhauru commented Oct 25, 2022

The following list is from reporting.mld. Tick the boxes as you implement them, or check that they've already been implemented:

Forecast

Errors

  • The project code field (which ought to hold the hut23 issue number) is null.
  • The project code is not of the correct format, e.g., "hut23-999".
  • The person email field is null.
  • The assignment person does not match a person (probably because we have deleted it).
  • The assignment project does not match a project (probably because we have deleted it).

Warnings

  • The project tags field (which ought to hold the Finance code) is empty;
  • The project tags field has more than one entry.
  • Two projects exist with the same project code but a different name (in general, it is okay to have two projects with the same code becuase they refer to the same real-world project).

Reading data from GitHub

Errors

  • A non-optional metadata block cannot be found
  • A field cannot be parsed, because:
    • its name is not in the accepted list; or
    • the format of the value is not valid.
  • A non-optional field is missing
  • The same field is specified twice
  • There is no FTE-months or FTE-weeks
  • both FTE-months and FTE-weeks are specified

Warnings

  • A field that can be null is missing
  • A field that can be null has a missing value

Combining data

Errors

  • A project on Forecast has a Hut23 code that is not present in the list of projects from GitHub.
  • An assignment on Forecast has a Hut23 code that is not present in the list of projects from GitHub.
  • A project on Forecast has a Finance Code that is not in the list of Finance Codes from the metadata. (What do we do when the project Finance Code is "UNKNOWN FINANCE CODE"? Do we issue an error or a warning? If a warning, does that mean we need to make "UNKNOWN FINANCE CODE" a possible code for every project?)

Warnings

  • A project is in "Looking for people" or later, but has no matching Forecast project
  • There are allocations to a project beyond its latest end date
  • There are allocations to a project before its earliest start date
  • The total resource allocated exceeds the FTE-weeks
  • The run-rate resource at any time is lower than min-FTE-percent or higher than max-FTE-percent.
  • An individual has an allocation that is greater than 100%
  • The project is in "active" but there are no present allocations; or there are present allocations but the project is no "active".
  • The project is past its latest start date but is not "active"

Reporting

Things that will become problems if left unattended

  • A project is active but the total allocation to the project is less than the FTE-weeks (within some delta)

Informational messages

  • A project is within T + delta of its latest start date but there are no allocations
  • A project is within T + delta of its latest start date but is not "Awaiting start"
  • A project is "Awaiting start" but the total allocation is less than the FTE-weeks (within some delta)
  • A person's allocation will be less than 100% at T + delta
  • A person's allocation to a project will change within in T + delta
  • A project's allocations will change within T + delta
@mhauru mhauru self-assigned this Oct 25, 2022
@mhauru
Copy link
Contributor Author

mhauru commented Oct 25, 2022

@triangle-man could we drop these as sources of Github warnings from reporting.mld?

  • A field that can be null is missing
  • A field that can be null has a missing value

We'll have a lot of these cases that are intentional, and don't require action.

@mhauru
Copy link
Contributor Author

mhauru commented Oct 25, 2022

I would also drop this one as a source of warnings in plan parsing:

The same field is specified twice

Specifying the same field twice is actually invalid YAML. The ocaml-yaml package does accept them, but I would consider that an upstream issue not worth working around. (I've filed an issue: avsm/ocaml-yaml#68)

@mhauru
Copy link
Contributor Author

mhauru commented Oct 25, 2022

Working on ticking those boxes here: https://github.com/alan-turing-institute/whatwhat/pull/58/files

@mhauru
Copy link
Contributor Author

mhauru commented Oct 28, 2022

Proposing changes to the spec here: #60

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

No branches or pull requests

1 participant