fix(SEC-REVIEW-3): Add @MaxLength to SearchQueryDto.q for consistency
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All other search DTOs (SemanticSearchBodyDto, HybridSearchBodyDto, BrainQueryDto, BrainSearchDto) already enforce @MaxLength(500) on their query fields. SearchQueryDto.q was missed, leaving the full-text knowledge search endpoint accepting arbitrarily long queries. Adds @MaxLength(500) decorator and validation test coverage. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
import { Logger } from "@nestjs/common";
|
||||
import { marked } from "marked";
|
||||
import { gfmHeadingId } from "marked-gfm-heading-id";
|
||||
import { markedHighlight } from "marked-highlight";
|
||||
import hljs from "highlight.js";
|
||||
import sanitizeHtml from "sanitize-html";
|
||||
|
||||
const logger = new Logger("MarkdownRenderer");
|
||||
|
||||
/**
|
||||
* Configure marked with GFM, syntax highlighting, and security features
|
||||
*/
|
||||
@@ -199,8 +202,8 @@ export async function renderMarkdown(markdown: string): Promise<string> {
|
||||
return safeHtml;
|
||||
} catch (error) {
|
||||
// Log error but don't expose internal details
|
||||
console.error("Markdown rendering error:", error);
|
||||
throw new Error("Failed to render markdown content");
|
||||
logger.error("Markdown rendering error:", error);
|
||||
throw new Error("Failed to render markdown content", { cause: error });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -225,8 +228,8 @@ export function renderMarkdownSync(markdown: string): string {
|
||||
|
||||
return safeHtml;
|
||||
} catch (error) {
|
||||
console.error("Markdown rendering error:", error);
|
||||
throw new Error("Failed to render markdown content");
|
||||
logger.error("Markdown rendering error:", error);
|
||||
throw new Error("Failed to render markdown content", { cause: error });
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user