Commit Graph

  • 7df79e50d9 Release 0.11.0 Cam Proudlock 2026-08-17 13:29:05 -04:00
  • 24647aa8e8 Release 0.11.0 v0.11.0 cproudlock 2026-08-17 13:23:49 -04:00
  • 49f68081c3 Match the optional identifiers in every list's search box Cam Proudlock 2026-08-17 13:18:26 -04:00
  • aede5ac621 Match the optional identifiers in every list's search box cproudlock 2026-08-17 13:16:22 -04:00
  • fbd99041b0 Buildings and levels for the floor map, and make every identifier searchable Cam Proudlock 2026-08-17 13:03:54 -04:00
  • 3324dbd91e Buildings and levels for the floor map, and make every identifier searchable cproudlock 2026-08-17 12:55:51 -04:00
  • 47fb65fdd2 Release 0.10.0 Cam Proudlock 2026-08-17 08:37:57 -04:00
  • 7d9a54ca0f Release 0.10.0 v0.10.0 cproudlock 2026-08-17 08:00:24 -04:00
  • a895bde6fe README: count the plugins the tree has, and point somewhere useful cproudlock 2026-08-14 16:34:46 -04:00
  • 265ca2eb01 Security hardening, multi-site portability, and a documentation and API-surface sweep Cam Proudlock 2026-08-14 16:28:34 -04:00
  • e7b8933588 Stop the publication scrub failing on the rules that enforce it cproudlock 2026-08-14 16:27:58 -04:00
  • 1d8c983d04 Record the documentation and API-surface sweep in the changelog cproudlock 2026-08-14 16:21:16 -04:00
  • 96df19702e docs: one manual runbook, and ADR statuses that mean something cproudlock 2026-08-14 16:20:59 -04:00
  • 928a50c16e docs: what a site needs that no page answered cproudlock 2026-08-14 16:16:01 -04:00
  • 62c5454f00 docs: a front door, and one page on how the pieces relate cproudlock 2026-08-14 16:12:04 -04:00
  • ad335cfc9e api: document the twenty-two routes that were serving traffic in silence cproudlock 2026-08-14 16:09:47 -04:00
  • 36b0265668 openapi: emit a spec a machine can actually use cproudlock 2026-08-14 15:56:27 -04:00
  • 05be4c4489 docs: fix the examples that fail if you paste them cproudlock 2026-08-14 15:43:27 -04:00
  • d1ba3a1a02 docs: stop typing versions the code already knows cproudlock 2026-08-14 15:41:27 -04:00
  • 4995456136 docs: take one site's name, hosts and paths off the public wiki cproudlock 2026-08-14 15:38:27 -04:00
  • c829d96128 docs: take two leaks off the public wiki, and say where the files come from cproudlock 2026-08-14 15:23:04 -04:00
  • ce6d44e69f docs: EventSaver, and how GE-Enforce reaches a bay in the first place cproudlock 2026-08-14 14:19:16 -04:00
  • c648bdf560 labels: one module knows how to draw a code, seven views stop guessing cproudlock 2026-08-14 14:03:49 -04:00
  • b37c08eb5b docs: how another site points these tools at its own ShopDB cproudlock 2026-08-14 13:53:17 -04:00
  • 8f9805d964 Generate the facts that go stale, and record the fortnight in the changelog cproudlock 2026-08-14 13:47:48 -04:00
  • 035419fa51 ADR-015: stop shipping one site's values, and make the rule a gate cproudlock 2026-08-14 13:47:39 -04:00
  • 4d6ab741cc backups: retention reads the key the settings page actually writes cproudlock 2026-08-14 13:47:19 -04:00
  • 838932a72d geenforce: gate publishing on the library version, not on the manifest's own cproudlock 2026-08-14 13:47:11 -04:00
  • 2df5028883 relationships: the cleanup tools stop acting on links that were deleted cproudlock 2026-08-14 13:47:01 -04:00
  • c7dffce81e Serve an uploaded file as data, not as a document that can run cproudlock 2026-08-14 13:46:53 -04:00
  • d830dd49a9 collector: adopt an instrument before minting one, and stop the 500 loops cproudlock 2026-08-14 13:46:40 -04:00
  • 38deefe619 migrations: commit the plugin chains too, and bound what re-ran cproudlock 2026-08-14 13:46:23 -04:00
  • 0c574e0f49 installer: break ACL inheritance on the roots it creates cproudlock 2026-08-14 13:46:03 -04:00
  • ab301df9ac network: generate a device's asset number instead of asking twice cproudlock 2026-08-14 13:45:51 -04:00
  • 72f8da0e58 Shadow runs in-cycle; guarded share path Cam Proudlock 2026-08-13 14:54:06 -04:00
  • 1078ac03df geenforce: shadow runs inside the enforce cycle, not on its own clock cproudlock 2026-08-13 14:52:56 -04:00
  • 14fc3377d9 HP 3201/3301 toner part numbers Cam Proudlock 2026-08-13 13:45:56 -04:00
  • dfbc12a172 printers: part numbers for the HP 3201 / 3301 series cproudlock 2026-08-13 13:45:45 -04:00
  • 7517146238 Backup hover names the check and the capture separately Cam Proudlock 2026-08-13 13:35:17 -04:00
  • 4bded210e4 geenforce: the backup hover names both dates, because they mean different things cproudlock 2026-08-13 13:35:05 -04:00
  • 376b8df0fb Shadow task fixes, asset link ids, backup verdict Cam Proudlock 2026-08-13 13:20:24 -04:00
  • 1d7191c2d3 geenforce: the fleet table links where it says, and judges backups instead of dating them cproudlock 2026-08-13 13:20:15 -04:00
  • 6dc363411d geenforce: the shadow task actually runs, and says so on disk cproudlock 2026-08-13 13:19:59 -04:00
  • 3d83806135 Make the toner forecast an order, not a table cproudlock 2026-08-13 13:08:39 -04:00
  • 6e0d8aec4e Relationship inverse guard, audit command, widened direction fixer Cam Proudlock 2026-08-13 12:25:35 -04:00
  • e67fe47fe2 relationships: refuse links that cannot both be true, and report the ones already stored cproudlock 2026-08-13 12:25:24 -04:00
  • 70c5bced37 Shadow-mode client script and cutover doc correction Cam Proudlock 2026-08-13 11:23:27 -04:00
  • 6cdbea449a geenforce: ship shadow mode through the share, and correct the cutover doc cproudlock 2026-08-13 11:21:28 -04:00
  • 7d66551622 Forecast from the right end of the window, and from the level shown cproudlock 2026-08-13 10:54:23 -04:00
  • 3abf724ae6 Stale enforcement reports judge both clocks Cam Proudlock 2026-08-13 09:54:05 -04:00
  • 1e884dc02a geenforce: judge silence on both clocks, not just the server's cproudlock 2026-08-13 09:53:56 -04:00
  • 5dcc7e30af Display role vocabulary, migration commit fix, stale enforcement reports Cam Proudlock 2026-08-13 09:30:40 -04:00
  • 962979d483 geenforce: a PC that has gone quiet stops reading as healthy cproudlock 2026-08-13 09:28:37 -04:00
  • 20a95013ad contract 0.18.0: one name per display role, the kiosk's own cproudlock 2026-08-13 09:28:26 -04:00
  • 9336577abe Commit the migration run instead of trusting MySQL to cproudlock 2026-08-13 09:28:11 -04:00
  • d327ea1a5c Self-updating GE-Enforce client module on displays Cam Proudlock 2026-08-12 17:21:29 -04:00
  • 5de3594425 displays: the client module updates itself cproudlock 2026-08-12 17:21:29 -04:00
  • d6b433e5f4 Kiosks report their display type; whole-chain DDL parity Cam Proudlock 2026-08-12 17:07:21 -04:00
  • 84bf5d04ed geenforce: let a kiosk say what it is instead of guessing cproudlock 2026-08-12 17:07:21 -04:00
  • 50578f33bd Full-width GE-Enforce pages; asset column no longer echoes the host Cam Proudlock 2026-08-12 17:01:10 -04:00
  • d572c913e5 geenforce: let the wide pages use the page cproudlock 2026-08-12 16:56:45 -04:00
  • 2c822e462d Fix reports 500 on MySQL; enforcement report asset context Cam Proudlock 2026-08-12 16:49:58 -04:00
  • f1f573862d geenforce: order backup revisions in Python, not in MySQL cproudlock 2026-08-12 16:49:58 -04:00
  • 8d1f442daf Enforcement reports with asset context; contract 0.17.0 Cam Proudlock 2026-08-12 16:41:16 -04:00
  • 52eb10f5ca contract 0.17.0: expose DashboardDefault to plugins cproudlock 2026-08-12 16:41:09 -04:00
  • e8f33cffa1 Enforcement reports with asset context and backup state; manifest editor spacing Cam Proudlock 2026-08-12 16:35:46 -04:00
  • 598c2c98bc geenforce: reports say what the PC is, where, and whether it is backed up cproudlock 2026-08-12 16:31:24 -04:00
  • 523e3e4ecc geenforce: give the manifest entry rows room to breathe cproudlock 2026-08-12 15:47:36 -04:00
  • ee7f8640d1 Publish gate: refuse a manifest the fleet's enforcer lib cannot read Cam Proudlock 2026-08-12 15:26:27 -04:00
  • 9e34fafce5 geenforce: refuse to publish a manifest the fleet's lib cannot read cproudlock 2026-08-12 15:23:57 -04:00
  • c0c2982810 One-shot Edge force-update for the shopfloor displays Cam Proudlock 2026-08-12 12:26:35 -04:00
  • 787f475208 displays: clear a pending Edge update without waiting for 02:00 cproudlock 2026-08-12 12:26:29 -04:00
  • 5859070405 Ship the Tech Tools plugin that the previous export silently dropped Cam Proudlock 2026-08-12 12:13:30 -04:00
  • 457349d258 export: stop an unanchored exclude from eating a plugin cproudlock 2026-08-12 12:13:23 -04:00
  • 4319f6bc8e Application and warranty uploads, toner forecast, fiscal week Cam Proudlock 2026-08-12 12:07:14 -04:00
  • a64796f060 Document the upload, proof and forecast endpoints cproudlock 2026-08-12 12:06:25 -04:00
  • ea35a134fe Show the fiscal week beside the site name cproudlock 2026-08-12 12:06:25 -04:00
  • d32513727b Tech Tools section with a code generator, toner report that names the part, toner forecasting, warranty proof of cover, application uploads Cam Proudlock 2026-08-12 11:51:38 -04:00
  • d109314123 Forecast when a printer runs out, and count what it has been through cproudlock 2026-08-12 11:45:40 -04:00
  • 2fce81f33f Attach proof of cover to a warranty cproudlock 2026-08-12 11:45:40 -04:00
  • c28b02e45b Upload an application's image and installer instead of typing paths cproudlock 2026-08-12 11:45:17 -04:00
  • 2693eb28d6 Cap the dashboard at four cards, and shrink the hover map cproudlock 2026-08-12 11:45:17 -04:00
  • 27f76ee964 frontend: declare the empty toplevel export the codegen reads cproudlock 2026-08-12 11:43:57 -04:00
  • f66763e6df tools: a Tech Tools section, starting with codes on label stock cproudlock 2026-08-12 11:43:48 -04:00
  • 4d807ccb4b toner report: the part to order, and where the printer is cproudlock 2026-08-12 11:43:25 -04:00
  • 568dfbb91c Dashboard corrections Cam Proudlock 2026-08-11 16:27:14 -04:00
  • 94d8d6c9b6 dashboard: numbers that agree, a map on hover, wider cards cproudlock 2026-08-11 16:27:14 -04:00
  • 2d19bcdf60 Employee resolve diagnostic Cam Proudlock 2026-08-11 16:10:21 -04:00
  • 221bbb226e employees: an endpoint that says WHY a name did not resolve cproudlock 2026-08-11 16:10:20 -04:00
  • 721828b5cb Card refinements Cam Proudlock 2026-08-11 15:58:15 -04:00
  • 42c050a9f4 dashboard: tighten the printer, warranty and notification cards cproudlock 2026-08-11 15:57:14 -04:00
  • 793dfab5c8 Printer card chips Cam Proudlock 2026-08-11 15:46:21 -04:00
  • 8623db3ee2 dashboard: printer rows are a name and its cartridges, with the answer on hover cproudlock 2026-08-11 15:46:21 -04:00
  • 34cb9a5e3e Dashboard polish Cam Proudlock 2026-08-11 15:28:29 -04:00
  • c34815b87e dashboard: overflow links somewhere, tiles say what they count, rows stay inside cproudlock 2026-08-11 15:28:29 -04:00
  • f1d46e7ab8 Backup verified column Cam Proudlock 2026-08-11 15:00:26 -04:00
  • 294ddbb38e backups: show that a check happened, not just that a change did cproudlock 2026-08-11 15:00:25 -04:00
  • 9ae9879b90 Dashboard fixes: staleness, toner, layout Cam Proudlock 2026-08-11 14:45:29 -04:00
  • e0e4cce8bd dashboard: fix what a real fleet showed, which tests could not cproudlock 2026-08-11 14:45:28 -04:00
  • 3b37603691 Dashboard cards: rebuild deployable dists Cam Proudlock 2026-08-11 14:31:24 -04:00