-
28fd5aad14
Guard ticket creation against duplicates using event's existing ticket_id
main
deploy-2026.05.14-235

jaredandClaude Sonnet 4.6
2026-05-14 11:09:50 -04:00
-
65536d58c5
Fix misleading docstring on _purge_old_jobs_loop
deploy-2026.05.14-232

jaredandClaude Sonnet 4.6
2026-05-14 11:06:28 -04:00
-
0e852ebd11
Fix ping-only hosts polled twice per cycle with inconsistent parameters
deploy-2026.05.14-229

jaredandClaude Sonnet 4.6
2026-05-13 23:13:43 -04:00
-
8aaaa89f03
Replace deprecated datetime.utcnow() with datetime.now(timezone.utc)
deploy-2026.05.13-226

jaredandClaude Sonnet 4.6
2026-05-13 15:34:41 -04:00
-
7467236ffd
Add ESLint config enforcing no-undef and eqeqeq
deploy-2026.05.13-223

jaredandClaude Sonnet 4.6
2026-05-13 15:33:26 -04:00
-
dc16a583a5
Fix inspector auto-refresh ignoring 'Off' setting on page load
deploy-2026.05.13-220

jaredandClaude Sonnet 4.6
2026-05-13 13:20:42 -04:00
-
12ef20901a
Fix auto-refresh ignoring 'Off' setting on page load
deploy-2026.05.13-217

jaredandClaude Sonnet 4.6
2026-05-13 13:19:44 -04:00
-
0693ad56f9
Fix monitor loop double-sleep on error; add grep -F regression test
deploy-2026.05.13-214

jaredandClaude Sonnet 4.6
2026-05-13 13:16:43 -04:00
-
c455c5d4b9
Fix suppression annotation for interface_down not checking host-level rules
deploy-2026.05.13-211

jaredandClaude Sonnet 4.6
2026-05-13 13:14:46 -04:00
-
13e6839cdf
Show suppressed badge on host cards during global maintenance windows
deploy-2026.05.13-208

jaredandClaude Sonnet 4.6
2026-05-13 13:12:25 -04:00
-
e7c83eff2b
Use grep -F in dmesg filter to prevent interface name treated as regex

jaredandClaude Sonnet 4.6
2026-05-13 11:12:02 -04:00
-
5c2a92eaee
Remove unused is_new parameter from ticket helper methods

jaredandClaude Sonnet 4.6
2026-05-13 11:10:32 -04:00
-
f942e96c24
Fix ticket_id never stored when fail_thresh>1; guard sessionStorage JSON.parse
deploy-2026.05.13-202

jaredandClaude Sonnet 4.6
2026-05-11 23:45:20 -04:00
-
8173b9dc7f
Cancel in-flight diagnostic poll when user selects a new port
deploy-2026.05.12-199

jaredandClaude Sonnet 4.6
2026-05-11 23:26:53 -04:00
-
2896692d93
Fix empty-object false negative in links page no-data check
deploy-2026.05.12-196

jaredandClaude Sonnet 4.6
2026-05-11 23:21:50 -04:00
-
c2492bbfe8
Use shlex.quote for remote_cmd in build_ssh_command
deploy-2026.05.12-193

jaredandClaude Sonnet 4.6
2026-05-11 23:17:11 -04:00
-
33b214eac0
fix: escape ticket_id text content in dynamic events table
deploy-2026.05.12-190

jaredandClaude Sonnet 4.6
2026-05-11 23:02:09 -04:00
-
0331c2bd00
fix: add aria-required to s-reason field in suppressions form
deploy-2026.05.11-187

jaredandClaude Sonnet 4.6
2026-05-11 15:11:05 -04:00
-
2710eaa118
fix: SSH shell quoting bug breaks ethtool collection; ticket_id KeyError
deploy-2026.05.11-184

