Skip to content

chore: promote staging to dev after hotfix#258

Merged
mottych merged 13 commits intodevfrom
staging
Mar 4, 2026
Merged

chore: promote staging to dev after hotfix#258
mottych merged 13 commits intodevfrom
staging

Conversation

@mottych
Copy link
Owner

@mottych mottych commented Mar 4, 2026

Summary

  • promote latest staging changes into dev
  • complete mandatory downstream propagation after production hotfix

actions-user and others added 13 commits March 3, 2026 02:09
Synced from: PurposePath_Api@2d433dbe

Original commit: Merge pull request #694 from mottych/docs/sync-dev

Original author: Motty Chen

Branch: master

[skip ci]
Synced from: PurposePath_Api@5f2f1375

Original commit: Merge pull request #700 from mottych/hotfix/issue-

Original author: Motty Chen

Branch: master

[skip ci]
Ensure browser preflight requests always return CORS headers by configuring API Gateway for allowed frontend origins and relaxing app-level allowed headers. Add a stronger production smoke test that validates all purposepath.app frontend origins and common tracing headers to prevent regressions.

Made-with: Cursor
Add the coaching Pulumi preprod stack configuration file with AWS region so future hotfix branches can deploy to preprod without manual stack config setup.

Made-with: Cursor
fix(cors): restore preprod and production preflight handling
Support production deploys from merged hotfix PRs, add an automatic hotfix-to-preprod deployment workflow, and fail fast when Lambda is not Active after deploy. Stop managing the shared ECR repository from the coaching service stack to prevent image churn breaking Lambda.

Made-with: Cursor
fix(deploy): harden hotfix promotion reliability
Run Lambda state validation from the Pulumi project directory and poll until the function reaches Active with a successful update status. This prevents false failures and correctly blocks only unhealthy production deploys.

Made-with: Cursor
fix(ci): stabilize production lambda runtime verification
Add a dedicated Cursor command for production incident handling that mirrors resolve-issue principles while enforcing the hotfix path: preprod validation, hotfix-to-master promotion, and mandatory downstream merges to staging and dev.

Made-with: Cursor
docs: add resolve-production-issue command workflow
chore: promote master to staging after hotfix
@mottych mottych merged commit 0abe7c3 into dev Mar 4, 2026
1 check failed
@pulumi
Copy link

pulumi bot commented Mar 4, 2026

🍹 The Update for mottych/purposepath-coaching-api/staging (at b4b5c2d) was successful.

✨ Neo Explanation

This deployment pushes updated coaching API code via a new container image and adds CORS support to the API Gateway, allowing the listed frontend origins to make credentialed cross-origin requests to the staging API.

Root Cause Analysis

Two independent changes are being deployed simultaneously: a new Docker image build for the coaching API (code update), and the addition of a CORS configuration to the API Gateway.

Dependency Chain

  1. New Docker image — The coaching service container has been rebuilt with a new image, which triggers an update to the Lambda function's image URI to point to the new container.
  2. CORS configuration — A corsConfiguration block is being added to the API Gateway, enabling cross-origin requests from five allowed origins (dev, staging, preprod, www, and root purposepath.app) with credentials support, standard HTTP methods, and rate-limit-related response headers exposed to clients.

These two changes are independent of each other and deploy in parallel.

Risk Analysis

No stateful resources (databases, storage) are being modified or replaced. The Lambda function update is an in-place image swap with no replacement. The CORS addition is a non-breaking change that only expands browser access to the API.

Resource Changes

    Name            Type                          Operation
~   coaching-api    aws:apigatewayv2/api:Api      update
~   coaching-image  docker:index/image:Image      update
~   coaching-api    aws:lambda/function:Function  update

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.

2 participants