-
[OPIK-4381] [SDK] Automatically populate project_name when creating experiment items (#5187)
发布于
2026-02-17 12:53:32 +00:00 - [OPIK-4381] [BE] Make experiment_items.project_id nullable with fallback logic
- Made project_id column nullable in experiment_items table
- Added fallback logic to populate project_id from traces when not provided
- Updated ExperimentItemService to retrieve project_id from traces
- Added database migration script (000057)
- Fixed test data generation with ExperimentItemTypeManufacturer
- Updated tests to handle nullable project_id correctly
All 239 ExperimentsResourceTest tests passing.
- [OPIK-4381] [SDK] Auto-generated code for project_id field in experiment items
- Updated OpenAPI specs with nullable project_id
- Generated Python SDK types for ExperimentItem with project_id field
- Generated TypeScript SDK types for ExperimentItem with project_id field
- Updated ExperimentItemMessage to include optional project_id
- [OPIK-4381] [SDK] Automatically populate project_id when creating experiment items
- Added optional project_id field to ExperimentItemReferences
- Updated Experiment.insert() to fetch project_id from trace if not provided
- ExperimentItemMessage now includes project_id for backend processing
- Falls back to backend logic if project_id fetch fails
- [OPIK-4381] [SDK] Pass project_name from trace to experiment items
- Extract project_name from TraceData in evaluation engine helpers
- Pass project_name through ExperimentItemReferences to ExperimentItemMessage
- Update pytest plugin to include project_name from trace data
- Simplify experiment.insert() to use project_name instead of fetching project_id
- Add comprehensive unit tests for project_name flow
- Backend validates project_name matches trace's project and populates project_id
- [OPIK-4381] [TS SDK] Pass project_name from trace to experiment items
- Add optional project_name field to ExperimentItemReferences class
- Extract project_name from trace when creating experiment items in evaluation engine
- Pass project_name to backend when inserting experiment items
- Add comprehensive unit tests for project_name flow
- Backend validates project_name matches trace's project and populates project_id
- [OPIK-4381] [TS SDK] Add integration tests for project context in evaluations
- Add projectContext.test.ts with tests for explicit client/projectName usage
- Add TODO tests for implicit client resolution from dataset/prompts
- Verify experiment items correctly populate project_id from trace data
- Tests validate the fix for NULL project_id issue in experiment items
- [OPIK-4381] [Python SDK] Pass project_name when creating experiment items
- Add project_name field to experiment item creation in message processor
- Ensures experiment items include project_name for backend resolution
- Matches TypeScript SDK implementation
-
[OPIK-4381] [TS SDK] Fix lint errors in projectContext integration test
-
[OPIK-4381] [TS SDK] Remove unused task parameters in integration tests
下载附件