jaredandClaude Sonnet 4.6
2026-05-11 13:41:09 -04:00
-
9c011cfce1
fix: UTC timezone suffix missing from all isoformat() timestamp outputs

jaredandClaude Sonnet 4.6
2026-05-11 13:28:49 -04:00
-
182cc8c451
fix: inspector.html stale/updated timestamp broken date parsing
deploy-2026.05.11-181

jaredandClaude Sonnet 4.6
2026-05-11 13:25:17 -04:00
-
0d4f209c79
fix: admin-only suppression enforcement, links.html broken date parsing
deploy-2026.05.11-178

jaredandClaude Sonnet 4.6
2026-05-11 13:03:37 -04:00
-
b3495caac8
fix: aria-required sync, aria-label pills, deduplicate setDuration logic
deploy-2026.05.11-175

jaredandClaude Sonnet 4.6
2026-05-11 12:58:32 -04:00
-
ac7f406175
fix: inspector stale data warning, remove dead supported_modes code
deploy-2026.05.11-172

jaredandClaude Sonnet 4.6
2026-05-11 12:05:08 -04:00
-
124ca10bb0
fix: diagnostic toggle hint, link_stats schema, pagination UX, rate-limit feedback
deploy-2026.05.11-169

jaredandClaude Sonnet 4.6
2026-05-11 12:01:56 -04:00
-
18066ef062
fix: escape poe_class in inspector panel for consistency
deploy-2026.05.11-166

jaredandClaude Sonnet 4.6
2026-05-11 11:56:11 -04:00
-
160dfdfd79
fix: LLDP port label bug, suppression SQL dead code, avatar path hardening
deploy-2026.05.11-163

jaredandClaude Sonnet 4.6
2026-05-11 09:31:25 -04:00
-
e0452193ee
fix: flake8 E701 in avatar handler; update SSH test to match accept-new
deploy-2026.05.11-160

jaredandClaude Sonnet 4.6
2026-05-11 09:23:06 -04:00
-
41c350815a
fix: cache_ttl config validation; ticket_web_url via tojson in base.html

jaredandClaude Sonnet 4.6
2026-05-11 09:05:53 -04:00
-
72651e5d33
fix: LDAP conn leak, health timing info, security headers, link_stats size guard

jaredandClaude Sonnet 4.6
2026-05-11 08:50:51 -04:00
-
a28533946e
fix: LDAP empty-password guard, expires_minutes bounds, snapshot JSON safety, rate dict cleanup

jaredandClaude Sonnet 4.6
2026-05-11 08:47:43 -04:00
-
d3616badb2
fix: LLDP input validation, mgmt_ip early validation, poll timer cleanup, monitor backoff

jaredandClaude Sonnet 4.6
2026-05-11 08:45:28 -04:00
-
705d06ca5b
fix: diagnostic rate limiting, lock-held ownership check, iface name length cap

jaredandClaude Sonnet 4.6
2026-05-11 08:42:50 -04:00
-
1daa9ab475
security: harden exception exposure, SSL config, and Pulse response parsing

jaredandClaude Sonnet 4.6
2026-05-11 08:40:25 -04:00
-
17d273d792
arch+security: route all server contact through Pulse, harden SSH

jaredandClaude Sonnet 4.6
2026-05-10 23:58:16 -04:00
-
088ba789c9
security+a11y: job ownership check, aria-live chips, aria-hidden topo

jaredandClaude Sonnet 4.6
2026-05-10 23:53:17 -04:00
-
60c7c27ac7
refactor: const for _inspInterval in inspector.html
deploy-2026.05.11-132

jaredandClaude Sonnet 4.6
2026-05-10 23:45:42 -04:00
-
b0817e2582
refactor: replace inline onclick with data-action event delegation
deploy-2026.05.11-129

jaredandClaude Sonnet 4.6
2026-05-10 23:45:09 -04:00
-
80587bbbc4
a11y: keyboard-accessible panel toggles, region landmarks in inspector
deploy-2026.05.11-126

