0e3d5a6226
Promote the 2026-08-30 review security fixes and supplies ordering to main
2026-08-31 09:24:13 -04:00
a775b87db7
gate guard, runtime spec, Node 24 actions
2026-08-28 15:28:07 -04:00
e60945e56e
generator share links; secure send copy message
2026-08-28 11:46:56 -04:00
8e02235a71
section ticking covers the section
2026-08-27 15:43:00 -04:00
6dcff467d7
tools.view for the Tech Tools entry
2026-08-27 15:12:18 -04:00
e8f1de811f
nav items declare their permission
2026-08-27 14:51:04 -04:00
0c1fbfcc1e
read permissions on every GET
2026-08-27 14:26:17 -04:00
4da6c6aa36
guest role; guide section ticking
2026-08-27 13:02:35 -04:00
d38a599292
guides export/import bundles
2026-08-27 11:47:01 -04:00
28798e6a32
flask guides import-html; retention docstring
2026-08-27 11:27:30 -04:00
5f069b1a5f
Email report on every report page; kiosk long-name fix
2026-08-27 11:01:28 -04:00
4dfbf5f8ec
Kiosk drive filter and wider picker
2026-08-27 10:37:10 -04:00
60c340b07f
Plugin reports render; USB check-in/out audit report; kiosk drive lists
2026-08-27 10:20:59 -04:00
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
4e38303326
Tab titles name the record; Guides reach a site and the contract surface
2026-08-26 13:31:13 -04:00
c7fd00c225
One canonical name per vendor in the shipped catalog
2026-08-25 07:47:56 -04:00
1812def14f
Catalog dedupe commands, and a seed catalog with no duplicate vendors or models
2026-08-24 14:49:54 -04:00
4fe4e91ae4
Maintenance scripts load .env, so they reach the site's real database
2026-08-24 14:32:38 -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
f109dd1349
Plugin baselines skip tables that already exist
2026-08-24 09:28:52 -04:00
ce3a0f4338
Secure Send documented, and the machine form stops re-creating a controlling-PC link that already exists
2026-08-24 08:55:45 -04:00
2719589c6e
Label generator: back-side codes, pictures, two-column layout, measurement guards
2026-08-21 12:38:08 -04:00
74392ccad2
Only zero is empty, and the last day is worth reading
2026-08-21 11:57:17 -04:00
04107ff8ab
Search spelling suggestions across every list
2026-08-21 11:15:06 -04:00
44432c9b5a
Label generator: gap, position and a back side
2026-08-21 09:09:14 -04:00
1b5b28acff
Release 0.12.0
2026-08-20 08:46:04 -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
8dd383f4ee
Release 0.11.2
2026-08-17 15:53:26 -04:00
4c3d5746e8
Fix the levels viewer: markers were drawn on whichever plan was showing
2026-08-17 15:01:09 -04:00
ece0e15f03
Page past the 100-row cap in pickers and batch label sheets
2026-08-17 14:17:28 -04:00
7df79e50d9
Release 0.11.0
2026-08-17 13:29:05 -04:00
fbd99041b0
Buildings and levels for the floor map, and make every identifier searchable
2026-08-17 13:03:54 -04:00
47fb65fdd2
Release 0.10.0
2026-08-17 08:37:57 -04:00
265ca2eb01
Security hardening, multi-site portability, and a documentation and API-surface sweep
2026-08-14 16:28:34 -04:00
376b8df0fb
Shadow task fixes, asset link ids, backup verdict
2026-08-13 13:20:24 -04:00
70c5bced37
Shadow-mode client script and cutover doc correction
2026-08-13 11:23:27 -04:00
4319f6bc8e
Application and warranty uploads, toner forecast, fiscal week
2026-08-12 12:07:14 -04:00
f1d46e7ab8
Backup verified column
2026-08-11 15:00:26 -04:00
3b37603691
Dashboard cards: rebuild deployable dists
2026-08-11 14:31:24 -04:00
0ed8be75d9
Dashboard cards, backup last-seen
2026-08-11 14:01:57 -04:00
c30195a92b
Release 0.9.0
2026-08-11 12:42:03 -04:00
5c33b06688
Declarative subordinate devices + shared-machine check
2026-08-11 11:14:51 -04:00
321d0a3799
Backups: collection interval is actually readable
2026-08-11 10:08:59 -04:00
2924a53346
Part markers become their own assets under the operation they serve
2026-08-10 15:55:36 -04:00
28b1dfb89e
Backups: a revision chain belongs to a PC, not just a machine
2026-08-10 15:03:00 -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
c674000ccc
Show the kiosk label prefix, and let a plugin declare the settings it owns
2026-08-06 18:17:56 -04:00