Production-ready Condition list

In May 2022, Partners In Health is still unable to use Condition List because of a number of bugs and design questions. It's unclear if others are using it now.  We want to deploy a stable product on the RefApp for Haiti, Liberia, and other sites – especially for NCD, Mental Health, and HIV patients.

Resources

Possible scenarios

From Talk post by Jonathan Teich

  • New active condition
    • Enter new active condition starting today

      • add ACTIVE start: today end: null

    • Enter new active condition starting unspecified time

      • add ACTIVE start: null end: null

      • Note: it’s not clear whether a default of Today or null makes more sense, and I don’t want to add another field; but practically speaking the differences are mostly harmless. If you’d want to do it completely right your display and reporting algorithms have to make use of the time entered as well as the start and end times.

    • Enter new active condition starting in past

      • add ACTIVE start: specified date end: null

  • Change active condition
    • Change already active condition to inactive starting today

      • Change existing ACTIVE record end: today;

      • add INACTIVE start:today end: null

    • Change already active condition to inactive starting in past

      • Change ACTIVE record end: specified date

      • add INACTIVE start: specified date end: null

    • Change already active condition to inactive starting unspecified time

      • Change ACTIVE record end: today

      • add INACTIVE start: today end: null (*Note: Using today is incorrect but NULL is worse)

  • New inactive condition
    • Enter new inactive condition with no known original active date

      • add INACTIVE start: null end: null
      • Note: most users would enter this as History-Of, which is a whole different can of worms
    • Enter new inactive condition with known past active start and/or end date (*Ditto)

      • add ACTIVE start: specified start date end: specified end date

      • add INACTIVE start: specified end end: null

  • Reactivate inactive condition

    • Change INACTIVE record add end: today

    • add ACTIVE start: today