2.1 KiB
2.1 KiB
MI8 - Deterministic Seeds/Snapshots (Fixed RNG, Frozen Timestamps)
Module
Web
Status
PARTIALLY_IMPLEMENTED
Description
Deterministic fixture files exist for testing. Storybook preview is configured. However, specific chromatic.disableAnimation parameters and fixed seed exports from a micro-fixtures.ts file were not verified.
What's Implemented
- Existing services:
determinization(src/Web/StellaOps.Web/src/app/core/services/determinization/determinization.service.ts)
What's Missing
- Fixed RNG seed exports: No
micro-fixtures.tsfile exporting deterministic seed values for Storybook stories and tests - Frozen timestamps: No globally-configurable frozen timestamp provider for deterministic date rendering in snapshots
- chromatic.disableAnimation: Storybook preview may not have
chromatic.disableAnimationconfigured for consistent visual regression snapshots - Deterministic service integration:
determinization.service.tsexists but its usage across all Storybook stories for reproducible snapshots is not confirmed
Implementation Plan
- Create
micro-fixtures.tswith exported seed values and frozen timestamp provider - Configure
chromatic.disableAnimationin Storybook preview config - Wire
determinization.service.tsinto all Storybook stories for reproducible rendering - Add documentation for deterministic snapshot patterns
E2E Test Plan
- Setup:
- Log in with a user that has appropriate permissions
- Navigate to the relevant page/section where this feature appears
- Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
- Core verification:
- Verify the component renders correctly with sample data
- Verify interactive elements respond to user input
- Verify data is fetched and displayed from the correct API endpoints
- Edge cases:
- Verify graceful handling when backend API is unavailable (error state)
- Verify responsive layout at different viewport sizes
- Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)