Skip to content

fix: handleKeyDown type cast, Terraform locking, sensitive outputs, password validation#1024

Open
Mozez155 wants to merge 4 commits into
solutions-plug:mainfrom
Mozez155:main
Open

fix: handleKeyDown type cast, Terraform locking, sensitive outputs, password validation#1024
Mozez155 wants to merge 4 commits into
solutions-plug:mainfrom
Mozez155:main

Conversation

@Mozez155

Copy link
Copy Markdown

Summary

Test plan

  • TypeScript compiles cleanly in frontend/ with no type errors
  • LandingPage.keyboard.test.tsx passes (Enter submits, empty-email shows error, non-Enter is a no-op)
  • terraform validate -var-file=environments/ci-validate.tfvars exits 0
  • terraform plan in CI now passes -lock=true -lock-timeout=5m and uses the correct backend HCL per environment
  • terraform output masks redis_endpoint as <sensitive>
  • Supplying a db_password or redis_auth_token shorter than 24 chars causes terraform validate to fail with the new error message

closes #952
closes #953
closes #954
closes #955

Mozez155 added 4 commits June 29, 2026 08:06
Replace the incorrect `as unknown as React.FormEvent` cast with a
properly typed `React.KeyboardEvent<HTMLFormElement>` handler that
calls `e.currentTarget.requestSubmit()` to trigger native form
submission without unsafe coercion. Add unit tests covering Enter
submission, validation on empty input, and non-Enter key no-op.

closes solutions-plug#952
Pass the environment-specific backend HCL file to `terraform init`
so the DynamoDB table declared in each backend config is actually
activated. Add `-lock=true -lock-timeout=5m` to all plan and apply
commands so concurrent runs fail instead of corrupting state. Add a
`terraform validate` step (with a CI-only var file) that runs before
every plan.

closes solutions-plug#953
Add `sensitive = true` to the redis `endpoint` and `redis_url`
outputs in the Redis module and to `redis_endpoint` in the root
outputs file, preventing these values from appearing in plaintext
in CI logs and `terraform output` calls.

closes solutions-plug#954
Raise `db_password` minimum length from 8 to 24 characters and add
complexity requirements (uppercase, lowercase, digits, special chars).
Add `redis_auth_token` variable with `sensitive = true` and the same
complexity validation, preventing weak credentials from reaching
production infrastructure.

closes solutions-plug#955
@drips-wave

drips-wave Bot commented Jun 29, 2026

Copy link
Copy Markdown

@Mozez155 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant