kin: KIN-UI-002 Исправить падающие тесты миграции (регрессия KIN-ARCH-003) в core/db.py
This commit is contained in:
parent
389b266bee
commit
ff69d24acc
7 changed files with 254 additions and 10 deletions
|
|
@ -281,7 +281,7 @@ async function runDeploy() {
|
|||
|
||||
// Edit modal (pending tasks only)
|
||||
const showEdit = ref(false)
|
||||
const editForm = ref({ title: '', briefText: '', priority: 5 })
|
||||
const editForm = ref({ title: '', briefText: '', priority: 5, acceptanceCriteria: '' })
|
||||
const editLoading = ref(false)
|
||||
const editError = ref('')
|
||||
|
||||
|
|
@ -298,6 +298,7 @@ function openEdit() {
|
|||
title: task.value.title,
|
||||
briefText: getBriefText(task.value.brief),
|
||||
priority: task.value.priority,
|
||||
acceptanceCriteria: task.value.acceptance_criteria ?? '',
|
||||
}
|
||||
editError.value = ''
|
||||
showEdit.value = true
|
||||
|
|
@ -313,6 +314,8 @@ async function saveEdit() {
|
|||
if (editForm.value.priority !== task.value.priority) data.priority = editForm.value.priority
|
||||
const origBriefText = getBriefText(task.value.brief)
|
||||
if (editForm.value.briefText !== origBriefText) data.brief_text = editForm.value.briefText
|
||||
const origAC = task.value.acceptance_criteria ?? ''
|
||||
if (editForm.value.acceptanceCriteria !== origAC) data.acceptance_criteria = editForm.value.acceptanceCriteria
|
||||
if (Object.keys(data).length === 0) { showEdit.value = false; return }
|
||||
const updated = await api.patchTask(props.id, data)
|
||||
task.value = { ...task.value, ...updated }
|
||||
|
|
@ -387,6 +390,10 @@ async function saveEdit() {
|
|||
<div v-if="task.brief && !isManualEscalation" class="text-xs text-gray-500 mb-1">
|
||||
Brief: {{ JSON.stringify(task.brief) }}
|
||||
</div>
|
||||
<div v-if="task.acceptance_criteria" class="mb-2 px-3 py-2 border border-gray-700 bg-gray-900/40 rounded">
|
||||
<div class="text-xs font-semibold text-gray-400 mb-1">Критерии приёмки</div>
|
||||
<p class="text-xs text-gray-300 whitespace-pre-wrap">{{ task.acceptance_criteria }}</p>
|
||||
</div>
|
||||
<div v-if="task.status === 'blocked' && task.blocked_reason" class="text-xs text-red-400 mb-1 bg-red-950/30 border border-red-800/40 rounded px-2 py-1">
|
||||
Blocked: {{ task.blocked_reason }}
|
||||
</div>
|
||||
|
|
@ -628,6 +635,12 @@ async function saveEdit() {
|
|||
<input v-model.number="editForm.priority" type="number" min="1" max="10" required
|
||||
class="w-full bg-gray-800 border border-gray-700 rounded px-3 py-2 text-sm text-gray-200" />
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-xs text-gray-500 mb-1">Критерии приёмки</label>
|
||||
<textarea v-model="editForm.acceptanceCriteria" rows="3"
|
||||
placeholder="Что должно быть на выходе? Какой результат считается успешным?"
|
||||
class="w-full bg-gray-800 border border-gray-700 rounded px-3 py-2 text-sm text-gray-200 placeholder-gray-600 resize-y"></textarea>
|
||||
</div>
|
||||
<p v-if="editError" class="text-red-400 text-xs">{{ editError }}</p>
|
||||
<button type="submit" :disabled="editLoading"
|
||||
class="w-full py-2 bg-blue-900/50 text-blue-400 border border-blue-800 rounded text-sm hover:bg-blue-900 disabled:opacity-50">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue