Macvlan container IPs are only reachable on the LAN. Runners working
remotely (coffee shop, VPN) must use the public GITEA_DOMAIN instead
of the LAN IP in their .runner file. Added inline comments to
.env.example and troubleshooting entries to README.md and USAGE_GUIDE.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- README.md: update prompt count ~65 to ~70
- contracts/gitea-api.md: fix "Used in" annotations — POST
branch_protections is Phase 7 only (not Phase 9), DELETE
branch_protections is Phase 7 teardown only (Phase 9 uses PATCH),
add missing used-in entries for GET commits and GET contents
- PLAN.md: replace stale UNRAID_GITEA_PORT/FEDORA_GITEA_PORT with
macvlan vars, update REPO_N_NAME to REPO_NAMES, fix version defaults
(1.23->1.25, 0.2.11->0.3.0), add missing setup/ files to tree,
fix prompt table to match current ~70 variables, update require_vars
lists to match actual scripts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace single-DB rationale with description of all four supported
backends (sqlite3, mysql, postgres, mssql) and how the toolkit
handles each.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move 10 validation functions from configure_env.sh to lib/common.sh as
shared utilities. Define variable-to-validator mapping using parallel
arrays (bash 3.2 compatible). validate_env() checks all ~50 .env
variables against their expected format and reports all failures at once.
Wired into preflight.sh (Check 6b) and bitwarden_to_env.sh (post-restore).
configure_env.sh now sources validators from common.sh instead of
defining its own copies.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>