fix: resolve CI linting errors for Python and ESLint

Python (ruff F401 - unused imports):
- Remove unused DEFAULT_YOLO_MODE import from server/routers/settings.py
- Remove unused AVAILABLE_MODELS import from server/schemas.py

ESLint (missing config for v9):
- Add ui/eslint.config.js with flat config format for ESLint v9
- Configure TypeScript, React Hooks, and React Refresh plugins
- Fix unnecessary regex escapes in AgentThought.tsx
- Remove unused onComplete from useSpecChat.ts dependency array

Additional:
- Add .claude/commands/check-code.md for local CI verification

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Auto
2026-01-10 10:07:33 +02:00
parent dff28c53bf
commit cbe3ecd25d
6 changed files with 64 additions and 5 deletions

28
ui/eslint.config.js Normal file
View File

@@ -0,0 +1,28 @@
import js from '@eslint/js'
import globals from 'globals'
import reactHooks from 'eslint-plugin-react-hooks'
import reactRefresh from 'eslint-plugin-react-refresh'
import tseslint from 'typescript-eslint'
export default tseslint.config(
{ ignores: ['dist'] },
{
extends: [js.configs.recommended, ...tseslint.configs.recommended],
files: ['**/*.{ts,tsx}'],
languageOptions: {
ecmaVersion: 2020,
globals: globals.browser,
},
plugins: {
'react-hooks': reactHooks,
'react-refresh': reactRefresh,
},
rules: {
...reactHooks.configs.recommended.rules,
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true },
],
},
},
)

View File

@@ -24,7 +24,7 @@ function isAgentThought(line: string): boolean {
if (/^Output:/.test(trimmed)) return false
// Skip JSON and very short lines
if (/^[\[\{]/.test(trimmed)) return false
if (/^[[{]/.test(trimmed)) return false
if (trimmed.length < 15) return false
// Skip lines that are just paths or technical output

View File

@@ -33,7 +33,7 @@ function generateId(): string {
export function useSpecChat({
projectName,
onComplete,
// onComplete intentionally not used - user clicks "Continue to Project" button instead
onError,
}: UseSpecChatOptions): UseSpecChatReturn {
const [messages, setMessages] = useState<ChatMessage[]>([])
@@ -346,7 +346,7 @@ export function useSpecChat({
console.error('Failed to parse WebSocket message:', e)
}
}
}, [projectName, onComplete, onError])
}, [projectName, onError])
const start = useCallback(() => {
connect()