Org Web Adapter

journals/2019_03_19.org

Tuesday, 3/19/2019

ID
004c940a-e1e0-45a9-a10c-9ff845e8bf48

#+BEGIN: clocktable :scope file :maxlevel 2

#+CAPTION: Clock summary at

| Headline | Time | |

|--------------------+--------+------|

| *Total time* | *8:49* | |

|--------------------+--------+------|

| Tuesday, 3/19/2019 | 8:49 | |

| \_ Tasks | | 8:49 |

#+END:

Tasks

Today's meetings

:LOGBOOK:

CLOCK: -- => 1:46

:END:

One on one with Andrew

+ Demo issue, regarding uniquness of database table

+ Figured out flu vaccine CDS issue

+ Would love to see some tech talks on topics related to quality measures

+ Been trying to bootstrap a mentorship with Ed to level up my systems knowledge

+ Make progress on FIGmd while improving our CQM arch

+ Front office and workflow automation

+ Better migration paths between branches

Had an interesting discussion about next steps with integrations and workflow

automation. Andrew pointed out the need to automate things like CPT codes

being inserted for specific CDS flows. BMI is the particular one being worked

on right now, but Phill has five or six that ought to be pretty

straightforward. THe proble with Team IO is that with FIGmd and Hint

integrations we don't have the bandwidth to tackle some of these things right

now. So we'll have to work with Josh and Phill and others in the backend team

to make progress.

Team IO Standup

Ed noted that results for FIGmd seem to come in sequentially. Then there's a 30

second wait and the first response, then 20 seconds to the next response. After

a total of 70s, the final response comes. That looks like they're processing

them sequentially, not in parallel.

We have to be sure the mock data we have in Angora is what we'll get back from

FIGmd. If you send a request, it will send back a mock request from a file.

The blocker is understanding how FIGmd is going to do what needs to be done get

the response we need.

Move calculator to it's own python module.

Move CQM infra to talk with FIGmd, want to do some decoupling work at the same time.

Team IO story session

Spent most of the time walking through the PR that merges AvailableCDS into the

DecisionSupport model. Andrew pointed out a few places where things can be

cleaned up, and I need to get the migration path working again after many, many rebases

DONE Write in daily journal

DONE Get back to Inbox 0 in Protonmail

:LOGBOOK:

CLOCK: -- => 0:36

:END:

DONE Setup SSL on home proxy docker config

:LOGBOOK:

CLOCK: -- => 0:48

:END:

DONE Freeze MSFTACO and XOCOS measure definitions in the baseline db

@workmdefs

SCHEDULED:

:LOGBOOK:

CLOCK: -- => 1:22

CLOCK: -- => 0:03

:END:

Started down the process here:

https://elationhealth.atlassian.net/wiki/spaces/DEV/pages/273711117/Updating+Baseline+Docker+Database

I had issues getting the CSV file inside the docker container at first. I ended

up having to mount my tmp dir to the cnotainer before I could install the gaps, like this:

#+BEGIN_SRC bash

docker run -i -t --link old_es_baseline:elasticsearch -w /opt/hippo/elation --link old_baseline:mysql -e HAYSTACK_HOST=elasticsearch -e DJANGO_DATABASE_HOST=mysql -v /tmp/:/tmp/gaps 570488747013.dkr.ecr.us-west-1.amazonaws.com/elation/hippo python manage.py install_caregap_defs MSFTACO /tmp/gaps/mstaco-measures.csv

#+END_SRC

There's a big elasticsearch update landing on staging right now, so I'd rather

not mess with refreshing such things at the moment. I'll double back on this

later today.

DONE Investigate issue with CPU bound CQM workers

@workcqmsops

SCHEDULED:

:LOGBOOK:

CLOCK: -- => 0:03

:END:

Considered https://elationhealth.atlassian.net/browse/RM-4917 which Phill

created after noticing that the BMI CDS was very slow to display. It turns out

we're hitting a bad expotential backoff bug where the CDS is bound by the CPU

time available.

DONE Clean up the RM-2292 branch so migrations work

@workcds

SCHEDULED:

:LOGBOOK:

CLOCK: -- => 0:38

:END:

Turned out we were just missing some merge migrations, hooray!

DONE Experiment with pulling the calculator out of Hippo

@workcqmscalculator

:LOGBOOK:

CLOCK: -- => 1:43

:END:

Easy enough to pull the calculator directory out of quality_measures, but I

suspect there are a lot of places in our codebase that calls our calcuator code

directly, making it's pull out kind of painful.

While my initial thought had been to pull it out as some sort of web service

that could interact with Angora and Hippo. I'm wondering now whether it would be

more useful as a python library that was pip-installable, with an optional

rudimentary web API that could be built up around Angora over time.

That would allow the library to be iterated on separate from hippo.

DONE Fix misc issues in the care gap import process

@workcaregapimportercaregaps

SCHEDULED:

:LOGBOOK:

CLOCK: -- => 1:10

CLOCK: -- => 0:40

:END:

https://elationhealth.atlassian.net/browse/SWAT-1194

1. Link to download error report does not appear until you refresh the page. (does not automatically appear in Upload History table so I initially thought it wasn’t created). Would be nice to have a “refresh for error report” button or something to that effect.

2. If there are multiple errors in a row, only 1 error is identified in the summary table. Ex. in the attached spreadsheet, rows 4 and 14-18 have multiple errors, but only 1 error will be listed in the summary table.

3. If the provider NPI is incorrect, will not result in error. Ex. row 8 in attachment

4. If a column name is incorrect, error report will not say this. it will just exclude the column from the import.

DONE Write up developer journal and copy to Confluence

SCHEDULED:

https://elationhealth.atlassian.net/wiki/spaces/~colin.powell/pages/305823777/Work+log

Journal

Last night was interesting. Nabby, when I brought her up to bed around midnight,

did not want to settle. I resolved to try getting her to sleep for about 10

minutes but then would take her downstairs to the couch again. Lo and behold,

she didn't want to settle, so I ended up getting some sleep on the couch. Some

sleep, not enough sleep. I think I probably slept off and on and ended up with 4

or 5 hours total, of fitful sleep.

None of that helped that there was a raccoon in the havahart trap that Jess set

up the other day. With no real plan to deal with it, Emma called Bubba to come

help, and he ended up getting roped into taking it up, by himself, to the wood

lot to release it. I felt guilty as hell that all this was going on without me,

but I was having a hard enought time focusing on what I need to do this morning.

Then Emma and her mom decided to figure out why they weren't talking, and Emma

ended up in tears because Johanna is a hilariously myopic when it comes to moral

imagination and empathy. She spun it back at Emma as her fault pretty quickly,

even though she's the one who kicked things off by calling for a recipe she's

asked for four times already, at dinner time, on Jess' birthday.

Suffice it to say I'm already feeling pretty beat today. So we'll see how

everything else goes :)

Work log

I started the day by adding XOCOS and MSFTACO quality measure definitions to the

development database. This is always a perilous adventure, though having to do

it on a more regular basis makes the whole thing a bit more predictable. This

time I managed to only push one incorrect database image, when I failed to add

the names of the new quality programs.

I also spent a little time tightening up my local development environment. So far my proxy to the linux server was using an HTTP connection, which is fine when I'm working from home. But when I'm not at home, it's not great to be sending clear text passwords and such.

I then verified my findings on the flu vaccine bug and wrote up some

documentation so I can talk to Sam about it and get his take on wether the

measure is broken or I shouldn't be hacking reminders out of our measures.

I had a one-on-one meeting with Andrew where he outlined the delicate nature of

our work in Team IO right now. With Hint and FIGmd integrations taking up most

of our time, we'll need to find a way to coordinate with other teams to get some

high priority items related to workflow automation and CDS done at the same

time. That will likely involve working with some backend folks.

After that meeting we had our FIGmd standup and went straight into a story

session. That time was used to walk through the big RM-2292 PR, bringing

AvailableCDS and DecisionSupport models into the quality_measures app. We also

discovered that the branch didn't deploy properly. As soon as we got off the

call I was able confirm that there were missing merge migrations have I had

rebased on master a few times. I also walked through the PR afterward and fixed

a few things Andrew had questions about.

I spent the rest of my afternoon working on the miscellaneous care gap import

bugs that were called out as issues but not blockers after our big refactor

branch landed.

Later in the evening I started to play with the idea of building out our

calculator code in it's own repository with a API for interacting with Ed's

Angora project.