Skip to content

chore: repo-wide simplify pass - #4378

Merged
Tanguille merged 16 commits into
mainfrom
chore/simplify-pass-2026-08
Aug 6, 2026
Merged

chore: repo-wide simplify pass#4378
Tanguille merged 16 commits into
mainfrom
chore/simplify-pass-2026-08

Conversation

@Tanguille

@Tanguille Tanguille commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Repo-wide /simplify. 79 files, +431/-1084. Every change verified by rendering before and after; nothing shipped on inspection alone.

Verification

Change Method Result
11 chart-default restatements pull pinned chart, helm template diff identical (crowdsec/vmstack differ only in per-run generated certs)
external-service ResourceSets flux-operator build resourceset vs kustomize build 30/30 objects match, minus ownership labels + 3 targetPort defaults
ndots-1 component reimplemented Flux MergeMaps, diffed merged values identical for all 5 apps; dnsConfig confirmed in rendered pod
kube-state-metrics anchors kustomize build per-kind compare 7/7 surviving kinds identical
gatus default-alert built gatus's own config parser, compared loaded alerts all 5 endpoints enabled=true send-on-resolved=true
flux-instance regex patch target kustomize fixture with 4 controller Deployments correct 512Mi/256Mi split
kopiur strategic merge kustomize build of a consumer namespace identical
server.py rewrite live server vs stub upstreams, all 7 routes 200/503/404 paths + gzip passthrough OK
controller.py python3 -m unittest test_controller 25/25 pass
whole repo kustomize build on all 131 Flux paths clean

What changed

  • external-service: 42 files to 4. Ten per-app trees differing only in name, IP, port and homepage annotations become two ResourceSets. Adding a service is one input entry.
  • kube-state-metrics: 422 lines to 213. HelmChart/Alert/Provider/Receiver emitted gotk_resource_info that no alert and no dashboard reads; the seven survivors share one shape via anchors.
  • monero-dashboard: observer proxy streamed instead of buffered. /observer/shares?limit=10000 measures 9.2MB every 10s per tab, held whole in a 256Mi container; gzip serves the same data in 3.0MB. Frontend drops a duplicate startup fetch, a per-tick chart rebuild, and a serial pool_info round trip.
  • flate CI: talosctl was refetched at 96.6MiB per container PR, roughly 400 a month over the home uplink. Now an RWX cache keyed by Talos version, one download per version cluster-wide.
  • ndots:1: the same four lines in five HelmReleases, documented in one, now a shared component.
  • Flux: four near-identical controller memory patches become two regex-targeted ones; the substitute-from opt-out label had zero users and was a one-word kill switch for sops decryption across an app tree.

Operational notes

  • external-service cutover has a few-second gap where Flux prunes the 30 old objects before flux-operator recreates them. Internal routes only.
  • The runner tool cache is on CephFS, so CI will not schedule if Ceph is down.

Investigated, not applied

Moving the three Talos node-label patch files into talhelper's native per-node nodeLabels silently drops node.kubernetes.io/exclude-from-external-load-balancers from all three control planes. pkg/talos/nodeconfig.go:122-126 assigns the map rather than merging, and runs before patches; the label comes from Talos machinery config/generate/init.go:99-105. Reverted, genconfig back to a byte-identical baseline. A shared controlPlane.patches entry does work if we want it later.

Summary by CodeRabbit

  • New Features

    • Added persistent, checksum-verified caching for runner tools.
    • Consolidated external HTTP and TLS service routing.
    • Standardized DNS behavior across AI, media, and observability workloads.
    • Added resolved-alert notifications to shared Discord monitoring.
  • Improvements

    • Improved Monero dashboard refresh efficiency and proxy reliability.
    • Simplified monitoring metrics and resource settings.
    • Removed obsolete external service configurations and unused security settings.

@deepsource-io

deepsource-io Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

DeepSource Code Review

We reviewed changes in 14c5af0...7a0ca6a on this pull request. Below is the summary for the review, and you can see the individual issues we found as inline review comments.

See full review on DeepSource ↗

PR Report Card

Overall Grade   Security  

Reliability  

Complexity  

Hygiene  

Code Review Summary

Analyzer Status Updated (UTC) Details
JavaScript Aug 6, 2026 9:41p.m. Review ↗
Shell Aug 6, 2026 9:41p.m. Review ↗

Important

AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Too many files!

This PR contains 115 files, which is 15 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 183b95bd-8dab-4700-bf72-d02a61f40660

📥 Commits

Reviewing files that changed from the base of the PR and between 14c5af0 and 7a0ca6a.

