diff --git a/internal/config/template/scan_template.json b/internal/config/template/scan_template.json index 5dcf30ac..6d9ef4c8 100644 --- a/internal/config/template/scan_template.json +++ b/internal/config/template/scan_template.json @@ -9,8 +9,8 @@ "role": "user", "content": "{{current_file_path}}\n\n\n{{file_content}}\n\n\nCurrent time in the real world: {{current_system_date_time}}\n\n\n### Requirement Background (Optional)\n{{requirement_background}}\n\n### Review Checklist\n{{system_rule}}\n\n### Pre-scan Focus Areas\n{{plan_guidance}}\n\nReview the entire source file in and report all findings via code_comment, then call task_done.\n" } - ], - "timeout": 180 + ] + }, "PLAN_TASK": { "messages": [ @@ -22,8 +22,8 @@ "role": "user", "content": "{{current_file_path}}\n\n\n{{file_content}}\n\n\nCurrent time: {{current_system_date_time}}\n\n### Review Checklist (project rules)\n{{system_rule}}\n\nProduce the JSON focus checklist now." } - ], - "timeout": 90 + ] + }, "DEDUP_TASK": { "messages": [ @@ -35,8 +35,8 @@ "role": "user", "content": "\n{{batch_comments}}\n\n\nProduce the dedup groups JSON now." } - ], - "timeout": 90 + ] + }, "PROJECT_SUMMARY_TASK": { "messages": [ @@ -48,8 +48,8 @@ "role": "user", "content": "Total comments: {{comment_count}} across {{file_count}} files.\n\n\n{{all_comments}}\n\n\nProduce the project summary markdown now." } - ], - "timeout": 120 + ] + }, "MEMORY_COMPRESSION_TASK": { "messages": [ @@ -61,8 +61,7 @@ "role": "user", "content": "{{context}}" } - ], - "timeout": 120 + ] }, "RE_LOCATION_TASK": { "messages": [ @@ -74,8 +73,8 @@ "role": "user", "content": "Below is a unified diff and a review comment. Identify the minimal contiguous code range in the diff that the comment targets.\n\nRules:\n1. Copy the relevant lines VERBATIM from the diff — do not rewrite, reformat, or add anything.\n2. Strip leading diff markers (`+`, `-`, ` `) from each line before outputting.\n3. Include only the lines directly related to the issue — no surrounding context.\n4. If multiple disjoint locations apply, pick the single most relevant one.\n5. Output ONLY a fenced code block. No explanation, no commentary.\n\n**Diff:**\n```diff\n{diff}```\n\n**Original code snippet (failed to match):**\n```\n{existing_code}\n```\n\n**Review comment:**\n{suggestion_content}" } - ], - "timeout": 180 + ] + }, "MAX_TOKENS": 58888, "MAX_TOOL_REQUEST_TIMES": 60, diff --git a/internal/config/template/template.go b/internal/config/template/template.go index 889fffc9..f71993e0 100644 --- a/internal/config/template/template.go +++ b/internal/config/template/template.go @@ -54,7 +54,7 @@ type manifestMessage struct { } type manifestConversation struct { - Timeout int `json:"timeout"` + Messages []manifestMessage `json:"messages"` } @@ -70,7 +70,7 @@ type templateManifest struct { } func resolveConversation(m manifestConversation) (LlmConversation, error) { - conv := LlmConversation{Timeout: m.Timeout} + conv := LlmConversation{} conv.Messages = make([]ChatMessage, len(m.Messages)) for i, mm := range m.Messages { data, err := templateFS.ReadFile("prompts/" + mm.PromptFile) @@ -214,7 +214,7 @@ func (t *ScanTemplate) Validate() error { // LlmConversation mirrors LlmConversation from the Java side — a preset prompt with settings. type LlmConversation struct { - Timeout int `json:"timeout"` + Messages []ChatMessage `json:"messages"` } diff --git a/pages/src/components/Navbar.tsx b/pages/src/components/Navbar.tsx index 2ea18aac..932f635b 100644 --- a/pages/src/components/Navbar.tsx +++ b/pages/src/components/Navbar.tsx @@ -14,7 +14,7 @@ const LANG_OPTIONS: { value: Language; label: string }[] = [ ]; const navTabs = [ - { path: '/', labelKey: 'navbar.features' }, + { path: '/features', labelKey: 'navbar.features' }, { path: '/benchmark', labelKey: 'navbar.benchmark' }, { path: '/quickstart', labelKey: 'navbar.quickstart' }, { path: '/docs', labelKey: 'navbar.docs' },