/
21/06/2024

21/06/2024

Attendance

  • Everyone in attendance

Actionable Updates

Kavika
-- Write out + send Zac requirements for API generation crate
-- Code review/fix Alex L's branch
-- Look into questions framework local code missing? Otherwise finish it (or maybe it's finished idk?)

Alexander Lai
-- chill / wait for the code review

Fritz
-- containerise things and setup docker
-- setup testing for handlers

Skye
-- push code for/finish answers framework

Alex M
-- idk lol i forgot what you need to do.. pls remind me

Yunshu
-- ensure all your final code is pushed + chill/wait for code review
-- do frontend tasks

Hellen
-- ensure all your final code is pushed + open a pull-request
-- do frontend tasks

Zac
-- look out for Kavika's requirements -> find/discuss the right solution

Josh
-- Merge in pull req -- sponsor logos
-- Cry over frontend refactoring
-- send Yunshu and Hellen frontend stuff

Agenda

announcements

cross-port bonding – wk6

 

discussion points

  • we decided on generating the Open API spec from the code (I think Zac found a crate called utopia?)

  • error handling stuff will be sorted by Kavika ... for now if youre doing BE stuff just follow whats in the organisations branch (more specifically, how errors are handled -- with the match and stuff)

  • need to modify isAdmin to account for both OrganisationAdmins and OrganisationUsers

  • SQLx errors have a variant RowNotFound so we can differentiate between 4XX and 5XX codes

feedback from Kavika on code review:

  • use DB transactions instead of Pool -> and transaction.rollback() on errors, otherwise .commit()

  • use query_as as much as possible instead of query

frontend tasks

  1. User guide:

    1. we want to make a user guide on the website to:

      1. help people learn how to use CHAOS

      2. more clearly define what frontend features we need hahahahahaaaaa

    2. Tasks:

      1. Need to look into some sort of solution for this. Would something that renders mdx (or just markdown) be good? Don’t spend too long deciding, just do a lil bit of research and choose one. It should be easy to change later if needed (unlikely anyways).

        1. Docusaurus? → rendering mdx (mdx = markdown with extra features)

        2. Contentlayer

        3. Starlight

      2. Add the solution and make a basic guide on how users can create a campaign as a sample

      3. let’s use the route /guide for this

      4. Make a pull request

  2. Embedding OpenAPI spec on a webpage

    1. Create a page on the route /docs that displays the OpenAPI spec using the api .yaml file

    2. Probably will need to yarn install some package for this

    3. Make a PR

  3. Add typechecking + linting + formatting to the CI

    1. We want the frontend code to lint (ESLint) + typecheck (TypeScript) + be formatted (prettier)

    2. Tasks:

      1. add a github action in the .github/workflows folder that runs the three things (you will have to google the commands to run tsc, eslint and prettier in the CI)

      2. Make a pull request (the frontend build should fail this right now)

Actionables

Kavika:

  • finish fixing organisations stuff [due: 28 Jun 2024]

    • db migration to add a OrganisationAdmin level

      • changing Pool to Transaction

  • redo error framework [due: 28 Jun 2024]

Fritz

  • finish containerising the backend [due: 21 Jun 2024]

  • start setting up testing framework [progress: 28 Jun 2024]

Alex M

  • look through the Questions framework and check what is missing [due: 28 Jun 2024]

Zac

  • generate OpenAPI spec from the code

Skye

  • make a draft PR for answers framework [due: 28 Jun 2024]

  • keep working on answers framework [progress: 28 Jun 2024]

Yunshu

  • approve / review Josh's PR [due: 23 Jun 2024]

  • user guide FE task (confluence dot point number 1) [progress: 28 Jun 2024]

Alex L

  • OpenAPI FE task (confluence dot point number 2) [progress: 28 Jun 2024]

Hellen

  • CI frontend task (confluence dot point number 3) [progress: 28 Jun 2024]

Josh

  • more rewriting stuff using Tailwind and twin.macro [progress: 28 Jun 2024]

 

 

Related content