📒 Files selected for processing (115)
  • .github/workflows/flate.yaml
  • .github/workflows/gitleaks.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/kustomization.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml
  • kubernetes/apps/ai/kustomization.yaml
  • kubernetes/apps/ai/litellm/instance/servicemonitor.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/ai/llmkube/ks.yaml
  • kubernetes/apps/ai/llmkube/models/qwen36-27b-vllm.yaml
  • kubernetes/apps/ai/omniroute/app/helmrelease.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/bazarr.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/crowdsec.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/gatus.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/grafana.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/jellystat.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/kustomization.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/litellm.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/memini.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/nextcloud.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/prowlarr.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/radarr.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/resourceset.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/sonarr.yaml
  • kubernetes/apps/database/cloudnative-pg/databases/spoolman.yaml
  • kubernetes/apps/database/dragonfly/cluster/podmonitor.yaml
  • kubernetes/apps/default/homepage/app/resources/settings.yaml
  • kubernetes/apps/default/immich/server/helmrelease.yaml
  • kubernetes/apps/default/nextcloud/app/helmrelease.yaml
  • kubernetes/apps/default/nextcloud/app/scripts/cron.sh
  • kubernetes/apps/flux-system/flux-instance/app/grafanadashboard.yaml
  • kubernetes/apps/flux-system/flux-instance/app/helmrelease.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/kube-system/spegel/app/helmrelease.yaml
  • kubernetes/apps/media/kustomization.yaml
  • kubernetes/apps/media/qbittorrent/tools/qbitrr/helmrelease.yaml
  • kubernetes/apps/media/seerr/app/helmrelease.yaml
  • kubernetes/apps/media/unpackerr/app/helmrelease.yaml
  • kubernetes/apps/network/envoy-gateway/app/observability.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/network/external-service/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/resourceset-http.yaml
  • kubernetes/apps/network/external-service/resourceset-tls.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/nextcloud-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/nut-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/opnsense-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/prowlarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/qbittorrent-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/scraparr/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/sonarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/speedtest-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/resources/config.yaml
  • kubernetes/apps/observability/grafana/instance/servicemonitor.yaml
  • kubernetes/apps/observability/kube-state-metrics/app/helmrelease.yaml
  • kubernetes/apps/observability/kustomization.yaml
  • kubernetes/apps/observability/victoria-metrics/app/grafanadashboard.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/rook-ceph/rook-ceph/app/grafanadashboard.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
  • kubernetes/apps/web3/monero/dashboard/resources/server.py
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/web3/monero/xmrig/service.yaml
  • kubernetes/apps/web3/xmrig-guard/app/resources/controller.py
  • kubernetes/apps/web3/xmrig-guard/app/servicemonitor.yaml
  • kubernetes/components/kopiur/privileged-movers/kustomization.yaml
  • kubernetes/components/ndots-1/configmap.yaml
  • kubernetes/components/ndots-1/kustomization.yaml
  • kubernetes/flux/cluster/ks.yaml

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

📝 Walkthrough

Walkthrough

The pull request adds shared runner caching and DNS configuration, replaces individual external-service manifests with Flux ResourceSets, refactors Monero dashboard networking, and updates observability, workload, Flux, and Kubernetes configuration.

Changes

Runner tool cache

