-
[OPIK-3756] [FE BE] Implement experiment TAGs rendering on the experiment page (#4690)
发布于
2026-01-15 11:06:39 +00:00 - [OPIK-3756] Add support for displaying experiment tags in CompareExperimentsDetails
- Integrated
ExperimentTagsListcomponent intoCompareExperimentsDetailsto display experiment tags when not in comparison view. - Updated
Experimenttype to include optionaltagsproperty.
- [OPIK-3756] Add support for listing experiment tags in ExperimentsPage
- Introduced
ListCellcomponent for displaying tag lists. - Added "Tags" column to ExperimentsPage table and filters.
- Updated backend to support filtering experiments by tags.
-
[OPIK-3756] Added missing file
-
[OPIK-3756] Fixed FE lint issues in ExperimentTagsList component
-
[OPIK-3756] Made
experimentprop required in ExperimentTagsList to avoid undefined error -
[OPIK-3756] Add support for LIST grouping and enhance TAGS handling in sorting, filtering, and grouping
- Introduced LIST field support in
GroupingQueryBuilderto allow array joins for grouping. - Added TAGS field to
ExperimentSortingFactory,ExperimentGroupingFactory, andGroupingFactory. - Extended
ExperimentDAOqueries to include TAGS. - Enhanced
FilterQueryBuilderto support filtering by LIST field types.
- [OPIK-3756] Add validation for grouping field types in
ExperimentGroupingFactory
- Introduced
validateFieldTypemethod to enforce field type compatibility for grouping. - Added validation for
DATASET_ID,METADATA, andTAGSfields. - Updated tests to cover new validation logic.
- [OPIK-3756] Add support for the LIST field in the NOT_CONTAINS operator and enhance filtering by tags
- Extended
FilterQueryBuilderto supportLISTfield type forNOT_CONTAINSoperator. - Added parameterized tests for filtering experiments by tags.
- [OPIK-3756] Introduce testing for grouping experiments by the
TAGSfield with a LIST type
- Added logic to explode experiments based on LIST fields, including
TAGS, during grouping in tests. - Expanded tests to validate LIST-based grouping and filtering by
TAGS.
- [OPIK-3756] Refactor
ExperimentGroupingFactoryto reuse constant list of supported fields
- Defined
SUPPORTED_FIELDSas a static constant forMETADATA,DATASET_ID, andTAGS. - Updated
getSupportedFieldsmethod to return the new constant.
- [OPIK-3756] Simplify TAGS field validation in
ExperimentGroupingFactory
- Updated TAGS field validation to restrict allowable type to LIST only.
- [OPIK-3756] Refactor test utilities and enhance TAGS-related logic in tests
- Replaced static tag lists with dynamically generated tag sets using
PodamFactoryUtils. - Improved tag filtering in tests to use the first element directly from the iterator.
- Enhanced experiment grouping tests with additional validation for TAGS field compatibility.
- Added deterministic ordering for equal timestamps in
ExperimentResponseBuilder.
- [OPIK-3756] Add parameterized tests for sorting experiments by TAGS field
- Introduced tests for sorting experiments by TAGS field in both ascending and descending order.
- Verified deterministic ordering for cases with tied TAGS values.
- [OPIK-3756] Extract list comparison logic into utility class and refactor tests
- Added
ListComparatorsutility class with reusable ascending and descending list comparators. - Refactored
ExperimentsResourceTestto useListComparatorsfor lexicographic comparison of list elements.
-
[OPIK-3756] Simplify experiment group sorting using
Comparatorfor improved readability -
[OPIK-3756] Improve experiment selection and grouping logic; refactor workspace preloader
- Enhanced row selection to handle grouped experiments by supporting compound row IDs.
- Modified
getRowIdto return unique identifiers for grouped rows. - Updated
WorkspacePreloaderto useuseEffectfor setting the default workspace name. - Ensured compatibility with
LineDottype by rendering invisible dots as circles with a radius of 0.
-
[OPIK-3756] Restored to original. May result in warning
-
[OPIK-3756] Simplify row deduplication in experiments table using
uniqByfrom Lodash -
[OPIK-3756] Add default case to
ExperimentGroupingFactoryswitch statement for error handling
- Throw
BadRequestExceptionin the default case to ensure all unsupported field types are handled.
- [OPIK-3756] Refactor
getRowIdlogic and migrate touseExperimentsTableConfig
- Restored original
getRowIdinDataTable/utils - Implemented
getExperimentRowIdinuseExperimentsTableConfigto generate unique IDs for grouped experiments leveraging grouping field values.
-
[OPIK-3756] Fixed backend formatting
-
[OPIK-3756] Add the "Tags" column to the Experiments table of the Prompt library section and update row ID logic
- Introduced a new "Tags" column with
ListCellrenderer in the Experiments table of Prompt library section. - Replaced
getRowIdwithgetExperimentRowIdfromuseExperimentsTableConfigfor row ID generation.
下载附件