发布

  • [OPIK-4224] [BE] Extend dataset_versions for evaluation suites (#5247)

    frostbyte_neo 发布于 2026-02-18 12:30:53 +00:00

    • [OPIK-4224] [BE] Extend dataset_versions table for evaluation suites (MySQL)

    Add evaluators (JSON) and execution_policy (JSON) columns to the MySQL
    dataset_versions table as version-level defaults for evaluation suites.

    • Liquibase migration adding nullable JSON columns
    • JDBI ColumnMapper+ArgumentFactory for List and ExecutionPolicy
    • DAO insertWithBaseVersion using COALESCE for SQL-level carry-forward
    • DatasetItemChanges extended to accept version-level evaluators/executionPolicy
    • E2E tests for version-level field retrieval and carry-forward on bump

    Implements OPIK-4224

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Add clearExecutionPolicy flag and evaluator mapper consistency fix
    • Add clearExecutionPolicy boolean to DatasetItemEdit, DatasetItemUpdate,
      and DatasetItemChanges for clearing execution policy at item and version level
    • Wire clearExecutionPolicy through DatasetVersionService and DatasetVersionDAO
      for version-level COALESCE override
    • Fix EvaluatorItemListColumnMapper to map [] to null (consistent with ClickHouse)
    • Add integration tests for clearExecutionPolicy and empty evaluators clearing

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Add DatasetType enum (dataset, evaluation_suite) to datasets table
    • Add DatasetType enum with DATASET (default) and EVALUATION_SUITE values
    • Add type column to Dataset record and DatasetDAO insert with COALESCE default
    • Add MySQL migration 000050 for type ENUM column with NOT NULL DEFAULT 'dataset'
    • Add integration tests for creating evaluation_suite and verifying default type

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Address review feedback: DatasetType validation, mapper cleanup, migration comment

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Use full-object comparison in dataset type tests

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Split createVersionFromDelta args to one per line with comments

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Extract AbstractJsonColumnMapper base class for DRY column mappers

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

    • [OPIK-4224] [BE] Return Optional from DatasetType.fromString, align with VisibilityMode pattern

    Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com


    Co-authored-by: Claude Opus 4.6 noreply@anthropic.com

    下载附件