Commit Graph

  • b503a6dcf0 docs: full refresh per DOCSPLAN (auth subsystem, backends model, access classes, sudo table, state-model mechanics) + 3 stale docstrings master mteehan 2026-09-05 16:34:57 +00:00
  • 78fcb01877 fix: install.sh loop abort, ACME poll sudo gate, /static/ sub-paths mteehan 2026-09-05 00:38:34 +00:00
  • 6229c39347 ui: declarative per-page tab titles via definePage title mteehan 2026-09-04 21:59:09 +00:00
  • 6476695d29 fix: ACME cert list self-heals when account.conf is left owner-only mteehan 2026-09-04 21:38:55 +00:00
  • 2b7fe1f485 ui: per-container #comp lifecycle, exp-claim auth refresh TTL mteehan 2026-09-03 17:25:22 +00:00
  • fc478a016e nginx: serve mgmt /static/ assets from disk (no Flask round-trip) mteehan 2026-09-03 14:58:57 +00:00
  • d78b90db00 ui: toast per-type durations, Details modal for long errors, concise acme.sh failure summary mteehan 2026-09-03 03:29:50 +00:00
  • 7e6fd71bdc test: acme --log flag asserts explicit log file path mteehan 2026-09-03 03:29:38 +00:00
  • faa076370d refactor: daemon collectors, thin webui proxies, pure config reads mteehan 2026-09-03 00:40:56 +00:00
  • 89b64960f3 ui: amber pending-edit markers for unapplied config changes mteehan 2026-09-01 20:17:15 +00:00
  • 75b86fd60d fix: ACME ownership self-heal + daily timer, apply-all force, firewall baseline re-stamp mteehan 2026-09-01 02:35:04 +00:00
  • ac52918df5 firewall: interface-coverage apply guard, target drift, non-destructive DHCP sync mteehan 2026-08-28 23:38:21 +00:00
  • 55309cfd86 status: cancel-all reverts pending changes to last applied config mteehan 2026-08-21 02:10:05 +00:00
  • 30b51ad7d3 state: applied-config snapshots + per-field pending diffs mteehan 2026-08-21 00:59:19 +00:00
  • a77cee821b Restart script re-execs itself with sudo when not run as root mteehan 2026-08-20 23:05:54 +00:00
  • 94705490b9 certs: async renewal via background task + status polling mteehan 2026-08-20 13:10:16 +00:00
  • 332d14e37d ws: migrate push stream to data streaming mteehan 2026-08-20 01:38:00 +00:00
  • 9c9f92ad04 fix: daemon /run spawn hardening, auth guard before first paint, WS refresh cap, interfaces runtime state mteehan 2026-08-19 15:32:36 +00:00
  • 4bd4c374fd fix: send WS JWT as bare subprotocol name; CSSOM inline styles; open mgmt services on public zone mteehan 2026-08-18 13:36:55 +00:00
  • 183904faad fix: seed builtin admin only on empty DB; recover page-load sessions with one refresh mteehan 2026-08-17 23:56:54 +00:00
  • 0ed275835d fix: auth review fixes — token revocation, WS auth, seeding, and hardening mteehan 2026-08-17 01:45:15 +00:00
  • 1980043afd docs: update hoover.md, audit residual storage reads, verify mteehan 2026-08-15 08:25:40 +00:00
  • 4f74192302 app: use auth model for init, sidebar, login mteehan 2026-08-15 02:08:16 +00:00
  • 64f3a77411 auth: slim components/auth.js to ceremony helpers + doLogin mteehan 2026-08-15 01:54:50 +00:00
  • 11a398ce89 ws: decouple reconnection from auth internals, use model mteehan 2026-08-15 01:41:09 +00:00
  • 382bbd989b api: remove auth helpers, route 401 through auth model mteehan 2026-08-15 00:53:05 +00:00
  • 5d84710d1a auth: create auth model definition (hoover/auth_model.js) mteehan 2026-08-14 23:42:56 +00:00
  • 61d95b99a4 model: add onSuccess/onFailure lifecycle hooks to modelRegister mteehan 2026-08-14 23:22:39 +00:00
  • c7593f8a1e fix: close refresh token session binding bypass mteehan 2026-08-12 20:06:05 +00:00
  • 9ae2cca801 fix: clean up lazy import, dead var, whitespace; document WS session caveat mteehan 2026-08-12 19:18:28 +00:00
  • 818721ae5c Fix incorrect password log path in _seed_builtin_admin mteehan 2026-08-12 18:21:05 +00:00
  • 85d8770ba6 fix: address auth subsystem issues from ws-debug review mteehan 2026-08-12 17:51:09 +00:00
  • 0889ef0d08 fix: prevent data loss in update_permissions and token_refresh mteehan 2026-08-12 16:37:06 +00:00
  • 6404508519 fix: harden auth with refresh token session binding, logging, and router state mteehan 2026-08-12 15:53:17 +00:00
  • 76300e281f security: harden builtin admin pwd logging and fix auth token persistence mteehan 2026-08-12 14:54:07 +00:00
  • e01574c67e auth: make session binding optional, enforce WebAuthn credential ownership mteehan 2026-08-12 14:16:49 +00:00
  • 3654209b78 auth: fix WS session_id extraction and track WebAuthn success/failure mteehan 2026-08-12 04:27:14 +00:00
  • 6f728cf853 fix auth: validate logout body, harden WebAuthn, optimize list_users mteehan 2026-08-12 03:58:54 +00:00
  • ba0c7bfa9b remove unused token query param fallback from WS auth mteehan 2026-07-31 00:00:28 +00:00
  • c64f988ba2 fix: dhcp auto-sync UI refresh, users.js null guard, and login toast escaping mteehan 2026-07-30 23:30:56 +00:00
  • b69ca330f4 enforce mandatory X-Session-Id header for access token validation mteehan 2026-07-30 22:55:16 +00:00
  • 43b44ad340 fix: add probabilistic cleanup to token blacklist mteehan 2026-07-29 03:41:15 +00:00
  • 48f8d0be18 Auth: rate limiter, WebAuthn domain awareness, misc fixes mteehan 2026-07-29 02:48:53 +00:00
  • 6d30f1387e fix: indentation in frontend handlers and restore dhcp auto-sync toast mteehan 2026-07-28 19:32:17 +00:00
  • 8ae60ab8cf fix: harden auth and fix frontend issues mteehan 2026-07-28 18:52:03 +00:00
  • a82578f342 fix: invalidate tokens on permission change (medium), optimize create_user query, fix ws reconnect race mteehan 2026-07-28 18:02:14 +00:00
  • 8bb3619ddc refactor: extract shared utilities and standardize page patterns mteehan 2026-07-28 17:32:51 +00:00
  • 244576b8eb fix: render Add passkey button on empty state mteehan 2026-07-28 16:45:34 +00:00
  • 3de82e3b9b Remove query-string cache-busting from static assets mteehan 2026-07-28 13:50:22 +00:00
  • c943d17bb3 Fix typo: 'PassKey' -> 'Passkey' in toast message mteehan 2026-07-28 13:44:52 +00:00
  • f77473c13c fix: missing brace in users.js, ws double-increment, b64url stack overflow, docs storage mteehan 2026-07-28 13:17:12 +00:00
  • ca27ea5522 feature: framework-level abort handling for page lifecycle mteehan 2026-07-28 02:52:28 +00:00
  • d52a0fad12 fix: check tryRefreshToken result in WS reconnect, clear permissions on logout mteehan 2026-07-28 02:44:09 +00:00
  • c4a10c7129 refactor: switch auth data from localStorage to sessionStorage mteehan 2026-07-28 02:16:24 +00:00
  • 739253b2e5 fix: WS reconnection deadlock, remove redundant try/except, fix docs mteehan 2026-07-28 01:44:10 +00:00
  • 358573567d fix: dual-key rate limiting for auth + websocket reconnect guard mteehan 2026-07-28 00:54:48 +00:00
  • 76cd219050 fix: harden retry JSON parsing and exempt personal auth routes mteehan 2026-07-27 20:38:50 +00:00
  • e48ba72b81 fix: 401-401 retry on non-401, move login DOM bindings into page lifecycle, add abort support mteehan 2026-07-27 19:46:30 +00:00
  • cc5679a1cd fix: deduplicate token refresh, serialize concurrent attempts, clean up logout path mteehan 2026-07-27 19:15:27 +00:00
  • ca110c321d style: format docs, fix user_permissions variable scoping in auth middleware mteehan 2026-07-27 18:37:11 +00:00
  • d4213fb93b fix: auth reconnection loop, duplicate login listeners, modal double-disable wall 2026-07-24 04:02:44 +00:00
  • edaf16a433 fix: remove dead auth_refresh code, fix logout storage, align bootstrap TTL, add hash rehash, tighten CSP mteehan 2026-07-24 03:06:31 +00:00
  • a365059976 security: harden JWT auth with session binding, CSP headers, and sessionStorage mteehan 2026-07-24 02:51:54 +00:00
  • 56b200d233 feat: add auth subsystem with WebAuthn passkeys support mteehan 2026-07-24 01:21:39 +00:00
  • 04417cf05c WireGuard access classes, firewall nftables fixes, network sync event refactor mteehan 2026-07-20 03:57:16 +00:00
  • dadabd7954 feat: add system metrics dashboard with resource monitoring mteehan 2026-07-15 00:24:43 +00:00
  • c21639b7f1 docs: add comprehensive docstrings and inline comments mteehan 2026-07-13 17:26:45 +00:00
  • 2e49dec633 feat: auto-generate self-signed certs, hoover modal processing guard, refactor backends/proxy pages mteehan 2026-07-13 14:30:35 +00:00
  • 05524f3756 fix: critical bugs + security hardening mteehan 2026-07-10 17:05:37 +00:00
  • 803258cf18 dhcp: auto-populate gateway from interface IP for DHCP ranges mteehan 2026-07-09 00:58:09 +00:00
  • 5135de0921 feat: add system config import, refactor install script and nginx auth mteehan 2026-07-08 02:20:28 +00:00
  • fb39af126a docs: update documentation and project structure mteehan 2026-07-02 14:41:02 +00:00
  • b4d13c4bd5 Add restart-services script to scripts/ directory mteehan 2026-07-02 14:39:35 +00:00
  • 20266e4a2f rename vendor files to put extension after version string mteehan 2026-07-02 04:01:52 +00:00
  • 8c13ad55ce Add update-vendor.sh symlink support, unify install.sh vendor flow mteehan 2026-07-01 00:44:08 +00:00
  • 575cf06a4b hoover: move ToastContainer to separate module, add reactive re-render, bump module cache v8 mteehan 2026-06-30 04:01:41 +00:00
  • 9088f34345 sync: add cross-subsystem event bus for config consistency mteehan 2026-06-29 20:44:36 +00:00
  • 348bbfbca6 dhcp: track pending config changes with hash, update UI button mteehan 2026-06-28 16:26:32 +00:00
  • baa441fa13 dhcp: auto-populate IP range when selecting interface mteehan 2026-06-28 13:04:51 +00:00
  • 391466664e Update status checks and add optgroup support to form modals mteehan 2026-06-28 12:47:59 +00:00
  • d8d8425340 docs: update API conflict status, ACME config, request flow, deployment, and security sudoers mteehan 2026-06-28 01:58:56 +00:00
  • 25a1943fce Optimize firewall state collection and improve daemon shutdown mteehan 2026-06-28 00:54:01 +00:00
  • 80dd4e3272 proxy: refactor modals and add cert selector options mteehan 2026-06-27 23:59:12 +00:00
  • 835326311b Refactor nginx to path-based domain model with config migration mteehan 2026-06-27 23:34:06 +00:00
  • 8feb56faf6 fix: ECC cert support, ACME deploy hook path, NAT detection, and account config fallback mteehan 2026-06-27 14:23:40 +00:00
  • 398831b6e2 Refactor ACME module and add cert issuance conflict handling mteehan 2026-06-27 00:38:49 +00:00
  • feaf253403 Remove SPA catch-all, add vendor route and JSON 404 handler mteehan 2026-06-23 23:20:35 +00:00
  • e74f0a5ffb Remove unused htmx/json-enc vendor libs; fix missing htm.js symlink mteehan 2026-06-23 21:34:57 +00:00
  • 5ba0f31767 Add state management, WebSocket polling, html.js templating, and refactor pages mteehan 2026-06-23 21:11:45 +00:00
  • 5025dfaf30 feat: add ACME account management with validation pipeline mteehan 2026-06-23 14:24:19 +00:00
  • 3a325504ec gitignore: broaden PLAN.md pattern to *PLAN.md mteehan 2026-06-23 05:34:16 +00:00
  • 75aa6fb885 fix: wrap model data in named objects and fix renderGuardMulti empty check mteehan 2026-06-23 00:08:40 +00:00
  • b673e87c9b refactor: introduce model layer for centralized data synchronization mteehan 2026-06-22 22:54:29 +00:00
  • 633505e7dc refactor: modernize frontend with hoover framework components and docs mteehan 2026-06-21 04:29:27 +00:00
  • b8f20e99d9 agent update mteehan 2026-06-17 03:59:37 +00:00
  • 687fa8f52f pre-refactor mteehan 2026-06-17 03:41:08 +00:00
  • 318d7169f7 Switch networkctl parsing from text to JSON output mteehan 2026-06-16 04:45:59 +00:00
  • 2f78102090 chore: cleanup pyproject, vendor script, and add restart-services.sh mteehan 2026-06-16 03:37:07 +00:00
  • 7abe7700e9 test: update and add tests for all updated subsystems mteehan 2026-06-16 03:37:00 +00:00
  • 6e814d2827 refactor: update system config, sudoers, and install script mteehan 2026-06-16 03:36:55 +00:00