{
  "manifestVersion": 1,
  "process": {
    "slug": "set-up-cloud-infrastructure",
    "title": "Set up cloud infrastructure",
    "phase": "product",
    "description": "Configure cloud infrastructure with networking, a managed database, container hosting, and basic security. AWS (VPC, RDS, ECS) is the canonical route."
  },
  "manifestUrl": "https://ultrametric.ai/productarena/processes/set-up-cloud-infrastructure/manifest.json",
  "steps": [
    {
      "id": "n1",
      "title": "Design infrastructure",
      "kind": "human",
      "route": "person",
      "toolCall": null,
      "calls": [],
      "vendorOptions": [],
      "approvalRequired": true,
      "riskLevel": "medium",
      "estimatedMinutes": 120,
      "async": false
    },
    {
      "id": "n2",
      "title": "Create AWS account + billing",
      "kind": "computer-use",
      "route": "form",
      "toolCall": null,
      "calls": [],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "medium",
      "estimatedMinutes": 20,
      "async": false
    },
    {
      "id": "n3",
      "title": "Configure VPC and networking",
      "kind": "api",
      "route": "agent",
      "toolCall": null,
      "calls": [
        {
          "method": "ec2.createVpc",
          "type": "sdk",
          "description": "Create VPC"
        },
        {
          "method": "ec2.createSubnet",
          "type": "sdk",
          "description": "Create subnets"
        },
        {
          "method": "ec2.createSecurityGroup",
          "type": "sdk",
          "description": "Create security groups"
        }
      ],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "high",
      "estimatedMinutes": 30,
      "async": false
    },
    {
      "id": "n4",
      "title": "Set up RDS database",
      "kind": "api",
      "route": "agent",
      "toolCall": null,
      "calls": [
        {
          "method": "rds.createDBInstance",
          "type": "sdk",
          "description": "Create RDS instance"
        }
      ],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "high",
      "estimatedMinutes": 30,
      "async": false
    },
    {
      "id": "n5",
      "title": "Configure ECS cluster",
      "kind": "api",
      "route": "agent",
      "toolCall": null,
      "calls": [
        {
          "method": "ecs.createCluster",
          "type": "sdk",
          "description": "Create ECS cluster"
        },
        {
          "method": "ecs.registerTaskDefinition",
          "type": "sdk",
          "description": "Register task definition"
        }
      ],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "high",
      "estimatedMinutes": 30,
      "async": false
    },
    {
      "id": "n6",
      "title": "Set up IAM roles",
      "kind": "api",
      "route": "agent",
      "toolCall": null,
      "calls": [
        {
          "method": "iam.createRole",
          "type": "sdk",
          "description": "Create IAM roles and policies"
        }
      ],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "high",
      "estimatedMinutes": 20,
      "async": false
    },
    {
      "id": "n7",
      "title": "Configure monitoring",
      "kind": "api",
      "route": "agent",
      "toolCall": null,
      "calls": [
        {
          "method": "cloudwatch.putMetricAlarm",
          "type": "sdk",
          "description": "Create CloudWatch alarms"
        }
      ],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "medium",
      "estimatedMinutes": 20,
      "async": false
    },
    {
      "id": "n8",
      "title": "Test deployment",
      "kind": "api",
      "route": "agent",
      "toolCall": null,
      "calls": [],
      "vendorOptions": [
        {
          "vendor": "aws",
          "name": "AWS",
          "productId": null,
          "arena": null,
          "agentReady": null,
          "mcpEndpoint": null,
          "paProductUrl": null
        }
      ],
      "approvalRequired": true,
      "riskLevel": "medium",
      "estimatedMinutes": 30,
      "async": false
    }
  ],
  "provenance": {
    "source": "productarena",
    "url": "https://ultrametric.ai/productarena",
    "generatedFrom": "data/processes.json + data/process-chains.json (the ProductArena founder-process corpus), resolved against live arena leaderboards at build time. Regenerate by refetching this manifest URL — it always reflects the currently deployed data, not a pinned data commit.",
    "license": "ProductArena Data License (DATA-LICENSE in github.com/ultrametricai/productarena): querying and quoting with attribution to \"ProductArena by Ultrametric Inc\" is fine; bulk redistribution or use to build competing datasets requires written permission."
  }
}