xtablo-source/.planning/phases/09-etapes/09-UAT.md
2026-05-15 23:48:15 +02:00

3.3 KiB

status phase source started updated
complete 09-etapes
09-01-SUMMARY.md
09-02-SUMMARY.md
09-03-SUMMARY.md
09-04-PLAN.md
2026-05-15T21:38:18Z 2026-05-15T21:46:58Z

Current Test

[testing complete]

Tests

1. Etape Strip and Filters

expected: In a tablo's Tasks tab, the etape strip shows All, Unassigned, and each etape chip with task counts. Clicking an etape filters the existing kanban columns to that etape, and clicking Unassigned shows only tasks without an etape. result: pass

2. Create Task with Etape Assignment

expected: Creating a task from the Tasks tab lets you choose an etape or No etape. After submit, the task appears in the right kanban column, the selected etape count refreshes immediately, and the active filter state stays coherent. result: pass reported: "even when selecting the etape, the created task ends up in the current etape viewed in the etape search param" severity: major resolution: "Fixed in f9fc7a1 and retested as pass."

3. Manage Etapes

expected: Etape edit updates the chip label, Up/Down controls reorder chips, and delete shows the warning that tasks stay in the tablo and move to Unassigned. After confirming delete, affected tasks remain visible under Unassigned. result: pass

4. Edit Task Etape Assignment

expected: Opening a task edit form shows an Etape selector with No etape first. Saving can assign the task to another etape or clear it, and the task remains in its existing status and position while counts refresh. result: pass

5. Reorder with Etape Filters

expected: While an etape filter is active, dragging a visible task across columns changes only its status and position. Its etape assignment is preserved, hidden filtered-out tasks remain intact, and chip counts still match after the reorder settles. result: pass

Summary

total: 5 passed: 5 issues: 0 pending: 0 skipped: 0 blocked: 0

Gaps

  • truth: "Creating a task from the Tasks tab lets you choose an etape or No etape. After submit, the task appears in the right kanban column, the selected etape count refreshes immediately, and the active filter state stays coherent." status: resolved reason: "User reported: even when selecting the etape, the created task ends up in the current etape viewed in the etape search param" severity: major test: 2 root_cause: "The task create form rendered a hidden etape_id for the active filter before the visible Etape selector. TaskCreateHandler used PostFormValue("etape_id"), which returns the first submitted value, so the active filter could override the user's selected etape." artifacts:
    • path: "backend/templates/tasks.templ" issue: "TaskCreateFormFragment emitted duplicate etape_id controls."
    • path: "backend/internal/web/handlers_tasks.go" issue: "TaskCreateHandler read the first etape_id value from duplicated form fields."
    • path: "backend/internal/web/handlers_tasks_test.go" issue: "No regression covered selected etape winning over the active filter." missing:
    • "Remove the hidden etape_id input from the create form."
    • "Read the last submitted etape_id defensively when duplicate values are present."
    • "Add a regression for creating a task while filtered to one etape but selecting another." debug_session: "inline:$gsd-verify-work-09/test-2" fix_commit: "f9fc7a1" retest: pass