rcourtman
eebf5bd678
feat(truenas): project aggregate disk temperatures
2026-03-29 21:02:52 +01:00
rcourtman
8590a7b17c
feat(truenas): add reporting fallback for disk temperatures
2026-03-29 20:48:15 +01:00
rcourtman
56c14ca19f
feat(ai): add canonical truenas app config reads
2026-03-29 20:36:43 +01:00
rcourtman
a5162d96cb
Redesign portal as a simpler account tool
2026-03-29 20:30:40 +01:00
rcourtman
298b23626b
feat(ai): add canonical truenas app log reads
2026-03-29 20:13:39 +01:00
rcourtman
b0ba88d541
feat(ai): add canonical truenas app control
2026-03-29 19:50:31 +01:00
rcourtman
41a031098c
Redesign portal as a simpler account surface
2026-03-29 19:45:42 +01:00
rcourtman
ba1f9ac9f3
Open portal on real tasks first
2026-03-29 19:19:15 +01:00
rcourtman
ecf99c393a
Redesign portal sign-in surface
2026-03-29 19:02:17 +01:00
rcourtman
20a16d5edd
feat(truenas): project cpu temperatures into host sensors
2026-03-29 19:00:21 +01:00
rcourtman
aab6b5e69d
feat(truenas): sync api-backed disk history
2026-03-29 18:35:47 +01:00
rcourtman
a6c0386069
feat(ai): expose canonical truenas resources to pulse query
2026-03-29 18:25:39 +01:00
rcourtman
7f25d083c0
Redesign portal as a calmer account surface
2026-03-29 18:25:23 +01:00
rcourtman
16f976537f
feat(truenas): project system telemetry through canonical host history
2026-03-29 17:56:42 +01:00
rcourtman
022a2be763
Version portal favicon href for cache busting
2026-03-29 17:35:45 +01:00
rcourtman
78ec9d2946
Refresh portal favicon and preview asset route
2026-03-29 17:24:29 +01:00
rcourtman
e14ddcf348
feat(truenas): project app stats through canonical workload history
2026-03-29 17:17:57 +01:00
rcourtman
508deff209
Make portal support copy concise and literal
2026-03-29 17:11:21 +01:00
rcourtman
401808ee66
Make portal section metadata literal
2026-03-29 17:02:02 +01:00
rcourtman
dccdc59ddb
Make portal shell labels literal
2026-03-29 16:53:12 +01:00
rcourtman
a7fb6cc3fb
Normalize portal task copy
2026-03-29 16:40:25 +01:00
rcourtman
4d11ca5a78
refactor(settings): surface truenas in platform connections
2026-03-29 16:37:13 +01:00
rcourtman
bb47bb09ea
Make portal overview fact-first
2026-03-29 16:26:59 +01:00
rcourtman
0de0245ea1
feat(truenas): ingest apps as canonical workloads
2026-03-29 16:04:09 +01:00
rcourtman
922bc7aa8f
build(portal): sync embedded styling bundle
2026-03-29 15:55:07 +01:00
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