Layer / File(s) Summary
Shared runner cache storage
kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/*
The runner mounts a RWX PVC at /tool-cache and sets group ownership for the cache.
Cached talosctl installation
.github/workflows/flate.yaml
The workflow verifies release checksums, reuses cached binaries, downloads cache misses, performs atomic cache writes, removes stale versions, and adds the executable to GITHUB_PATH.

Shared DNS configuration

Layer / File(s) Summary
ndots-1 component
kubernetes/components/ndots-1/*
A Kustomize Component provides a ConfigMap with ndots: "1" pod DNS settings.
DNS configuration consumers
kubernetes/apps/ai/*, kubernetes/apps/media/*, kubernetes/apps/observability/*
Selected overlays import the shared ConfigMap and remove inline DNS settings.

External service ResourceSets

Layer / File(s) Summary
Generated external service resources
kubernetes/apps/network/external-service/resourceset-*.yaml
HTTP and TLS ResourceSets generate headless Services, EndpointSlices, HTTPRoutes, and TLSRoutes from external-service inputs.
External service resource wiring
kubernetes/apps/network/external-service/kustomization.yaml
The root Kustomization references the ResourceSets.

Monero dashboard and server

Layer / File(s) Summary
Dashboard refresh flow
kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
Observer data, pool information, history, and chart initialization are consolidated into the updateStats() refresh path.
Shared HTTP proxy and server runtime
kubernetes/apps/web3/monero/dashboard/resources/server.py
The server reuses JSON-RPC request construction, JSON responses, streaming proxy handling, and ThreadingHTTPServer.
Related Monero cleanup
kubernetes/apps/web3/xmrig-guard/app/resources/controller.py, kubernetes/apps/web3/monero/xmrig/resourceset.yaml
Freshness validation no longer separately rejects empty samples, client construction omits the explicit default timeout, and an obsolete scaling comment is removed.

Observability configuration

Layer / File(s) Summary
Alerts and probes
kubernetes/apps/observability/gatus/*
Gatus uses global Discord alert defaults and no longer uses an HTTP liveness check.
Flux metric definitions
kubernetes/apps/observability/kube-state-metrics/*
Flux RBAC resources are narrowed, metric definitions reuse YAML anchors, and unsupported metric definitions are removed.
Workload defaults
kubernetes/apps/observability/exporters/*, kubernetes/apps/observability/victoria-metrics/*, kubernetes/apps/security/*
Selected resource, security, TLS, and object-selection fields are removed.

Platform configuration updates

Layer / File(s) Summary
Workload resource and service defaults
kubernetes/apps/ai/*, kubernetes/apps/default/*, kubernetes/apps/kube-system/*, kubernetes/apps/network/ai/*
Several explicit resource, protocol, probe, and mail settings are removed.
Flux controller configuration
kubernetes/apps/flux-system/*, kubernetes/flux/cluster/ks.yaml
Flux sync and controller memory patches use broader targets, and child Kustomization defaults no longer exclude labeled resources.
Local component configuration
kubernetes/components/kopiur/privileged-movers/kustomization.yaml
The Namespace annotation uses a strategic-merge patch.

Estimated code review effort: 4 (Complex) | ~60 minutes

Sequence Diagram(s)

sequenceDiagram
  participant FluxResourceSet
  participant KubernetesService
  participant EndpointSlice
  participant GatewayAPI
  FluxResourceSet->>KubernetesService: Generate headless Service
  FluxResourceSet->>EndpointSlice: Generate external endpoint
  FluxResourceSet->>GatewayAPI: Generate HTTPRoute or TLSRoute
Loading

Possibly related PRs

Suggested labels: area/kubernetes, area/github

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 76.19% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the repo-wide simplification changes and identifies the primary purpose of the pull request.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/simplify-pass-2026-08

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Caution

Failed to replace (edit) comment. This is likely due to insufficient permissions or the comment being deleted.

Error details
putComment timed out

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (2)
kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml (1)

5-15: 🩺 Stability & Availability | 🔵 Trivial

Bound cache growth before the PVC fills.

Line 5 states that no process prunes old binaries. The 2Gi claim can hold only about 20 Talos versions at roughly 96MiB each. A later cache miss will fail when curl cannot create its temporary file. Add bounded retention or a capacity alert instead of relying on manual cleanup.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml`
around lines 5 - 15, Update the runner-tool-cache PVC configuration and its
surrounding cache-management setup to prevent unbounded Talos binary growth: add
an automatic retention/pruning mechanism for old versions or configure an alert
when storage approaches capacity. Preserve the existing shared 2Gi volume unless
the selected solution requires otherwise, and remove the manual-cleanup-only
assumption in the comment.
kubernetes/components/ndots-1/configmap.yaml (1)

10-16: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick win

Enable immediate reconciliation for the shared ndots-1 values ConfigMap.

helm-controller has --watch-configs-label-selector=owner!=helm, but ndots-1 has no matching label and no reconcile.fluxcd.io/watch: Enabled label. Later ConfigMap edits will wait for the consuming HelmRelease 30-minute reconcile interval unless the object watch label is added.

Propposed metadata update
 metadata:
   name: ndots-1
+  labels:
+    reconcile.fluxcd.io/watch: Enabled
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@kubernetes/components/ndots-1/configmap.yaml` around lines 10 - 16, Add the
`reconcile.fluxcd.io/watch: Enabled` label to the ndots-1 values ConfigMap
metadata so helm-controller watches changes and immediately reconciles consuming
releases. Preserve the existing values.yaml data unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/flate.yaml:
- Around line 119-126: Update the cache-miss download flow around the cached
talosctl path to create the temporary file with mktemp in /tool-cache, ensuring
uniqueness across concurrent runner pods. Preserve the existing download, chmod,
and atomic mv behavior, and add cleanup so the temporary file is removed if any
download or installation step fails.

In
`@kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml`:
- Around line 55-60: Make the /tool-cache mounts read-only so workflow steps
cannot modify the shared ReadWriteMany cache. Ensure cache contents are
populated by a trusted process, or copy binaries to job-local storage and verify
their pinned digests before use. Apply the same protection to the additional
mounts referenced at lines 74–76.

In `@kubernetes/apps/network/external-service/resourceset-http.yaml`:
- Line 2: Replace the hardcoded schema domain in the ResourceSet schema
directives with ${SECRET_DOMAIN} in both
kubernetes/apps/network/external-service/resourceset-http.yaml:2-2 and
kubernetes/apps/network/external-service/resourceset-tls.yaml:2-2, preserving
the existing schema URL structure.

In `@kubernetes/apps/web3/monero/dashboard/resources/dashboard.js`:
- Around line 1235-1242: Update the refresh flow around updateStats so payout
and share requests remain independent from pool_info failures: fetch payouts and
shares without coupling them to pool_info, handle the pool-info request
separately, and fall back to null for the luck-card data when it fails. Preserve
updateRecentPayments() and updateSharesCard() execution even when the pool-info
request rejects, and retain the existing updateWindowLuck() behavior.

---

Nitpick comments:
In
`@kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml`:
- Around line 5-15: Update the runner-tool-cache PVC configuration and its
surrounding cache-management setup to prevent unbounded Talos binary growth: add
an automatic retention/pruning mechanism for old versions or configure an alert
when storage approaches capacity. Preserve the existing shared 2Gi volume unless
the selected solution requires otherwise, and remove the manual-cleanup-only
assumption in the comment.

In `@kubernetes/components/ndots-1/configmap.yaml`:
- Around line 10-16: Add the `reconcile.fluxcd.io/watch: Enabled` label to the
ndots-1 values ConfigMap metadata so helm-controller watches changes and
immediately reconciles consuming releases. Preserve the existing values.yaml
data unchanged.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: b415e54e-64a3-42c5-a4b9-b0a695c380ac

📥 Commits

Reviewing files that changed from the base of the PR and between ad5570b and a372ecb.

📒 Files selected for processing (79)
  • .github/workflows/flate.yaml
  • .github/workflows/gitleaks.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/kustomization.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml
  • kubernetes/apps/ai/kustomization.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/ai/omniroute/app/helmrelease.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/default/nextcloud/app/helmrelease.yaml
  • kubernetes/apps/flux-system/flux-instance/app/helmrelease.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/media/kustomization.yaml
  • kubernetes/apps/media/seerr/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/network/external-service/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/resourceset-http.yaml
  • kubernetes/apps/network/external-service/resourceset-tls.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/prowlarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/qbittorrent-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/sonarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/resources/config.yaml
  • kubernetes/apps/observability/kube-state-metrics/app/helmrelease.yaml
  • kubernetes/apps/observability/kustomization.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
  • kubernetes/apps/web3/monero/dashboard/resources/server.py
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/web3/xmrig-guard/app/resources/controller.py
  • kubernetes/components/kopiur/privileged-movers/kustomization.yaml
  • kubernetes/components/ndots-1/configmap.yaml
  • kubernetes/components/ndots-1/kustomization.yaml
  • kubernetes/flux/cluster/ks.yaml
💤 Files with no reviewable changes (53)
  • .github/workflows/gitleaks.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml

Comment thread .github/workflows/flate.yaml Outdated
Comment thread kubernetes/apps/network/external-service/resourceset-http.yaml
Comment thread kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
@Tanguille

Copy link
Copy Markdown
Owner Author

Review round 1 resolved in 5f4f771. Verdicts on the six findings:

Finding Verdict
DeepSource JS-0116 async without await fixed, updateWindowLuck lost its only await when the fetch moved into the batch
DeepSource JS-R1004 template string fixed
CodeRabbit: $$ not unique across pods fixed, mktemp plus an EXIT trap
CodeRabbit: shared cache is trusted storage fixed, sha256 verified every read and copied to job-local storage
CodeRabbit: hardcoded schema domain not applicable, public schema host used by 320 files in this repo
CodeRabbit: pool_info failure breaks payments not applicable, fetchJSON returns null and never rejects

Nitpicks:

  • PVC growth: valid, and now bounded. The install step prunes talosctl-* entries other than the pinned version, so the share holds one binary rather than accumulating ~96MiB per Talos bump.
  • reconcile.fluxcd.io/watch: Enabled on ndots-1: not needed. helm-controller runs with --watch-configs-label-selector=owner!=helm (flux-instance/app/helmrelease.yaml:146), and a Kubernetes key!=value selector matches objects where the key is absent, so an unlabelled ConfigMap is already watched. affinity-control-1 and nfs-media are the working precedents, both unlabelled, and the label appears nowhere in the repo.

Cache behaviour was exercised across all six branches before pushing: cold miss, warm hit, poisoned entry (detected, re-downloaded, cache healed), stale version pruned, mount absent entirely (the state of the live runner until this PR rolls out), and the resulting binary running talosctl version --client.

@Tanguille
Tanguille force-pushed the chore/simplify-pass-2026-08 branch from 5f4f771 to 3a0e93b Compare August 6, 2026 18:35
@Tanguille
Tanguille force-pushed the chore/simplify-pass-2026-08 branch from efd597b to efb61b3 Compare August 6, 2026 19:01
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/flate.yaml:
- Line 143: Update the talosctl cache-pruning find command to include the
-ignore_readdir_race option, preserving the existing name filters and deletion
behavior while preventing concurrent removal of the same cache entry from
failing the job.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 9161261a-58d5-4a58-8fb0-2eaa02e719c1

📥 Commits

Reviewing files that changed from the base of the PR and between f4ed790 and efb61b3.

📒 Files selected for processing (79)
  • .github/workflows/flate.yaml
  • .github/workflows/gitleaks.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/kustomization.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml
  • kubernetes/apps/ai/kustomization.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/ai/omniroute/app/helmrelease.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/default/nextcloud/app/helmrelease.yaml
  • kubernetes/apps/flux-system/flux-instance/app/helmrelease.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/media/kustomization.yaml
  • kubernetes/apps/media/seerr/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/network/external-service/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/resourceset-http.yaml
  • kubernetes/apps/network/external-service/resourceset-tls.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/prowlarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/qbittorrent-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/sonarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/resources/config.yaml
  • kubernetes/apps/observability/kube-state-metrics/app/helmrelease.yaml
  • kubernetes/apps/observability/kustomization.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
  • kubernetes/apps/web3/monero/dashboard/resources/server.py
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/web3/xmrig-guard/app/resources/controller.py
  • kubernetes/components/kopiur/privileged-movers/kustomization.yaml
  • kubernetes/components/ndots-1/configmap.yaml
  • kubernetes/components/ndots-1/kustomization.yaml
  • kubernetes/flux/cluster/ks.yaml
💤 Files with no reviewable changes (53)
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • .github/workflows/gitleaks.yaml
🚧 Files skipped from review as they are similar to previous changes (24)
  • kubernetes/apps/network/external-service/kustomization.yaml
  • kubernetes/apps/ai/omniroute/app/helmrelease.yaml
  • kubernetes/apps/media/seerr/app/helmrelease.yaml
  • kubernetes/apps/ai/kustomization.yaml
  • kubernetes/apps/observability/exporters/prowlarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/kustomization.yaml
  • kubernetes/apps/observability/kustomization.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml
  • kubernetes/apps/observability/exporters/sonarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/web3/xmrig-guard/app/resources/controller.py
  • kubernetes/apps/default/nextcloud/app/helmrelease.yaml
  • kubernetes/apps/media/kustomization.yaml
  • kubernetes/components/ndots-1/configmap.yaml
  • kubernetes/apps/observability/gatus/app/resources/config.yaml
  • kubernetes/components/ndots-1/kustomization.yaml
  • kubernetes/components/kopiur/privileged-movers/kustomization.yaml
  • kubernetes/apps/observability/exporters/qbittorrent-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/resourceset-tls.yaml
  • kubernetes/apps/network/external-service/resourceset-http.yaml
  • kubernetes/flux/cluster/ks.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml
  • kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
  • kubernetes/apps/flux-system/flux-instance/app/helmrelease.yaml
  • kubernetes/apps/observability/kube-state-metrics/app/helmrelease.yaml

Comment thread .github/workflows/flate.yaml Outdated
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@kubernetes/apps/web3/monero/dashboard/resources/server.py`:
- Line 326: Define a ThreadingHTTPServer subclass with daemon_threads set to
False, then instantiate that subclass in the server startup block around Handler
and PORT. Preserve the existing shutdown/finally flow so process termination
waits for active observer request handlers to finish before saving logs and
exiting.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7e84bc27-57f4-403e-a596-22ae9e567e44

📥 Commits

Reviewing files that changed from the base of the PR and between cdeefe6 and 1a830f5.

📒 Files selected for processing (79)
  • .github/workflows/flate.yaml
  • .github/workflows/gitleaks.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/kustomization.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml
  • kubernetes/apps/ai/kustomization.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/ai/omniroute/app/helmrelease.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/default/nextcloud/app/helmrelease.yaml
  • kubernetes/apps/flux-system/flux-instance/app/helmrelease.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/media/kustomization.yaml
  • kubernetes/apps/media/seerr/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/network/external-service/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/resourceset-http.yaml
  • kubernetes/apps/network/external-service/resourceset-tls.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/prowlarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/qbittorrent-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/sonarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/resources/config.yaml
  • kubernetes/apps/observability/kube-state-metrics/app/helmrelease.yaml
  • kubernetes/apps/observability/kustomization.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
  • kubernetes/apps/web3/monero/dashboard/resources/server.py
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/web3/xmrig-guard/app/resources/controller.py
  • kubernetes/components/kopiur/privileged-movers/kustomization.yaml
  • kubernetes/components/ndots-1/configmap.yaml
  • kubernetes/components/ndots-1/kustomization.yaml
  • kubernetes/flux/cluster/ks.yaml
💤 Files with no reviewable changes (53)
  • kubernetes/apps/network/external-service/avr/service.yaml
  • kubernetes/apps/observability/exporters/drm-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/opnsense/tlsroute.yaml
  • kubernetes/apps/network/external-service/scrutiny/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/endpointslice.yaml
  • kubernetes/apps/web3/monero/xmrig/resourceset.yaml
  • kubernetes/apps/kube-system/descheduler/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/ipmi/tlsroute.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/kustomization.yaml
  • kubernetes/apps/network/external-service/ipmi/kustomization.yaml
  • kubernetes/apps/network/external-service/homeassistant/kustomization.yaml
  • kubernetes/apps/network/external-service/scrutiny/kustomization.yaml
  • kubernetes/apps/network/external-service/vaultwarden/httproute.yaml
  • kubernetes/apps/network/external-service/avr/endpointslice.yaml
  • kubernetes/apps/network/external-service/avr/httproute.yaml
  • kubernetes/apps/network/external-service/avr/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/service.yaml
  • kubernetes/apps/kube-system/metrics-server/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/httproute.yaml
  • kubernetes/apps/network/external-service/truenas/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/service.yaml
  • .github/workflows/gitleaks.yaml
  • kubernetes/apps/network/external-service/ntopg/httproute.yaml
  • kubernetes/apps/network/external-service/scrutiny/endpointslice.yaml
  • kubernetes/apps/observability/exporters/blackbox-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/truenas/service.yaml
  • kubernetes/apps/network/external-service/scrutiny/httproute.yaml
  • kubernetes/apps/network/external-service/ntopg/service.yaml
  • kubernetes/apps/network/external-service/arm/service.yaml
  • kubernetes/apps/network/external-service/opnsense/kustomization.yaml
  • kubernetes/apps/network/external-service/centauri-carbon/endpointslice.yaml
  • kubernetes/apps/network/external-service/ntopg/kustomization.yaml
  • kubernetes/apps/network/external-service/arm/endpointslice.yaml
  • kubernetes/apps/network/external-service/homeassistant/httproute.yaml
  • kubernetes/apps/network/external-service/ipmi/endpointslice.yaml
  • kubernetes/apps/network/external-service/ipmi/service.yaml
  • kubernetes/apps/network/external-service/arm/httproute.yaml
  • kubernetes/apps/network/external-service/opnsense/endpointslice.yaml
  • kubernetes/apps/network/external-service/vaultwarden/kustomization.yaml
  • kubernetes/apps/network/external-service/opnsense/service.yaml
  • kubernetes/apps/network/external-service/homeassistant/service.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-endpointslice.yaml
  • kubernetes/apps/observability/gatus/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/vaultwarden/endpointslice.yaml
  • kubernetes/apps/ai/opencode/app/opencode-vm-service.yaml
  • kubernetes/apps/security/crowdsec/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/ntopg/endpointslice.yaml
  • kubernetes/apps/observability/victoria-metrics/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/truenas/tlsroute.yaml
  • kubernetes/apps/network/external-service/truenas/kustomization.yaml
  • kubernetes/apps/ai/llmkube/app/helmrelease.yaml
  • kubernetes/apps/security/crowdsec/bouncers/envoy/helmrelease.yaml
  • kubernetes/apps/network/external-service/arm/kustomization.yaml
🚧 Files skipped from review as they are similar to previous changes (25)
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/kustomization.yaml
  • kubernetes/apps/ai/kustomization.yaml
  • kubernetes/apps/network/external-service/kustomization.yaml
  • kubernetes/components/ndots-1/kustomization.yaml
  • kubernetes/apps/default/nextcloud/app/helmrelease.yaml
  • kubernetes/apps/media/seerr/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/prowlarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/kustomization.yaml
  • kubernetes/apps/media/kustomization.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/helmrelease.yaml
  • kubernetes/apps/observability/exporters/sonarr-exporter/app/helmrelease.yaml
  • kubernetes/apps/observability/exporters/qbittorrent-exporter/app/helmrelease.yaml
  • kubernetes/apps/network/external-service/resourceset-tls.yaml
  • kubernetes/apps/network/external-service/resourceset-http.yaml
  • kubernetes/flux/cluster/ks.yaml
  • kubernetes/components/kopiur/privileged-movers/kustomization.yaml
  • kubernetes/apps/web3/xmrig-guard/app/resources/controller.py
  • kubernetes/apps/ai/omniroute/app/helmrelease.yaml
  • kubernetes/apps/web3/monero/dashboard/resources/dashboard.js
  • .github/workflows/flate.yaml
  • kubernetes/apps/actions-runner-system/actions-runner-controller/runners/cluster/pvc.yaml
  • kubernetes/apps/flux-system/flux-instance/app/helmrelease.yaml
  • kubernetes/apps/observability/gatus/app/resources/config.yaml
  • kubernetes/apps/observability/kube-state-metrics/app/helmrelease.yaml
  • kubernetes/components/ndots-1/configmap.yaml

Comment thread kubernetes/apps/web3/monero/dashboard/resources/server.py Outdated
…rceSets

Thirty objects across 42 files, differing only in name, IP, port and homepage
annotations. Adding a service is now one input entry.

flux-operator build resourceset renders all 30 objects identically to the
previous kustomize output, apart from the resourceset.fluxcd.controlplane.io
ownership labels and three targetPort: 443 lines that restate spec.ports.port.
The same four-line dnsConfig sat in five HelmReleases, documented in one. The
two reasons it is there (three NXDOMAIN round-trips per in-cluster FQDN, and an
external name being hijacked by a same-named local Service) now live once.

Merged value trees are identical for all five apps.
HelmChart, Alert, Provider and Receiver emitted gotk_resource_info that no
alert and no dashboard reads: flux-instance/prometheusrule.yaml queries only
HelmRelease and Kustomization, and the two pinned upstream dashboards query
only Kustomization, HelmRelease, GitRepository, HelmRepository, Bucket and
OCIRepository. Their RBAC grants go with them.

The seven surviving kinds share one name/namespace/ready/suspend shape, so
anchors leave each block showing only what differs. 422 lines to 213, rendered
output unchanged.
…ches

The observer proxy read whole bodies into memory before writing a byte.
/observer/shares?limit=10000 measures 9.2MB, fetched every 10s by every open
tab, buffered in a 256Mi container. It now streams with copyfileobj and asks
for gzip, which the same request serves in 3.0MB.

Also: one send_json and one proxy helper replace seven copies of the response
boilerplate, ThreadingHTTPServer replaces ThreadingTCPServer plus a manual
allow_reuse_address, and the monerod get_info request is built once.

Frontend: initialize() refetched /stats_log.json and rebuilt both charts
microseconds before updateStats() did the same; chart options and their four
closures were rebuilt every tick and thrown away on the update path; pool_info
joins the existing Promise.all instead of costing its own round trip.
The pull job refetched a 96.6MiB talosctl on every container PR, roughly 400 a
month over the home uplink, to run a tool that then pulls images. The runner
image ships yq but no talosctl, so the download itself is needed.

An RWX PVC at /tool-cache is shared by every runner pod, keyed by Talos
version, so it is one download per version cluster-wide. fsGroup 1001 because
the runner is uid/gid 1001 and the CephFS mount is otherwise root-owned.
Eleven sites across ten charts. Each verified by pulling the pinned chart and
diffing helm template before and after: rendered output is identical
everywhere (crowdsec and vmstack differ only in per-run generated certs).

Also collapses five repeated gatus endpoint alert blocks onto
alerting.discord.default-alert; enabled: true already restates the gatus
default. Parsed alert state is unchanged for all five endpoints.
…ntics

Four near-identical strategic-merge patches setting one memory limit each
become two regex-targeted ones, matching the idiom already used twice in the
same file.

The cluster patch carried a substitute-from opt-out label with no users
anywhere in the repo. It was a one-word kill switch for sops decryption and
secret substitution across a whole app tree, so it is gone; the note about the
patch replacing substituteFrom wholesale stays.

privileged-movers used a JSON6902 add into /metadata/annotations, which only
resolved because common/namespace.yaml happens to emit an annotations map.
A strategic merge creates the map when absent and drops the ~1 escaping.
opencode Service and EndpointSlice: type ClusterIP, protocol TCP and a
targetPort equal to port. gitleaks: job permissions identical to the
workflow-level block. nextcloud: the fromAddressKey workaround cited chart
9.2.0 while the pin is 9.2.5, rechecked and still required. xmrig resourceset:
a sub-comment claiming fast scale-up above a 60s window, inside a block its own
header calls inert. controller.py: a `not samples` guard unreachable because
max() over an empty set already raised, and a timeout kwarg restating the
signature default.
The mount does not exist until the runner HelmRelease in this PR rolls out, so
the job would fail on its own CI run, and it disappears if CephFS is down.
Falls back to a per-run download in both cases.
DeepSource JS-0116: updateWindowLuck lost its only await when the pool_info
fetch moved into the batch, so it no longer needs to be async.
DeepSource JS-R1004: /observer/pool_info has no interpolation.

The talosctl cache is a shared writable mount, so its contents are untrusted:
every read is now checked against the release sha256 and copied to job-local
storage before going on PATH, a poisoned or truncated entry falls through to a
plain download, and the temporary file uses mktemp rather than $$, which is not
unique across pods sharing the mount. Superseded versions are pruned, which
also bounds growth on the 2Gi share.
Checking the cache entry and then reading it left a window where another job
could swap the file in between, so the local copy reached PATH unverified.
Copying first and hashing what was actually copied closes it, and drops a
verify call.
40 added comment lines down to 25; no comment loses a measured fact.
Two cache-miss jobs pruning the same stale entry make one find call exit
non-zero, which under set -e fails the step. Reproduced at 11/12 rounds with
two concurrent pruners; 0/12 with -ignore_readdir_race.
Restated defaults: 22 ServiceMonitor/PodMonitor `scheme: http` and `path: /metrics`
(neither has a CRD default; Prometheus and VMAgent both supply them), gatus probe
timeoutSeconds/failureThreshold, qbitrr terminationGracePeriodSeconds, xmrig Service
targetPort, spegel grafanaDashboard.mode, vmsingle storage.accessModes, llmkube
dashboard mode. The three k8s ones were confirmed against the live API server with
a server-side dry-run, the chart ones by render diff.

Altitude: the kustomize-controller volume patch replaced index 0 rather than merging
on name, so it would rewrite whichever volume upstream put first; the crowdsec bouncer
reloader annotation used a JSON6902 add that replaces the whole annotations map. Both
now strategic merges, matching the rest of the repo.

immich-server gains fsGroupChangePolicy: OnRootMismatch — without it kubelet
recursively chowns a 100Gi CephFS volume on every pod start.

nextcloud cron: run_occ always returns 0, so the "not ready" guard could never fire
and the maintenance sequence ran against a down instance. Calls occ directly, and the
app-list bootstrap moves below the guard.

Also: dead sort and a duplicated bound in dashboard.js, and comments that restate the
line below them.
ThreadingTCPServer defaulted daemon_threads to False; ThreadingHTTPServer sets
it to True, so swapping the base class quietly changed shutdown semantics.
Restored, so server_close() waits for an in-flight observer proxy rather than
truncating it.
@Tanguille
Tanguille force-pushed the chore/simplify-pass-2026-08 branch from 2729fb8 to 2a591cb Compare August 6, 2026 21:04
CNPG app databases and the flux-instance/victoria-metrics/rook-ceph Grafana
dashboards were one near-identical manifest per item. Each collapses to a
ResourceSet whose inputs carry only what differs.

Dashboard files keep the grafanadashboard.yaml name and a nested grafanaCom
map so Renovate's dashboard manager still matches; all 13 revision pins and
the memini vchord pin still extract.

ResourceSet.spec.wait defaults to false, so every set under a wait: true
Kustomization sets it explicitly, external-service included.

All 27 dashboards render byte-identical. The 10 databases without managed
extensions gain spec.extensions: [], which CNPG short-circuits on
(reconcileDatabaseObjects returns early at objectCount == 0).
@github-actions

github-actions Bot commented Aug 6, 2026

Copy link
Copy Markdown

AI Automated Review

Analysis engine: omniroute@http://litellm.ai.svc.cluster.local/v1 (openai)

Recommendation: Approve. Well-scoped consolidation with per-change rendering verification; no blockers found.

Must-check items:

  • Manifest vs cluster version: ResourceSet (fluxcd.controlplane.io/v1) is consistent with the flux-operator v0.57.0 deployed in flux-instance; Gateway API v1/v1alpha2 and discovery.k8s.io/v1 are standard. Verified to the extent the corpus allows.
  • Resource quota/limit changes: descheduler (limits removed), metrics-server/llmkube (cpu requests removed), crowdsec envoy (mem limit removed) are claimed chart-default restatements verified by helm template diff; not independently confirmed.
  • Path sanitization / traversal / edge-case paths: server.py appends the raw request path to a fixed OBSERVER_URL (pre-existing pattern, unchanged); the flate cache uses a renovate-pinned TALOS_VERSION with sha256 verification and a maxdepth-1 prune. No new traversal surface.
  • Secrets in diff: none exposed; placeholders are template vars (${TRUENAS_IP}, {{HOMEPAGE_VAR_*}}); unpackerr env is redacted.
  • Secret rotation impact: none — routing/services only; cluster-runner-secret and existing secretRefs unchanged.

Findings:

  • Minor/security: gitleaks job loses its least-privilege contents: read permission (see findings array).

Unknowns / Needs Verification:

  • The security-relevant chart-default removals (crowdsec agent/appsec.tlsClientAuth, blackbox-exporter readOnlyRootFilesystem/allowPrivilegeEscalation) rely on the PR's helm-template verification; I could not independently confirm the chart defaults are equivalent.
  • The external-service cutover has an acknowledged few-second prune/recreate gap (internal routes only), as documented in the PR body.

Sources: ceph-mixin and flux dashboard JSONs fetched and valid; talos v1.13.8 release confirmed present in the release list.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inline findings from the automated review (summary in the sticky comment).

Comment thread .github/workflows/gitleaks.yaml
@Tanguille
Tanguille merged commit e27d6da into main Aug 6, 2026
10 of 11 checks passed
@Tanguille
Tanguille deleted the chore/simplify-pass-2026-08 branch August 6, 2026 22:17
@tanguille-cluster

Copy link
Copy Markdown
@@ spec.logCollector.enabled @@
# ceph.rook.io/v1/CephCluster/rook-ceph/rook-ceph
! ± value change
- false
+ true

@tanguille-cluster

Copy link
Copy Markdown
@@ spec.groups.hermes.rules.rules.HermesCronJobFailed.expr @@
# monitoring.coreos.com/v1/PrometheusRule/ai/hermes-rules
! ± value change in multiline text (one insert, one deletion)
- last_over_time(hermes_cron_last_status_ok[30m]) == 0
-   unless on (id) last_over_time(hermes_cron_paused[30m]) == 1
+ last_over_time(hermes_cron_last_status_ok[30m]) == 0

@@ spec.groups.hermes.rules.rules.HermesCronDeliveryFailed.expr @@
# monitoring.coreos.com/v1/PrometheusRule/ai/hermes-rules
! ± value change in multiline text (one insert, one deletion)
- last_over_time(hermes_cron_delivery_failed[30m]) == 1
-   unless on (id) last_over_time(hermes_cron_paused[30m]) == 1
+ last_over_time(hermes_cron_delivery_failed[30m]) == 1

@@ spec.env.SGLANG_HICACHE_FILE_BACKEND_MIN_FREE_SPACE.value @@
# inference.llmkube.dev/v1alpha1/InferenceService/ai/qwen36-27b
! ± value change
- 160Gi
+ 100Gi

@@ spec.groups.external-dns.rules.rules.0.expr @@
# monitoring.coreos.com/v1/PrometheusRule/network/external-dns-rules
! ± value change in multiline text (one insert, one deletion)
- # 300s, not 60s: the sync interval is itself 1m, so a 60s threshold trips every cycle.
- time() - external_dns_controller_last_sync_timestamp_seconds > 300
+ time() - external_dns_controller_last_sync_timestamp_seconds > 60

@@ spec.values.cephClusterSpec @@
# helm.toolkit.fluxcd.io/v2/HelmRelease/rook-ceph/rook-ceph-cluster
! - one map entry removed:
- logCollector:
-   enabled: false

@@ data.dashboard.js @@
# v1/ConfigMap/web3/dashboard
! ± value change in multiline text (one insert, one deletion)
  /* global Chart */
  // ==============================
  // MONERO MINING DASHBOARD
  // ==============================
  
  [891 lines unchanged)]
  
        displayHours < 1
          ? `${Math.round(timeWindow / 60)}m window`
          : displayHours < 24
            ? `${displayHours.toFixed(1)}h window`
-           : `${cappedWindowDays.toFixed(1)}d window`;
+           : `${displayDays.toFixed(1)}d window`;
      setTextContent("trueLuckWindow", windowText);
  
      setTooltipContent(
        "trueLuckTooltip",
  
  [468 lines unchanged)]
  
  }
  
  // Start the application
  initialize();

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant