Gmer4Lfe
b58282b3d6
Read a filesystem once where two probes were answering the same question
2026-08-24 18:46:26 -04:00
Gmer4Lfe
9da2760a42
A localStorage guard was covering the layout restore it wrapped
2026-08-24 18:42:34 -04:00
Gmer4Lfe
049f633667
Bound the watchdogs' docker calls — a hung daemon is what they exist to catch
2026-08-24 18:39:59 -04:00
Gmer4Lfe
84946ed0c6
clear_logs previewed on one size basis and cleared on another
2026-08-24 18:36:29 -04:00
Gmer4Lfe
514e13660c
Give the bash side the disk helpers it never had, reporting the same unit as vv_df
2026-08-24 18:36:29 -04:00
Gmer4Lfe
9333334b7b
Bound the two tailscale lookups that were missed when the others were
2026-08-24 18:33:40 -04:00
Gmer4Lfe
367d0203b8
Find guards wired onto a helper that can never return non-zero
2026-08-24 18:22:59 -04:00
Gmer4Lfe
37017882c7
Check the header standard now that it is written down rather than implied
2026-08-24 18:22:59 -04:00
Gmer4Lfe
f116a1584e
Offboard reported a stack cleanup that could not fail and, on one path, had not run
2026-08-24 18:22:59 -04:00
Gmer4Lfe
1a5bacce87
Point the webhook's dependency note at where the handler actually lives
2026-08-24 18:22:59 -04:00
Gmer4Lfe
f6e5f7dcd6
Drop the remote-metrics endpoint nothing called and api/monitor.php already served
2026-08-24 18:22:59 -04:00
Gmer4Lfe
0f0c407458
Arrange and folder saves reported failure on every success, and split a move across two writes
2026-08-24 18:22:59 -04:00
Gmer4Lfe
354992c9e7
Keep a script's arguments and trailing comment when it moves between orchestrators
2026-08-24 18:22:59 -04:00
Gmer4Lfe
28987240aa
Let a sync window take a whole share in one click
...
The window editor is path-first, which is exact but slow for the case that is nearly all of them.
The chips only offer whole shares; a subpath already in the window marks its share partial rather
than offering to widen it, and the path box stays the only way to express a subpath or a profile.
2026-08-23 17:16:24 -04:00
Gmer4Lfe
fbf2b92167
Drop containers that no longer exist from the conf lists, after three days absent
...
A removed container leaves its name behind in every list that named it, and those names go on
being acted upon — a watchdog waiting for a container docker has never heard of. Strikes rather
than a single miss, because a rebuild makes a container vanish for a moment; and the lists naming
containers on the REMOTE are excluded, since pruning those against local docker would empty them.
2026-08-23 16:54:53 -04:00
Gmer4Lfe
206a119a4b
Show each container's fallback tier on the Monitor board
...
The row's left border carries it rather than the status dot, which already means running or
stopped.
2026-08-23 16:38:58 -04:00
Gmer4Lfe
671e7ea5a4
Make fallback coverage something that can actually happen, and say so on the page
...
fallback.sh starts covered containers with docker start and never creates them, so a coverage list
the partner has never been sent is a promise nothing can keep — all twelve were missing. Adds the
push and remove paths, a readiness card that checks rather than infers, and the fallback state the
assistant needs to answer for it.
2026-08-23 16:38:58 -04:00
Gmer4Lfe
d5cf3db2ec
Close every orchestrator the same way, and make skipped work a visible outcome
...
A gated-off section left nothing failed, so the weekly could run for hours and report "all
complete" beside "0 shares synced"; skipped is now derived from what was expected rather than
self-reported, and the verdict degrades to PARTIAL instead of flattering.
2026-08-23 16:38:58 -04:00
Gmer4Lfe
dc8823724d
Let the GPU transform actually run when deploying to a partner
...
The detection pattern starts with --, so grep parsed it as an option and exited 2; the negation
made the early return always true and every XML was deployed untransformed, keeping the owner's
NVIDIA device UUID on hosts that have no such card.
2026-08-23 16:38:58 -04:00
Gmer4Lfe
a392108562
Warn before a transfer when a disk backing the remote share is nearly full
...
Online is not writable: check_remote_disks confirmed each backing disk was mounted and healthy but
never how full it was, and rsync answers a full destination by stalling rather than failing.
2026-08-23 10:15:54 -04:00
Gmer4Lfe
fd1ab58598
Declare the Monitor board in one place, so a card's width and position stop living in eighteen inline styles and four media queries
2026-08-23 00:44:30 -04:00
Gmer4Lfe
bd13bdc6e1
Revert the Monitor column ladder for now; the layout work is paused, not abandoned
2026-08-22 23:53:27 -04:00
Gmer4Lfe
bdf1bce4be
Place the storage and array cards by span, not by column index, so they follow the grid instead of forcing it back to eight
2026-08-22 23:50:13 -04:00
Gmer4Lfe
c5c0477653
Derive Monitor's column count from what the cards actually need, so no width forces a sideways scroll
2026-08-22 23:45:02 -04:00
Gmer4Lfe
76faf0f9f8
Let an installation add its own tabs without the repo having to name them
2026-08-22 16:37:37 -04:00
Gmer4Lfe
879109e55d
Drain the orphan backlog safest-first instead of aborting, so a run over budget still makes progress
2026-08-22 16:37:31 -04:00
Gmer4Lfe
61b7d2a96a
Partnership stacks are the owner's declaration, so a mirror must read them from the owner's conf
2026-08-22 14:03:57 -04:00
Gmer4Lfe
15d802ae3d
Preview mode that survives a reboot, and a fallback log that survives one too
2026-08-22 13:52:34 -04:00
Gmer4Lfe
ac17be2cd9
Say fallback, not failover — the synonym was silently matching nothing in three renderers, plus retrying probes and a 2-minute handback window
2026-08-22 13:43:30 -04:00
Gmer4Lfe
f1ba418aa8
A dry run walked the failover branches and reached notify(), which had no dry-run gate
2026-08-22 09:53:53 -04:00
Gmer4Lfe
b17cc3a09d
Say on each node card whose containers the tiers are, since they are the other host's
2026-08-22 09:49:43 -04:00
Gmer4Lfe
1c38abe1d0
Fallback coverage: colour the wait, group by tier, and lock the stacks the partner already runs
2026-08-22 09:33:06 -04:00
Gmer4Lfe
5d42a28d34
Each assistant card remembers its own conversation instead of every card resuming the newest one
2026-08-22 08:46:35 -04:00
Gmer4Lfe
e5f4ede3f2
Coverage and settings above the chat, tier delays and the probe target alongside them, coverage in three columns
2026-08-22 01:43:07 -04:00
Gmer4Lfe
ce613bcf9d
Rehome the failover coverage picker on the Fallback tab, five days after it was dropped from Partnership for belonging here
2026-08-22 01:32:08 -04:00
Gmer4Lfe
8ce8f0dfbe
The Monitor fallback card described a state file without saying whether anything still writes it
2026-08-22 01:11:00 -04:00
Gmer4Lfe
13c221244e
A partner's conf is in the RAM cache, not CONF_DIR, and a commented-out template entry is not configuration
2026-08-22 01:06:24 -04:00
Gmer4Lfe
a89b704fa1
Watchdog and Monitor looked the partner up by exact key, and the remote probe passed a quote to cut as a filename
2026-08-22 00:59:24 -04:00
Gmer4Lfe
0f228020ef
State-file age is time since the last transition, not staleness, and a preview's state is the one being decided
2026-08-22 00:52:38 -04:00
Gmer4Lfe
8454d3d0a2
A dry run does not refresh live state, so say that rather than showing its age as stale
2026-08-22 00:48:16 -04:00
Gmer4Lfe
da15cc7531
Rebuild the Fallback tab around what the daemon is actually doing, not what its last state file said
2026-08-22 00:44:35 -04:00
Gmer4Lfe
5924aae1c0
Fallback read the peer list by exact key, so a partner whose tailnet name differs by one character rendered as UNREACHABLE
2026-08-22 00:34:33 -04:00
Gmer4Lfe
46239012b4
The dry-run cleanup trap replaced the lock-release trap and orphaned fallback.lock
2026-08-22 00:24:06 -04:00
Gmer4Lfe
f8119f3786
Give the test harness a stop that cannot strand its iptables rule, and clean up the dry-run state copy
2026-08-22 00:20:40 -04:00
Gmer4Lfe
41c0598220
A fallback dry run wrote real reboot-surviving state, and a failed tier writeback reported itself as a dry run
2026-08-22 00:00:56 -04:00
Gmer4Lfe
387382ec9f
Media Stack called every node local, and a host whose watchdogs never ran reported all clear
2026-08-21 22:50:09 -04:00
Gmer4Lfe
20998c8c31
The Streams scope was reset to this host on every page load, on a dashboard that is never reloaded by choice
2026-08-21 21:58:24 -04:00
Gmer4Lfe
f5d6edd9d0
The mirrored folder layout never reached the container card, which reads Varaverk's own store and not folder.view3's
2026-08-21 21:50:22 -04:00
Gmer4Lfe
4808a57289
Monitor's partner card read phase flags that only ever describe the mirror, so the owner rendered as not provisioned on the mirror
2026-08-21 21:43:00 -04:00
Gmer4Lfe
96b907acbc
Say what Varaverk itself is using on the System card
...
The card described the machine and said nothing about the thing whose dashboard
it is. Cache size matters most: VV_CACHE_ROOT is under /tmp, which on Unraid is
RAM, so it is shown against the rootfs percentage it counts against. Jobs are
locks with a live process — four lock files were sitting there and one job was
actually running.
2026-08-21 09:39:52 -04:00