发布

  • [OPIK-3756] [FE BE] Implement experiment TAGs rendering on the experiment page (#4690)

    frostbyte_neo 发布于 2026-01-15 11:06:39 +00:00

    • [OPIK-3756] Add support for displaying experiment tags in CompareExperimentsDetails
    • Integrated ExperimentTagsList component into CompareExperimentsDetails to display experiment tags when not in comparison view.
    • Updated Experiment type to include optional tags property.
    • [OPIK-3756] Add support for listing experiment tags in ExperimentsPage
    • Introduced ListCell component 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 experiment prop 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 GroupingQueryBuilder to allow array joins for grouping.
    • Added TAGS field to ExperimentSortingFactory, ExperimentGroupingFactory, and GroupingFactory.
    • Extended ExperimentDAO queries to include TAGS.
    • Enhanced FilterQueryBuilder to support filtering by LIST field types.
    • [OPIK-3756] Add validation for grouping field types in ExperimentGroupingFactory
    • Introduced validateFieldType method to enforce field type compatibility for grouping.
    • Added validation for DATASET_ID, METADATA, and TAGS fields.
    • 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 FilterQueryBuilder to support LIST field type for NOT_CONTAINS operator.
    • Added parameterized tests for filtering experiments by tags.
    • [OPIK-3756] Introduce testing for grouping experiments by the TAGS field 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 ExperimentGroupingFactory to reuse constant list of supported fields
    • Defined SUPPORTED_FIELDS as a static constant for METADATA, DATASET_ID, and TAGS.
    • Updated getSupportedFields method 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 ListComparators utility class with reusable ascending and descending list comparators.
    • Refactored ExperimentsResourceTest to use ListComparators for lexicographic comparison of list elements.
    • [OPIK-3756] Simplify experiment group sorting using Comparator for 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 getRowId to return unique identifiers for grouped rows.
    • Updated WorkspacePreloader to use useEffect for setting the default workspace name.
    • Ensured compatibility with LineDot type 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 uniqBy from Lodash

    • [OPIK-3756] Add default case to ExperimentGroupingFactory switch statement for error handling

    • Throw BadRequestException in the default case to ensure all unsupported field types are handled.
    • [OPIK-3756] Refactor getRowId logic and migrate to useExperimentsTableConfig
    • Restored original getRowId in DataTable/utils
    • Implemented getExperimentRowId in useExperimentsTableConfig to 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 ListCell renderer in the Experiments table of Prompt library section.
    • Replaced getRowId with getExperimentRowId from useExperimentsTableConfig for row ID generation.
    下载附件