alan-turing-institute / whatwhat

A reimagining of nowwhat in OCaml
MIT License
0 stars 0 forks source link

ALL THINGS REPORTING. #77

Open yongrenjie opened 1 year ago

yongrenjie commented 1 year ago

See reporting.mld for spec. Specifically, see the version on the reporting branch

General todo

Forecast

GitHub

Schedule

yongrenjie commented 1 year ago

Problems (part 1)

yongrenjie commented 1 year ago

The only real solution I can see is to fetch all other places where projects can be. That means:

We don't have to actually fetch issue data, we can just fetch the list of issues, which is a far easier task (and we have the datatypes for it already). The issue is more about, how do we define this in the config file. Probably the format of the config file needs to be reworked.

yongrenjie commented 1 year ago

Currently, it looks like this:

{
  "forecastIgnoredProjects": [
    1684536
  ],
  "githubProjectName": "Project Tracker",
  "githubProjectColumns": [
    "Active",
    "Awaiting start",
    "Finding people",
    "Awaiting go/no-go"
  ],
  "forecastId": "974183",
  "forecastUrl": "https://api.forecastapp.com",
  "githubRepoOwner": "alan-turing-institute",
  "githubRepoName": "Hut23",
  "githubUrl": "https://api.github.com"
}

It probably needs to look like this:

{
  "forecastIgnoredProjects": [
    1684536
  ],
  "githubProjects": [
    {
      "name": "Project Tracker",
      "activeColumns": [
        "Active",
        "Awaiting start",
        "Finding people",
        "Awaiting go/no-go"
      ]
    },
    {
      "name": "Standing Roles"
    },
    {
      "name": "Force-multiplier projects"
    }
  ],
  "forecastId": "974183",
  "forecastUrl": "https://api.forecastapp.com",
  "githubRepoOwner": "alan-turing-institute",
  "githubRepoName": "Hut23",
  "githubUrl": "https://api.github.com"
}

where the activeColumns field denotes the columns that we want to fetch issues for (all other columns will be issue-number-only).

yongrenjie commented 1 year ago

I think that should be an issue on its own, and it's a good thing to look at long-term (because that would allow us to, for example, keep track of service area allocations as well), but I'm shelving it for now. I've started a bit of work on it on the multiple-projects branch.

yongrenjie commented 1 year ago

Testing GFM

hello # hello hello # hello Seems like # is okay as long as it doesn't begin a line.

hello \# hello hello # hello But we can just escape it anyway to be safe, that way we don't actually have to check whether it's at the start.

hello \ hello hello \ hello Backslashes are also OK as long as they don't come before something to be escaped

hello \hello hello \hello

hello \* hello hello * hello So that needs to actually become hello \\\* hello

hello \\\* hello hello \* hello

So far, the list of things I'm escaping are: <>*_#`\

Also, apparently if you want a contiguous sequence of N backticks in a code-formatted block, then the code-formatted block should begin and end with N+1 backticks (instead of the usual 1)