Commit Graph

38 Commits

Author SHA1 Message Date
2326f8f096 USB kiosk: guest check-out/check-in without a login 2026-08-27 08:19:03 -04:00
0738d71525 Guides image + draft gating, audit retention, ADR-015 gate, backup credential redaction 2026-08-26 15:08:53 -04:00
f221fba540 Guides: procedures written and read inside ShopDB 2026-08-26 12:42:24 -04:00
1812def14f Catalog dedupe commands, and a seed catalog with no duplicate vendors or models 2026-08-24 14:49:54 -04:00
ead9fd6b56 Search results open the record they found; plugin scaffolder emits a prunable frontend 2026-08-24 14:06:14 -04:00
0398c55fb5 Warranty search finds a machine number; the collector can no longer set a printer assignment 2026-08-24 11:52:48 -04:00
a01f5c1a83 Secure send moves into Tech Tools 2026-08-21 14:18:10 -04:00
4242028270 Secure send: hand somebody a password without leaving it in a chat window 2026-08-21 13:44:34 -04:00
04107ff8ab Search spelling suggestions across every list 2026-08-21 11:15:06 -04:00
d267813999 Printer assignment end to end, and a container that keeps a site's files
Assign printers to a MACHINE and let whichever PC controls it install them, with
the observed half kept strictly apart from the assigned half: a collector report
can never write an assignment row. Adoption is explicit. Adds a singular
relationship type so defaultprinter can mean exactly one, client scripts that
converge a bay's queues and correct a drifted one in place, and a wave gate so a
fleet-wide driver rollout cannot stampede its own share.

On the container side: the compose stack never persisted the instance directory,
so a rebuild discarded plugins.json and every upload. It is a volume now, the
image ships instance/ owned by the app user so the mountpoint is writable, and
the database moves to MySQL 8.4 LTS, which the Windows runbook has recommended
since 8.0 went end of life. The image also could not build at all: the frontend
stage never copied the plugin staging script it runs.

Adds a topology migration guide covering IIS to Docker and back.
2026-08-20 07:46:35 -04:00
49f68081c3 Match the optional identifiers in every list's search box 2026-08-17 13:18:26 -04:00
fbd99041b0 Buildings and levels for the floor map, and make every identifier searchable 2026-08-17 13:03:54 -04:00
265ca2eb01 Security hardening, multi-site portability, and a documentation and API-surface sweep 2026-08-14 16:28:34 -04:00
6e0d8aec4e Relationship inverse guard, audit command, widened direction fixer 2026-08-13 12:25:35 -04:00
5dcc7e30af Display role vocabulary, migration commit fix, stale enforcement reports 2026-08-13 09:30:40 -04:00
d32513727b Tech Tools section with a code generator, toner report that names the part, toner forecasting, warranty proof of cover, application uploads 2026-08-12 11:51:38 -04:00
34cb9a5e3e Dashboard polish 2026-08-11 15:28:29 -04:00
3b37603691 Dashboard cards: rebuild deployable dists 2026-08-11 14:31:24 -04:00
5c33b06688 Declarative subordinate devices + shared-machine check 2026-08-11 11:14:51 -04:00
2e0f021354 Never file a part marker under its own PC 2026-08-10 17:01:41 -04:00
2924a53346 Part markers become their own assets under the operation they serve 2026-08-10 15:55:36 -04:00
d40be9ca68 Machine claim vs handover; alerts gated off; ntlars empty-value fix 2026-08-10 14:49:17 -04:00
502728c9f6 Collector: machine number identifies the machine, not the PC; ntlars empty-value fix 2026-08-10 14:26:19 -04:00
d9d08f53ac remote-access protocol collection; dashboard site timezone + badge alignment 2026-08-10 08:36:39 -04:00
c674000ccc Show the kiosk label prefix, and let a plugin declare the settings it owns 2026-08-06 18:17:56 -04:00
366f49c969 pc-relationships bidirectional 2026-07-29 13:16:16 -04:00
9cf026e31a kb topic search + client-ip port strip + application notes html 2026-07-29 10:09:02 -04:00
eeae042aa8 slides: grantable slides.manage permission for non-admin curators 2026-07-29 08:41:53 -04:00
02147827f0 display FQDN keying + kiosk dropdown + dispatcher + multi-word search 2026-07-29 07:45:33 -04:00
a70cd14bee alerts: Teams webhook fan-out + contract 0.14.0 2026-07-22 10:57:19 -04:00
4a5b78dad2 alerts: Teams webhook fan-out + contract 0.14.0 2026-07-22 10:56:04 -04:00
844a28111a displays: IP-driven display role (dashboard/lobby/kiosk) 2026-07-21 09:49:14 -04:00
03c6adc77e Add per-role badge colors 2026-07-20 10:08:14 -04:00
69922a4e16 ADR-013 Phase 3: asset-presentation search routing 2026-07-18 22:59:19 -04:00
72e3484497 ADR-013 Phase 3: generic asset-panels renderer (Path A) 2026-07-18 22:44:06 -04:00
6de329a390 Users: deleting a user clears their API tokens and detaches audit rows
Deleting any user who owned an API token or appeared in the audit log
hit the users FK and returned 500. Tokens are revoked outright; audit
history is kept but detached so the trail survives the account.
2026-07-17 10:54:48 -04:00
11c8d79ba4 Add the printedparts plugin: 3D-printed parts storefront and kiosk
Catalog with photos and append-only print-file revisions, a stock
ledger attributing every take/restock/adjust to a badge-resolved
employee, a touch kiosk (scan bin, scan badge, keypad quantity) with a
deliberately open decrement-only take endpoint, 1x0.5in CODE128 bin
labels, low-stock email alerts to selected users, roles, or addresses,
and stock/consumption/by-person reports with a cache-vs-ledger
reconcile. Ships disabled; enable per site. Contract 0.13.0 adds the
mailer and the User/Role models to the plugin surface.
2026-07-17 09:29:01 -04:00
a9d0dfff4a Initial import: shopdb-flask multi-site asset platform
Flask + Vue rewrite of the classic-ASP shopdb, built as a plugin
framework so sister GE Aerospace sites can adopt it. Product version
0.7.0-pre-0.8.0, plugin contract 0.11.0, 966 backend tests.

Key entry points:
- docs/INSTALL-WINDOWS-IIS.md - tested Windows + IIS install runbook
  (own-site and subpath deployment methods)
- docs/PILOT-DEPLOY.md - production pilot: stand up + import + verify
- docs/IMPORT-API.md - schema-agnostic legacy data import contract
- scripts/site_imports/wjf/ - West Jefferson reference import loader
- docs/adr/ - twelve accepted architecture decision records
2026-07-14 07:58:51 -04:00