mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-02-03 08:53:36 +00:00
fix: address PR review feedback from Gemini Code Assist
Address three issues identified in code review: 1. Fix missing thinkingLevel parameter (Critical) - Added thinkingLevel parameter to enhance API call - Updated electron.ts type definition to match http-api-client - Fixes functional regression in Claude model enhancement 2. Refactor dropdown menu to use constants dynamically - Changed hardcoded DropdownMenuItem components to dynamic generation - Now iterates over ENHANCEMENT_MODE_LABELS object - Ensures automatic sync when new modes are added - Eliminates manual UI updates for new enhancement modes 3. Optimize array reversal performance - Added useMemo hook to memoize reversed history array - Prevents creating new array on every render - Improves performance with lengthy histories All TypeScript errors resolved. Build verified. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -64,7 +64,8 @@ export function EnhanceWithAI({
|
|||||||
const result = await api.enhancePrompt?.enhance(
|
const result = await api.enhancePrompt?.enhance(
|
||||||
value,
|
value,
|
||||||
enhancementMode,
|
enhancementMode,
|
||||||
enhancementOverride.effectiveModel
|
enhancementOverride.effectiveModel,
|
||||||
|
enhancementOverride.effectiveModelEntry.thinkingLevel
|
||||||
);
|
);
|
||||||
|
|
||||||
if (result?.success && result.enhancedText) {
|
if (result?.success && result.enhancedText) {
|
||||||
@@ -108,21 +109,13 @@ export function EnhanceWithAI({
|
|||||||
</Button>
|
</Button>
|
||||||
</DropdownMenuTrigger>
|
</DropdownMenuTrigger>
|
||||||
<DropdownMenuContent align="start">
|
<DropdownMenuContent align="start">
|
||||||
<DropdownMenuItem onClick={() => setEnhancementMode('improve')}>
|
{(Object.entries(ENHANCEMENT_MODE_LABELS) as [EnhancementMode, string][]).map(
|
||||||
{ENHANCEMENT_MODE_LABELS.improve}
|
([mode, label]) => (
|
||||||
</DropdownMenuItem>
|
<DropdownMenuItem key={mode} onClick={() => setEnhancementMode(mode)}>
|
||||||
<DropdownMenuItem onClick={() => setEnhancementMode('technical')}>
|
{label}
|
||||||
{ENHANCEMENT_MODE_LABELS.technical}
|
</DropdownMenuItem>
|
||||||
</DropdownMenuItem>
|
)
|
||||||
<DropdownMenuItem onClick={() => setEnhancementMode('simplify')}>
|
)}
|
||||||
{ENHANCEMENT_MODE_LABELS.simplify}
|
|
||||||
</DropdownMenuItem>
|
|
||||||
<DropdownMenuItem onClick={() => setEnhancementMode('acceptance')}>
|
|
||||||
{ENHANCEMENT_MODE_LABELS.acceptance}
|
|
||||||
</DropdownMenuItem>
|
|
||||||
<DropdownMenuItem onClick={() => setEnhancementMode('ux-reviewer')}>
|
|
||||||
{ENHANCEMENT_MODE_LABELS['ux-reviewer']}
|
|
||||||
</DropdownMenuItem>
|
|
||||||
</DropdownMenuContent>
|
</DropdownMenuContent>
|
||||||
</DropdownMenu>
|
</DropdownMenu>
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { useState } from 'react';
|
import { useState, useMemo } from 'react';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/button';
|
||||||
import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';
|
import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';
|
||||||
import { History } from 'lucide-react';
|
import { History } from 'lucide-react';
|
||||||
@@ -69,6 +69,9 @@ export function EnhancementHistoryButton<T extends BaseHistoryEntry>({
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Memoize reversed history to avoid creating new array on every render
|
||||||
|
const reversedHistory = useMemo(() => [...history].reverse(), [history]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Popover open={showHistory} onOpenChange={setShowHistory}>
|
<Popover open={showHistory} onOpenChange={setShowHistory}>
|
||||||
<PopoverTrigger asChild>
|
<PopoverTrigger asChild>
|
||||||
@@ -88,7 +91,7 @@ export function EnhancementHistoryButton<T extends BaseHistoryEntry>({
|
|||||||
<p className="text-xs text-muted-foreground mt-1">Click a version to restore it</p>
|
<p className="text-xs text-muted-foreground mt-1">Click a version to restore it</p>
|
||||||
</div>
|
</div>
|
||||||
<div className="max-h-64 overflow-y-auto p-2 space-y-1">
|
<div className="max-h-64 overflow-y-auto p-2 space-y-1">
|
||||||
{[...history].reverse().map((entry, index) => {
|
{reversedHistory.map((entry, index) => {
|
||||||
const value = valueAccessor(entry);
|
const value = valueAccessor(entry);
|
||||||
const isCurrentVersion = value === currentValue;
|
const isCurrentVersion = value === currentValue;
|
||||||
const sourceLabel = getSourceLabel(entry);
|
const sourceLabel = getSourceLabel(entry);
|
||||||
|
|||||||
@@ -612,7 +612,8 @@ export interface ElectronAPI {
|
|||||||
enhance: (
|
enhance: (
|
||||||
originalText: string,
|
originalText: string,
|
||||||
enhancementMode: string,
|
enhancementMode: string,
|
||||||
model?: string
|
model?: string,
|
||||||
|
thinkingLevel?: string
|
||||||
) => Promise<{
|
) => Promise<{
|
||||||
success: boolean;
|
success: boolean;
|
||||||
enhancedText?: string;
|
enhancedText?: string;
|
||||||
|
|||||||
Reference in New Issue
Block a user