From d43c5846ca17a60e09fc93fd5ba73ae386366c77 Mon Sep 17 00:00:00 2001 From: lemma <> Date: Tue, 9 Jun 2026 22:11:26 -0500 Subject: [PATCH] Update instructions --- CLAUDE.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index 8d9c2ff..924fd10 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -59,6 +59,7 @@ Use `create-local-api` (not `update-local-api`) whenever `blog-api.yaml` changes | `app/` (frontend) | `AWS_PROFILE=localstack make -C infra update-local-site` | `AWS_PROFILE=production DOMAIN_NAME=lemma.pub make -C infra deploy-site` | | `infra/api/` (Lambda code only) | `AWS_PROFILE=localstack make -C infra update-local-api` | `AWS_PROFILE=production make -C infra update-aws-api` | | `infra/api/` (CloudFormation changes) | `AWS_PROFILE=localstack make -C infra create-local-api` | `AWS_PROFILE=production DOMAIN_NAME=lemma.pub make -C infra create-aws-api` | +| `infra/api/` (both code + CloudFormation) | `AWS_PROFILE=localstack make -C infra create-local-api` | `AWS_PROFILE=production DOMAIN_NAME=lemma.pub make -C infra create-aws-api` and `AWS_PROFILE=production make -C infra update-aws-api` | | Both frontend + API | `AWS_PROFILE=localstack make -C infra update-local` | `AWS_PROFILE=production DOMAIN_NAME=lemma.pub make -C infra deploy-site` and `AWS_PROFILE=production make -C infra update-aws-api` | | `infra/indexer/` (code only) | `AWS_PROFILE=localstack make -C infra run-local-indexer` | `AWS_PROFILE=production make -C infra update-aws-indexer` | | `infra/indexer/` (CloudFormation changes) | `AWS_PROFILE=localstack make -C infra deploy-local-indexer` | `AWS_PROFILE=production make -C infra deploy-aws-indexer` | @@ -69,6 +70,8 @@ Use `create-local-api` (not `update-local-api`) whenever `blog-api.yaml` changes `DOMAIN_NAME=lemma.pub` is required for `deploy-site` and `create-aws-api` (sets `API_DID=did:web:lemma.pub` on the Lambda — omitting it resets `API_DID` to `did:web:localhost` and breaks all authenticated endpoints). Lambda-zip-only and indexer targets do not use it. +`create-aws-api` only updates the CloudFormation stack (API Gateway resources). It does **not** deploy the Lambda zip. When `infra/api/src/` and `blog-api.yaml` both change, you must run both `create-aws-api` and `update-aws-api`. Skipping `update-aws-api` leaves the old Lambda code running, which returns 405 for any new routes even after the API Gateway resources are created. + The indexer is a separate long-running process — `update-local` does **not** cover it. Restart it separately whenever `infra/indexer/` changes. ## Docs -- 2.51.2