Stack Skills
Stack skills define individual infrastructure stacks that /ipa-compose assembles into deployment patterns. Each stack skill lives at .claude/skills/ipa-stack-{name}/SKILL.md and declares the stack's parameters, outputs, wiring, feature flags, and lifecycle classification.
Stack skills are not invoked directly. Instead, /ipa-compose reads them to generate Makefiles and deployment configuration.
Each stack skill documents both its CloudFormation template (infra/cfn/{tier}/) and its parallel Terraform module (infra/tf/{tier}/) in a ## Terraform Module section. The IaC engine is selected at /ipa-init time via APP_IAC.
Lifecycle Classification
Stacks are classified into two lifecycle categories that determine when they are deployed and whether /ipa-destroy removes them:
| Lifecycle | Deployed By | Removed By | Examples |
|---|---|---|---|
| prepare | /ipa-prepare | Manual (make -f scripts/prepare.mk teardown-prepare) | Logs, ECR, Cognito |
| deploy | /ipa-deploy | /ipa-destroy | Backend, Frontend, Queue |
Solution Tier Stacks
These stacks form the application infrastructure and are deployed and destroyed as a unit.
| Stack | Description |
|---|---|
| /ipa-stack-backend | Lambda + API Gateway v2 + DynamoDB |
| /ipa-stack-frontend | S3 + CloudFront + OAC |
| /ipa-stack-queue | SQS + DLQ + worker Lambda + DynamoDB |
Prepare Stacks
These stacks provide shared prerequisites and persist across deploy/destroy cycles.
| Stack | Description |
|---|---|
| /ipa-stack-logs | Centralized S3 log bucket for access and flow logs |
| /ipa-stack-ecr | ECR repository for container images |
| /ipa-stack-cognito | Cognito User Pool with OAuth 2.0 and OIDC |
| /ipa-stack-tfstate | Terraform state backend — S3 + DynamoDB (only when APP_IAC=terraform) |
CI/CD Prepare Stacks
These stacks support CI/CD and are composed via /ipa-compose codepipeline. They follow the prepare lifecycle.
| Stack | Description |
|---|---|
| /ipa-stack-codecommit | CodeCommit repository for source code |
| /ipa-stack-codepipeline | CodePipeline CI/CD with CodeBuild |