# REPORT — docs: REUSE.md introduced (cross-repo reuse map) **Date:** 2026-07-03 · **Class:** docs-only (no template change, no deploy effect) **Baseline:** `main` @ `bb81cd414afcb89e28ac60f405133f40195e6c43` ## What was done - **`REUSE.md`** created at the repo root (58 lines, light §2/§5-focused variant per spec): the canonical example app (**paperless-ngx** — copy its structure), `.felhom.yml` required-field set (verified across all 53 apps), deploy_fields conventions, the five Docker-healthcheck families (BusyBox wget / curl / Node / Python / DB sidecars) each with a cited example, the memory request/limit convention (`mem_limit` = sum of compose limits; limits enforced, no reservations), the new-app checklist, and traps (gokapi entrypoint hack; legacy `templates.json` + `scripts/generate-customer.sh`; uptime-kuma's image-specific healthcheck binary). - **`CLAUDE.md`** created (minimal — this repo had none): the REUSE.md pointer + same-commit maintenance rule + the workspace CHANGELOG/REPORT convention. A full CLAUDE.md is a separate task. - `CHANGELOG.md` entry + `CONTEXT.md` created (one-liner). ## Verification `python felhom.eu/scripts/reuse_refs_check.py e:/git/app-catalog-felhom.eu` → `OK [app-catalog-felhom.eu]: 10 cited paths, all exist`. Sweep: 53 apps scanned (all 53 descriptors share the same top-level key set; optional extras verified per file). ## Observations (NOT acted on) — README drift, recorded in REUSE.md §6 - README lists `templates/filebrowser/` (doesn't exist); omits `templates/recipe-importer/` (does). - README field-type table omits `subdomain` (all 53 apps use it) and `secret_input` (romm); lists `boolean` which nothing uses. - README says smtp_mapping = "Vaultwarden, Mealie"; six apps carry it (calcom, gitea, mealie, nextcloud, rallly, vaultwarden). - Healthcheck URL style drift (localhost vs 127.0.0.1, `curl -f` vs `-sf`, two Node one-liner styles). Cross-repo summary + full sweep counts: `felhom.eu/REPORT.md`.