Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NdoleStudio/httpsms
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: Daxsum/httpsms
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 7 commits
  • 5 files changed
  • 2 contributors

Commits on Sep 12, 2026

  1. chore: adapt docker-compose for Coolify deployment

    Drop host port bindings and the ./api/.env file dependency (not present
    in the repo) in favor of Coolify-managed environment variables and its
    SERVICE_FQDN_*/SERVICE_URL_* magic vars for auto-generated domains.
    Pass the web app's Firebase/API config as Docker build args since the
    Nuxt app is generated statically and bakes process.env at build time.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01L5D2TYHpgXXXCrUJpcQYxg
    Daxsum and claude committed Sep 12, 2026
    Configuration menu
    Copy the full SHA
    97819d3 View commit details
    Browse the repository at this point in the history
  2. fix(web): allow required build scripts under pnpm's ignored-builds gate

    pnpm now refuses native postinstall/build scripts for these deps by
    default (ERR_PNPM_IGNORED_BUILDS), breaking a plain `pnpm install` in
    CI/Docker where there's no TTY to run `pnpm approve-builds`.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01L5D2TYHpgXXXCrUJpcQYxg
    Daxsum and claude committed Sep 12, 2026
    Configuration menu
    Copy the full SHA
    6a1775a View commit details
    Browse the repository at this point in the history
  3. fix(web): copy pnpm-workspace.yaml before pnpm install in Docker build

    pnpm's ignored-builds gate (ERR_PNPM_IGNORED_BUILDS) needs the
    allowBuilds list from pnpm-workspace.yaml, but the Dockerfile only
    copied package.json/pnpm-lock.yaml before running `pnpm install`, so
    the allowlist wasn't visible yet and the build failed. Revert the
    unrelated package.json "pnpm" field added in 6a1775a since it wasn't
    the actual fix.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01L5D2TYHpgXXXCrUJpcQYxg
    Daxsum and claude committed Sep 12, 2026
    Configuration menu
    Copy the full SHA
    48e59e4 View commit details
    Browse the repository at this point in the history
  4. fix: pin postgres image to 16-alpine

    The floating "alpine" tag now resolves to Postgres 18, whose image
    refuses to start when the data volume is mounted directly at
    /var/lib/postgresql/data (its new expected layout mounts the parent
    /var/lib/postgresql instead) -- it errors out even against an empty
    volume. Pin to a stable major version compatible with the classic
    mount path used here.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01L5D2TYHpgXXXCrUJpcQYxg
    Daxsum and claude committed Sep 12, 2026
    Configuration menu
    Copy the full SHA
    b7fb086 View commit details
    Browse the repository at this point in the history
  5. fix(api): use ENV=local instead of production

    The api container was crash-looping: logDriver() only uses the plain
    console logger when ENV=local, otherwise it unconditionally requires
    an Axiom token and log.Fatal()s without one. This deployment has no
    Axiom account configured, matching api/.env.docker's own default of
    ENV=local for self-hosted setups.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01L5D2TYHpgXXXCrUJpcQYxg
    Daxsum and claude committed Sep 12, 2026
    Configuration menu
    Copy the full SHA
    083d6c1 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2026

  1. fix: use unsuffixed SERVICE_URL/FQDN vars for APP_URL/API_BASE_URL/SW…

    …AGGER_HOST
    
    Coolify only writes the port-less SERVICE_URL_<SERVICE> and
    SERVICE_FQDN_<SERVICE> into the generated .env used for docker-compose
    variable interpolation; the port-suffixed names (SERVICE_URL_WEB_3000,
    SERVICE_URL_API_8000, SERVICE_FQDN_API_8000) only exist as
    Coolify-injected literals inside each container's own runtime env block,
    not as compose-level interpolation sources. Referencing the suffixed
    names in `environment:`/`args:` values resolved to empty strings, so
    APP_URL and API_BASE_URL were blank — and since the web app is built
    statically (nuxt generate, ssr: false), that blank got baked into the
    build as the `http://localhost:8000` fallback, breaking the deployed
    site for every visitor.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01Q6NkJzg4XWGQPE5AEeJ6U6
    Daxsum and claude committed Sep 13, 2026
    Configuration menu
    Copy the full SHA
    0ef0761 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2026

  1. fix(api): gate message-quota paywall behind BILLING_ENABLED, off by d…

    …efault
    
    Self-hosted deployments had no way to disable the per-plan message
    send/receive quota (200/month on the free plan) and the "Upgrade to
    send more messages" 402 response, unlike the existing
    ENTITLEMENT_ENABLED-gated contact/API-key/schedule limits. Add the
    same enabled-flag pattern to BillingService so self-hosters aren't
    capped by default.
    
    Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_0147RMBR3grGHNtHNj5PypNU
    Daxsum and claude committed Sep 14, 2026
    Configuration menu
    Copy the full SHA
    0d7985b View commit details
    Browse the repository at this point in the history
Loading