Compare commits

..

34 Commits

Author SHA1 Message Date
Miguel Palhas a4bf85d7ba chore(flake): bump maestro to 1f543d1
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-31 22:04:58 +01:00
Miguel Palhas 16bf875f5b chore(flake): bump maestro to f6cfcbb
CI / lint (push) Successful in 1m13s
CI / eval (push) Successful in 3m14s
2026-08-31 17:55:05 +01:00
Miguel Palhas 75f216165c chore(flake): bump maestro to eb5d28d
CI / lint (push) Successful in 51s
CI / eval (push) Successful in 3m3s
2026-08-31 15:32:51 +01:00
Miguel Palhas 89fb6c8b14 chore(flake): bump maestro to a922023
CI / lint (push) Successful in 49s
CI / eval (push) Successful in 5m2s
2026-08-31 15:31:59 +01:00
Miguel Palhas 13eb534ab3 chore(flake): bump maestro to d8d26d1
CI / lint (push) Successful in 52s
CI / eval (push) Successful in 4m23s
2026-08-31 15:25:56 +01:00
Miguel Palhas 803f63d92b chore(flake): bump maestro to aec7f4c
CI / lint (push) Successful in 1m32s
CI / eval (push) Successful in 5m14s
2026-08-31 15:25:44 +01:00
Miguel Palhas 0d43a0178a chore(flake): bump maestro to 1257ec6
CI / lint (push) Successful in 1m26s
CI / eval (push) Successful in 3m29s
2026-08-31 15:20:21 +01:00
Miguel Palhas 5f3f502b8d chore(flake): bump maestro to 2dac56b
CI / lint (push) Successful in 57s
CI / eval (push) Successful in 4m31s
2026-08-31 15:06:26 +01:00
Miguel Palhas 92b51ddffc chore(flake): bump maestro to 5c391f1
CI / lint (push) Successful in 54s
CI / eval (push) Successful in 4m14s
2026-08-31 15:03:01 +01:00
Miguel Palhas cf74a9e49b chore(flake): bump maestro to a503ec7
CI / lint (push) Successful in 1m2s
CI / eval (push) Successful in 4m43s
2026-08-31 14:52:37 +01:00
Miguel Palhas f1cbd1d540 chore(flake): bump maestro to 904a665
CI / lint (push) Successful in 1m0s
CI / eval (push) Successful in 4m17s
2026-08-31 14:43:52 +01:00
Miguel Palhas 448c5df0ed chore(flake): bump maestro to f0851a6
CI / lint (push) Successful in 1m25s
CI / eval (push) Successful in 4m37s
2026-08-31 14:42:20 +01:00
Miguel Palhas 88d0be4098 chore(flake): bump maestro to 5b2add0
CI / lint (push) Successful in 1m26s
CI / eval (push) Failing after 2m56s
2026-08-31 09:59:14 +01:00
Miguel Palhas 755de4fb71 chore(flake): bump maestro to d101574
CI / eval (push) Failing after 2m12s
CI / lint (push) Successful in 47s
2026-08-31 09:25:46 +01:00
Miguel Palhas 7d0018903d chore(flake): bump maestro to 8110512
CI / lint (push) Successful in 1m12s
CI / eval (push) Failing after 1m47s
2026-08-31 09:11:13 +01:00
Miguel Palhas 799158d90e chore(flake): bump maestro to d032036
CI / lint (push) Successful in 55s
CI / eval (push) Failing after 1m40s
2026-08-31 08:43:07 +01:00
Miguel Palhas 5da1b61309 chore(flake): bump maestro to 43b90cc
CI / lint (push) Successful in 3m13s
CI / eval (push) Successful in 5m24s
2026-08-30 11:35:17 +01:00
Miguel Palhas 7a5c9981a7 chore(flake): bump agent-skills to d1a198a
CI / lint (push) Successful in 28s
CI / eval (push) Successful in 2m16s
2026-08-28 19:40:51 +01:00
Miguel Palhas 0d364dcbbb chore(flake): bump agent-skills to aff0e38
CI / lint (push) Successful in 34s
CI / eval (push) Successful in 2m14s
2026-08-27 15:54:02 +01:00
Miguel Palhas 8d39467f6b chore(flake): bump agent-skills to ca02107
CI / lint (push) Successful in 33s
CI / eval (push) Successful in 2m4s
2026-08-26 10:59:08 +01:00
Miguel Palhas e56962960b fix(yolo): disable KVM async page faults
CI / lint (push) Successful in 30s
CI / eval (push) Successful in 2m5s
Tasks were wedging in kvm_async_pf_task_wait_schedule and surviving
SIGKILL — maestro-web, systemd activation generators and agent sessions,
a few a day, clearing only on reboot. The host pages this VM's memory out
and a "page ready" wakeup gets dropped, leaving the task in an
uninterruptible wait with no safe point to deliver a signal.

