Add LAD framework review of highdicom#396
Add LAD framework review of highdicom#396yarikoptic wants to merge 3 commits intoImagingDataCommons:masterfrom
Conversation
Review evaluating highdicom for adoption in heudiconv using the LAD (LLM-Assisted Development) framework dimensions: code quality, testing, documentation, risk management, and integration feasibility. Intended as a discussion document for the community. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Hi @yarikoptic Thanks for this interesting review. It is heartening to see that the framework gives generally very positive comments about the highdicom! Certainly we are aiming for a tool that is stable and better engineered than typical research code, and it seems to think we have achieved that For the sake of engaging in the discussion, there is probably one point where I think the review is a little generous. It describes our test data as "1.3GB of real DICOM test files covering modalities and transfer syntaxes" and "real-world DICOM, not synthetic". I'm not sure where the 1.3GB came from, we definitely have less than that within highdicom, though we also draw heavily on pydicom's test data as well as our own. I would note though that many of the test files for derived objects (segmentations, SRs) was generated with the library itself, which is certainly a limitation. This is an area where I have been wanting to improve things for a while by bringing in data created with other tools, e.g. from the Imaging Data Commons, during testing to ensure compatibility with other frameworks. Nevertheless, I do think our test suite remains a fairly comprehensive set of tests that covers a very large range of the likely variation that could be seen. |
Verified all factual claims against codebase. Corrections: - Test data: 1.3GB -> ~9 MB (30 files) - Test modules: 17 -> 20 - Test lines: 26,428 -> ~26,300 - .rst files: 29 -> 31 - Release count: ~28 -> 46 - Commits: 1686 -> 1132; CPBridge 685 (65%) -> ~779 (69%) - Contributors: 19 -> 28 - hackermd: 20% -> 14% - mypy: "checked in CI" -> "in test deps, not run in CI" - Jupyter notebooks (plural) -> notebook (singular) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Thank you @CPBridge for giving it a read! I made claude check where he got that info and answered
so I asked to check for other hallucinations -- here is what it found some of them are still not fully kosher -- like among others there are duplicates.. someone should produce .mailmap (I thought I already crafted a skill.... seems not!) But do those look 'kosher'? (I did push them here) edit: found - it was a command not skill... PR might be coming |
791/1134 (70%) for Christopher P. Bridge, 20 unique contributors (down from inflated 28 due to duplicate author identities). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Yes this looks better now I think A note on the mypi thing: we used to have mypi enabled in the CI but then some shenanigans in a certain pydicom version led to an unworkable number of unhelpful errors and we had to disable it. This is overdue a revisit, so this serves as a helpful reminder! |
I think that's where smth like |
Review evaluating highdicom for adoption in heudiconv using the LAD (LLM-Assisted Development) framework by @chrisfoulon along dimensions: code quality, testing, documentation, risk management, and integration feasibility.
Intended as a discussion document for the community, feel free to close... I just did it anyways so decided to share as a PR since easier to comment on specific aspects