kin: KIN-FIX-002 Унифицировать localStorage значения execution_mode с 'auto_complete'

Заменены все вхождения 'auto' на 'auto_complete' как значение execution_mode в localStorage-операциях:

web/frontend/src/views/TaskDetail.vue:
- Line 46: localStorage.getItem сравнение
- Line 53: localStorage.setItem значение
- Line 55: API patch значение (уже было 'auto_complete', добавлено для полноты)

web/frontend/src/views/ProjectView.vue:
- Line 171: execution_mode === 'auto' → 'auto_complete'
- Line 173: localStorage.getItem сравнение
- Line 179: localStorage.setItem значение
- Line 181: API patch значение
- Line 182: state update значение
- Line 643: template v-if condition

web/frontend/src/__tests__/filter-persistence.test.ts:
- Line 377: Type definition обновлена
- Lines 415, 433, 449: makeTaskWith параметры обновлены
- Line 479: localStorage mock значение
- Line 478: Комментарий обновлён

Все 37 тестов в filter-persistence.test.ts пройдены.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
Gros Frumos 2026-03-16 10:14:24 +02:00
parent cb099030ce
commit 7f8e0e2238
3 changed files with 14 additions and 14 deletions

View file

@ -374,7 +374,7 @@ describe('KIN-011: TaskDetail — возврат с сохранением URL',
// ─────────────────────────────────────────────────────────────
describe('KIN-047: TaskDetail — Approve/Reject в статусе review', () => {
function makeTaskWith(status: string, executionMode: 'auto' | 'review' | null = null) {
function makeTaskWith(status: string, executionMode: 'auto_complete' | 'review' | null = null) {
return {
id: 'KIN-047',
project_id: 'KIN',
@ -412,7 +412,7 @@ describe('KIN-047: TaskDetail — Approve/Reject в статусе review', () =
})
it('Approve и Reject скрыты при autoMode в статусе review', async () => {
vi.mocked(api.taskFull).mockResolvedValue(makeTaskWith('review', 'auto') as any)
vi.mocked(api.taskFull).mockResolvedValue(makeTaskWith('review', 'auto_complete') as any)
const router = makeRouter()
await router.push('/task/KIN-047')
@ -430,7 +430,7 @@ describe('KIN-047: TaskDetail — Approve/Reject в статусе review', () =
})
it('Тоггл Auto/Review виден в статусе review при autoMode (позволяет выйти из автопилота)', async () => {
vi.mocked(api.taskFull).mockResolvedValue(makeTaskWith('review', 'auto') as any)
vi.mocked(api.taskFull).mockResolvedValue(makeTaskWith('review', 'auto_complete') as any)
const router = makeRouter()
await router.push('/task/KIN-047')
@ -446,7 +446,7 @@ describe('KIN-047: TaskDetail — Approve/Reject в статусе review', () =
})
it('После клика тоггла в review+autoMode появляются Approve и Reject', async () => {
const task = makeTaskWith('review', 'auto')
const task = makeTaskWith('review', 'auto_complete')
vi.mocked(api.taskFull).mockResolvedValue(task as any)
vi.mocked(api.patchTask).mockResolvedValue({ execution_mode: 'review' } as any)
@ -475,8 +475,8 @@ describe('KIN-047: TaskDetail — Approve/Reject в статусе review', () =
it('KIN-051: Approve и Reject видны при статусе review и execution_mode=null (фикс баги)', async () => {
// Воспроизводит баг: задача в review без явного execution_mode зависала
// без кнопок, потому что localStorage мог содержать 'auto'
localStorageMock.setItem('kin-mode-KIN', 'auto') // имитируем "плохой" localStorage
// без кнопок, потому что localStorage мог содержать 'auto_complete'
localStorageMock.setItem('kin-mode-KIN', 'auto_complete') // имитируем "плохой" localStorage
vi.mocked(api.taskFull).mockResolvedValue(makeTaskWith('review', null) as any)
const router = makeRouter()
await router.push('/task/KIN-047')