Dashboard date filters accept invalid dates
- Dominant language
- Scala
- Stars
- 314
- Forks
- 187
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 214
Description
### Feature Summary
Dashboard date filters use lenient parsing and do not translate parse failures into client errors.
Before: a non-date value returns 500, while an impossible calendar date is silently normalized and returns 200.
After: malformed and impossible dates return 400, while valid ISO dates remain accepted.
Reproduction evidence:
1. Start the local development backend from main.
2. Request `GET /api/dashboard/publicSearch?resourceType=workflow&createDateStart=bogus` and observe HTTP 500.
3. Request the endpoint with `modifiedDateEnd=2026-99-99` and observe HTTP 200.
4. Request the endpoint with `createDateStart=2026-01-01` and observe HTTP 200.
Version and commit evidence:
1.3.0-incubating-SNAPSHOT (main)
**Commit Hash (Optional)**
98588bf2ab49aac65ebf002496eb057670e6fc07
**What browsers are you seeing the problem on?**
Not browser-specific.
**Relevant log output**
The shared date parser is lenient and exposes parsing failures as internal errors.
### Proposed Solution or Design
After: malformed and impossible dates return 400, while valid ISO dates remain accepted.
### Affected Area
Workflow Engine (Amber)
Contributor guide
Assessment
This issue has not been assessed yet.