| 07-dashboard-nav-polish |
01 |
web-ui |
| dashboard |
| navigation |
| packages |
| integration |
|
Wired dashboard to live DB queries and added /packages listing page closing two visible integration gaps |
| requires |
provides |
affects |
| imptune/db/models.py (Printer, Client, Driver) |
| imptune/templates/base.html (nav link /packages) |
| Existing /printers/{id}/packages/intunewin and /ninja endpoints |
|
| GET /packages route rendering printers with drivers |
| Dashboard recent_printers and recent_packages live queries |
| packages.html template |
|
| imptune/api/pages.py (dashboard + new packages_page) |
| imptune/templates/dashboard.html (clickable links, quick actions) |
|
|
| added |
patterns |
|
|
| Deferred imports inside route bodies |
| list(Model.select()...) wrapper over Peewee queries |
| LEFT_OUTER joins on Client + Driver with switch(Printer) |
|
|
| created |
modified |
| imptune/templates/packages.html |
| .planning/phases/07-dashboard-nav-polish/07-01-SUMMARY.md |
|
| imptune/api/pages.py |
| imptune/templates/dashboard.html |
| tests/test_static.py |
|
|
| packages_page follows printers_page join pattern (LEFT_OUTER Client + Driver, switch, list wrapper) |
| Empty-state message shown when no driver-assigned printers exist; filter via Printer.driver.is_null(False) |
| Dashboard list items are anchor tags linking to /printers/{id} detail |
|
| duration_min |
tasks_completed |
files_touched |
tests_added |
tests_total |
completed_at |
| 1 |
2 |
4 |
3 |
99 |
2026-04-13 |
|