Validation: dev.intelligentstaffingsystems.ai DNS record and Caddy vhost

validation-79-2026-07-17 Doc

validation partial

Verdict: PARTIAL

Ticket

ldraney/intelligentstaffingsystems#79 — dev.intelligentstaffingsystems.ai DNS CNAME record and Caddy vhost for local dev environment. Merged via pal-e-platform#543. Board item #1870 on board-iss.

Environment

Validation targets: GoDaddy DNS (via Terraform GoDaddy provider), edge server Caddy (via SaltStack pillar), public DNS resolvers (Google DNS API). Repo type: terraform (pal-e-platform).

Checks

# Criterion How Verified Result Evidence
1 dev.intelligentstaffingsystems.ai DNS CNAME record exists in terraform/dns.tf Fetched PR #543 diff from Forgejo PASS PR diff shows <code>resource "godaddy_dns_record" "iss_dev"</code> with type=CNAME, name="dev", data="intelligentstaffingsystems.ai", TTL=600
2 Caddy vhost configured in salt/pillar/caddy.sls with correct proxy_target Fetched PR #543 diff from Forgejo PASS PR diff shows <code>iss-dev</code> entry: domain=dev.intelligentstaffingsystems.ai, proxy_target=intelligentstaffingsystems-dev.tail5b443a.ts.net, www_redirect=false
3 dig dev.intelligentstaffingsystems.ai returns expected record after terraform apply Google DNS API (dns.google/resolve) for CNAME and A records; Python socket.getaddrinfo FAIL NXDOMAIN (Status: 3) from Google DNS for both CNAME and A queries. Python resolution: "Name or service not known". Root cause: <code>tofu apply</code> has not been run since merge — known push event gap (Forgejo squash merges do not trigger Woodpecker push events).
4 Local dev environment accessible via dev.intelligentstaffingsystems.ai when dev tunnel is active curl with --resolve to edge IP 178.156.129.142; direct curl BLOCKED DNS does not resolve (AC3 fail), so direct access impossible. curl to edge IP with Host header returned TLS handshake failure (exit 35) — Caddy has no cert for this domain (ACME cannot validate without DNS). Salt highstate may also not have been applied.

Regression Check

Main production domain intelligentstaffingsystems.ai resolves correctly (178.156.129.142) and returns HTTP 200 with correct page title. No regression on existing DNS or Caddy configuration.

Pipeline Status

Woodpecker pipeline #1489 (most recent manual on main): killed, all steps skipped. Pipeline #1470 (last successful manual on main): ran clone and build-and-push only, no apply step. No push event was triggered on main for the merge, consistent with the known Forgejo squash-merge push event gap.

Pending Actions

  • Trigger manual Woodpecker pipeline on pal-e-platform main to run tofu apply — this will create the GoDaddy DNS CNAME record.
  • Run salt highstate on the edge server to deploy the Caddy vhost configuration.
  • Re-validate AC3 and AC4 after apply completes: confirm DNS resolves and dev environment is accessible.

Discovered Issues

No new issues. The blocking condition (terraform not applied) is a known operational gap documented in project memory (Push Event Gap). The code changes are correct and complete.