Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
180 commits
Select commit Hold shift + click to select a range
e7fb23d
fix garbage runner design
Jul 10, 2026
6844f62
deployment proto
Jul 11, 2026
9515745
feat(grafana): scrape imperative dashboards from local-nas, fix port …
Jul 11, 2026
7cb996f
refactor(grafana): merge cpu-monitor dashboards, remove redundant noo…
Jul 11, 2026
fbf940c
fix(grafana): repair broken panels, remove no-data panels, fix naming
Jul 11, 2026
7e3fed0
fix(grafana+exporter): SMART attrs, SSH check, derivation hash, servi…
Jul 11, 2026
2d8d8b6
fix(exporter): infinite recursion from self-referencing system.build.…
Jul 11, 2026
f0b087b
declarative grafana: fixes provisioning sync (typo slain); plan locke…
Jul 11, 2026
e955699
grafana: use only standard NixOS module options (allowUiUpdates + dis…
Jul 11, 2026
4050d77
revert: full session changes to services/prometheus.nix and added pla…
Jul 11, 2026
77bacdb
grafana: pure provision options — typo slain, UI drift locked out ♡
Jul 11, 2026
f09e55a
grafana: force dashboard upsert + 5m provision poll
Jul 11, 2026
360731e
grafana+exporter: real panel fixes, system path, activation oneshot
Jul 11, 2026
02221d0
fix: smart off on Pi hosts; silence WG topology MAC noise; pkgs.system
Jul 11, 2026
db90b5d
golden: regenerate 10 active machine configs to match v1.9 fleet state
Jul 11, 2026
4f80255
fix: check-network uses dump-config (serialize-config.nix) to match g…
Jul 11, 2026
4b967b0
feat(topology): create new directory structure for topology rectifica…
Jul 11, 2026
eea67b8
refactor(topology): update all imports to new topology/ paths
Jul 11, 2026
71c6f42
cleanup(topology): remove real-topology/ directory
Jul 11, 2026
0d79eea
feat(ssh): implement fleet-wide SSH multiplexing via topology
Jul 11, 2026
279ff55
docs: update documentation for new topology structure
Jul 11, 2026
8455cbe
revert(ssh): remove matchBlocks — option does not exist in nixpkgs 25.11
Jul 12, 2026
ad9770c
docs: overlord-II development report — golden integrity, directive vi…
Jul 12, 2026
8691cc6
docs: overlord-II deployment status — 7 deployed, 10 pending review
Jul 12, 2026
4e7f989
docs: final deployment status and tool patterns
Jul 12, 2026
511141b
fix(prometheus): unlimited retention — metrics exist to be stored
Jul 12, 2026
0902092
docs: add overlord-II consolidated execution plan
Jul 12, 2026
cbae984
docs: overlord-II review — structural health good, Phase B/C incomplete
Jul 12, 2026
af371fc
docs: review synthesis — verified generate-golden mismatch and matchB…
Jul 12, 2026
c3bfd49
feat(ssh): fleet-wide multiplexing via programs.ssh.extraConfig
Jul 12, 2026
238896f
fix(ssh): use Host * instead of Match exec for multiplexing
Jul 12, 2026
8572f9c
fix: remove dangerous generate-golden app, fix broken scripts
Jul 12, 2026
9202da1
feat(phase-b): complete transformer architecture, wire WIP module int…
Jul 12, 2026
fe162fb
feat(phase-b): add backup topology transformer (WIP first-draft)
Jul 12, 2026
75cc1ba
feat(phase-c): library split design, Ketchup and Mayo entry points
Jul 12, 2026
8587df7
refactor(ssh): formalize multiplexing into modules/ssh-multiplex.nix
Jul 12, 2026
d2aa578
golden(local-nas): update for intentional Prometheus retentionTime = …
Jul 12, 2026
e0bd698
style: nixpkgs-fmt new files for CI compliance
Jul 12, 2026
9377750
feat(zeroclaw): upgrade to v0.8.0 via local path overrides
Jul 12, 2026
3411c38
Merge branch 'investigation/claw-zeroclaw-implementation' into overlo…
Jul 13, 2026
24668c9
revert(zeroclaw): restore marijanp module, remove package override
Jul 13, 2026
f3e6c68
fine regeneration, claims of victory
Jul 13, 2026
08ca225
revert lock to avoid overnight build
Jul 13, 2026
21772b0
feat: wire image generation for alpha-three via local nixinate + disko
Jul 13, 2026
92ea289
chore: update flake lock for nixinate path hash
Jul 13, 2026
2fc77fa
always double check
Jul 13, 2026
08c694e
feat: wire image generation for alpha-three via nixinate + disko
Jul 13, 2026
d3e9ab0
Merge branch 'verify/image-generation' into overlord-II
Jul 13, 2026
7516dc0
closer to LLM-CORE
Jul 13, 2026
2e2ec45
feat: LLM-CORE integration for alpha-three — full fleet agents, MCP s…
Jul 13, 2026
67bcf36
docs: LLM-CORE integration status and provider specification requirement
Jul 13, 2026
85acb8c
ready updated nixpkgs
Jul 13, 2026
2d22e40
Merge commit '85acb8c339355b24541db8de53e8c1d0fd1e4e95' into overlord-II
Jul 13, 2026
c4ec3df
fmt
Jul 13, 2026
1a3b1b8
docs: Phase B completion plan — 7 steps to wire WIP transformer archi…
Jul 13, 2026
4d3dc4c
feat: Phase B complete — wire backup topology into WIP architecture
Jul 13, 2026
45144a3
fix: persist build user home via systemd tmpfiles rules
Jul 14, 2026
af30df3
fix: enable Determinate Nix for all aarch64 systems
Jul 14, 2026
086b6c9
refactor: move dead code to snippets (core-router.nix, systems/, test…
Jul 14, 2026
7b0c7ce
docs: incident report — nix protocol mismatch between Determinate Nix…
Jul 14, 2026
bbd899b
general fixes and secret management for upcoming LLM-CORE
Jul 14, 2026
c9e222f
fix: force Determinate Nix on arm-builder, restore mkAarch64 default,…
Jul 14, 2026
bd2613d
fix: add install.determinate.systems as substituter for aarch64 dt bu…
Jul 14, 2026
6b2ae27
fix: add install.determinate.systems substituter via flake nixConfig
Jul 14, 2026
c0b361d
chore: update determinate to 3.21.5 (nix 3.21.5)
Jul 14, 2026
fa49d0e
feat: enable LLM-CORE opencode-fleet on LINDA
Jul 14, 2026
c44c5ec
a single derivation to rule the entire boot partition
Jul 14, 2026
c686df7
feat: enable LLM-CORE providers on alpha-three
Jul 14, 2026
ba98e83
keys
Jul 14, 2026
5e06394
feat: declarative hosts file from topology data
Jul 14, 2026
3220396
generative hosts from topology
Jul 14, 2026
a5155e0
feat: enable LLM-CORE providers on LINDA with correct tokens
Jul 14, 2026
8ab59fb
feat: enable xAI provider on LINDA
Jul 14, 2026
b0aa5bb
enable all providers
Jul 14, 2026
4fb2521
approaching merge; reboot required
Jul 15, 2026
b269d8b
harden multiplexing
Jul 15, 2026
517e2c0
correct multiplex and remote builder implementation
Jul 15, 2026
65c78fb
fix: max-connections is per-store param, not nix.conf setting
Jul 16, 2026
2cc6a4c
fix: set dnsProvider explicitly on per-cert level to beat nginx modul…
Jul 16, 2026
1bbc2f4
fix: set webroot = null when using dnsProvider for ACME DNS-01
Jul 16, 2026
12dff61
fix: set Grafana secret_key (nixpkgs 26.05) and permit insecure MinIO
Jul 16, 2026
892a5e5
feat: remote-builder hub — build distribution, 300G store, hyperhyper…
Jul 16, 2026
e8ecaa3
fix: use networking.localCommands for hyperhyper route (dhcpcd compat)
Jul 16, 2026
2709bbb
fix: add hyperhyper Tailscale IP to WireGuard allowedIPs for remote-b…
Jul 16, 2026
a6fd82b
revert: remove broken nftables ruleset from cortex-alpha (wiped Tails…
Jul 16, 2026
959c440
docs: update remote-builder hub plan with current state and incident …
Jul 16, 2026
dcfb95f
routing
Jul 17, 2026
d723f05
feat: move hate-filled runner from LINDA to remote-builder
Jul 17, 2026
bbbc7f9
formatting
Jul 17, 2026
59ebb4f
chore: regenerate all golden files
Jul 17, 2026
d37bbbe
complete build environment for CI pass
Jul 17, 2026
3eea7af
docs: update stale overlord-II documentation to reflect actual state
Jul 17, 2026
f52813b
fix: add nixos-test feature to hyperhyper builder
Jul 17, 2026
7a2a229
feat: use forked nix with ssh-ng protocol fix
Jul 17, 2026
0d64c2f
ci: harden YAML pipeline, inject parallelism control, add golden tests
Jul 17, 2026
3adb08a
ci: extract ketchup CI library (lib/ci_library.nix)
Jul 17, 2026
15eef2f
fix: remove hardcoded --option builders '' from CI pipeline
Jul 17, 2026
884bc9b
ci: add max-parallel for GitHub Actions matrix concurrency control
Jul 17, 2026
b70cad7
fix: remove branch filter from push trigger — run CI on every push
Jul 17, 2026
9253618
update LLM-CORE
Jul 17, 2026
3ef548d
fmt
Jul 17, 2026
f81c077
fix: remove deprecated voyagerOnly option from LINDA and alpha-three
Jul 18, 2026
92588ad
feat: add voyager-only opencode-fleet to terminal-zero
Jul 18, 2026
cc3f05e
unqueue hyperhyper jobs and implement custom nix fork
Jul 18, 2026
8c305a0
LLM Core luck update
Jul 18, 2026
996714a
fix: point LLM-CORE to local path to pick up builtins.toLower fix
Jul 19, 2026
32eccff
feat(minecraft): eliminate CurseForge Maven — build moonrise from source
Jul 19, 2026
49f5a7e
feat(minecraft): bump all-the-mons to v1.1.1
Jul 19, 2026
8d4294b
fix: kmscon hwRender rename, add CI analytics docs, encrypt runner PAT
Jul 19, 2026
e090844
feat: mkRunner factory for scalable GitHub Actions runners
Jul 19, 2026
7032224
cleaning and pass builds
Jul 19, 2026
855a63e
update ratty
Jul 19, 2026
5b52dd0
better blogs
Jul 19, 2026
74bfa90
fix: remove duplicate gitlab_netrc from mkRunners — already a system …
Jul 19, 2026
1a508d1
fix: use system secret for hate-filled-generator PAT
Jul 19, 2026
313525b
rekey
Jul 19, 2026
4a18d3b
fix: restore LLM-CORE to git remote (was local path)
Jul 19, 2026
4095592
fix: add GIT_ASKPASS to runner environment
Jul 19, 2026
00c04b1
fix: use user-readable netrc path (/run/gitlab-netrc)
Jul 19, 2026
00dc17e
fix: reduce runners from 5 to 3 — no swap on remote-builder
Jul 19, 2026
d4e36a5
update xlibre, mostly because commit hygine is a forgotten art
Jul 20, 2026
d0e69bc
fix: share nix store with host for baremetal runners
Jul 20, 2026
e44414d
fix: reduce to 1 hate-filled runner, transfer store sharing to per-pr…
Jul 20, 2026
f7abf00
feat: use PAT for personal project runners, keep org token for Bargma…
Jul 20, 2026
8556150
feat: share GitLab netrc and GIT_ASKPASS across all runners
Jul 20, 2026
4548b99
fix: separate netrc access — only hate-filled and entropy-is-origin
Jul 20, 2026
f47c2a1
dashboard ai rework
Jul 20, 2026
fdf9e9a
cleaner tags
Jul 20, 2026
ce0882e
try everything once
Jul 20, 2026
f51d32f
chore: update LLM-CORE flake input (opencode-fleet rootPath fix)
Jul 20, 2026
7e50b72
clean dashboards
Jul 20, 2026
6a96bb8
more graphs
Jul 20, 2026
4a49890
Add Overlord-II cleaning review: nginx inventory, dead-code map, desi…
Jul 20, 2026
3978337
Regenerate AGENTS.md: current state, finalisation tasks; archive over…
Jul 21, 2026
cde5a65
Remove lint-utils, add deadnix + formatting to flake checks
Jul 21, 2026
314570b
Merge overlord-II-cleaning-review: AGENTS.md rebuild, deadnix/formatt…
Jul 21, 2026
394304d
tidy
Jul 21, 2026
86f1734
less workload for builder
Jul 21, 2026
1e7e66e
feat: add encrypted tailscale auth key for fleet-wide pre-auth
Jul 21, 2026
93452a1
feat: direct tailscale for remote-builder, remove WireGuard proxy
Jul 21, 2026
27cd315
unfuck key
Jul 21, 2026
61e20be
fix: correct secrix secret path (../../ not ../../../)
Jul 21, 2026
d737847
fix: secrix service binding tailscaled not tailscale
Jul 21, 2026
ba4874d
dear god enough
Jul 21, 2026
2efe16a
purge networking.tailscale custom option — routes now in services.tai…
Jul 21, 2026
153a65a
fix: add tailscale auth key to cortex-alpha, remove dead import from …
Jul 21, 2026
e2f5f35
fix tailscale harder
Jul 21, 2026
410b94d
fix direct route
Jul 21, 2026
3899a78
cortex-alpha: remove remote-builder WG route from advertised routes
Jul 21, 2026
88e1864
fleet: FlakeHub token via secrix service binding for Determinate Nix
Jul 21, 2026
85d4a2a
arm-builder: duplicate FlakeHub secrix binding (disables configuratio…
Jul 21, 2026
2e5bdee
fix: replace all deprecated system attr with stdenv.hostPlatform
Jul 21, 2026
9f06812
fix: deprecated wireless.userControlled.enable → userControlled, wine…
Jul 21, 2026
15aae5e
fix: remove unused crush package (unfree license blocks deploy)
Jul 21, 2026
0e11816
aliens did it
Jul 21, 2026
b401461
fix: remove duplicate opencode from code.nix — fleet module provides …
Jul 21, 2026
cd795df
fix: relax zeroclaw systemd hardening on alpha-three
Jul 21, 2026
33f83ff
owo
Jul 21, 2026
b698cbd
fix(terminal-zero): set opencode-fleet user to John88
Jul 22, 2026
45d41cd
refactor: move opencode-fleet from terminal-zero to alpha-one
Jul 22, 2026
cd2123d
fix(nix-gc): remove invalid --max flag, set fleet configurationLimit …
Jul 22, 2026
8ac2e09
docs(plan): in-house nix binary cache — cache.johnbargman.net
Jul 22, 2026
c353bb7
feat(alpha-one): add provider and MCP server configuration
Jul 22, 2026
7e48e16
feat(alpha-one): add opencode-go provider with general-opencode-key
Jul 22, 2026
7ee1d2b
feat(alpha-one): add xai provider with general-xai-key
Jul 22, 2026
95a246e
update parsec
Jul 23, 2026
46c7c38
update nixos-hardware
Jul 23, 2026
12d2613
never let llm filter-repo
Jul 23, 2026
cc1ed79
update flake
Jul 23, 2026
70edcc3
update lock
Jul 23, 2026
eb68ec6
whoops
Jul 23, 2026
11564b8
another lock update
Jul 23, 2026
39a35cf
update lock some more
Jul 24, 2026
76295d4
ci: reduce dependencies, add concurrency + head-only triggers, remove…
Jul 24, 2026
64c5e7e
ci: split ARM builds into native aarch64 and cross-compiled from x86_64
Jul 24, 2026
1203bd4
ci: add actionlint to validation pipeline, fix shellcheck warning
Jul 24, 2026
d910434
update uuid of remote-builder swap partition
Jul 24, 2026
2ccb76d
update ci
Jul 24, 2026
d6f9e2e
ci: remove nix option overrides — machines use their own nix.conf
Jul 24, 2026
2756b00
trigger clean builds
Jul 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 45 additions & 16 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
concurrency:
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.ref }}
jobs:
build-arm:
name: Build ARM Configurations
build-arm-cross:
name: Build ARM (cross-compiled from x86_64)
needs:
- validation
- security
Expand All @@ -9,16 +12,35 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: Build configuration
run: nix build .#nixosConfigurations.${{ matrix.machine }}.config.system.build.toplevel
run: nix build .#nixosConfigurations.${{ matrix.machine }}.config.system.build.toplevel
strategy:
fail-fast: false
matrix:
machine:
- arm-builder
- beta-one
max-parallel: 10
timeout-minutes: 360
build-arm-native:
name: Build ARM (native aarch64)
needs:
- validation
- security
runs-on: self-hosted
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build configuration
run: nix build .#nixosConfigurations.${{ matrix.machine }}.config.system.build.toplevel
strategy:
fail-fast: false
matrix:
machine:
- display-1
- display-2
- print-controller
- beta-one
max-parallel: 2
timeout-minutes: 360
build-x86:
name: Build x86_64 Configurations
needs:
Expand All @@ -29,7 +51,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: Build configuration
run: nix build .#nixosConfigurations.${{ matrix.machine }}.config.system.build.toplevel
run: nix build .#nixosConfigurations.${{ matrix.machine }}.config.system.build.toplevel
strategy:
fail-fast: false
matrix:
Expand All @@ -44,33 +66,34 @@ jobs:
- gaming-host-1
- remote-worker
- remote-builder
max-parallel: 10
timeout-minutes: 720
deploy-prep:
if: github.event_name == 'workflow_dispatch'
name: Deploy - ${{ github.event.inputs.machine }}
needs:
- validation
- security
- build-x86
- build-arm
- build-arm-native
- build-arm-cross
runs-on: self-hosted
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build configuration
run: nix build .#nixosConfigurations.${{ github.event.inputs.machine }}.config.system.build.toplevel
run: "MACHINE=\"${{ github.event.inputs.machine }}\"\nARM_NATIVE=\"display-1\
\ display-2 print-controller\"\nARM_CROSS=\"arm-builder beta-one\"\n\nif echo\
\ \"$ARM_NATIVE\" | grep -qw \"$MACHINE\"; then\n NIX_OPTS=\"\"\nelif echo\
\ \"$ARM_CROSS\" | grep -qw \"$MACHINE\"; then\n NIX_OPTS=\"\"\nelse\n NIX_OPTS=\"\
\"\nfi\nnix build \"$NIX_OPTS\" \".#nixosConfigurations.$MACHINE.config.system.build.toplevel\"\
\n"
- if: github.event.inputs.action == 'test'
name: Test deployment
run: nix run .#${{ github.event.inputs.machine }}
- if: github.event.inputs.action == 'deploy'
name: Deploy to machine
run: nix run .#${{ github.event.inputs.machine }} -- switch
- if: always()
name: Upload deployment logs
uses: actions/upload-artifact@v4
with:
name: deploy-${{ github.event.inputs.machine }}-logs
path: /tmp/deploy-*.log
retention-days: '30'
security:
name: Security Scan
runs-on: ubuntu-latest
Expand Down Expand Up @@ -110,6 +133,13 @@ jobs:
run: nix fmt -- --check .
- name: Flake check
run: nix flake check
- continue-on-error: true
name: Profile evaluation
run: "nix build --option eval-profiler flamegraph \\\n --option eval-profile-file\
\ /tmp/eval-profile \\\n --option builders \"\" \\\n .#nixosConfigurations.remote-builder.config.system.build.toplevel\
\ \\\n --dry-run 2>&1 || true\nif [ -f /tmp/eval-profile ]; then\n\
\ echo \"=== Eval profile (top 20 stacks) ===\"\n sort -rn -k2 /tmp/eval-profile\
\ | head -20\nfi\n"
- continue-on-error: true
name: Dead code check
run: nix shell nixpkgs#deadnix -c deadnix .
Expand All @@ -124,7 +154,6 @@ name: NixOS CI/CD
push:
branches:
- main
- jb/ai/overlord-8
paths:
- '**.nix'
- flake.lock
Expand Down Expand Up @@ -153,10 +182,10 @@ name: NixOS CI/CD
- gaming-host-1
- remote-worker
- remote-builder
- arm-builder
- display-1
- display-2
- print-controller
- arm-builder
- beta-one
required: true
type: choice
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ result
*.qcow2
documentation/logs/
sqlite_mcp_server.db
nix
Loading
Loading