2022-11-16 Thompson/Wagner Check-in meeting notes

Participants

  • @Matt Thompson

  • @Jeffrey Wagner

Discussion topics

Item

Notes

Item

Notes

General updates

  • JW – Thanks for publishing openff-models.

  • JW – I deleted some webhooks to LGTM, maybe that will finish it off

  • JW – Thanks for the widespread ecosystem maintenance. Super useful. Trying to identify the 0.11 divide - Seems like ForceBalance is about to make the jump, then only smirnoff-plugins will be behind.

    • MT – May be time to fork forcebalance? Right now we’re constrained to not change things too much and minimize size/scope of patches. But it’s such a large part of our infrastructure that we’re accumulating debt and this will become unsustainable. If you gave the go-ahead to fork FB, I think we could make it a lot more maintainable. Like, could make editable installs, rearchitect to make tests more unit-like. Also there’s a lot of experimental/one-off code that isn’t of general utility. If the code were newer and amenable to more change (like was pre-1.0) then it would be easier to advocate for these changes, but since it’s so mature there’s too much of an emphasis on stability.

    • JW – If forking will take a lot of one-off effort, and we still need to implement interchange plugins, then we should make sure we get the whole fitting stack standing again before we commit to another big development.

    • MT – Updating ForceBalance for the new toolkit will frankly take a lot of work, possibly more than just forking it.

    • MT – Getting interchange to support DEXP is a small amount of work. Getting a more general SMIRNOFF plugin system working is a medium amount of work. Getting that working in a way that hooks into ForceBalance and the fitting infrastructure is free if fitting infrastructure is update, but it’s not free if fitting infrastructure isn’t update.

    • MT – If we’re just talking about the minimum effort to get ForceBalance working again, it’ll still be easier to do that as a fork than under LPW group ownership. Also there is a lot of work that will be needed for recharge updates, and some amount for evaluator and pymbar.

    • JW – Seems like we have 5 major possible futures:

      • We insist that changes to forcebalance go into lpwgroup/fb

      • We make a fork where we stage changes, and plan to propagate essential changes back.

        • MT – This is my preference. I share concerns about the ease of this turning into number 3. But this will be a useful arrangement (on a technical level) to begin making FB more maintainable if LPW can spare the attention

        • JW – I think this could be the way to go, but we should never let the fitting team start using this fork for actual fits, because then this will have turned into option 3. If we keep changes consolidated to individual PRs then I can review them, and then they could pass up to LPW with my endorsement. But we need to recognize that stuff like deleting the GUI is not permissible to LPW, and we shouldn’t let that lead to merge conflicts

        • MT – There is indeed a spectrum of changes, ranging from cosmetic to funcitonal/structural. So things like cruft in comments is cosmetic. But I want to reorganize (/remove entirely) the src directory entirely. And it’s frankly hard to even make the minimal changes without making some of the changes that LPW would see as significant-but-nonessential.

        • MT – I could start making minimal changes in my fork so that I have a technical route toward making the updates and testing the rest of our stack against them.

        • JW – That’s a good plan - Let’s do that.

        • JW – Also I’ll get in contact with LPW and schedule a meeting to ask about steps forward.

      • We make a fork and never intend to go back

      • We end up making a total forcebalance replacement next year and don’t need to worry about the long term costs of tech debt

      • We end up going all-in on ML-derived force field parameters and none of this matters because we’re using pytorch or something at that point.

  • JW – New bespokefit build looks good - Just tested it, pharma partner was just asking so I’ll send that out.

  • JW + MT – We’ll stop doing “pre-releases” on GitHub, it’s not clear what value they add

  • JW – Can we enumerate bespokefit fixes? I’ll work with JM to push

    • Geometry optimization test flakiness+speed

    • General optimization speed

    • MT – I see my work with bespokefit as done. No specific suggestion.

  •  

Sprint planning

 

PR and issue clearance

 

Action items

Decisions