-
23dc9fa379
ADR-013 Phase 4: relocate 4 self-contained plugin frontends
cproudlock
2026-07-18 23:51:23 -04:00
-
af9a3b190b
ADR-013 Phase 4: frontend staging machinery + relocate printedparts; fix router crash
cproudlock
2026-07-18 23:42:43 -04:00
-
37c764ba8d
ADR-013 Phase 4: move hardcoded plugin top-level routes into plugin route files
cproudlock
2026-07-18 23:26:17 -04:00
-
296b6e024b
ADR-013 Phase 3: generic map-overlays renderer (Path A)
cproudlock
2026-07-18 23:10:09 -04:00
-
8a2f984393
ADR-013 Phase 3: search routes via get_asset_presentation, not a hardcoded map
cproudlock
2026-07-18 22:56:05 -04:00
-
b669561421
ADR-013 Phase 3: migrate all detail pages to PluginAssetPanels; drop WarrantyPanel
cproudlock
2026-07-18 22:50:27 -04:00
-
e3c4b90afe
ADR-013 Phase 3: generic asset-panels renderer (Path A)
cproudlock
2026-07-18 22:43:54 -04:00
-
beea6c0c9f
ADR-013 Phase 2: guard hash-gates a .py sibling of an init-less dir
cproudlock
2026-07-18 22:28:33 -04:00
-
c59d2dab56
ADR-013 Phase 2: import guard fails closed on non-.py + owns package root
cproudlock
2026-07-18 22:12:20 -04:00
-
dd30ca0c3f
ADR-013 Phase 2: verify every plugins.* import via a meta_path guard
cproudlock
2026-07-18 21:47:32 -04:00
-
55a6f1b8d3
ADR-013 Phase 2: fix four bypasses found by adversarial review
cproudlock
2026-07-18 21:06:27 -04:00
-
5b19f3b554
ADR-013 Phase 2: enforcement + signed shelf + adopt
cproudlock
2026-07-18 20:44:54 -04:00
-
86f5f1be68
ADR-013 Phase 1: signed plugin artifacts (pack/validate/keygen)
cproudlock
2026-07-18 20:21:57 -04:00
-
d178726687
ADR-013 Phase 0: plugin lifecycle groundwork
cproudlock
2026-07-18 18:08:34 -04:00
-
3ac5ed2580
Add ADR-013: plugin catalog, curated shelf, lean per-site builds
cproudlock
2026-07-18 17:40:29 -04:00
-
603872ff76
Add Copilot custom instructions
cproudlock
2026-07-17 20:56:41 -04:00
-
6ab1046ef4
Add
flask seed demo sample-data command
cproudlock
2026-07-17 20:32:01 -04:00
-
83141bacb7
Widen settings.description to TEXT; run seeders in CI
cproudlock
2026-07-17 20:31:48 -04:00
-
804c066de4
Add cryptography dependency for MySQL 8 auth
cproudlock
2026-07-17 19:41:42 -04:00
-
9deb194580
Standardize on Python 3.13 (matches prod 3.13.7)
cproudlock
2026-07-17 19:30:19 -04:00
-
314f339ba9
Dev setup: winget install commands for the Windows toolchain
cproudlock
2026-07-17 18:58:06 -04:00
-
1361dc6004
Lab intro: tag range through lab-stage-17 (last audit finding)
cproudlock
2026-07-17 18:15:59 -04:00
-
efb879d44a
Docs audit fixes: kiosk code drift, PowerShell chains, broken links, leaks
cproudlock
2026-07-17 18:05:47 -04:00
-
aba588cc07
Neutralize internal-host references for publication
cproudlock
2026-07-17 15:13:34 -04:00
-
f77f0a8d90
Add GitHub Actions CI + Windows notes on the developer docs
cproudlock
2026-07-17 15:12:36 -04:00
-
0e194c3237
Dev setup: note GitHub has no CI yet, so local checks are the gate there
cproudlock
2026-07-17 15:09:16 -04:00
-
9a60100cb2
Dev setup: correct the hook claim, ship an opt-in committed hook
cproudlock
2026-07-17 15:08:50 -04:00
-
0c37ef9057
Dev setup: Windows-first (most devs are on VS Code / Windows)
cproudlock
2026-07-17 15:01:49 -04:00
-
f764c5d3e9
Add development setup guide + shared VS Code config
cproudlock
2026-07-17 14:40:55 -04:00
-
3a3dff285e
printedparts stage 17: gage-lab asset tag + print-files redesign
lab-stage-17
cproudlock
2026-07-17 14:01:09 -04:00
-
6160a5142a
Dark mode: dropdown arrow no longer tiles across selects
cproudlock
2026-07-17 13:37:24 -04:00
-
d75e80ce79
Plugin lab rewritten as the literal type-along walkthrough
cproudlock
2026-07-17 13:35:02 -04:00
-
ee80d684d4
Shopfloor feed resolves employee names live when none is stored
cproudlock
2026-07-17 13:29:34 -04:00
-
bc9159742c
printedparts lab: post-stage polish addendum and closing lesson
cproudlock
2026-07-17 13:24:11 -04:00
-
e9235de8ec
Floor-map previews honor the mount path
cproudlock
2026-07-17 11:43:06 -04:00
-
4f3ea2848a
GE monogram avatar fallback + per-page document titles
cproudlock
2026-07-17 11:31:38 -04:00
-
5625608bd0
Employees: external photo base URL is a setting
cproudlock
2026-07-17 11:16:04 -04:00
-
0cc205d25e
Users: deleting a user clears their API tokens and detaches audit rows
cproudlock
2026-07-17 10:54:47 -04:00
-
bb5308bae0
printedparts: badge resolution honors the employee directory mode
cproudlock
2026-07-17 10:39:11 -04:00
-
d297c5b75d
IIS runbook: app pool needs Modify on instance/
cproudlock
2026-07-17 10:34:52 -04:00
-
deb6dd2162
Ignore the publication clone's _transfer bundle folder
cproudlock
2026-07-17 10:01:34 -04:00
-
02ed88c7c5
Merge printedparts: 3D-printed parts storefront, kiosk, labels, alerts
cproudlock
2026-07-17 09:20:43 -04:00
-
-
d1357defc4
printedparts: catalog access is printedparts.view-gated
cproudlock
2026-07-17 09:19:30 -04:00
-
96e48e0f50
printedparts kiosk: keypad and entry-panel visual polish
cproudlock
2026-07-17 09:13:27 -04:00
-
4dfdb167d5
printedparts stage 16: kiosk touch fixes from first hands-on use
lab-stage-16
cproudlock
2026-07-17 09:04:52 -04:00
-
aa4bfcd41c
printedparts stage 15: print-file revision history + role-based alerts
lab-stage-15
cproudlock
2026-07-17 08:47:41 -04:00
-
26b6b6b32f
printedparts: Parts Kiosk link in the sidebar Displays section
cproudlock
2026-07-17 08:38:57 -04:00
-
eab225e1e6
printedparts stage 14: retire/restore in the UI, dashless item codes
lab-stage-14
cproudlock
2026-07-17 08:35:31 -04:00
-
a8a6baf979
printedparts stage 13: pick alert recipients from shopdb users
lab-stage-13
cproudlock
2026-07-17 08:30:04 -04:00
-
427eb0de8c
printedparts stage 12: admin settings page + settings-rail card
lab-stage-12
cproudlock
2026-07-17 08:25:33 -04:00
-
df918ed38f
printedparts stage 11: low-stock email alerts on threshold crossing
lab-stage-11
cproudlock
2026-07-17 08:15:50 -04:00
-
fc0d48a6a7
printedparts stage 10: closeout - lab guide rewritten from the real build
lab-stage-10
cproudlock
2026-07-17 08:11:36 -04:00
-
b68e927ef6
printedparts stage 9: reports - stock w/ reconcile, consumption, by-person
lab-stage-09
cproudlock
2026-07-17 08:04:09 -04:00
-
6439d1ccd9
printedparts stage 8: 1x0.5in bin labels
lab-stage-08
cproudlock
2026-07-17 08:00:35 -04:00
-
6ed3da1b64
printedparts stage 7: the kiosk - scan bin, scan badge, keypad, take
lab-stage-07
cproudlock
2026-07-17 07:49:13 -04:00
-
d6a78a72ff
printedparts stage 6: RBAC - declared permissions gate every mutation
lab-stage-06
cproudlock
2026-07-17 07:42:07 -04:00
-
6dfc8906c4
printedparts stage 5: the ledger - restock/adjust with badge attribution
lab-stage-05
cproudlock
2026-07-17 07:41:18 -04:00
-
cb367a38f9
printedparts stage 4: catalog mutations, item photos, detail + form
lab-stage-04
cproudlock
2026-07-17 07:36:54 -04:00
-
d1c844d533
printedparts stage 3: read API + list page (first visible win)
lab-stage-03
cproudlock
2026-07-16 17:10:42 -04:00
-
f5cfac33b4
printedparts stage 2: models, real 0001 baseline, tables live
lab-stage-02
cproudlock
2026-07-16 16:57:21 -04:00
-
8dd1fadeca
printedparts stage 1: scaffold, no AssetType, manifest per spec
lab-stage-01
cproudlock
2026-07-16 16:44:54 -04:00
-
-
a0b92f7b5e
printedparts lab: set expectations up front
cproudlock
2026-07-16 16:37:28 -04:00
-
6362cef699
printedparts docs: record the open-write kiosk decision; defer the dashboard widget
cproudlock
2026-07-16 16:35:17 -04:00
-
d99de002bf
printedparts plugin: design proposal + hands-on development lab
cproudlock
2026-07-16 16:33:19 -04:00
-
eed947b207
Forward real client IPs through waitress trusted-proxy flags
cproudlock
2026-07-16 15:27:45 -04:00
-
f5f67172aa
Scope dark-mode form and notification styles to the explicit theme
cproudlock
2026-07-16 15:11:35 -04:00
-
97f7dfb0de
Export script: emit bundle into the pxe-images github transfer folder
cproudlock
2026-07-16 14:14:44 -04:00
-
3ba09ac9f3
Fix bit(1) import coercion and subpath login redirect; add GitHub export script
cproudlock
2026-07-16 13:56:38 -04:00
-
f16d2289ff
Remove stray import_apps.py (superseded by the import API + wjf loader)
cproudlock
2026-07-13 19:53:51 -04:00
-
99cac87d9a
README: refresh to current product surface; retire direct-DB migration guide
cproudlock
2026-07-13 19:49:34 -04:00
-
7d7862f4b5
Neutral wording in import docs; portable tool output paths
cproudlock
2026-07-13 16:23:24 -04:00
-
6010f01de1
Support subpath IIS deployment as a second install method
cproudlock
2026-07-13 16:11:12 -04:00
-
69dd6d0abe
Warranty form: make Vendor a strict dropdown of the vendor catalog
cproudlock
2026-07-13 15:02:59 -04:00
-
fba2fa05b4
Warranty form: vendor combobox + clearer "Lookup source" label
cproudlock
2026-07-13 15:00:53 -04:00
-
9e2544a687
wjf loader: import active machines only (isactive=1)
cproudlock
2026-07-13 15:00:45 -04:00
-
760b00f4d1
Warranties: fix N+1 slowness, filter alignment, and Covers hover
cproudlock
2026-07-13 14:49:36 -04:00
-
4a74a1a405
WJ import loader: mark setup_complete (a full import is the setup)
cproudlock
2026-07-13 14:41:23 -04:00
-
9c909af66d
WJ import loader: metrology PCs are computers that control a synthesized tool
cproudlock
2026-07-13 14:38:00 -04:00
-
c9641a3c62
CLAUDE.md: refresh Current State (tests, plugins, migration head, import docs)
cproudlock
2026-07-13 14:27:32 -04:00
-
a736ed541e
Fix Actions column border: keep td.actions as a table-cell
cproudlock
2026-07-13 14:23:28 -04:00
-
58af5afda2
List rows click through to the item; drop the redundant VLANs tab
cproudlock
2026-07-13 14:21:34 -04:00
-
8528617037
Network: consolidate into one tabbed hub; subnet devices span all asset types
cproudlock
2026-07-13 14:15:51 -04:00
-
dd541fba0a
Add "View Networks": front-facing subnet browse + detail with attached devices
cproudlock
2026-07-13 14:06:47 -04:00
-
5f51aa2383
Detail pages: give the relationships card bottom spacing (was merging with Notes)
cproudlock
2026-07-13 13:53:37 -04:00
-
a6ebec5118
Employee profile: cap USB checkout history with a show-more toggle
cproudlock
2026-07-13 13:49:33 -04:00
-
6d843e46e1
Applications: show related knowledge-base articles on the app detail
cproudlock
2026-07-13 13:44:23 -04:00
-
49d311b56e
WJ import loader: map application link + documentation path
cproudlock
2026-07-13 13:44:22 -04:00
-
b2dea82ac9
Global search: find employees in selfhosted mode, not just external HR DB
cproudlock
2026-07-13 13:39:18 -04:00
-
2229db4a70
Notifications: summarize multi-person names in the calendar event title
cproudlock
2026-07-13 13:32:39 -04:00
-
c4690da262
WJ import loader: resolve notification employee SSOs to names
cproudlock
2026-07-13 13:25:12 -04:00
-
35690bd169
Migrations: relax session sql_mode so the chain runs on strict MySQL 8
cproudlock
2026-07-13 13:06:07 -04:00
-
83a4867d1b
Add production pilot runbook (stand up + import + verify + cutover)
cproudlock
2026-07-13 12:21:40 -04:00
-
009ac9f9ef
Import docs: adoption playbook + superseded-mappers note + loader status
cproudlock
2026-07-13 12:18:56 -04:00
-
474f245ae7
Retire stale legacy-import mappers; add adoption playbook
cproudlock
2026-07-13 12:18:14 -04:00
-
af9afc15c5
WJ import loader: printers stage + Controlled-By relationship reversal
cproudlock
2026-07-13 12:15:41 -04:00
-
99ad6c0ebb
WJ import loader: tail stages (locations, relationships, subnets, usb, verify)
cproudlock
2026-07-13 12:05:33 -04:00
-
40a89b360a
WJ import loader: route LocationOnly by the islocationonly bit, not machinetypeid
cproudlock
2026-07-13 11:55:25 -04:00
-
6d79e469fa
WJ import loader: dependent-entity stages (comms, apps/installs, warranty, notif, KB)
cproudlock
2026-07-13 11:43:02 -04:00
-
6c4bd20e01
WJ import loader: catalog + assets-hub stages (the machineid->assetid crosswalk)
cproudlock
2026-07-13 11:37:11 -04:00
-
b11a6f26d8
WJ legacy-import reference loader: harness + reference/employees stages
cproudlock
2026-07-13 11:20:58 -04:00