Scoped DB role + own theme colour (port log E17)

- Split database.py into a runtime engine (scoped `kds` DB role, used for
  all request handling) and a migration engine (privileged `kitchen` role,
  used only at startup to create KDS's own tables and ALTER kitchen_settings)
  — KDS previously shared kitchen's full-access DB credential wholesale
- Dispose both engines on shutdown (main.py)
- Fix theme colour clash: KDS was accidentally seeded with kitchen's teal
  (#0d9488) instead of its own colour — now #ea580c (orange), regenerated
  PWA icons to match

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
jtricerolph 2026-08-06 14:45:01 +00:00
parent 870027faca
commit 23889315f5
7 changed files with 4446 additions and 47 deletions

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Before After
Before After

View file

@ -20,7 +20,7 @@
--kds-sent: #6b7280;
/* App primary — teal (shared with kitchen for recipe images etc.) */
--app-primary: #0d9488;
--app-primary: #ea580c; /* kds orange — distinct from kitchen's teal, D5 */
}
*, *::before, *::after {

View file

@ -14,8 +14,8 @@ export default defineConfig({
start_url: '/kds/',
scope: '/kds/',
display: 'standalone',
theme_color: '#0d9488',
background_color: '#0d9488',
theme_color: '#ea580c',
background_color: '#ea580c',
icons: [
{ src: '/kds/icons/icon-192.png', sizes: '192x192', type: 'image/png' },
{ src: '/kds/icons/icon-512.png', sizes: '512x512', type: 'image/png' },