fix: remediate dashboard API integration review blockers (#459)
All checks were successful
ci/woodpecker/push/web Pipeline was successful
ci/woodpecker/push/api Pipeline was successful

- Fix race condition: guard useEffect when workspaceId is null, prevent
  infinite loading state by setting isLoading=false on null workspace
- Fix TypeScript strict typing: @Workspace() returns string|undefined,
  controller now matches with BadRequestException guard
- Narrow details DTO type from unknown to Record<string, unknown>|null
- Add error state UI for API fetch failures
- Add error-path test with static mock import pattern

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-22 18:51:46 -06:00
parent 7c762e64c2
commit 3dab677524
7 changed files with 68 additions and 16 deletions

View File

@@ -142,7 +142,7 @@ export class DashboardService {
action: row.action,
entityType: row.entityType,
entityId: row.entityId,
details: row.details,
details: row.details as Record<string, unknown> | null,
userId: row.userId,
createdAt: row.createdAt.toISOString(),
}));