feat(discovery): add FindingDrawer component and restructure i18n keys

- Add FindingDrawer component for displaying finding details when no
  associated issue exists
- Refactor i18n keys for better organization:
  - status.* → session.status.* (session-related)
  - severity.* → findings.severity.* (finding-related)
- Update DiscoveryDetail to show FindingDrawer for orphan findings
- Add severity/priority mapping in discovery-routes for compatibility
This commit is contained in:
catlog22
2026-02-28 16:26:11 +08:00
parent c3ddf7e322
commit cd54c10256
10 changed files with 291 additions and 25 deletions

View File

@@ -262,7 +262,13 @@ function flattenFindings(perspectiveResults: any[]): any[] {
const allFindings: any[] = [];
for (const result of perspectiveResults) {
if (result.findings) {
allFindings.push(...result.findings);
// Map backend 'priority' to frontend 'severity' for compatibility
const mappedFindings = result.findings.map((f: any) => ({
...f,
severity: f.severity || f.priority || 'medium',
sessionId: f.discovery_id || result.discovery_id
}));
allFindings.push(...mappedFindings);
}
}
return allFindings;

View File

@@ -105,8 +105,8 @@ export const schema: ToolSchema = {
name: 'write_file',
description: `Write content to file. Auto-creates parent directories.
Usage: write_file(path="file.js", content="code here")
Options: backup=true (backup before overwrite), createDirectories=false (disable auto-creation), encoding="utf8"`,
Required: path (string), content (string)
Options: backup=true, createDirectories=false, encoding="utf8"`,
inputSchema: {
type: 'object',
properties: {