feat(P02 W0): dynamodb L1 primitive — interface, terraform, registry, tests (REQ-322)

New L1 module modules/l1/dynamodb/ (stack type aws:dynamodb:table).
Terraform aws_dynamodb_table with PK + optional SK, PAY_PER_REQUEST
default, SSE-KMS + PITR + prevent_destroy per v1.8 NFR defaults.
Registry entry (kind l1), catalog row, test_adapter.py updated to
15 entries / 13 L1. 45 tests passing.

---ci---
project: acdl
phase: 2
milestone: v1.26
status: execute
phase_role: execution
wave: 0
requirements: [REQ-322]
---/ci---
This commit is contained in:
Jon Chery
2026-08-18 00:22:19 +00:00
parent d022ddcea6
commit 9f94103c57
8 changed files with 207 additions and 5 deletions
+4 -4
View File
@@ -30,14 +30,14 @@ class TestInstance:
class TestRegistry:
EXPECTED_L1_KEYS = {"s3", "vpc", "ecs-cluster", "ecs-service", "iam-role", "alb", "ecr", "cloudfront", "waf", "rds", "kms-key", "uptime"}
EXPECTED_L1_KEYS = {"s3", "vpc", "ecs-cluster", "ecs-service", "iam-role", "alb", "ecr", "cloudfront", "waf", "rds", "kms-key", "uptime", "dynamodb"}
EXPECTED_L2_KEYS = {"static-assets", "microservice"}
def test_registry_has_14_entries(self, registry):
assert len(registry) == 14
def test_registry_has_15_entries(self, registry):
assert len(registry) == 15
assert set(registry.keys()) == (self.EXPECTED_L1_KEYS | self.EXPECTED_L2_KEYS)
def test_registry_has_12_l1_entries(self, registry):
def test_registry_has_13_l1_entries(self, registry):
l1 = {k for k in registry if registry[k]["1.0.0"]["interface"].startswith("modules/l1/")}
assert l1 == self.EXPECTED_L1_KEYS