From c6445f9c805cf75de4ff01b7dc4a2422be2ab2c0 Mon Sep 17 00:00:00 2001 From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com> Date: Sat, 2 May 2026 18:08:31 +0200 Subject: [PATCH] docs(init): update llms-full.txt for intent-scoped subcommands Reflect bootstrap/extend/upgrade split (replacing apply) and new --intent flag on plan. Fix trailing-whitespace alignment in intent tests. --- internal/wireguard/intent_test.go | 20 +++++++------- llms-full.txt | 43 +++++++++++++++++++++++++------ 2 files changed, 45 insertions(+), 18 deletions(-) diff --git a/internal/wireguard/intent_test.go b/internal/wireguard/intent_test.go index 971ff71..510fc9e 100644 --- a/internal/wireguard/intent_test.go +++ b/internal/wireguard/intent_test.go @@ -65,7 +65,7 @@ func TestValidateIntent_UpgradeAllowsNightlyWhenOpted(t *testing.T) { Intent: IntentUpgrade, CooldVersion: "nightly", CorrosionVersion: "nightly", - SchedulerVersion: "nightly", + SchedulerVersion: "nightly", AllowNightly: true, } require.NoError(t, ValidateIntent(d)) @@ -76,7 +76,7 @@ func TestValidateIntent_UpgradeAllowsPinned(t *testing.T) { Intent: IntentUpgrade, CooldVersion: "v1.2.3", CorrosionVersion: "v0.9.0", - SchedulerVersion: "v0.3.0", + SchedulerVersion: "v0.3.0", } require.NoError(t, ValidateIntent(d)) } @@ -175,9 +175,9 @@ func TestFilterByIntent_ExtendExistingHostPeerRefreshOnly(t *testing.T) { {Host: "A-old", Type: ActionReloadService}, {Host: "A-old", Type: ActionWriteCorrosionConfig}, {Host: "A-old", Type: ActionInstallFirewall}, - {Host: "A-old", Type: ActionInstallCoold}, // version bump: skipped - {Host: "A-old", Type: ActionInstallBuilder}, // version bump: skipped - {Host: "A-new", Type: ActionInstallCoold}, // new host: kept + {Host: "A-old", Type: ActionInstallCoold}, // version bump: skipped + {Host: "A-old", Type: ActionInstallBuilder}, // version bump: skipped + {Host: "A-new", Type: ActionInstallCoold}, // new host: kept }} filterByIntent(plan, &DesiredMesh{ Intent: IntentExtend, @@ -260,11 +260,11 @@ func TestFilterByIntent_UpgradeOnlyKeepsVersionBumpsAndServiceRestarts(t *testin {Host: "A", Type: ActionInstallCooldService}, {Host: "A", Type: ActionInstallCorrosionService}, {Host: "A", Type: ActionInstallSchedulerService}, - {Host: "A", Type: ActionWriteConfig}, // skipped - {Host: "A", Type: ActionReloadService}, // skipped - {Host: "A", Type: ActionCreatePodmanNet}, // skipped - {Host: "A", Type: ActionRecreatePodmanNet}, // skipped - {Host: "A", Type: ActionInstallFirewall}, // skipped (non-restart peer-refresh) + {Host: "A", Type: ActionWriteConfig}, // skipped + {Host: "A", Type: ActionReloadService}, // skipped + {Host: "A", Type: ActionCreatePodmanNet}, // skipped + {Host: "A", Type: ActionRecreatePodmanNet}, // skipped + {Host: "A", Type: ActionInstallFirewall}, // skipped (non-restart peer-refresh) }} filterByIntent(plan, &DesiredMesh{Intent: IntentUpgrade}) diff --git a/llms-full.txt b/llms-full.txt index 1e5d474..bdc2777 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -1995,11 +1995,6 @@ Parameters: Command: coolify init Description: [ALPHA] Initialize WireGuard mesh for Coolify v5 Parameters: - - name: --scheduler-version - type: string - description: Release tag to download for scheduler (e.g. "nightly", "v1.2.3"). - required: false - default: nightly - name: --builder-capacity type: integer description: Concurrent builds accepted per host (COOLD_BUILDER_CAPACITY). @@ -2080,6 +2075,11 @@ and push a per-host JWT to every other server. Leave empty to skip scheduler set description: Comma-separated list of namespaces to create on each host. Each namespace is a separate Podman bridge network (coolify--mesh) with its own / per host required: false default: [default] + - name: --scheduler-version + type: string + description: Release tag to download for scheduler (e.g. "nightly", "v1.2.3"). + required: false + default: nightly - name: --servers type: stringSlice description: Comma-separated server IPs (required) @@ -2134,13 +2134,40 @@ and push a per-host JWT to every other server. Leave empty to skip scheduler set required: false default: false -Command: coolify init apply -Description: Bootstrap the WireGuard mesh (executes the plan) +Command: coolify init bootstrap +Description: First-time mesh install (all actions allowed) Parameters: (None) +Command: coolify init extend +Description: Add new hosts to an existing mesh (existing hosts stay untouched) +Parameters: + - name: --allow-replace + type: boolean + description: Unlock destructive-replace actions on existing hosts (e.g. recreating a drifted podman bridge). Off by default — drifted existing hosts are surfaced as skipped actions instead. + required: false + default: false + - name: --new-hosts + type: stringSlice + description: Comma-separated subset of --servers that is brand-new this run (required). Only these hosts receive the full first-time install; all other hosts get peer-refresh only. + required: true + Command: coolify init plan Description: Show WireGuard mesh changes without applying them -Parameters: (None) +Parameters: + - name: --intent + type: string + description: Preview filter: "bootstrap" (all actions), "extend" (treat --new-hosts as fresh, existing hosts peer-refresh only), "upgrade" (version bumps only). + required: false + default: bootstrap + +Command: coolify init upgrade +Description: Bump agent binary versions (coold / corrosion / scheduler / builder) on every host +Parameters: + - name: --allow-nightly + type: boolean + description: Permit --coold-version/--corrosion-version/--scheduler-version=nightly. Off by default because nightly re-installs on every run instead of only when the pinned version changes. + required: false + default: false Command: coolify private-key add Description: Add a private key