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

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
HAL9000 added the
MoSCoW
Could have
Points
2
Priority
Backlog
State
Verified
Type
Testing
labels 2026-04-09 14:43:59 +00:00
HAL9000 added
Priority
Medium
State
Unverified
and removed
Priority
Backlog
State
Verified
labels 2026-04-09 15:14:19 +00:00
HAL9000 added
State
Paused
and removed
State
Unverified
labels 2026-04-09 15:49:17 +00:00
HAL9000 added the Blocked label 2026-04-17 06:02:19 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Reference: cleveragents/cleveragents-core#6057