What needs to be done
Flesh out and harden the diff collector logic that currently exists in the prototype.
Please examine all logic in diff_collector.py
Why it needs to be done
We need this for our core matching logic.
Acceptance Criteria
- Working with existing prototype code, review and refactor methods in diff_collector.py with particular attention paid to the collect_additions_updates_deletes method including its contained "recurse" method.
- Merge updated diff_collector.py into main.
Technical Notes
- In the same prototype branch, there are unit tests for the diff_collector.py - maybe start there.
- Development should be done on a branch off of the
david/prototype-diff branch to ensure new code still properly integrates with all of the prototype code that hasn't been fleshed out yet.
- Once this feature is complete, we'll likely need to do a PR into the
david/prototype-diff branch instead of main since one of the diff_collector.py file's dependencies, the matching.py file, currently only exists in david/prototype-diff until it's hardened and merged into main. However, even if the matching.py file hasn't been hardened yet, it shouldn't be a blocker to doing this work independently of that. If you start working on this and find that hardening matching.py is a blocker, please bring that up with the team so we can decided how to proceed.
What needs to be done
Flesh out and harden the diff collector logic that currently exists in the prototype.
Please examine all logic in diff_collector.py
Why it needs to be done
We need this for our core matching logic.
Acceptance Criteria
Technical Notes
david/prototype-diffbranch to ensure new code still properly integrates with all of the prototype code that hasn't been fleshed out yet.david/prototype-diffbranch instead ofmainsince one of the diff_collector.py file's dependencies, the matching.py file, currently only exists indavid/prototype-diffuntil it's hardened and merged into main. However, even if the matching.py file hasn't been hardened yet, it shouldn't be a blocker to doing this work independently of that. If you start working on this and find that hardening matching.py is a blocker, please bring that up with the team so we can decided how to proceed.