[Story-752] Provision agents streaming infrastructure
PR #188 ยท pramaan-io/pramaan-functions ยท merged 2026-05-20
How it flows
sequenceDiagram
autonumber
participant L1 as GitHub Actions
participant L2 as AWS Resources
participant L3 as Observability
L1->>L2: SQS queue + DLQ
L2->>L2: S3 offload bucket
L2->>L2: DynamoDB connection table
L2->>L2: Agents / runtime IAM
L2->>L2: WebSocket API + bootstrap Lambda
L2->>L2: Event source mapping (disabled)
L2->>L3: SNS alerts + CloudWatch alarms
.github/workflows/provision-agents-infra.yml
| Method | in โ out | what it does |
|---|
lambda_handler | (event, context) โ dict[str, Any] | orchestrates each AWS provisioning step from the Actions trigger |
_response | (route) โ dict[str, Any] | builds the JSON reply returned to the GitHub Actions run |
What changed, file by file
Manual GitHub Actions workflow that provisions and reconciles SQS with DLQ, S3 offload bucket, DynamoDB WebSocket connection table, agents and runtime IAM, a disabled event source mapping, WebSocket API, bootstrap handler Lambda, SNS alerts, and CloudWatch alarms for the agents v-one staging environment.
| new method | signature |
|---|
lambda_handler | (event, context) โ dict[str, Any] |
_response | (route) โ dict[str, Any] |
New fields: name : Provision Agents InfrastructureTRACING_MODE : Activerun : |
What this PR does NOT do
- No agent runs yet โ big-bang plan accepts zero demoable agent
- Staging-only, manually triggered workflow
- Repo-wide lint blocked by pre-existing Alembic failures
- openapi not regenerated โ no FastAPI routes touched
Resource shape locked by focused unit tests
Internal-only boundary enforced on the agents Lambda
Event source mapping stays disabled until a later story wires it
Cost estimate documented, not yet realized
Files changed (3)