Skip to content

Conversation

@SFJohnson24
Copy link
Collaborator

@SFJohnson24 SFJohnson24 commented Dec 11, 2025

This PR does 2 things:

  • removes hardcoded requirement from get_allowed_variable_permissibility and the constants that was causing over reporting in CORE-000355 as it was making USUBJID, DOMAIN, --SEQ required in all datasets, regardless of class. With correct library metadata, this is unneeded.
  • for CORE-00550 -- updated the get_model_column_order as it was incorrectly looking into the model for the variables to get class variable information. The function now correctly uses the standard to ID the class for the domain, uses the class to grab the class variables for general observation and merges gen obs variables (as well as findings+findings about) and returns these. If it is not general observation, it checks for class variables in the model (this will be for AP), otherwise it looks for the dataset in the model then parses the variables from that. if it cannot find that (in the case of ES/TO for study ref, or some of the TIG specific special purpose domains that @chowsanthony mentioned, it grabs them from the standard dataset definitions. If it cannot find anything through any of these strategies, it returns None.

This also updates the unit tests-- correctly grabbing the variables from the general observation class, sorting on ordinal for the identifier, and adding the class variables into it. The test for required removes the variables that were getting pulled in from my first bullet as their requirement should be defined via the library variable data and not hardcoding.

to test: you will run these with trial data I will provide you.

@SFJohnson24 SFJohnson24 marked this pull request as ready for review December 11, 2025 21:24
Copy link
Collaborator

@RamilCDISC RamilCDISC left a comment

Choose a reason for hiding this comment

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

The PR updates how required and permitted variables are found for a domain. The updates were validated by:

  1. Reviewing the PR for any unwanted code or changes.
  2. Reviewing the PR in accordance with AC.
  3. Validating all unit and regression testing pass.
  4. Validating all testing updates were as required.
  5. Ensuring new tests added if required.
  6. Running manual validation using positive datasets.
  7. Running manual validations using negative datasets.
  8. Validating edge cases of missing values.
  9. Manually confirming the required and permissible variable fetched by engine with the browser.

@RamilCDISC RamilCDISC merged commit e8eb4f4 into main Dec 20, 2025
13 checks passed
@RamilCDISC RamilCDISC deleted the tig_library branch December 20, 2025 21:16
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