TEST-INFRA: [test-data-quality] Replace hardcoded ULIDs in test fixtures with dynamic IDs #6057

Open
opened 2026-04-09 14:14:57 +00:00 by HAL9000 · 0 comments
Owner

Metadata

  • Branch: test/infra/test-data-quality-dynamic-ulids-in-fixtures
  • Commit Message: test(infra): replace hardcoded ULIDs in test fixtures with dynamic IDs
  • Milestone: Backlog
  • Parent Epic: #5407

Description

The test data fixtures in features/fixtures/m4/ use hardcoded ULIDs for identifying plans and subplans. This can lead to test flakiness and failures when tests are run in parallel, as it can cause ID collisions.

Examples:

  • features/fixtures/m4/correction_flows.json uses "plan_id": "01M4CORR0000000000000000001"
  • features/fixtures/m4/subplan_execution.json uses "parent_plan_id": "01M4PARENT000000000000000001"

This makes the tests less reliable and harder to maintain. Replacing hardcoded ULIDs with dynamically generated ones per test run will eliminate the risk of ID collisions in parallel test execution and improve overall test suite robustness.

Subtasks

  • Identify all test fixtures in features/fixtures/m4/ (and any other fixture directories) that use hardcoded ULIDs.
  • Implement a ULID generation helper in the test setup code (e.g., in features/steps/ or features/environment.py) to produce unique IDs per test run.
  • Update the test fixtures and/or step definitions to use the dynamically generated ULIDs instead of hardcoded values.
  • Verify that all affected Behave scenarios continue to pass after the change.
  • Ensure the tests can be run in parallel without ID collisions.

Definition of Done

  • All hardcoded ULIDs in features/fixtures/m4/ (and any other affected fixture directories) are replaced with dynamically generated ULIDs.
  • Tests are more robust and can be run in parallel without ID collisions.
  • The test suite is more reliable and easier to maintain.
  • All nox stages pass.
  • Coverage >= 97%.

Backlog note: This issue was discovered during autonomous operation
on milestone v3.7.0. It does not block milestone completion and has been
placed in the backlog for human review and future milestone assignment.


Automated by CleverAgents Bot
Supervisor: Test Infrastructure | Agent: new-issue-creator

## Metadata - **Branch**: `test/infra/test-data-quality-dynamic-ulids-in-fixtures` - **Commit Message**: `test(infra): replace hardcoded ULIDs in test fixtures with dynamic IDs` - **Milestone**: Backlog - **Parent Epic**: #5407 ## Description The test data fixtures in `features/fixtures/m4/` use hardcoded ULIDs for identifying plans and subplans. This can lead to test flakiness and failures when tests are run in parallel, as it can cause ID collisions. **Examples:** - `features/fixtures/m4/correction_flows.json` uses `"plan_id": "01M4CORR0000000000000000001"` - `features/fixtures/m4/subplan_execution.json` uses `"parent_plan_id": "01M4PARENT000000000000000001"` This makes the tests less reliable and harder to maintain. Replacing hardcoded ULIDs with dynamically generated ones per test run will eliminate the risk of ID collisions in parallel test execution and improve overall test suite robustness. ## Subtasks - [ ] Identify all test fixtures in `features/fixtures/m4/` (and any other fixture directories) that use hardcoded ULIDs. - [ ] Implement a ULID generation helper in the test setup code (e.g., in `features/steps/` or `features/environment.py`) to produce unique IDs per test run. - [ ] Update the test fixtures and/or step definitions to use the dynamically generated ULIDs instead of hardcoded values. - [ ] Verify that all affected Behave scenarios continue to pass after the change. - [ ] Ensure the tests can be run in parallel without ID collisions. ## Definition of Done - [ ] All hardcoded ULIDs in `features/fixtures/m4/` (and any other affected fixture directories) are replaced with dynamically generated ULIDs. - [ ] Tests are more robust and can be run in parallel without ID collisions. - [ ] The test suite is more reliable and easier to maintain. - [ ] All nox stages pass. - [ ] Coverage >= 97%. > **Backlog note:** This issue was discovered during autonomous operation > on milestone v3.7.0. It does not block milestone completion and has been > placed in the backlog for human review and future milestone assignment. --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: new-issue-creator
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
cleveragents/cleveragents-core#6057
No description provided.