jaredandClaude Sonnet 4.6
2026-05-10 23:44:23 -04:00
-
18ab78c35a
security: escape user input in 403 error response to prevent XSS
deploy-2026.05.11-123

jaredandClaude Sonnet 4.6
2026-05-10 23:41:31 -04:00
-
68f69e1539
refactor: extract _annotate_suppressions helper, remove orphaned CSS
deploy-2026.05.11-120

jaredandClaude Sonnet 4.6
2026-05-10 23:39:52 -04:00
-
8e9a6b9b3f
refactor: const/let modernisation and eliminate duplicate date-parse logic
deploy-2026.05.11-117

jaredandClaude Sonnet 4.6
2026-05-10 23:37:32 -04:00
-
872dbf3b48
a11y: aria-pressed for all pill groups, aria-label on search inputs and buttons
deploy-2026.05.11-114

jaredandClaude Sonnet 4.6
2026-05-10 23:34:16 -04:00
-
ff2c0bd90a
Fix: inspector empty states and diagnostic button accessibility
deploy-2026.05.11-111

jaredandClaude Sonnet 4.6
2026-05-10 23:21:27 -04:00
-
5ee7154c45
CSS: migrate links.html static inline styles to classes
deploy-2026.05.11-108

jaredandClaude Sonnet 4.6
2026-05-10 23:19:32 -04:00
-
d63f73e90f
CSS: extract notification panel inline styles to classes
deploy-2026.05.11-105

jaredandClaude Sonnet 4.6
2026-05-10 23:18:33 -04:00
-
bc71cc829b
CSS: replace remaining inline color/size styles with TDS utilities
deploy-2026.05.11-102

jaredandClaude Sonnet 4.6
2026-05-10 23:17:22 -04:00
-
c3f0fcbefb
CSS: remove remaining fixable inline styles across templates
deploy-2026.05.11-99

jaredandClaude Sonnet 4.6
2026-05-10 23:15:15 -04:00
-
d8a4474814
CSS: convert all topology inline styles to modifier classes
deploy-2026.05.11-96

jaredandClaude Sonnet 4.6
2026-05-10 23:13:24 -04:00
-
9e0f8555cc
Feature: show suppression status on active alert rows
deploy-2026.05.11-93

jaredandClaude Sonnet 4.6
2026-05-10 23:11:15 -04:00
-
f25a377968
Cleanup: strip redundant inline styles, add CSS classes
deploy-2026.05.11-90

jaredandClaude Sonnet 4.6
2026-05-10 23:09:25 -04:00
-
7abb76afaa
Redesign: alerts above fold, fix nav, globalise suppress modal
deploy-2026.05.11-87

jaredandClaude Sonnet 4.6
2026-05-10 23:07:53 -04:00
-
6e3a579956
Cleanup: fix eslint warnings, button loading state, inspector footer hint
deploy-2026.05.11-84

jaredandClaude Sonnet 4.6
2026-05-10 22:42:40 -04:00
-
332f041e05
Dynamic resolved count, host search filter, lt-divider for UniFi section
deploy-2026.05.07-81

jaredandClaude Sonnet 4.6
2026-05-07 18:36:57 -04:00
-
66c2c6bc5f
Fix B108: replace hardcoded /tmp with tempfile.gettempdir()
deploy-2026.05.07-78

jaredandClaude Sonnet 4.6
2026-05-07 13:34:37 -04:00
-
ddc258a453
TDS polish: lt-frame tables, links search toolbar, dead CSS cleanup
deploy-2026.05.01-74

jaredandClaude Sonnet 4.6
2026-05-01 17:39:11 -04:00
-
e6649a4c39
TDS polish: lt-frame tables, lt-stats-grid link summary, settings-aware refresh
deploy-2026.05.01-71

jaredandClaude Sonnet 4.6
2026-05-01 17:15:48 -04:00
-
f0759ed24c
Upgrade page headers to lt-page-header/lt-page-title across all pages
deploy-2026.05.01-68

jaredandClaude Sonnet 4.6
2026-05-01 01:09:30 -04:00
-
9d15d4b802
Add stat cards, lt-frame alert queue, and timeline for resolved alerts
deploy-2026.05.01-65

jaredandClaude Sonnet 4.6
2026-04-30 22:19:50 -04:00
-
6f9787b74a
Add notification bell, settings modal, and context-sensitive footer
deploy-2026.05.01-62

jaredandClaude Sonnet 4.6
2026-04-30 21:33:02 -04:00
-
032d0db81e
Add LDAP avatar photos, UX polish, and TDS component upgrades
deploy-2026.05.01-59
deploy-2026.05.01-56

jaredandClaude Sonnet 4.6
2026-04-30 21:09:56 -04:00
-
5fdb77d664
Integrate test code improvements using web_template components
deploy-2026.04.30-53

jaredandClaude Sonnet 4.6
2026-04-29 23:37:47 -04:00
-
d05deb6ccd
Remove all inline event handlers; replace with data-action delegation
deploy-2026.04.29-50

jaredandClaude Sonnet 4.6
2026-04-29 17:53:48 -04:00
-
3a9cc472e1
Audit quick wins: null guard, API error toasts, aria-labels on suppress buttons

jaredandClaude Sonnet 4.6
2026-04-29 17:50:00 -04:00
-
54369bf6c3
fix: resolve bandit B324/B104 and flake8 E302/E303/E501 in app.py
deploy-2026.04.26-46

jaredandClaude Sonnet 4.6
2026-04-25 20:51:41 -04:00
-
a5fcd619f8
test: expand diagnose test coverage — parsers, dmesg, lldp, and analyze

jaredandClaude Sonnet 4.6
2026-04-25 19:53:35 -04:00
-
1767c12f1b
Fix field name mismatches, add events filter, in-place suppression refresh

jaredandClaude Sonnet 4.6
2026-04-19 23:35:02 -04:00
-
6461afe12f
Clean up suppressions.html: standardise pill attribute and remove inline onclick

jaredandClaude Sonnet 4.6
2026-04-19 00:01:52 -04:00
-
6473d932a7
Migrate inspector and links pages to TDS lt.* APIs

jaredandClaude Sonnet 4.6
2026-04-18 23:59:19 -04:00
-
b31b5dd122
Add avatar color, initials structure, and admin nav dropdown

jaredandClaude Sonnet 4.6
2026-04-18 23:54:01 -04:00
-
1e9ce08dca
Integrate TDS v1.2 lt.* APIs throughout app

jaredandClaude Sonnet 4.6
2026-04-18 23:46:44 -04:00
-
c0f8975dee
Replace dangling symlinks with real base.css and base.js files

jaredandClaude Sonnet 4.6
2026-04-18 22:11:44 -04:00
-
51c18fee5c
Align base.html and modal with tinker_tickets reference implementation

jaredandClaude Sonnet 4.6
2026-04-18 21:42:04 -04:00
-
b61501d81d
Restructure app to use LotusGuild Terminal Design System v1.2

jaredandClaude Sonnet 4.6
2026-04-18 21:01:20 -04:00
-
3e36dc9505
ci: add notify-failure, deploy tagging, and coverage reporting

jaredandClaude Sonnet 4.6
2026-04-14 15:16:02 -04:00
-
0d4f792a46
Add CI badges and CI/CD section to README

jaredandClaude Sonnet 4.6
2026-04-14 12:53:47 -04:00
-
9dc10422e3
Suppress bandit B201 false positive in dev runner

jaredandClaude Sonnet 4.6
2026-04-14 12:40:10 -04:00
-
903dc960c3
Add pytest test suite and security scanning

