Skip to content

Consolidate Setup Tool, Configuration Tool, and Preloaded Tree Creation#7674

Open
CarolineDenis wants to merge 402 commits intomainfrom
issue-2931-2
Open

Consolidate Setup Tool, Configuration Tool, and Preloaded Tree Creation#7674
CarolineDenis wants to merge 402 commits intomainfrom
issue-2931-2

Conversation

@CarolineDenis
Copy link
Contributor

@CarolineDenis CarolineDenis commented Jan 28, 2026

Fixes #7673
See issue description

(Cloned from #6671)

alesan99 and others added 30 commits January 5, 2026 14:38
Fix creat_institution not returning institution ID
Scope default picklist search to collection
Triggered by 7e7735c on branch refs/heads/issue-2931-1
Apply patches
Triggered by 86f866a on branch refs/heads/issue-2931-1
Triggered by 41fa184 on branch refs/heads/issue-2931-1
Fix: overview table height
Triggered by 4e05e20 on branch refs/heads/issue-2931-1
Copy link
Collaborator

@emenslin emenslin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1. Setup Flow

  • All setup forms must display correctly in both light mode and dark mode (based on system settings).
  • Users can only progress to the next form once all required fields are completed.
  • User selections must be reflected in the Overview sidebar in real time.
  • The setup flow must be submittable at the end.
  • Users must be able to log into the database after setup completes.
  • Default schema configuration captions and descriptions must be populated (not blank).
  • Default picklists must be created correctly.
  • Default preparation types must be created correctly.
  • All tree viewer pages must load without errors.
  • The admin user’s agent must be created correctly and must always include a last name.
  • An empty Global Preferences file must be created in App Resources.

2. Tree Configuration During Setup

  • Users must be able to modify the storage tree configuration during setup.
  • Changes must be correctly reflected in the application after setup.
  • Users must be able to modify the geography tree configuration during setup.
  • Both options must work:
    Preloaded tree
    Empty tree
  • Users must be able to select a preloaded default tree when one exists.
  • The selected tree must be correctly preloaded and visible when the app opens.
  • Relevant tectonic and chronostratigraphic (chrono) trees must be created automatically.

3. Tree Viewer: Preloaded & Empty Trees

  • Users can create an empty tree from the tree viewer.
  • Users can modify rank configuration in the tree viewer.
  • Users can create a preloaded tree from the tree viewer.
  • Empty trees now have an upload button. The Upload Tree icon under root creation must work as expected.
  • Users can delete a rank with no associated nodes.
  • If ranks are deleted and a tree is then loaded, the tree configuration must be respected.
  • Users receive notifications for:
    Tree creation start
    Successful completion
    Errors or cancellation

4. Configuration Tool
Institution Tree Viewer

  • Users cannot access config tool if they are not an institution admin.
  • Users can click and drag to view all nodes in the institution tree.
  • Clicking a resource node opens the resource form.
    • Users cannot create a discipline with a discipline name that is already in use.
  • Users can:
    • Edit a resource
    • Create new resources
    • Delete collections (created in 7)
  • Users cannot create collections through the subview in a discipline form.
  • Users can collapse and expand sections in the left panel.
  • Users can switch between vertical and horizontal views in the institution tree viewer.

Link to DB I did most of the testing on: https://blankdbsetup1elizabeth20260217-issue-2931-2.test.specifysystems.org/specify/

Trees

• When first loading up the DB it shows “Tree creation in progress”, but after going back to it later it shows the initialize empty tree and populate taxon tree buttons, even though I selected pre-load tree. Pre-loaded taxon trees never seem to upload, I tried the minerology tree on DB creation (I checked multiple times throughout testing and it never uploaded) and I also tried the Invert Zoology tree through the system config and that one also never uploaded and changed from the tree creation in progress dialog to the buttons.
• I also tried to go through and populate an empty tree with default records and it gets stuck on the creation dialog without any progress happening and no notification is sent. After several minutes I eventually did get a notification that the tree creation started and finished basically one after another and only one node was added and all ranks below kingdom were deleted.

Image
  • When adding a second tree through the plus icon the progress bar does move, notifications are sent, and the tree uploads successfully, not sure why it’s different there.

• Two tectonic unit and two lithostrat trees were created initially “Tectonicunit” and “Tectonicunit_1” and “Lithostrat” and “Lithostrat_1”

Image Image

I also noticed a few minor things with trees, not necessarily bugs but could be improved:

  • The Chronostrat tree is called "geologictimeperiod", not necessarily a problem but shouldn't it be called "Chronostrat" or "Chronostratigraphy" this also goes for the Tectonic unit tree being one word instead of two.
Image
  • Depending on the tree you are trying to upload the "Tree creation in progress" line in the tree can look really weird, is there anyway to make it look better, especially on large trees with multiple ranks?
Image

Config Tool

• Non-institution admin can edit the institution config. Tested on https://ojsmnhtest20251216-issue-2931-2.test.specifysystems.org/specify/system-configuration/ since you cannot create new users on a blank DB

02-17_09.25.mp4
  • If you create another division you still cannot log into it; however, the issue with creating new disciplines was fixed.

Copy link
Contributor

@kwhuber kwhuber left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1. Setup Flow
Setup Forms

  • All setup forms must display correctly in both light mode and dark mode (based on system settings).
  • Users can only progress to the next form once all required fields are completed.
  • User selections must be reflected in the Overview sidebar in real time.
  • The setup flow must be submittable at the end.
  • Users must be able to log into the database after setup completes.

Default Data & Configuration

  • Default schema configuration captions and descriptions must be populated (not blank).
  • Default picklists must be created correctly.
    • Note: The Agent Type picklist does not exist in the schema config, this is expected.
  • Default preparation types must be created correctly.
  • All tree viewer pages must load without errors.
  • The admin user’s agent must be created correctly and must always include a last name.
  • An empty Global Preferences file must be created in App Resources.

2. Tree Configuration During Setup
Storage Tree

  • Users must be able to modify the storage tree configuration during setup.
  • Changes must be correctly reflected in the application after setup.

Geography Tree

  • Users must be able to modify the geography tree configuration during setup.
  • Both options must work:
    Preloaded tree
    Empty tree

Taxon Tree

  • Users must be able to select a preloaded default tree when one exists.
  • The selected tree must be correctly preloaded and visible when the app opens.
  • Verified with Mammalogy.

Geology Discipline

  • Relevant tectonic and chronostratigraphic (chrono) trees must be created automatically.
  • Verified with Paleobotany.

3. Tree Viewer: Preloaded & Empty Trees

  • Testing on Paleobotany:
  • Users can create an empty tree from the tree viewer.
  • Users can modify rank configuration in the tree viewer.
  • Users can create a preloaded tree from the tree viewer.
  • Loading in a Geology (Minerals) tree did not work. I received a "default tree creation failed" message in the notifications tab. However, various other trees I chose like Invertebrate Zoology, Mammalogy, and Aves populated correctly.
  • Empty trees now have an upload button. The Upload Tree icon under root creation must work as expected.
  • Is this referring to the "Initialize an empty tree" link? If so, it works as expected and creates a root node.
  • Users can delete a rank with no associated nodes.
  • If ranks are deleted and a tree is then loaded, the tree configuration must be respected.
  • Saw the missing rank dialog and still had my deletions respected.
  • Users receive notifications for:
    Tree creation start
    Successful completion
    Errors or cancellation
  • Testing on Mammalogy:
  • Users can create an empty tree from the tree viewer.
  • Users can modify rank configuration in the tree viewer.
  • Users can create a preloaded tree from the tree viewer.
  • Same issue as above with the Geology (Minerals) tree.
  • Empty trees now have an upload button. The Upload Tree icon under root creation must work as expected.
  • Same comment that corresponds above.
  • Users can delete a rank with no associated nodes.
  • If ranks are deleted and a tree is then loaded, the tree configuration must be respected.
  • Users receive notifications for:
    Tree creation start
    Successful completion
    Errors or cancellation
  • I also wanted to comment about the tree creation process. When populating a tree in the tree viewer, after the tree has been created the user is returned to the tree where the initially clicked the plus button and not to the newly added tree.

4. Configuration Tool
Institution Tree Viewer

  • Users cannot access config tool if they are not an institution admin.
  • Collection admins have access.
  • Users can click and drag to view all nodes in the institution tree.
  • Clicking a resource node opens the resource form.
    • Users cannot create a discipline with a discipline name that is already in use.
  • Users can:
    • Edit a resource
    • Create new resources
    • Delete collections (created in 7)
  • I am receiving a similar crash to an earlier review I did of this PR when I delete collections:
Screen.Recording.2026-02-17.at.1.42.08.PM.mov
  • Users cannot create collections through the subview in a discipline form.
  • Users can collapse and expand sections in the left panel.
  • Users can switch between vertical and horizontal views in the institution tree viewer.

@CarolineDenis
Copy link
Contributor Author

CarolineDenis commented Feb 18, 2026

  • Preload trees are never uploaded for Geology (febf77b)
  • Two tectonic trees and two litho trees are being created when choosing geology in setup (3aadb01)
  • Chronostrat is called geologictime (444e803)
  • Tree creation warning looks ugly (e1605da)
  • Non-institution admin can edit the institution config (The page will not be accessible for non-admin users) (dd93024)
  • If you create another division you still cannot log into it
  • Error when deleting the collection you are logged into (c8e5582)

@acwhite211
Copy link
Member

There error with not being able to login to a new collection that was created within a new division was due to no agent being created for the user, in the new division.

This triggered the middleware function for getting the agent to return None

def get_agent(request):
try:
return filter_by_collection(Agent.objects, request.specify_collection) \
.select_related('specifyuser') \
.get(specifyuser=request.specify_user)
except Agent.DoesNotExist:
return None

The solution was to create the new agent for the current user when creating a new division in the configuration tool.

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

Labels

None yet

Projects

Status: Dev Attention Needed

Development

Successfully merging this pull request may close these issues.

Consolidate Setup Tool, Configuration Tool, and Preloaded Tree Creation

7 participants

Comments