Skip to content

feat(hifsa): add 3D assignment viewer and public HiFSA panels - #1543

Open
vcnainala wants to merge 1 commit into
developmentfrom
feat/hifsa-molecule-viewer
Open

feat(hifsa): add 3D assignment viewer and public HiFSA panels#1543
vcnainala wants to merge 1 commit into
developmentfrom
feat/hifsa-molecule-viewer

Conversation

@vcnainala

Copy link
Copy Markdown
Member

Summary

  • Parse Cosmic Truth spinsystems.sdf and OUTPUT.json atom maps into study hifsa_data, and hide sentinel shift/coupling values.
  • Add a 3Dmol.js assignment viewer and shared HifsaPanel on upload, dashboard datasets, and public study/sample/dataset pages.
  • Pass an NMRium fileFilter that excludes EXTRA/ and hifsa/ paths so Cosmic Truth artifacts are not loaded as spectra.

This app does not use Filament. Backend helpers follow Laravel 13 conventions (typed support classes, API resource when(), eager-loaded sample.molecules for the datasets view).

Test plan

  • Open a HiFSA study in upload and confirm the HiFSA panel shows scores plus shift/coupling overlays on the CT structure.
  • Confirm public study, sample, and dataset pages render the same panel when hifsa_data is present, and hide it when absent.
  • Load a HiFSA sample in NMRium and confirm EXTRA/hifsa files are not imported as spectra.
  • php artisan test --filter='HifsaAtomLabelsTest|HifsaNmriumFileFilterTest|DraftHifsaPdfTest|PublicHifsaViewTest'

Parse Cosmic Truth structures and atom maps, filter EXTRA/hifsa paths out of NMRium loads, and show HiFSA scores on public study, sample, and dataset pages.
@codecov

codecov Bot commented Sep 2, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 89.26554% with 19 lines in your changes missing coverage. Please review.
✅ Project coverage is 80.35%. Comparing base (8681915) to head (c774e00).

Files with missing lines Patch % Lines
app/Support/Draft/HifsaPdfResolver.php 83.11% 13 Missing ⚠️
app/Support/Hifsa/HifsaAtomLabels.php 93.58% 5 Missing ⚠️
app/Support/Hifsa/HifsaNmriumFileFilter.php 95.00% 1 Missing ⚠️
Additional details and impacted files
@@                Coverage Diff                @@
##             development    #1543      +/-   ##
=================================================
+ Coverage          80.26%   80.35%   +0.09%     
- Complexity          4481     4566      +85     
=================================================
  Files                293      295       +2     
  Lines              16424    16597     +173     
=================================================
+ Hits               13182    13336     +154     
- Misses              3242     3261      +19     
Flag Coverage Δ
unittests 80.35% <89.26%> (+0.09%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant