Skip to content

FAC-83 feat: make JWT token expiry and refresh token settings configurable via env vars#186

Merged
y4nder merged 4 commits intodevelopfrom
feat/fac-83-configurable-jwt-settings
Mar 27, 2026
Merged

FAC-83 feat: make JWT token expiry and refresh token settings configurable via env vars#186
y4nder merged 4 commits intodevelopfrom
feat/fac-83-configurable-jwt-settings

Conversation

@y4nder
Copy link
Copy Markdown
Member

@y4nder y4nder commented Mar 27, 2026

Summary

  • make access token expiry, refresh token expiry, and refresh-token bcrypt rounds configurable via env vars
  • keep refresh JWT expiry and persisted refresh-token expiresAt derived from the same duration source
  • document the new JWT env vars and add focused env/auth tests

Testing

  • npm run lint
  • npm run test -- jwt.env.spec.ts
  • npm run test -- modules/common/custom-jwt-service/index.spec.ts
  • npm run build

Closes #180

@y4nder
Copy link
Copy Markdown
Member Author

y4nder commented Mar 27, 2026

Remaining CI failure is external to this branch’s app logic.

Local verification passed:

  • npm run lint
  • npm run test -- jwt.env.spec.ts
  • npm run test -- modules/common/custom-jwt-service/index.spec.ts
  • npm run build

The latest PR test workflow on March 27, 2026 failed before npm install or Jest started. In the raw GitHub Actions log, the job reached service startup and then failed while pulling the Postgres service image from Docker Hub:

  • 2026-03-27T16:09:00Z: started 15: Pulling from library/postgres
    b2c40507d19c: Pulling fs layer
    af73ff344a10: Pulling fs layer
    ec781dee3f47: Pulling fs layer
    d2c8c030ed3b: Pulling fs layer
    45e04ac2d7d2: Pulling fs layer
    ce2467f2f21d: Pulling fs layer
    bda354b903ce: Pulling fs layer
    fd0dcffac314: Pulling fs layer
    eab3f9a27af8: Pulling fs layer
    07cec992154a: Pulling fs layer
    fcd98f4944fb: Pulling fs layer
    c2e686ef6906: Pulling fs layer
    f1a2676f0017: Pulling fs layer
    d4ced18622af: Pulling fs layer
    fe39cf73b641: Download complete
    e0f479c780c9: Download complete
    b2c40507d19c: Download complete
    fcd98f4944fb: Download complete
    f1a2676f0017: Download complete
    c2e686ef6906: Download complete
    ce2467f2f21d: Download complete
    eab3f9a27af8: Download complete
    d2c8c030ed3b: Download complete
    fd0dcffac314: Download complete
    bda354b903ce: Download complete
    d4ced18622af: Download complete
    07cec992154a: Download complete
    af73ff344a10: Download complete
    ec781dee3f47: Download complete
    ce2467f2f21d: Pull complete
    ec781dee3f47: Pull complete
    d4ced18622af: Pull complete
    af73ff344a10: Pull complete
    07cec992154a: Pull complete
    fcd98f4944fb: Pull complete
    fd0dcffac314: Pull complete
    bda354b903ce: Pull complete
    45e04ac2d7d2: Download complete
    f1a2676f0017: Pull complete
    eab3f9a27af8: Pull complete
    d2c8c030ed3b: Pull complete
    45e04ac2d7d2: Pull complete
    b2c40507d19c: Pull complete
    c2e686ef6906: Pull complete
    Digest: sha256:c635fa3e3b7421a659d34abdfd6d492f679cbe8149e261a501237b55c5a94212
    Status: Downloaded newer image for postgres:15
    docker.io/library/postgres:15
  • 2026-03-27T16:09:01Z:
  • retries at 2026-03-27T16:09:07Z and 2026-03-27T16:09:09Z failed the same way
  • 2026-03-27T16:09:10Z: workflow exited before tests ran

So the remaining failing check is a Docker Hub rate-limit issue on the GitHub-hosted runner, not a reproducible failure in the FAC-83 code changes.

This branch also includes the CI workflow fix that removes the Docker-based Discord action, so the earlier notification-action failure is already addressed here.

@y4nder y4nder self-assigned this Mar 27, 2026
@y4nder y4nder merged commit 9541df9 into develop Mar 27, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FAC-83 feat: make JWT token expiry and refresh token settings configurable via env vars

1 participant