Skip to content

[BI-2744] DeltaBreed:Create exp, create obs level#498

Open
HMS17 wants to merge 1 commit intodevelopfrom
feature/BI-2744
Open

[BI-2744] DeltaBreed:Create exp, create obs level#498
HMS17 wants to merge 1 commit intodevelopfrom
feature/BI-2744

Conversation

@HMS17
Copy link
Contributor

@HMS17 HMS17 commented Feb 24, 2026

Description

Story: BI-2744 - DeltaBreed:Create exp, create obs level

Added logic for experimental import to create observation levels for new exp units.

Added validation to check for more than one exp unit in file and return error if so (previous behavior just took the first row exp unit and silently ignored all other rows).

Note: Testing BI-2791 atop experiments made with these changes revealed a niche case where if an import file was made that forcibly included Exp Units of different casings (ie BaconPancakes and BaconPANCAKES), downloading for a particular environment(s) rather than "All Environments" resulted in the download failing due to a null pointer exception because in BrAPITrialService.java:exportObservations, the hash "entry" would get an additional value with a null key for the alternate casing version of the Exp Unit. Since this logic is dependent upon the Exp Unit value stored in additionalInfo, it was determined that the fix should be covered in BI-2778, which will deprecate use of additionalInfo for level, and that case tested there.

Dependencies

bi-web: feature/BI-2744

Testing

  • Create experiment file with multiple exp unit values
    -- Attempt to upload file
    -- Error message should appear and file upload should be prevented

  • Create experiment file with new exp unit value (not Plot)
    -- Upload file
    -- Ensure Experiment Preview displays the exp unit value as capitalized regardless of what case the value was in file
    -- Confirm Import and ensure file imports successfully
    -- Ensure Experiment Details displays the exp unit value as capitalized regardless of what case the value was in file
    -- Check that the GET /observationlevels call for that program returns the new exp unit value

  • Create experiment file with same exp unit value as the first upload
    -- Upload file
    -- Confirm Import and ensure file imports successfully

Checklist:

  • I have performed a self-review of my own code
  • I have tested my code and ensured it meets the acceptance criteria of the story
  • I have create/modified unit and/or integration tests to cover this change or tests are not applicable
  • I have commented my code, particularly in hard-to-understand areas
  • I have either updated the source of truth or arranged for update with product owner if needed https://breedinginsight.atlassian.net/wiki/spaces/BI/pages/1559953409/Source+of+Truth

@jloux-brapi
Copy link
Collaborator

Tested with FB. Endless fetching error has been resolved with this change!

@HMS17 HMS17 marked this pull request as ready for review February 25, 2026 15:56
@HMS17 HMS17 requested review from a team and davedrp and removed request for a team February 25, 2026 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants