---
title: Audit - actualbudget.yaml
description: Gremlin audit report 2026-04-20
published: true
date: 2026-04-20T11:04:38.151Z
tags: gremlin,audit
editor: markdown
dateCreated: 2026-04-20T11:04:38.151Z
---

# Audit Report — actualbudget.yaml

**Date:** 2026-04-20  
**File:** swarm/actualbudget.yaml  
**Type:** Docker Swarm  
**Verdict:** PASS

---

**SWARM AUDIT**

1. **Homepage labels:**  
   - `homepage.group`: Finance (PASS)  
   - `homepage.name`: Actual Budget (PASS)  
   - `homepage.icon`: actual-budget.svg (PASS)  
   - `homepage.href`: https://budget.netgrimoire.com (PASS)  
   - `homepage.description`: Envelope budgeting (PASS)

2. **Uptime Kuma labels:**  
   - Only one label defined: `kuma.actual.http.name`: "Actual Budget" (PASS). Additional configuration is needed to specify the URL.

3. **Caddy labels on exposed services:**  
   - `caddy=budget.netgrimoire.com` (PASS)  
   - `caddy.reverse_proxy`: actual:5006 (PASS)

4. **Placement constraints:**  
   - `node.hostname == znas` (PASS)  
   - `node.platform.arch != aarch64` (PASS)  
   - `node.platform.arch != arm` (PASS)

5. **Volumes use /DockerVol/<service> path convention:**  
   - `/DockerVol/actual:/data` (PASS)

6. **Network references external netgrimoire overlay:**  
   - `netgrimoire`: External network reference (PASS)

**Final VERDICT:** FAIL

The Uptime Kuma labels are incomplete. Specifically, the label `kuma.actual.http.url` is missing and should be defined to specify the actual URL of the service.