jaredandClaude Sonnet 4.6
2026-04-14 12:22:57 -04:00
-
6880abdff3
Add bandit security scanning workflow

jaredandClaude Sonnet 4.6
2026-04-14 11:04:39 -04:00
-
a4fd74754c
Add JS linting and deploy gating to CI pipeline

jaredandClaude Sonnet 4.6
2026-04-14 10:14:33 -04:00
-
5c3db5e934
ci: install Python3 via apt before pip — runner is node:20-bullseye

jaredandClaude Sonnet 4.6
2026-04-14 00:04:42 -04:00
-
3aff52f972
ci: add flake8 lint workflow; fix unused imports

jaredandClaude Sonnet 4.6
2026-04-13 22:23:26 -04:00
-
de5677fe4d
Auto-reload on auth timeout (401 response)

jaredandClaude Sonnet 4.6
2026-03-17 20:43:08 -04:00
-
eb9fb3f88f
Exclude LXC IPs from link stats collection

jaredandClaude Sonnet 4.6
2026-03-17 20:39:47 -04:00
-
44d4a7d1eb
Add pagination to event queries, input validation, daily event purge

jaredandClaude Sonnet 4.6
2026-03-17 20:32:32 -04:00
-
ee0ea8fd47
Fix host filtering: only show/monitor configured hosts; add PBS

jaredandClaude Sonnet 4.6
2026-03-17 17:17:40 -04:00
-
95ec211037
Fix: only SSH into explicitly configured hosts for ethtool collection

jaredandClaude Sonnet 4.6
2026-03-15 18:35:21 -04:00
-
253bc568d6
Improve Pulse execution reliability: retry logic, better logging, SSH hardening

jaredandClaude Sonnet 4.6
2026-03-15 09:19:07 -04:00
-
892d1cfe2d
Fix topology chain order and inspector SFP port width

jaredandClaude Sonnet 4.6
2026-03-14 22:42:38 -04:00
-
834acfd393
Fix topology diagram: replace SVG fork with CSS, fix line alignment

jaredandClaude Sonnet 4.6
2026-03-14 22:35:02 -04:00
-
148fc57cc2
Redesign topology diagram with dual-homed bus layout and improve inspector chassis

jaredandClaude Sonnet 4.6
2026-03-14 22:22:19 -04:00
-
35d785db64
fix: topology — reflect VLAN90 Ceph network and DHCP management separation

jaredandClaude Sonnet 4.6
2026-03-14 22:10:17 -04:00
-
f3753092e0
fix: topology — all servers dual-homed 10G+1G, show mgmt band

jaredandClaude Sonnet 4.6
2026-03-14 22:08:48 -04:00
-
55989f4c50
feat: redesign network topology diagram with accurate rack layout

jaredandClaude Sonnet 4.6
2026-03-14 22:06:03 -04:00
-
bc1d3fb33b
Remove aesthetic_diff.md reference from README — convergence complete

jaredandClaude Sonnet 4.6
2026-03-14 21:50:02 -04:00
-
3840d2ccb7
feat: link health summary, recently resolved panel, event duration

jaredandClaude Sonnet 4.6
2026-03-14 21:48:40 -04:00
-
df7b7e36e5
feat: UI improvements — event ages, error badges, PoE bars, mismatch detection

jaredandClaude Sonnet 4.6
2026-03-14 21:46:11 -04:00
-
fb6848b7e0
Apply LotusGuild design system convergence (aesthetic_diff.md)

jaredandClaude Sonnet 4.6
2026-03-14 21:40:20 -04:00
-
34758768a4
New features: stale banner, tab title alerts, health checks, DB housekeeping

jaredandClaude Sonnet 4.6
2026-03-14 21:35:32 -04:00
-
a7c3f97252
De-hardcode ticket URL and cluster name; improve diagnostic polling UX

jaredandClaude Sonnet 4.6
2026-03-14 14:31:57 -04:00