Commit Graph

  • b507884ad6 api: serve interactive OpenAPI docs at /api/docs (offline) + llms.txt cproudlock 2026-07-30 07:51:12 -04:00
  • 8575837d8e docs: add project health review, wiki update plan, API reference (Fable review) cproudlock 2026-07-30 07:51:12 -04:00
  • 2afe977ed5 reclassify servers by SVR- prefix Cam Proudlock 2026-07-30 07:12:51 -04:00
  • ecf4ef6edd scripts: match servers by name prefix (SVR-) as well as computer type cproudlock 2026-07-30 07:12:51 -04:00
  • d0afbad0a5 reclassify servers to network script Cam Proudlock 2026-07-30 07:10:16 -04:00
  • 346c428409 scripts: reclassify server 'computer' assets to network_device cproudlock 2026-07-30 07:10:16 -04:00
  • 39a52b4597 install bat no trailing pause Cam Proudlock 2026-07-29 15:34:07 -04:00
  • c075658ca6 printers: drop the trailing pause in the install .bat so it self-closes cproudlock 2026-07-29 15:34:07 -04:00
  • ed32290402 printer installer map public Cam Proudlock 2026-07-29 15:16:16 -04:00
  • cd79e610e9 printers: make the installer map public (no login) cproudlock 2026-07-29 15:16:16 -04:00
  • dd0865d103 printer install-list/pc-default format=text Cam Proudlock 2026-07-29 13:51:01 -04:00
  • ad84c9060a printers: add format=text to install-list + pc-default; vendor via model cproudlock 2026-07-29 13:51:01 -04:00
  • 366f49c969 pc-relationships bidirectional Cam Proudlock 2026-07-29 13:16:16 -04:00
  • cb075a278f reports: pc-relationships matches PC<->machine links in either direction cproudlock 2026-07-29 13:16:15 -04:00
  • c17d170870 fix printer batch vendor resolution + base url Cam Proudlock 2026-07-29 12:56:31 -04:00
  • 3eaaee0e50 printers: resolve installer vendor via the model + fix batch download base URL cproudlock 2026-07-29 12:56:31 -04:00
  • a2cf109586 printer installer map + install-batch endpoint Cam Proudlock 2026-07-29 12:39:12 -04:00
  • 0d40780f53 printers: printer installer map + install-batch endpoint cproudlock 2026-07-29 12:38:51 -04:00
  • e0b3dbcff3 app installer hrefs + IIS /installers static Cam Proudlock 2026-07-29 10:25:56 -04:00
  • 1ee9328bf9 applications: fix relative installer/link hrefs + serve /installers via IIS cproudlock 2026-07-29 10:25:46 -04:00
  • d77a726560 sync package-lock for dompurify Cam Proudlock 2026-07-29 10:10:35 -04:00
  • 071d40488b chore: sync package-lock for dompurify direct dependency cproudlock 2026-07-29 10:10:35 -04:00
  • 9cf026e31a kb topic search + client-ip port strip + application notes html Cam Proudlock 2026-07-29 10:09:02 -04:00
  • bf8842e1d7 applications: render Application Notes as sanitized HTML cproudlock 2026-07-29 10:06:18 -04:00
  • ced356882c net: strip the ephemeral source port from the forwarded client IP cproudlock 2026-07-29 10:06:18 -04:00
  • 8dce622392 knowledgebase: include the topic (application name) in list search cproudlock 2026-07-29 10:06:18 -04:00
  • 0a2d4d0968 ui: format application knowledge-base card Cam Proudlock 2026-07-29 09:28:48 -04:00
  • c5ee164565 ui: format application knowledge-base card (was a wall of text) cproudlock 2026-07-29 09:26:58 -04:00
  • a69ce80f86 fix: blank location dropdowns + require printer model Cam Proudlock 2026-07-29 09:08:01 -04:00
  • b63690996a fix: location dropdowns rendered blank (wrong field) + require printer model cproudlock 2026-07-29 09:07:43 -04:00
  • 488fa0e4a7 ui: audit-log column clipping + ge-enforce report modal width Cam Proudlock 2026-07-29 08:56:16 -04:00
  • b9d0cfac6a ui: stop audit-log columns clipping + widen ge-enforce report modal cproudlock 2026-07-29 08:55:47 -04:00
  • eeae042aa8 slides: grantable slides.manage permission for non-admin curators Cam Proudlock 2026-07-29 08:41:53 -04:00
  • 174c6c0b9a slides: gate management on slides.manage permission (grantable to non-admin curator) cproudlock 2026-07-29 08:41:11 -04:00
  • 02147827f0 display FQDN keying + kiosk dropdown + dispatcher + multi-word search Cam Proudlock 2026-07-29 07:45:33 -04:00
  • 7a7c7f37d5 search: multi-word queries match by word, not the exact phrase cproudlock 2026-07-29 07:43:31 -04:00
  • b22701a444 geenforce display dispatcher: resolve role from the server by FQDN, fall back to display-type.txt cproudlock 2026-07-29 07:34:21 -04:00
  • e237cc2c05 dashboarddefaults: pick a kiosk from a dropdown (auto-fill FQDN) + Location wording cproudlock 2026-07-29 07:29:34 -04:00
  • 3ba808028c dashboarddefaults: key display mappings by stable FQDN (from BIOS serial), IP fallback cproudlock 2026-07-29 07:20:52 -04:00
  • 14c0d4be1e geenforce re-publish FK fix (MySQL) + payload-count guard Cam Proudlock 2026-07-28 18:56:29 -04:00
  • b539e36096 test: assert display seed keeps exactly two inline payloads across rebuilds cproudlock 2026-07-28 18:56:29 -04:00
  • 89a1617103 geenforce: fix re-publish FK crash on MySQL (stale entries in draft rebuild) cproudlock 2026-07-28 18:55:17 -04:00
  • cf7b8bc49a dashboard employee names + GE monogram fallback + kiosk startup sweep Cam Proudlock 2026-07-28 18:24:19 -04:00
  • 9a2d0ccebb dashboard: resolve employee names from directory/user, GE monogram photo fallback, kiosk sweep + label cproudlock 2026-07-28 18:21:47 -04:00
  • 3ed3857d4f geenforce: broaden kiosk startup sweep to catch imaging-installer launchers Cam Proudlock 2026-07-28 18:09:12 -04:00
  • 3a8df166cf geenforce: broaden kiosk startup sweep to match single-dash -kiosk and shopdb-URL launchers cproudlock 2026-07-28 18:09:12 -04:00
  • 2f6163e864 geenforce: fix http-payload path doubling + kiosk startup cleanup Cam Proudlock 2026-07-28 17:49:56 -04:00
  • 5712f72ccf geenforce: fix http-payload path doubling + sweep stale kiosk startup shortcuts cproudlock 2026-07-28 17:49:47 -04:00
  • 8f0c110dda geenforce: harden allowlist + fix share-less kiosk client and display scope Cam Proudlock 2026-07-28 17:09:35 -04:00
  • 4c0cc672a2 geenforce: harden allowlist + fix share-less kiosk client and display scope cproudlock 2026-07-28 17:09:21 -04:00
  • f533af82cd export: --dist builds both /ops and /shopdb frontend bases cproudlock 2026-07-28 08:28:42 -04:00
  • 9b133b0cce geenforce: import-share recognizes the display scope Cam Proudlock 2026-07-27 14:54:13 -04:00
  • 67de46dfb9 geenforce: import-share recognizes the display scope folder cproudlock 2026-07-27 14:54:13 -04:00
  • 90cd85b268 geenforce: settings in the Settings rail Cam Proudlock 2026-07-27 14:44:26 -04:00
  • d9080a59ca geenforce: move settings into the Settings rail cproudlock 2026-07-27 14:44:26 -04:00
  • a733586c47 geenforce client: token-optional for IP-allowlisted kiosks Cam Proudlock 2026-07-27 14:22:41 -04:00
  • 2d675720b7 geenforce client: make ApiToken optional for IP-allowlisted kiosks cproudlock 2026-07-27 14:17:51 -04:00
  • 4ed1296d5e geenforce: IP allowlist for client endpoints + admin Settings tab Cam Proudlock 2026-07-27 14:13:50 -04:00
  • 0860aa85c5 geenforce: IP allowlist for client endpoints + admin Settings tab cproudlock 2026-07-27 14:06:40 -04:00
  • ab1622ae58 warranty: bulk Dell re-check reuses non-dell warranties instead of duplicating Cam Proudlock 2026-07-24 13:24:50 -04:00
  • 19876a5640 warranty: fix bulk Dell re-check duplicating non-dell warranties cproudlock 2026-07-24 13:24:36 -04:00
  • c355eaae43 printers low-toner alerts; geenforce display readiness + token scope-binding; air-gap docker deploy kit Cam Proudlock 2026-07-23 14:37:00 -04:00
  • 6534590fca docker: air-gapped deploy kit (image bundle + offline compose + runbook) cproudlock 2026-07-23 14:15:34 -04:00
  • 75386d2f51 geenforce: resource-scope binding for fetch tokens (0.15.0) cproudlock 2026-07-23 09:02:42 -04:00
  • d0bf37ced7 geenforce: display scope is self-sufficient, no common inheritance cproudlock 2026-07-23 08:22:23 -04:00
  • 9d65ef103d geenforce: display-readiness batch (server hardening, PS client wiring, display scope) cproudlock 2026-07-23 08:16:38 -04:00
  • b211e817d5 printers: low-toner alerts with configurable thresholds + support-team routing cproudlock 2026-07-22 14:47:59 -04:00
  • 73b05e5b1c alerts: per-support-team webhook + printedparts routing Cam Proudlock 2026-07-22 13:32:01 -04:00
  • fb188fd302 alerts: per-support-team webhook; printedparts routes low-stock to a chosen team cproudlock 2026-07-22 13:32:00 -04:00
  • e1c7af049c settings UI: site base url + alert webhook fields Cam Proudlock 2026-07-22 12:55:50 -04:00
  • 824863a95a settings UI: add Site Base URL + Alert Webhook URL/format fields cproudlock 2026-07-22 12:55:50 -04:00
  • 38c7ec347b alerts: Teams webhook fan-out (contract 0.14.0) + printedparts detail revision column cproudlock 2026-07-22 10:21:42 -04:00
  • a70cd14bee alerts: Teams webhook fan-out + contract 0.14.0 Cam Proudlock 2026-07-22 10:57:19 -04:00
  • 4a5b78dad2 alerts: Teams webhook fan-out + contract 0.14.0 Cam Proudlock 2026-07-22 10:56:04 -04:00
  • e3d09bdd78 printedparts detail: revision column in transactions Cam Proudlock 2026-07-22 10:21:43 -04:00
  • bbd086f075 printedparts: kiosk revision display + gage-tag/link in low-stock email Cam Proudlock 2026-07-22 10:12:52 -04:00
  • d141fef203 printedparts: show revision at kiosk; low-stock email uses gage tag + item link cproudlock 2026-07-22 10:12:51 -04:00
  • d49f0cbb09 printedparts: QR label tag+rev, record taken revision Cam Proudlock 2026-07-22 07:52:17 -04:00
  • baf6862151 printedparts: QR label with gage tag + revision; record taken rev cproudlock 2026-07-22 07:52:17 -04:00
  • 6a8a056b9b notifications: start/end for all notification types Cam Proudlock 2026-07-21 11:09:20 -04:00
  • e85553e5e7 notifications: show start/end date fields for ALL types cproudlock 2026-07-21 11:09:19 -04:00
  • 23efd760d6 notifications recognition dates + geenforce B2 client Cam Proudlock 2026-07-21 10:56:00 -04:00
  • 0bb906a37c notifications: let Recognition set start/end dates; geenforce B2 client payload fetch cproudlock 2026-07-21 10:56:00 -04:00
  • 38c0f0395c geenforce: HTTPS payload delivery (blob store + endpoint) Cam Proudlock 2026-07-21 10:10:59 -04:00
  • b00ef72581 geenforce: HTTPS payload delivery (content-addressed blob store + endpoint) cproudlock 2026-07-21 10:10:59 -04:00
  • 844a28111a displays: IP-driven display role (dashboard/lobby/kiosk) Cam Proudlock 2026-07-21 09:49:14 -04:00
  • 60e2947fc7 displays: single display type with IP-driven role (dashboard/lobby/kiosk) cproudlock 2026-07-21 09:49:14 -04:00
  • 338a028de4 dashboard: Verdana + left-edge type color bar Cam Proudlock 2026-07-20 16:01:58 -04:00
  • b05fa33278 shopfloor dashboard: Verdana font + full left-edge type-color bar cproudlock 2026-07-20 16:01:58 -04:00
  • fd088e1b10 dashboard: fixed recert name height (no grid shift) Cam Proudlock 2026-07-20 15:40:29 -04:00
  • eb1c46c053 shopfloor dashboard: fix recert-name height so long names don't shift the grid cproudlock 2026-07-20 15:40:28 -04:00
  • a751960c56 dashboard: Archivo display font Cam Proudlock 2026-07-20 15:19:28 -04:00
  • d39d34b55f shopfloor dashboard: use Archivo display font for TV legibility cproudlock 2026-07-20 15:19:28 -04:00
  • 9706d3057b dashboard: bigger TV text + footer at bottom Cam Proudlock 2026-07-20 15:16:27 -04:00
  • 0dc4dba265 shopfloor dashboard: bigger text for distance + footer at bottom cproudlock 2026-07-20 15:16:26 -04:00
  • d90be6dcd7 shopfloor dashboard TV fit-to-viewport scaling Cam Proudlock 2026-07-20 14:49:33 -04:00
  • 482d6d4bfe shopfloor dashboard: fit-to-viewport scaling for TV kiosks cproudlock 2026-07-20 14:49:33 -04:00
  • bcefb70a5e slides manager: thumbnail withBase + order list Cam Proudlock 2026-07-20 14:16:12 -04:00
  • a50e5b0ec1 slides: fix manager thumbnail 404 under /ops + single-column order list cproudlock 2026-07-20 14:16:12 -04:00
  • 96530fdb7e slides: /screensaver display route Cam Proudlock 2026-07-20 13:16:32 -04:00