fix(investments): align roles and date contracts
Backend security / security (push) Successful in 9s
Backend verify / verify (push) Successful in 10m23s
Backend security / security (pull_request) Successful in 8s
Backend verify / verify (pull_request) Successful in 10m39s
Conventional commits / commits (pull_request) Successful in 29s

Identify income dependencies by role and document screen-specific dates.
Convert inclusive calendar days into half-open source ranges while
preserving operation timestamps and existing stored coverage.
This commit is contained in:
2026-09-27 11:38:13 +03:00
parent e4232138d0
commit 516e43203e
18 changed files with 500 additions and 74 deletions
@@ -53,4 +53,18 @@ describe('income period planning', () => {
to: new Date('2026-08-27T21:44:18.510Z'),
});
});
it.each([
['2024-02-29', '2024-02-28T21:00:00.000Z', '2024-02-29T21:00:00.000Z'],
['2025-12-31', '2025-12-30T21:00:00.000Z', '2025-12-31T21:00:00.000Z'],
])('maps inclusive %s to one full half-open Moscow day', (date, from, to) => {
expect(
dateOnlyBounds(
{ from: date, to: date },
new Date('2026-01-01T12:00:00Z'),
),
).toEqual({
from: new Date(from),
to: new Date(to),
});
});
});