Commit Graph

971 Commits

Author SHA1 Message Date
rcourtman bf4820733e Canonicalize metrics store database paths 2026-03-29 15:35:49 +01:00
rcourtman e403dc02c3 feat(truenas): ingest api-backed disk temperatures 2026-03-29 14:57:09 +01:00
rcourtman 4a27e54d09 Canonicalize config persistence file roots 2026-03-29 14:56:33 +01:00
rcourtman 22a59a8646 Harden email MIME transport construction 2026-03-29 14:50:36 +01:00
rcourtman df448c41d9 Expose Patrol verification activity mix 2026-03-29 14:50:09 +01:00
rcourtman fa7afc47de feat(truenas): surface platform connections workflow 2026-03-29 14:44:46 +01:00
rcourtman 6b45fd0502 Harden update history persistence root 2026-03-29 14:39:11 +01:00
rcourtman b398c9c405 Harden notification queue persistence root 2026-03-29 14:35:36 +01:00
rcourtman ff0362d9f6 Clarify Patrol trigger sources and activity breakdown 2026-03-29 14:34:35 +01:00
rcourtman 86aeec4745 Harden AI memory persistence roots 2026-03-29 14:28:48 +01:00
rcourtman 4af6858405 Harden update manager directory scans 2026-03-29 14:23:13 +01:00
rcourtman 82c8c08a3e Harden AI knowledge guest listing paths 2026-03-29 14:18:20 +01:00
rcourtman f1fc17e627 Canonicalize fixed alerts and licensing paths 2026-03-29 14:14:36 +01:00
rcourtman 3c0707751b Canonicalize Patrol activity semantics 2026-03-29 13:38:06 +01:00
rcourtman 82b24f5d90 Harden AI storage leaf path handling 2026-03-29 13:35:32 +01:00
rcourtman 74ed969644 style(portal): force explicit inline layout for workspace actions
- Stripped min-width flex boundaries that were forcing actions into vertical stacks on larger viewports
- Enforced absolute nowrap on horizontal metadata rows
2026-03-29 13:31:01 +01:00
rcourtman decb276af5 refactor(recovery): move range control to summary 2026-03-29 13:21:51 +01:00
rcourtman 7e1aa35723 style(portal): eliminate visual pill fatigue
- Removed arbitrary border-radius from metadata components
- Demoted container backgrounds on context chips to present as inline text
- Implemented standard bullet separators for inline list elements
- Maintained core visual anchors while reducing explicit pill noise
2026-03-29 13:21:19 +01:00
rcourtman 53f41fdb45 Harden webhook request URL validation 2026-03-29 13:18:40 +01:00
rcourtman 19b51dce5e style(portal): final visual polish for enterprise density
- Eliminated uppercase badge formatting for quieter data presentation
- Stripped remaining scattered drop-shadows
- Stacked mobile navigation cleanly dynamically at 1024px
- Ensured workspace row actions sit inline horizontally
2026-03-29 13:17:37 +01:00
rcourtman 9a0794c4b0 Harden update manager outbound requests 2026-03-29 13:11:14 +01:00
rcourtman 0c2e10f550 refactor(recovery): shorten summary headline tone 2026-03-29 13:03:35 +01:00
rcourtman 9ac8048acd Harden email delivery and TLS probing 2026-03-29 13:02:36 +01:00
rcourtman 586d8b1558 style(portal): standardize styling toward Cloudflare/GCP density
- Switched to the Inter/system UI font stack
- Refined global background and borders for sharper contrast
- Reduced overly stylistic border-radii
- Removed heavy uppercase tracking on card kickers
- Unified sidebar scaling to 256px with a pure  panel
2026-03-29 12:58:40 +01:00
rcourtman 3448f7f148 fix(recovery): constrain long-range activity timeline 2026-03-29 12:55:30 +01:00
rcourtman d6536932fc Harden outbound URLs and file-backed storage 2026-03-29 12:47:55 +01:00
rcourtman 2918f5f994 chore(portal): flatten UI design and remove SaaS gradients
- Removes all purple AI-slop gradients
- Removes deep box-shadows in favor of 1px borders
- Enforces an Android/Material-like flat aesthetic
- Standardizes border radii and widens component padding
- Reduces visual noise by muting nav and background colors
2026-03-29 12:44:50 +01:00
rcourtman b8b766b1ac refactor(recovery): remove protected items pagination 2026-03-29 12:41:11 +01:00
rcourtman 7ebfce5f20 refactor(recovery): reduce summary header duplication 2026-03-29 12:33:10 +01:00
rcourtman 35c7aea985 Add local portal preview dev loop 2026-03-29 12:25:46 +01:00
rcourtman 26b195fdf9 refactor(recovery): simplify summary card support bands 2026-03-29 12:16:41 +01:00
rcourtman aee0cba8b0 refactor(recovery): surface protected inventory health status 2026-03-29 12:10:44 +01:00
rcourtman a9967c3e69 fix(recovery): preserve canonical pbs guest continuity 2026-03-29 11:38:35 +01:00
rcourtman 0fca1dd438 refactor(recovery): default inventory to attention-first triage 2026-03-29 11:01:30 +01:00
rcourtman c862d4e526 refactor(recovery): align summary with scan-first monitoring cues 2026-03-29 10:56:13 +01:00
rcourtman ce7e0df379 refactor(recovery): move summary support into card headers 2026-03-29 10:39:25 +01:00
rcourtman 097a19e169 refactor(recovery): shorten summary card language 2026-03-29 10:23:16 +01:00
rcourtman 230d4330e6 refactor(recovery): simplify summary support lines 2026-03-29 10:17:30 +01:00
rcourtman 7c0dca001a refactor(recovery): split workspace controls from content 2026-03-29 10:01:34 +01:00
rcourtman 49acc693af refactor(recovery): separate workspace tabs from data cards 2026-03-29 09:48:36 +01:00
rcourtman 2ad3f5f46b refactor(recovery): tighten summary to workspace handoff 2026-03-28 23:43:30 +00:00
rcourtman 3ff68b2bbc refactor(recovery): trim low-value summary rows 2026-03-28 23:39:50 +00:00
rcourtman d877763fde test(integration): restart managed runtime for verify 2026-03-28 23:36:49 +00:00
rcourtman 60e902ab9a refactor(recovery): shorten summary support bands 2026-03-28 23:33:07 +00:00
rcourtman 5a849d211e copy(telemetry): align in-product disclosure 2026-03-28 23:25:55 +00:00
rcourtman 795cbdd4e7 refactor(recovery): match workload item badge density 2026-03-28 23:23:37 +00:00
rcourtman 10bb9d5ac5 docs(privacy): clarify telemetry retention 2026-03-28 23:17:58 +00:00
rcourtman 234f2a585f privacy(telemetry): add preview and reset controls 2026-03-28 23:13:43 +00:00
rcourtman 4379f3a840 Seed portal access from bootstrap roster 2026-03-28 23:11:33 +00:00
rcourtman bd0fc0a5e6 refactor(recovery): restore canonical item type badges 2026-03-28 23:11:13 +00:00