no-kvmapf trades that for a synchronous vCPU stall on host page-in.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-26 08:06:36 +01:00
Miguel Palhas 25bb46b706 chore(flake): bump agent-skills to a229d0c
CI / lint (push) Successful in 27s
CI / eval (push) Successful in 2m6s
2026-08-26 07:02:06 +01:00
Miguel Palhas 7381a6b764 chore(flake): bump maestro to 999dbe3
CI / lint (push) Successful in 52s
CI / eval (push) Successful in 4m4s
2026-08-25 18:47:20 +01:00
Miguel Palhas 8befa14be1 chore(flake): bump maestro to c9d0895
CI / lint (push) Successful in 2m51s
CI / eval (push) Successful in 5m42s
2026-08-25 18:46:29 +01:00
Miguel Palhas bf85f679f8 chore(maestro): stop nix-managing config.toml
CI / lint (push) Successful in 30s
CI / eval (push) Successful in 2m10s
config.toml is now a hand-edited plain file at ~/.config/maestro,
not a nix-generated symlink.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-25 18:08:28 +01:00
Miguel Palhas 6d2754318c Merge remote-tracking branch 'origin/main' into apply
CI / lint (push) Successful in 33s
CI / eval (push) Successful in 2m6s
2026-08-25 16:51:11 +01:00
Miguel Palhas 49579d92dd feat(maestro): set tui theme to dark 2026-08-25 16:51:08 +01:00
Miguel Palhas 7495d84f1e chore(flake): bump maestro to 9ef3547
CI / lint (push) Successful in 2m28s
CI / eval (push) Successful in 4m41s
2026-08-25 15:10:52 +01:00
Miguel Palhas 9e03f255e4 chore(flake): bump maestro to 2ab07c2
CI / eval (push) Successful in 5m49s
CI / lint (push) Failing after 10m39s
2026-08-25 14:22:21 +01:00
Miguel Palhas 3922a93586 chore(flake): bump agent-skills to 8e6f86c
CI / lint (push) Successful in 34s
CI / eval (push) Successful in 1m58s
2026-08-25 14:16:51 +01:00
Miguel Palhas 4a90cd1dfc chore(flake): bump maestro to 39d4014
CI / lint (push) Successful in 1m21s
CI / eval (push) Successful in 4m24s
2026-08-25 12:35:42 +01:00
Miguel Palhas 0039ab20ee chore(flake): bump maestro to c2ac3f7
CI / lint (push) Successful in 42s
CI / eval (push) Successful in 4m25s
2026-08-25 12:26:28 +01:00
Miguel Palhas 5d53b7bf35 chore(flake): bump maestro to 7cb14c7
CI / lint (push) Successful in 2m44s
CI / eval (push) Successful in 4m35s
2026-08-25 10:37:18 +01:00
Miguel Palhas 51a6696efb chore(flake): bump agent-skills to d6265b0
CI / lint (push) Successful in 57s
CI / eval (push) Successful in 3m24s
2026-08-25 10:02:56 +01:00
3 changed files with 25 additions and 22 deletions
Generated
+8 -8
View File
@@ -22,11 +22,11 @@
},
"agent-skills": {
"locked": {
"lastModified": 1787576215,
"narHash": "sha256-x1ftVVEcq8p6phZEl4NC4F3RcPqpgx6wEMODMI5QHN8=",
"lastModified": 1787942450,
"narHash": "sha256-2L/uAPWl5EygFNjh4rx7saTqKnK51sYNgUyZOW6FkIk=",
"ref": "refs/heads/main",
"rev": "0900e5fea1245c7d5e962e48a809ff7481c87f95",
"revCount": 99,
"rev": "d1a198ab8b2df1442dc2cae7347e5abd9c9a0051",
"revCount": 108,
"type": "git",
"url": "https://git.naps.pt/yolo/agent-skills.git"
},
@@ -754,11 +754,11 @@
"process-compose-flake": "process-compose-flake"
},
"locked": {
"lastModified": 1787610419,
"narHash": "sha256-YRDvlaiEOpzRC5JHMlm/S39EGfrGsD4kmEWwnyHz4Tg=",
"lastModified": 1788210196,
"narHash": "sha256-Bj7cv0bzl5SpoqZENqadtqyFkeG3nMP6/RzNE1JXZLU=",
"ref": "refs/heads/main",
"rev": "80a93999051d41b29544258dca272d40f3fc0c98",
"revCount": 443,
"rev": "1f543d16d17f27250811d0ec14946b2a78bfd1e9",
"revCount": 506,
"type": "git",
"url": "https://git.naps.pt/naps62/maestro.git"
},
+4 -10
View File
@@ -26,19 +26,13 @@ in
];
# maestro's and rev's units come from their flake modules, not from the
# hand-written set below. 8081, not 8080: aoe-web already has that port on
# this host. There is no auth layer, so 0.0.0.0 is only safe behind the LAN
# perimeter.
# hand-written set below.
#
# settings stays empty on purpose: ~/.config/maestro/config.toml is a
# hand-edited plain file, not nix-generated (module skips it iff `{}`).
services.maestro = {
enable = true;
web.enable = true;
settings = {
daemon.bind_addr = "127.0.0.1:7070";
web = {
bind_addr = "0.0.0.0:8081";
daemon_url = "http://127.0.0.1:7070";
};
};
};
# Everything under ~, three levels deep — the worktrees live at
+13 -4
View File
@@ -30,11 +30,20 @@
# this VM has a real 8G swap partition, and the host manages its own memory.
zramSwap.enable = lib.mkForce false;
# The only out-of-band way in. `vga: virtio-gl` renders through a GL context
# with no QEMU console surface, so noVNC and screendump both go dark; this
# pairs with the VM's serial0 socket to keep `qm terminal` working. Listed
# last so it wins /dev/console and gets the getty.
boot.kernelParams = [
# When the host pages this VM's memory out, KVM's async page fault parks
# the faulting task in an uninterruptible wait instead of stalling the
# whole vCPU. If the "page ready" wakeup is ever dropped, that task is
# wedged forever and SIGKILL cannot touch it — it took out maestro-web,
# nix activation generators and a dozen agent sessions, a few per day,
# until a reboot. Disabling async PF makes host page-ins stall the vCPU
# synchronously: slower under host memory pressure, but nothing hangs.
"no-kvmapf"
# The only out-of-band way in. `vga: virtio-gl` renders through a GL
# context with no QEMU console surface, so noVNC and screendump both go
# dark; this pairs with the VM's serial0 socket to keep `qm terminal`
# working. Listed last so it wins /dev/console and gets the getty.
"console=tty1"
"console=ttyS0,115200"
];