feat(v1.5): complete phases 40-43 workflow cleanup
This commit is contained in:
183
.paul/phases/43-print-queue-entry-removal/43-01-PLAN.md
Normal file
183
.paul/phases/43-print-queue-entry-removal/43-01-PLAN.md
Normal file
@@ -0,0 +1,183 @@
|
||||
---
|
||||
phase: 43-print-queue-entry-removal
|
||||
plan: 01
|
||||
type: execute
|
||||
wave: 1
|
||||
depends_on: []
|
||||
files_modified:
|
||||
- src/Modules/Printing/PrintJobRepository.php
|
||||
- src/Modules/Settings/PrintSettingsController.php
|
||||
- routes/web.php
|
||||
- resources/views/settings/printing.php
|
||||
- resources/scss/modules/_printing.scss
|
||||
- public/assets/css/app.css
|
||||
- DOCS/ARCHITECTURE.md
|
||||
- DOCS/TECH_CHANGELOG.md
|
||||
- DOCS/todo.md
|
||||
autonomous: false
|
||||
---
|
||||
|
||||
<objective>
|
||||
## Goal
|
||||
Zrealizowac punkt 43 z `DOCS/todo.md`: dodac mozliwosc usuwania wpisu z kolejki druku etykiet.
|
||||
|
||||
## Purpose
|
||||
Operator ma miec kontrole nad kolejka (np. usuniecie blednego lub nieaktualnego zlecenia), bez ingerencji bezposrednio w baze danych.
|
||||
|
||||
## Output
|
||||
Nowa akcja usuwania wpisu kolejki z poziomu `Ustawienia > Drukowanie`, backendowy endpoint z walidacja CSRF, aktualizacja widoku i dokumentacji technicznej.
|
||||
</objective>
|
||||
|
||||
<context>
|
||||
## Project Context
|
||||
@.paul/PROJECT.md
|
||||
@.paul/ROADMAP.md
|
||||
@.paul/STATE.md
|
||||
@DOCS/todo.md
|
||||
@DOCS/ARCHITECTURE.md
|
||||
@DOCS/DB_SCHEMA.md
|
||||
|
||||
## Prior Work (only if genuinely needed)
|
||||
@.paul/phases/18-print-queue-backend/18-01-SUMMARY.md
|
||||
@.paul/phases/19-ui-integration/19-01-SUMMARY.md
|
||||
|
||||
## Source Files
|
||||
@src/Modules/Printing/PrintJobRepository.php
|
||||
@src/Modules/Settings/PrintSettingsController.php
|
||||
@routes/web.php
|
||||
@resources/views/settings/printing.php
|
||||
@resources/scss/modules/_printing.scss
|
||||
</context>
|
||||
|
||||
<skills>
|
||||
## Required Skills (from SPECIAL-FLOWS.md)
|
||||
|
||||
| Skill | Priority | When to Invoke | Loaded? |
|
||||
|-------|----------|----------------|---------|
|
||||
| `sonar-scanner` | required | Po APPLY, przed UNIFY | o |
|
||||
| /code-review | optional | Po implementacji, przed UNIFY | o |
|
||||
|
||||
**BLOCKING:** Required skills MUST be loaded before APPLY proceeds.
|
||||
|
||||
## Skill Invocation Checklist
|
||||
- [ ] `sonar-scanner` uruchomiony po APPLY
|
||||
- [ ] /code-review (opcjonalnie)
|
||||
</skills>
|
||||
|
||||
<acceptance_criteria>
|
||||
|
||||
## AC-1: Backend obsluguje usuwanie wpisu kolejki druku
|
||||
```gherkin
|
||||
Given wpis istnieje w tabeli `print_jobs`
|
||||
When uzytkownik wysle poprawny request usuniecia z tokenem CSRF
|
||||
Then rekord jest usuwany z kolejki
|
||||
And uzytkownik dostaje komunikat sukcesu lub poprawny blad
|
||||
```
|
||||
|
||||
## AC-2: UI pozwala usunac wpis z kolejki w bezpieczny sposob
|
||||
```gherkin
|
||||
Given uzytkownik jest na `Ustawienia > Drukowanie`
|
||||
When kliknie akcje usuniecia przy wpisie kolejki
|
||||
Then widzi potwierdzenie przez `window.OrderProAlerts.confirm(...)`
|
||||
And po zatwierdzeniu wpis znika z listy po odswiezeniu
|
||||
```
|
||||
|
||||
## AC-3: Zmiana jest odnotowana w dokumentacji i TODO
|
||||
```gherkin
|
||||
Given wdrozenie punktu 43
|
||||
When sprawdzane sa dokumenty techniczne
|
||||
Then ARCHITECTURE i TECH_CHANGELOG opisuja nowa akcje usuwania z kolejki
|
||||
And punkt 43 w DOCS/todo.md jest oznaczony jako wykonany
|
||||
```
|
||||
|
||||
</acceptance_criteria>
|
||||
|
||||
<tasks>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 1: Dodaj backendowe usuwanie wpisu kolejki druku</name>
|
||||
<files>src/Modules/Printing/PrintJobRepository.php, src/Modules/Settings/PrintSettingsController.php, routes/web.php</files>
|
||||
<action>
|
||||
Dodaj w repozytorium metode usuwania wpisu po `id` (prepared statement).
|
||||
Rozszerz `PrintSettingsController` o akcje `deleteJob` z walidacja CSRF i flash messages.
|
||||
Dodaj route POST dla usuwania wpisu kolejki (obszar ustawien drukowania, auth required).
|
||||
Zachowaj istniejace endpointy API dla klienta Windows bez zmian.
|
||||
</action>
|
||||
<verify>rg -n "deleteJob|DELETE FROM print_jobs|/settings/printing/jobs" src/Modules/Printing/PrintJobRepository.php src/Modules/Settings/PrintSettingsController.php routes/web.php</verify>
|
||||
<done>AC-1 satisfied: rekord moze byc usuniety przez kontrolowany endpoint.</done>
|
||||
</task>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 2: Dodaj akcje usuwania do widoku kolejki druku</name>
|
||||
<files>resources/views/settings/printing.php, resources/scss/modules/_printing.scss, public/assets/css/app.css</files>
|
||||
<action>
|
||||
W tabeli `Kolejka wydruku` dodaj przycisk/formularz usuwania wpisu.
|
||||
Potwierdzenie realizuj przez `window.OrderProAlerts.confirm(...)` (bez natywnego `confirm`).
|
||||
Styl akcji dodaj w SCSS i przebuduj CSS do `public/assets/css/app.css`.
|
||||
Nie dodawaj inline CSS; zachowaj kompaktowosc layoutu.
|
||||
</action>
|
||||
<verify>rg -n "OrderProAlerts\.confirm|Usun|print-queue" resources/views/settings/printing.php resources/scss/modules/_printing.scss</verify>
|
||||
<done>AC-2 satisfied: usuwanie wpisu jest dostepne i zabezpieczone potwierdzeniem.</done>
|
||||
</task>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 3: Zaktualizuj dokumentacje techniczna i TODO</name>
|
||||
<files>DOCS/ARCHITECTURE.md, DOCS/TECH_CHANGELOG.md, DOCS/todo.md</files>
|
||||
<action>
|
||||
Opisz nowa akcje usuwania wpisu kolejki i jej endpoint/kontroler.
|
||||
Oznacz punkt 43 jako wykonany.
|
||||
Upewnij sie, ze dokumentacja nie sugeruje juz braku tej funkcji.
|
||||
</action>
|
||||
<verify>rg -n "43\.|kolejk|usun|printing" DOCS/ARCHITECTURE.md DOCS/TECH_CHANGELOG.md DOCS/todo.md</verify>
|
||||
<done>AC-3 satisfied: dokumentacja i TODO sa aktualne.</done>
|
||||
</task>
|
||||
|
||||
<task type="checkpoint:human-verify" gate="blocking">
|
||||
<what-built>Usuwanie wpisu kolejki druku z poziomu panelu ustawien.</what-built>
|
||||
<how-to-verify>
|
||||
1. Otworz `Ustawienia > Drukowanie`.
|
||||
2. W sekcji `Kolejka wydruku` kliknij `Usun` przy wybranym wpisie.
|
||||
3. Potwierdz akcje w modalu OrderProAlerts.
|
||||
4. Sprawdz, ze po odswiezeniu wpis nie jest widoczny.
|
||||
5. Sprawdz, ze anulowanie potwierdzenia nie usuwa wpisu.
|
||||
</how-to-verify>
|
||||
<resume-signal>Type "approved" to continue, or describe issues to fix</resume-signal>
|
||||
</task>
|
||||
|
||||
</tasks>
|
||||
|
||||
<boundaries>
|
||||
|
||||
## DO NOT CHANGE
|
||||
- `database/migrations/*`
|
||||
- API key endpointy klienta drukujacego
|
||||
- Logika tworzenia i pobierania etykiet
|
||||
|
||||
## SCOPE LIMITS
|
||||
- Zakres dotyczy wyłšcznie usuwania wpisow kolejki druku.
|
||||
- Bez dodawania masowych operacji na kolejce.
|
||||
- Bez zmian poza obszarem ustawien drukowania i repozytorium kolejki.
|
||||
|
||||
</boundaries>
|
||||
|
||||
<verification>
|
||||
Before declaring plan complete:
|
||||
- [ ] `C:\xampp\php\php.exe -l src/Modules/Printing/PrintJobRepository.php`
|
||||
- [ ] `C:\xampp\php\php.exe -l src/Modules/Settings/PrintSettingsController.php`
|
||||
- [ ] `C:\xampp\php\php.exe -l routes/web.php`
|
||||
- [ ] `C:\xampp\php\php.exe -l resources/views/settings/printing.php`
|
||||
- [ ] `npm run build:css` (jesli wymagane przez zmiany SCSS)
|
||||
- [ ] Manual verification checkpoint wykonany
|
||||
- [ ] Dokumentacja (`DOCS/ARCHITECTURE.md`, `DOCS/TECH_CHANGELOG.md`, `DOCS/todo.md`) zaktualizowana
|
||||
- [ ] All acceptance criteria met
|
||||
</verification>
|
||||
|
||||
<success_criteria>
|
||||
- Uzytkownik moze usunac wpis kolejki druku z UI
|
||||
- Potwierdzenie dziala przez OrderProAlerts
|
||||
- Punkt 43 zamkniety wraz z dokumentacja
|
||||
</success_criteria>
|
||||
|
||||
<output>
|
||||
After completion, create `.paul/phases/43-print-queue-entry-removal/43-01-SUMMARY.md`
|
||||
</output>
|
||||
40
.paul/phases/43-print-queue-entry-removal/43-01-SUMMARY.md
Normal file
40
.paul/phases/43-print-queue-entry-removal/43-01-SUMMARY.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
phase: 43-print-queue-entry-removal
|
||||
plan: 01
|
||||
status: completed_with_manual_checkpoint_pending
|
||||
completed: 2026-03-25
|
||||
---
|
||||
|
||||
# Phase 43 Plan 01 Summary
|
||||
|
||||
## Result
|
||||
- Dodano backendowe usuwanie wpisu kolejki (`PrintJobRepository::deleteById`, `PrintSettingsController::deleteJob`, route POST).
|
||||
- W UI `Ustawienia > Drukowanie` dodano przycisk `Usun` dla wpisow kolejki z potwierdzeniem `OrderProAlerts.confirm(...)`.
|
||||
- Zmiana styli kolejki wdrozona przez SCSS i build CSS.
|
||||
|
||||
## Acceptance Criteria
|
||||
- AC-1: Pass
|
||||
- AC-2: Pass
|
||||
- AC-3: Pass
|
||||
|
||||
## Verification
|
||||
- `php -l src/Modules/Printing/PrintJobRepository.php` PASS
|
||||
- `php -l src/Modules/Settings/PrintSettingsController.php` PASS
|
||||
- `php -l routes/web.php` PASS
|
||||
- `php -l resources/views/settings/printing.php` PASS
|
||||
- `npm run build:css` PASS
|
||||
- `rg` checks for delete flow references PASS
|
||||
|
||||
## Manual Checkpoint
|
||||
- Wymagany checkpoint UAT z planu (klik `Usun`, potwierdzenie modalem, odswiezenie listy) pozostaje do potwierdzenia przez uzytkownika.
|
||||
|
||||
## Files
|
||||
- `src/Modules/Printing/PrintJobRepository.php`
|
||||
- `src/Modules/Settings/PrintSettingsController.php`
|
||||
- `routes/web.php`
|
||||
- `resources/views/settings/printing.php`
|
||||
- `resources/scss/modules/_printing.scss`
|
||||
- `public/assets/css/app.css`
|
||||
- `DOCS/ARCHITECTURE.md`
|
||||
- `DOCS/TECH_CHANGELOG.md`
|
||||
- `DOCS/todo.md`
|
||||
Reference in New Issue
Block a user