-
017c3c38fe
feat(ui): 15-point UX overhaul — affordances, feedback, and navigation
main
josh
2026-04-23 20:08:07 -04:00
-
8367ec2a9f
docs: comprehensive documentation expansion
josh
2026-04-23 18:37:26 -04:00
-
17ec55cb85
chore: cleanup sprint — dead CSS, dedup helpers, handler refactor
josh
2026-04-21 20:39:38 -04:00
-
c11573eeeb
feat(ui): slim dashboard tile to hostname + online/offline only
josh
2026-04-20 22:56:05 -04:00
-
6d50f3a804
feat(install): polish install UX with banner, spinner, progress bar, summary
josh
2026-04-20 22:29:44 -04:00
-
48f992a451
bump live-image
josh
2026-04-20 21:31:09 -04:00
-
98cdd95b50
chore(release): add registry auth diagnostic to build-live-image
josh
2026-04-20 21:27:23 -04:00
-
211abdf08f
feat(release): version live-image, skip rebuild+redownload when unchanged
josh
2026-04-20 21:04:14 -04:00
-
4c153bb115
chore(templ): regenerate host_tile_templ.go for cancelledFromHold
josh
2026-04-20 21:04:01 -04:00
-
a01db63952
feat(install): auto-heal pxe.interface/pxe.subnet against the host
josh
2026-04-20 19:56:39 -04:00
-
599fd156d0
feat(ui): distinguish cancel-from-hold as "Failed (cancelled)"
josh
2026-04-20 18:54:04 -04:00
-
73f727b4c1
fix(agent): keep heartbeat loop alive during FailedHolding
josh
2026-04-20 18:28:43 -04:00
-
62bddac110
feat(cancel): allow cancel from FailedHolding, reboot to local disk
josh
2026-04-19 22:59:34 -04:00
-
21014c1268
fix(inventory): read GPU model from device field, not vendor field
josh
2026-04-19 22:53:42 -04:00
-
e73b221a8c
fix(ui): fit pipeline timeline without horizontal scroll
josh
2026-04-19 22:51:10 -04:00
-
3656af9823
feat(end-of-run): reboot to local disk instead of powering off
josh
2026-04-19 22:45:11 -04:00
-
8acef92a60
feat(inventory): deep hardware capture + per-probe substeps + verbose logs
josh
2026-04-19 22:21:17 -04:00
-
481b67fb69
feat(firmware): install probe tools in live image + surface nic/hba gaps
josh
2026-04-19 21:56:18 -04:00
-
c545028903
feat(run-page): tick the run-duration timer between SSE pushes
josh
2026-04-19 21:53:40 -04:00
-
05ceb8e042
ci(release): skip release workflow for non-bundle changes
josh
2026-04-19 21:08:26 -04:00
-
988448664a
fix(runs): stamp completed_at on cancel/terminal SetState transitions
josh
2026-04-19 20:21:39 -04:00
-
bbe1b19819
store: fix FindActiveByMAC scanning profile column that wasn't selected
josh
2026-04-19 20:14:16 -04:00
-
75c29bb31a
ci: pin upload-artifact to v3 for Gitea compatibility
josh
2026-04-18 22:58:59 -04:00
-
23c689aa5b
deep profile + threshold gating + firmware stage + Burn super-stage
josh
2026-04-18 22:50:57 -04:00
-
fbb21cbafd
ci: delete latest version, not the file, before re-uploading
josh
2026-04-18 21:07:24 -04:00
-
19608bef1b
ui: split /hosts/{id} into host page + /runs/{runID} run page
josh
2026-04-18 20:37:57 -04:00
-
5c6bfa5ffa
ui: fix log lines rendering vertically when stage prefix is present
josh
2026-04-18 19:20:51 -04:00
-
f79fe0f0db
ui: GitHub-Actions-style detail page, sub-steps, mini-tile run-view
josh
2026-04-18 19:00:11 -04:00
-
5c00edd7b6
ui: fix htmx-ext-sse integrity hash (was silently blocked by browser)
josh
2026-04-18 17:51:58 -04:00
-
27098fc7ed
cpustress+orchestrator: serial CPU/RAM passes + silent-skip guard
josh
2026-04-18 17:29:13 -04:00
-
cdd6cae3b0
ui: keep detail-page SSE swaps live after the first outerHTML replace
josh
2026-04-18 17:03:39 -04:00
-
e73e31af92
live-image: install stage tools and fail loudly if any are missing
josh
2026-04-18 16:39:28 -04:00
-
0db790ae3e
ui: stream host-detail fragments over SSE so the page updates live
josh
2026-04-18 16:36:13 -04:00
-
5e9ad7f569
probes: sanitize disk serials and normalize GPU model for stable spec keys
josh
2026-04-18 16:06:18 -04:00
-
d48cf146f4
live-image: mask systemd-firstboot at image-build time
josh
2026-04-18 15:41:46 -04:00
-
026923075c
pxe: disable systemd-firstboot so the live image doesn't prompt
josh
2026-04-18 15:35:24 -04:00
-
956120b80e
deploy: show speed + ETA in bundle-download progress meter
josh
2026-04-18 15:04:26 -04:00
-
c45349f62c
pxe: mask serial-getty@ttyS0 so hosts without serial don't wait 90s
josh
2026-04-18 14:47:03 -04:00
-
a88e24bef4
live-image: real /init + verbose boot for first-boot diagnosis
josh
2026-04-18 14:31:40 -04:00
-
43ea845ac0
live-image: pack full rootfs as initrd so PXE actually boots userspace
josh
2026-04-18 14:14:08 -04:00
-
6c6d20710f
live-image: fix check-initrd size measurement; add zstd to image
josh
2026-04-18 14:00:07 -04:00
-
0a5e5d0b39
ci: add bubblewrap dep and bump mkosi to v25.3
josh
2026-04-18 13:53:09 -04:00
-
488a0d1052
ci: install mkosi from upstream git tag, not PyPI
josh
2026-04-18 13:44:51 -04:00
-
28918bad15
live-image: fix firmware so i915 actually loads at boot
josh
2026-04-18 13:38:40 -04:00
-
c962d6d8ab
live-image: bundle nonfree firmware (i915 GuC et al.)
josh
2026-04-18 13:14:19 -04:00
-
4524ab8dc0
runs: add non-destructive flag + operator Cancel button
josh
2026-04-18 13:01:42 -04:00
-
2c440fce8a
pxe: move dhcp-host allowlist into a SIGHUP-reloadable file
josh
2026-04-18 12:41:27 -04:00
-
bce6e08524
pxe: reload dnsmasq on host create/delete
josh
2026-04-18 12:31:00 -04:00
-
157b70f536
pxe: split subnet into network+netmask for dnsmasq proxy-DHCP
josh
2026-04-18 12:17:10 -04:00
-
cf3a75591c
install: stage pxe-setup.sh at /usr/local/sbin/vetting-pxe-setup
josh
2026-04-18 12:10:23 -04:00
-
bcbbc35489
docs+e2e: document proxy-DHCP topology; default e2e bridge to LAN
josh
2026-04-18 12:07:05 -04:00
-
506c856046
pxe: switch dnsmasq to proxy-DHCP mode on the LAN
josh
2026-04-18 12:02:49 -04:00
-
b809bf5f3e
proxmox-install: show download progress bar for the bundle fetch
josh
2026-04-18 11:43:51 -04:00
-
6a1d5c3bed
pxe: route dnsmasq lease + pid files into RuntimeDir
josh
2026-04-18 11:31:37 -04:00
-
9d17859992
orchestrator: anchor pxe+tftp runtime dirs under artifacts parent
josh
2026-04-18 11:14:11 -04:00
-
caebd00d8d
live-image: symlink /initrd.img to match /vmlinuz
josh
2026-04-18 10:54:25 -04:00
-
41a273b47f
live-image: generate initrd explicitly; fail release on missing files
josh
2026-04-18 10:47:26 -04:00
-
f927a4a66b
install.sh: stage live image and auto-restart on upgrade
josh
2026-04-18 10:38:34 -04:00
-
5aa245cd85
live-image: disable mkosi Bootable (PXE doesn't need a bootloader)
josh
2026-04-18 10:18:49 -04:00
-
a893b0d817
live-image: stage agent binary via mkosi.extra
josh
2026-04-18 03:13:38 -04:00
-
d6cdb7caa9
ci: install kmod for mkosi depmod
josh
2026-04-18 03:05:55 -04:00
-
e6aa57e839
ci: install systemd-boot for mkosi bootctl
josh
2026-04-18 03:01:30 -04:00
-
3dc0ca0bc2
ci: install debian-archive-keyring for mkosi bootstrap
josh
2026-04-18 02:54:04 -04:00
-
a427640608
ci: install systemd-ukify so mkosi's Bootable=yes step succeeds
josh
2026-04-18 02:50:39 -04:00
-
4dda1dad83
live-image: mark mkosi.postinst executable in git index
josh
2026-04-18 02:41:40 -04:00
-
180a5212a4
deps: add missing go.sum entry for golang.org/x/term v0.25.0
josh
2026-04-18 02:38:13 -04:00
-
74c09e9596
ci: disable setup-go cache to skip 4m Gitea cache server timeout
josh
2026-04-18 02:37:16 -04:00
-
869cd78d0b
ci: quote e2e.yml input description so Gitea's YAML parser accepts it
josh
2026-04-18 02:34:35 -04:00
-
03dcf33686
ci: switch runs-on to ubuntu-latest to match runner label
josh
2026-04-18 02:25:22 -04:00
-
f188c7add4
proxmox-install: fetch prebuilt bundle from Gitea package registry
josh
2026-04-18 02:16:02 -04:00
-
609ad2e383
ci: migrate to Gitea Actions + publish release bundle to package registry
josh
2026-04-18 02:14:08 -04:00
-
05bd88b016
pxe-setup: handle quoted defaults whose comments contain quotes
josh
2026-04-18 01:52:31 -04:00
-
6ce95547f4
deploy: mark install.sh + pxe-setup.sh executable in git index
josh
2026-04-18 01:43:02 -04:00
-
a5055b3c7a
Automate PXE setup: release bundle + pxe-setup.sh + startup validation
josh
2026-04-18 01:38:43 -04:00
-
d245fa6235
quick.sh: stage+install agent to avoid ETXTBSY, restart service
josh
2026-04-18 01:13:14 -04:00
-
d0bfae14c8
Heartbeat-first dispatch: retire WoL-as-default, add WaitingReboot
josh
2026-04-18 01:10:34 -04:00
-
c9927ca2bf
config: default agent.asset_dir so old configs still serve /assets
josh
2026-04-18 00:41:09 -04:00
-
1694c20b12
Host detail v2: full pipeline + per-stage logs + WoL diagnostics
josh
2026-04-18 00:38:27 -04:00
-
a3d5e2d0a4
proxmox-install: build agent binary for serving
josh
2026-04-18 00:12:41 -04:00
-
af41644929
proxmox-install: reset hard instead of checkout
josh
2026-04-18 00:02:01 -04:00
-
bb658a8435
Host detail page + pipeline timeline
josh
2026-04-17 23:59:43 -04:00
-
9b16ed80e6
Heartbeat command channel: reboot_for_vetting skips WoL
josh
2026-04-17 23:37:01 -04:00
-
a0c0fb114f
Add host-mode heartbeat: vetting-agent host + last-seen badge
josh
2026-04-17 23:34:15 -04:00
-
d24207427f
Fix quick-register broadcast detection on Proxmox bridges
josh
2026-04-17 22:57:49 -04:00
-
8b3d9a312e
Add quick-register one-liner for target-host registration
josh
2026-04-17 22:50:54 -04:00
-
42da48864f
Remove operator auth — trust the LAN
josh
2026-04-17 22:31:49 -04:00
-
273e7593bc
Fix LXC deploy: absolute paths + systemd section for StartLimit
josh
2026-04-17 22:02:03 -04:00
-
47b4fa35a6
Install gen-admin-password alongside vetting
josh
2026-04-17 21:50:54 -04:00
-
64acb97073
Add one-liner Proxmox LXC installer
josh
2026-04-17 21:39:47 -04:00
-
9bb4b09a04
Initial commit: full Phases 1-6 implementation
josh
2026-04-17 21:32:10 -04:00