Context
PR #115 introduced src/shared/lib/date-time/index.ts with nowUnix() and daysFromNowUnix(n) helpers to centralize Unix timestamp creation. However, the migration was incomplete — several production files still use the raw Math.floor(Date.now() / 1000) pattern.
Locations to migrate
Production code (must fix):
src/features/rpc-proxy/lib/mock.ts — lines 117, 230, 304, 323
src/widgets/landing/constants/demo-invoices.ts — line 31
Test utilities (optional):
src/shared/lib/test-utils/invoice-generator.ts — line 140 (test utils intentionally capturing raw Date.now() is acceptable; migrate only if it improves consistency)
Proposal
Replace all production occurrences with nowUnix() imported from @/shared/lib/date-time. No behavior change — purely mechanical substitution.
Acceptance Criteria
Links
Context
PR #115 introduced
src/shared/lib/date-time/index.tswithnowUnix()anddaysFromNowUnix(n)helpers to centralize Unix timestamp creation. However, the migration was incomplete — several production files still use the rawMath.floor(Date.now() / 1000)pattern.Locations to migrate
Production code (must fix):
src/features/rpc-proxy/lib/mock.ts— lines 117, 230, 304, 323src/widgets/landing/constants/demo-invoices.ts— line 31Test utilities (optional):
src/shared/lib/test-utils/invoice-generator.ts— line 140 (test utils intentionally capturing rawDate.now()is acceptable; migrate only if it improves consistency)Proposal
Replace all production occurrences with
nowUnix()imported from@/shared/lib/date-time. No behavior change — purely mechanical substitution.Acceptance Criteria
Math.floor(Date.now() / 1000)replaced withnowUnix()inmock.ts(4 occurrences) anddemo-invoices.ts(1 occurrence)test-utils/invoice-generator.ts— migrated or left with a comment explaining the intentional raw usagepnpm type-check:build && pnpm lintpassLinks
nowUnix()helpersrc/shared/lib/date-time/index.ts— helper implementation