Skip to content

[bot] Merge 26.9 to develop - #47

Merged
github-actions[bot] merged 7 commits into
developfrom
fb_bot_merge_26.9
Sep 16, 2026
Merged

github-actions[bot] merged 7 commits into
developfrom
fb_bot_merge_26.9

Conversation

@github-actions

Copy link
Copy Markdown

Generated automatically.
Merging changes from: 4dd2181
Approve all matching PRs simultaneously.
Approval will trigger automatic merge.
Verify all PRs before approving: https://internal.labkey.com/Scrumtime/Backlog/harvest-gitOpenPullRequests.view?branch=fb_bot_merge_26.9

labkey-martyp and others added 7 commits September 11, 2026 04:59
## Rationale

The Rearrival form collects fields that do not apply to a returning
animal and omits the ones that do, and a completed rearrival leaves the
animal in a departed state. It asks for an acquisition type and a CITES
number, though an animal that is coming back was already acquired, and
it does not ask which project, protocol, group or location the animal
returns to. This reverses the decision in #28 to leave rearrivals out of
those assignment fields: a departure closes an animal's project,
protocol, group and housing records, so a returning animal has none of
them left to keep and each has to be opened again, along with putting
the animal back to Alive.

## Related Pull Requests

- LabKey/ehrModules#1200 — needed alongside this
change, since entering a death for an animal that has arrived more than
once fails without it.

## Changes

- Replace acquisition type and CITES on the Rearrival form with project,
protocol, group and location, each required, as they are on the Arrival
form.
- Open the project assignment, protocol assignment, group membership and
housing records for a rearrival, matching what an arrival already does.
- Return a rearrived animal to Alive once the rearrival is completed.
## Rationale

Housing history and the animal snapshot panel were displaying only the
bare cage, losing the room that qualifies it, so two animals in
identically-named cages in different rooms were indistinguishable. This
also provisions a morning health flag on rooms so the rooms included in
morning health checks can be maintained as lookup data, and drops the
requirement that a housing reason be supplied.

## Related Pull Requests

None.

## Changes

- The housing history data source and the snapshot panel now read the
room-qualified location key directly rather than traversing to the cage
lookup.
- Added a morning health flag to the rooms lookup table.
- Made the reason field optional on housing records.
- Added a test that houses an animal and verifies the snapshot reports
the full location.
#42)

## Rationale

Moves conception records out of the nbri_ehr schema into a study dataset
keyed on the dam and the conception date, and adds an elapsed day count
so how far along a pregnancy is can be seen wherever a conception
appears.

As a dataset the records pick up the EHR framework's participant
handling, QC state workflow and audit behaviour, all of which the hard
table had been reproducing by hand — a whole trigger script existed only
to announce the modified dam, because the table had no Id column to
announce her from. It also leaves the nbri_ehr schema with no tables,
though its custom queries stay.

Two consequences are worth knowing when reviewing: existing conception
rows are not migrated, and the conception Id uniqueness the database
used to enforce is now enforced by the trigger script. The upgrade
script drops the old table but does not reload the folder, so an
existing container needs a study reload before the dataset exists and
the conception form and its queries resolve.

## Related Pull Requests

None.

## Changes

- Conception records moved to a study dataset filed against the dam,
with the conception date as the record date; the old table is dropped
without migrating its rows.
- Data entry, the animal snapshot, the dam report, and the birth and
pregnancy outcome triggers all read the dataset instead of the schema
table.
- The hand-maintained QC state metadata and the dam-announcing trigger
are gone, replaced by what the dataset provides natively.
- Conception Id uniqueness is now enforced by the trigger script rather
than a database constraint.
- Each conception carries a calculated count of days elapsed since the
conception date, shown on the dam report and beside the conception Id in
the animal snapshot's Pregnant field.
- The snapshot reads that count from the cached demographics record, so
it can trail the report by up to a day.
## Rationale

Makes the full protocol and project record visible where people actually
work with it, in the ehr default views and in the Assignment data entry
form. Each default view showed only a handful of the table's columns —
four on project, eleven on protocol — so most of the record was
reachable only through Customize Grid. On the Assignment form a row
identified its protocol and project by id alone, with no way to see the
protocol's description, the project's account, or which investigator
owns a protocol.

## Changes

- Both default views now list the columns that make up the working
record, and the column metadata no longer marks those columns hidden.
The free-text investigator fields that predate the investigator lookup
stay hidden and out of the views.
- Both default views are now overridable, so a container can save its
own default view over the module's.
- The Protocol Assignment grid gains a read-only column showing the
selected protocol's description.
- The Project Assignment grid gains a read-only column showing the
selected project's account.
- Every protocol dropdown — assignment, arrival and birth — now
identifies a protocol by its display name and its investigator, and the
assignment column is wider to suit.
- The Selenium suite covers the new columns and the dropdown text, and
its protocol fixtures carry descriptions and point at real investigator
records.
…est validation waits (#43)

## Rationale

Corrects the group assignment trigger configuration, restores the
project, protocol and investigator admin forms that were lost when those
lists moved to Manage Lookup Tables, and makes the module's test
validation waits reliable. The trigger problem reached beyond this
module: the option is held in a single server-wide map, so whichever EHR
module started last decided which datasets close on new entry for every
container. The branch also retires lookups and a death type that are no
longer used, and adds a Groups report to the animal page.

## Related Pull Requests

None.

## Changes

- Set the datasets closed on new entry per request from this module's
own trigger script instead of registering them server-wide.

- Re-register the project, protocol and investigator data entry form
types so those lists are editable from both the forms and Manage Lookup
Tables.

- Add a Groups report to the animal page, and stop forcing the group
membership start date to midnight.

- Retire 14 unused lookups and the redundant Cull death type.

- Re-validate the form before failing when a validation message does not
clear, and remove the duplicate conception test's unpassable error wait.
@github-actions
github-actions Bot merged commit c53b8b2 into develop Sep 16, 2026
3 checks passed
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.

3 participants