Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.
The following checklists summarise the technical prerequisites and governance steps required before Layerup AI Agents are ready for production deployment in your cloud environment. They are intended for your Enterprise Architecture and Platform Engineering teams to use as the authoritative pre-go-live gate.All checklist items must be confirmed as complete before live application traffic is routed to the agent. Items marked with a Layerup co-owner require coordination with your Layerup Implementation Lead.
| checklist item | owner | | --- | --- | | AWS Marketplace subscription active
for Layerup AI Agent listing | Your Procurement + AWS Account Team | |
Designated ECR repository created for Layerup container images within your AWS
account | Your Platform Engineering | | Image signing verification policy
configured in ECR to enforce Cosign signature validation before pull | Your
Security Team |
Security Scanning (2 items)
| checklist item | owner | | --- | --- | | Amazon Inspector enabled on the
designated ECR repository for automatic image scanning on push | Your Security
Team | | Inspector findings severity threshold defined and enforced in CI/CD
promotion pipeline (block on Critical / High) | Your Security Team + Platform
Engineering |
Network & Compute (3 items)
| checklist item | owner | | --- | --- | | Dedicated VPC with private subnets
configured for agent compute — no Internet Gateway route from agent subnets |
Your Platform Engineering | | VPC Endpoints provisioned for: S3, SQS, Amazon
Bedrock, CloudWatch Logs, ECR (both ecr.api and ecr.dkr) | Your Platform
Engineering | | Security Group rules configured for agent compute: no inbound
from outside VPC; outbound restricted to VPC endpoint destinations only | Your
Security Team |
Encryption & Key Management (3 items)
| checklist item | owner | | --- | --- | | Customer-managed KMS key created
and designated for agent data (S3 input/output, CloudWatch Logs, optional
intermediate state storage) | Your Security Team | | S3 input bucket and S3
output bucket created with CMK encryption, versioning enabled, and bucket
policies restricting access to agent IAM role only | Your Platform Engineering
| | Key access policy confirmed: agent IAM role has kms:Decrypt only —
cannot rotate, disable, or delete the key | Your Security Team |
Queuing & Event Infrastructure (2 items)
| checklist item | owner | | --- | --- | | SQS intake queue and completion
queue created with appropriate Dead-Letter Queue (DLQ) configuration and
visibility timeout set to accommodate maximum processing time (60 minutes
recommended) | Your Platform Engineering | | EventBridge rules (or S3 Event
Notification → SQS trigger) configured to route application packet uploads to
the agent trigger | Your Platform Engineering |
Identity & Access (2 items)
| checklist item | owner | | --- | --- | | IAM Execution Role created with
least-privilege policy (s3:GetObject/PutObject on designated buckets,
bedrock:InvokeModel on approved model ARNs, bedrock:ApplyGuardrail,
sqs:ReceiveMessage/DeleteMessage, logs:PutLogEvents, kms:Decrypt) and explicit
deny-all for all other permissions | Your Security Team | | Confirmed: no
Layerup personnel hold permanent IAM credentials in your AWS account.
Implementation-phase time-limited role revocation plan agreed. | Your Security
Team + Layerup |
AI Inference & Guardrails (2 items)
| checklist item | owner | | --- | --- | | Amazon Bedrock Guardrail policy
configured by your AI Platform team: topic denial policies, PII redaction
rules, grounding check enabled, prompt injection protection enabled | Your AI
Platform Team | | Designated Bedrock model ARN approved, access granted in IAM
role, and Bedrock service quota confirmed sufficient for expected concurrent
case volume | Your AI Platform Team |
Observability & Audit (3 items)
| checklist item | owner | | --- | --- | | CloudWatch Log Group created with
7-year retention policy and data protection lock (tamper prevention) applied |
Your Platform Engineering | | CloudWatch Metrics dashboard configured for
operational monitoring: cases_processed_count,
cases_flagged_for_escalation_count, average_processing_time_seconds,
guardrail_interventions_count, queue depth | Your Platform Engineering | |
CloudWatch Alarms configured: error rate threshold, queue depth breach, model
timeout rate, agent health degradation — with on-call notification routing |
Your Platform Engineering |
Your organization’s underwriting SOP documents provided to Layerup implementation team for AOP authoring
Your Underwriting Leadership
AOP validation test set (historical cases with known outcomes, minimum 50 cases recommended) provided to Layerup for validation testing
Your Underwriting Leadership
AOP stored in your source control system (CodeCommit / GitHub Enterprise) with approval workflow configured for AOP amendments
Your Platform Engineering
AOP version confirmed as meeting >99% reproducibility target on validation case set before production go-live
Layerup + Your Underwriting Leadership
Deployment Strategy & Rollout (3 items)
| checklist item | owner | | --- | --- | | Blue/Green or Shadow Mode
deployment strategy selected and infrastructure configured before first live
traffic | Your Platform Engineering + Layerup | | Initial phase rollout
percentage defined — recommended: Phase 1 at 10% of live application volume |
Your Underwriting Leadership + Layerup | | Escalation workflow to human
senior underwriter configured and tested: escalation queue routing, SLA
assignment, notification to on-call underwriter | Your Underwriting Operations
|
| checklist item | owner | | --- | --- | | Azure Marketplace offer
subscription active for Layerup AI Agent (Container App offer or Managed
Application) | Your Procurement + Microsoft Account Team | | Azure Container
Registry (ACR) instance provisioned within your Azure tenant; geo-replication
enabled across designated regions | Your Platform Engineering | | Azure
Defender for Containers enabled on ACR for continuous image scanning | Your
Security Team |
Network (3 items)
| checklist item | owner | | --- | --- | | Azure Virtual Network with private
subnet configured for agent compute — no direct route to public internet from
agent subnet | Your Platform Engineering | | Private Endpoints provisioned
for: Azure Blob Storage, Azure Service Bus, Azure OpenAI | Your Platform
Engineering | | Network Security Group (NSG) rules configured: no inbound from
outside VNet; outbound restricted to Private Endpoint destinations only | Your
Security Team |
Encryption & Key Management (2 items)
| checklist item | owner | | --- | --- | | Azure Key Vault provisioned with
CMK for agent data encryption; access policies restrict agent Managed Identity
to Secrets User role only | Your Security Team | | Blob Storage input and
output containers configured with CMK encryption and RBAC-scoped access
(Managed Identity access only) | Your Platform Engineering |
Queuing & Event Infrastructure (1 item)
| checklist item | owner | | --- | --- | | Azure Service Bus namespace and
queues configured with Dead-Letter Queue; KEDA autoscaling configured on
Container Apps environment or AKS HPA configured for SB queue depth | Your
Platform Engineering |
Identity & Access (2 items)
| checklist item | owner | | --- | --- | | User-Assigned Managed Identity
created with least-privilege RBAC assignments: Blob Data Reader (input), Blob
Data Contributor (output), Cognitive Services OpenAI User (specific OpenAI
resource), Key Vault Secrets User (designated vault), Monitoring Metrics
Publisher (designated workspace) | Your Security Team | | Confirmed: identity
has no subscription-level roles and no access to resources outside explicitly
scoped assignments | Your Security Team |
AI Inference & Guardrails (2 items)
| checklist item | owner | | --- | --- | | Azure OpenAI resource provisioned
within your Azure tenant (not shared/public endpoint); Azure AI Foundry hub
configured | Your AI Platform Team | | Azure AI Content Safety policy
configured: harm category classifiers enabled, Prompt Shield enabled, custom
blocklists added as required | Your AI Platform Team |
Observability & Audit (2 items)
| checklist item | owner | | --- | --- | | Log Analytics Workspace configured
with 7-year retention and immutability policy; Azure Monitor export to Azure
Storage with lifecycle management to archive tier enabled | Your Platform
Engineering | | Azure Monitor Alerts configured for agent health degradation,
queue depth breach, and SLA breach — with on-call operations notification
routing | Your Platform Engineering |
Primary point of contact for AOP onboarding, integration design, and deployment support. Engaged throughout the implementation phase.
Layerup Solutions Engineering
Technical resource for cloud architecture questions, IAM policy review, data pipeline integration design, and VPC / VNet topology guidance.
Layerup Security Team
Available to participate in your vendor security review process. Provides SOC 2 Type II report, penetration test results, SBOM documentation, and Cosign signature verification guidance under NDA.
All Layerup personnel access during the implementation engagement is performed
via a time-limited, audited IAM role / Azure PIM assignment that is explicitly
revoked upon production go-live. Your security team controls the revocation.
After go-live, no Layerup personnel hold access credentials to your production
environment.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Layerup","colors":{"primary":"#0a0a0b","light":"#3d3d3f","dark":"#0a0a0b"},"logo":{"light":"https://mintcdn.com/layerup/7JDjwgQFFUauG8YE/logo/logo-lightmode.png?fit=max\u0026auto=format\u0026n=7JDjwgQFFUauG8YE\u0026q=85\u0026s=e3cb87895efb1a8ca2d812d71d4afe32","dark":"https://mintcdn.com/layerup/7JDjwgQFFUauG8YE/logo/logo-darkmode.png?fit=max\u0026auto=format\u0026n=7JDjwgQFFUauG8YE\u0026q=85\u0026s=b3966afbf43531ec235964cfa3bb865a"},"favicon":"https://mintcdn.com/layerup/7JDjwgQFFUauG8YE/favicon.png?fit=max\u0026auto=format\u0026n=7JDjwgQFFUauG8YE\u0026q=85\u0026s=6a7afccf7183fa330023e2abfab54e21","appearance":{"default":"light"},"background":{"color":{"light":"#ffffff","dark":"#0a0a0b"}},"navbar":{"primary":{"type":"button","label":"Request Access","href":"https://www.uselayerup.com/contact"}},"footer":{"socials":{"twitter":"https://twitter.com/layerup_","github":"https://github.com/layerupai","linkedin":"https://www.linkedin.com/company/layerupai"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"layerup","hasAudioNarration":false,"actualSubdomain":"layerup","customDomains":["docs.uselayerup.com"],"gitSource":{"type":"github","owner":"layerupai","repo":"core","deployBranch":"main","contentDirectory":"docs/layerup-docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6abda12967cc81190e9fcdce","collectionId":"13f824f2-0d94-4e11-8233-7ada90041351","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6abda12967cc81190e9fcdce"},"entitlements":{},"buildId":"6abda12967cc81190e9fcdce","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"Platform Docs","count":23},{"language":"default","tag":"Agents Docs","count":21},{"language":"default","tag":"Deployment Architecture","count":7},{"language":"default","tag":"Foundations","count":6},{"language":"default","tag":"Security \u0026 Governance","count":6},{"language":"default","tag":"Operations","count":4},{"language":"default","tag":"Configuration \u0026 Lifecycle","count":3},{"language":"default","tag":"Logic \u0026 Reasoning","count":3},{"language":"default","tag":"Data \u0026 Integration","count":2},{"language":"default","tag":"Observability \u0026 Resilience","count":2}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"agents/appendix","slug":"/agents/appendix","pageMetadata":{"title":"Deployment Readiness Reference","description":"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.","href":"/agents/appendix"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,hr:`hr`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Accordion,Heading,Note,Table}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`1`,id:`12-—-deployment-readiness-reference-—-aws-\u0026-azure-checklists-prerequisite-owners-\u0026-key-contacts`,children:`12 — Deployment readiness reference — AWS \u0026 Azure checklists, prerequisite owners \u0026 key contacts.`}),`\n`,_jsx(_components.p,{children:`The following checklists summarise the technical prerequisites and governance steps required before Layerup AI Agents are ready for production deployment in your cloud environment. They are intended for your Enterprise Architecture and Platform Engineering teams to use as the authoritative pre-go-live gate.`}),`\n`,_jsx(_components.p,{children:`All checklist items must be confirmed as complete before live application traffic is routed to the agent. Items marked with a Layerup co-owner require coordination with your Layerup Implementation Lead.`}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`11-1-aws-deployment-readiness-checklist`,children:`11.1 AWS deployment readiness checklist`}),`\n`,_jsx(Accordion,{title:`Procurement \u0026 Registry (3 items)`,id:`procurement-and-registry-3-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | AWS Marketplace subscription active\nfor Layerup AI Agent listing | Your Procurement + AWS Account Team | |\nDesignated ECR repository created for Layerup container images within your AWS\naccount | Your Platform Engineering | | Image signing verification policy\nconfigured in ECR to enforce Cosign signature validation before pull | Your\nSecurity Team |`})}),`\n`,_jsx(Accordion,{title:`Security Scanning (2 items)`,id:`security-scanning-2-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Amazon Inspector enabled on the\ndesignated ECR repository for automatic image scanning on push | Your Security\nTeam | | Inspector findings severity threshold defined and enforced in CI/CD\npromotion pipeline (block on Critical / High) | Your Security Team + Platform\nEngineering |`})}),`\n`,_jsx(Accordion,{title:`Network \u0026 Compute (3 items)`,id:`network-and-compute-3-items`,children:_jsxs(_components.p,{children:[`| checklist item | owner | | --- | --- | | Dedicated VPC with private subnets\nconfigured for agent compute — no Internet Gateway route from agent subnets |\nYour Platform Engineering | | VPC Endpoints provisioned for: S3, SQS, Amazon\nBedrock, CloudWatch Logs, ECR (both `,_jsx(_components.code,{children:`ecr.api`}),` and `,_jsx(_components.code,{children:`ecr.dkr`}),`) | Your Platform\nEngineering | | Security Group rules configured for agent compute: no inbound\nfrom outside VPC; outbound restricted to VPC endpoint destinations only | Your\nSecurity Team |`]})}),`\n`,_jsx(Accordion,{title:`Encryption \u0026 Key Management (3 items)`,id:`encryption-and-key-management-3-items`,children:_jsxs(_components.p,{children:[`| checklist item | owner | | --- | --- | | Customer-managed KMS key created\nand designated for agent data (S3 input/output, CloudWatch Logs, optional\nintermediate state storage) | Your Security Team | | S3 input bucket and S3\noutput bucket created with CMK encryption, versioning enabled, and bucket\npolicies restricting access to agent IAM role only | Your Platform Engineering\n| | Key access policy confirmed: agent IAM role has `,_jsx(_components.code,{children:`kms:Decrypt`}),` only —\ncannot rotate, disable, or delete the key | Your Security Team |`]})}),`\n`,_jsx(Accordion,{title:`Queuing \u0026 Event Infrastructure (2 items)`,id:`queuing-and-event-infrastructure-2-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | SQS intake queue and completion\nqueue created with appropriate Dead-Letter Queue (DLQ) configuration and\nvisibility timeout set to accommodate maximum processing time (60 minutes\nrecommended) | Your Platform Engineering | | EventBridge rules (or S3 Event\nNotification → SQS trigger) configured to route application packet uploads to\nthe agent trigger | Your Platform Engineering |`})}),`\n`,_jsx(Accordion,{title:`Identity \u0026 Access (2 items)`,id:`identity-and-access-2-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | IAM Execution Role created with\nleast-privilege policy (s3:GetObject/PutObject on designated buckets,\nbedrock:InvokeModel on approved model ARNs, bedrock:ApplyGuardrail,\nsqs:ReceiveMessage/DeleteMessage, logs:PutLogEvents, kms:Decrypt) and explicit\ndeny-all for all other permissions | Your Security Team | | Confirmed: no\nLayerup personnel hold permanent IAM credentials in your AWS account.\nImplementation-phase time-limited role revocation plan agreed. | Your Security\nTeam + Layerup |`})}),`\n`,_jsx(Accordion,{title:`AI Inference \u0026 Guardrails (2 items)`,id:`ai-inference-and-guardrails-2-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Amazon Bedrock Guardrail policy\nconfigured by your AI Platform team: topic denial policies, PII redaction\nrules, grounding check enabled, prompt injection protection enabled | Your AI\nPlatform Team | | Designated Bedrock model ARN approved, access granted in IAM\nrole, and Bedrock service quota confirmed sufficient for expected concurrent\ncase volume | Your AI Platform Team |`})}),`\n`,_jsx(Accordion,{title:`Observability \u0026 Audit (3 items)`,id:`observability-and-audit-3-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | CloudWatch Log Group created with\n7-year retention policy and data protection lock (tamper prevention) applied |\nYour Platform Engineering | | CloudWatch Metrics dashboard configured for\noperational monitoring: cases_processed_count,\ncases_flagged_for_escalation_count, average_processing_time_seconds,\nguardrail_interventions_count, queue depth | Your Platform Engineering | |\nCloudWatch Alarms configured: error rate threshold, queue depth breach, model\ntimeout rate, agent health degradation — with on-call notification routing |\nYour Platform Engineering |`})}),`\n`,_jsx(Accordion,{title:`CI/CD Pipeline (1 item)`,id:`ci-cd-pipeline-1-item`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Container image promotion pipeline\ngates configured: Inspector scan gate, regression test gate, approval gate,\nand post-deploy verification alarm monitoring | Your Platform Engineering |`})}),`\n`,_jsx(Accordion,{title:`AOP Onboarding \u0026 Governance (4 items)`,id:`aop-onboarding-and-governance-4-items`,children:_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`checklist item`}),_jsx(_components.th,{children:`owner`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Your organization’s underwriting SOP documents provided to Layerup implementation team for AOP authoring`}),_jsx(_components.td,{children:`Your Underwriting Leadership`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`AOP validation test set (historical cases with known outcomes, minimum 50 cases recommended) provided to Layerup for validation testing`}),_jsx(_components.td,{children:`Your Underwriting Leadership`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`AOP stored in your source control system (CodeCommit / GitHub Enterprise) with approval workflow configured for AOP amendments`}),_jsx(_components.td,{children:`Your Platform Engineering`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`AOP version confirmed as meeting >99% reproducibility target on validation case set before production go-live`}),_jsx(_components.td,{children:`Layerup + Your Underwriting Leadership`})]})]})]})}),`\n`,_jsx(Accordion,{title:`Deployment Strategy \u0026 Rollout (3 items)`,id:`deployment-strategy-and-rollout-3-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Blue/Green or Shadow Mode\ndeployment strategy selected and infrastructure configured before first live\ntraffic | Your Platform Engineering + Layerup | | Initial phase rollout\npercentage defined — recommended: Phase 1 at 10% of live application volume |\nYour Underwriting Leadership + Layerup | | Escalation workflow to human\nsenior underwriter configured and tested: escalation queue routing, SLA\nassignment, notification to on-call underwriter | Your Underwriting Operations\n|`})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`11-2-azure-deployment-readiness-checklist`,children:`11.2 Azure deployment readiness checklist`}),`\n`,_jsx(Accordion,{title:`Procurement \u0026 Registry (3 items)`,id:`procurement-and-registry-3-items-1`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Azure Marketplace offer\nsubscription active for Layerup AI Agent (Container App offer or Managed\nApplication) | Your Procurement + Microsoft Account Team | | Azure Container\nRegistry (ACR) instance provisioned within your Azure tenant; geo-replication\nenabled across designated regions | Your Platform Engineering | | Azure\nDefender for Containers enabled on ACR for continuous image scanning | Your\nSecurity Team |`})}),`\n`,_jsx(Accordion,{title:`Network (3 items)`,id:`network-3-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Azure Virtual Network with private\nsubnet configured for agent compute — no direct route to public internet from\nagent subnet | Your Platform Engineering | | Private Endpoints provisioned\nfor: Azure Blob Storage, Azure Service Bus, Azure OpenAI | Your Platform\nEngineering | | Network Security Group (NSG) rules configured: no inbound from\noutside VNet; outbound restricted to Private Endpoint destinations only | Your\nSecurity Team |`})}),`\n`,_jsx(Accordion,{title:`Encryption \u0026 Key Management (2 items)`,id:`encryption-and-key-management-2-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Azure Key Vault provisioned with\nCMK for agent data encryption; access policies restrict agent Managed Identity\nto Secrets User role only | Your Security Team | | Blob Storage input and\noutput containers configured with CMK encryption and RBAC-scoped access\n(Managed Identity access only) | Your Platform Engineering |`})}),`\n`,_jsx(Accordion,{title:`Queuing \u0026 Event Infrastructure (1 item)`,id:`queuing-and-event-infrastructure-1-item`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Azure Service Bus namespace and\nqueues configured with Dead-Letter Queue; KEDA autoscaling configured on\nContainer Apps environment or AKS HPA configured for SB queue depth | Your\nPlatform Engineering |`})}),`\n`,_jsx(Accordion,{title:`Identity \u0026 Access (2 items)`,id:`identity-and-access-2-items-1`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | User-Assigned Managed Identity\ncreated with least-privilege RBAC assignments: Blob Data Reader (input), Blob\nData Contributor (output), Cognitive Services OpenAI User (specific OpenAI\nresource), Key Vault Secrets User (designated vault), Monitoring Metrics\nPublisher (designated workspace) | Your Security Team | | Confirmed: identity\nhas no subscription-level roles and no access to resources outside explicitly\nscoped assignments | Your Security Team |`})}),`\n`,_jsx(Accordion,{title:`AI Inference \u0026 Guardrails (2 items)`,id:`ai-inference-and-guardrails-2-items-1`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Azure OpenAI resource provisioned\nwithin your Azure tenant (not shared/public endpoint); Azure AI Foundry hub\nconfigured | Your AI Platform Team | | Azure AI Content Safety policy\nconfigured: harm category classifiers enabled, Prompt Shield enabled, custom\nblocklists added as required | Your AI Platform Team |`})}),`\n`,_jsx(Accordion,{title:`Observability \u0026 Audit (2 items)`,id:`observability-and-audit-2-items`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Log Analytics Workspace configured\nwith 7-year retention and immutability policy; Azure Monitor export to Azure\nStorage with lifecycle management to archive tier enabled | Your Platform\nEngineering | | Azure Monitor Alerts configured for agent health degradation,\nqueue depth breach, and SLA breach — with on-call operations notification\nrouting | Your Platform Engineering |`})}),`\n`,_jsx(Accordion,{title:`CI/CD Pipeline (1 item)`,id:`ci-cd-pipeline-1-item-1`,children:_jsx(_components.p,{children:`| checklist item | owner | | --- | --- | | Azure DevOps (or GitHub Actions)\npipeline gates configured for container image promotion: Defender scan gate,\nregression test gate, approval gate, and post-deploy monitoring window | Your\nPlatform Engineering |`})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`11-3-key-contacts`,children:`11.3 Key contacts`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`contact`}),_jsx(_components.th,{children:`role`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Layerup Implementation Lead`})}),_jsx(_components.td,{children:`Primary point of contact for AOP onboarding, integration design, and deployment support. Engaged throughout the implementation phase.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Layerup Solutions Engineering`})}),_jsx(_components.td,{children:`Technical resource for cloud architecture questions, IAM policy review, data pipeline integration design, and VPC / VNet topology guidance.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Layerup Security Team`})}),_jsx(_components.td,{children:`Available to participate in your vendor security review process. Provides SOC 2 Type II report, penetration test results, SBOM documentation, and Cosign signature verification guidance under NDA.`})]})]})]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`All Layerup personnel access during the implementation engagement is performed\nvia a time-limited, audited IAM role / Azure PIM assignment that is explicitly\nrevoked upon production go-live. Your security team controls the revocation.\nAfter go-live, no Layerup personnel hold access credentials to your production\nenvironment.`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Deployment Readiness Reference","description":"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.","href":"/agents/appendix"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"12 — Deployment readiness reference — AWS \u0026 Azure checklists, prerequisite owners \u0026 key contacts.","slug":"12-—-deployment-readiness-reference-—-aws-\u0026-azure-checklists-prerequisite-owners-\u0026-key-contacts","depth":1,"children":[]},{"title":"11.1 AWS deployment readiness checklist","slug":"11-1-aws-deployment-readiness-checklist","depth":2,"children":[]},{"title":"11.2 Azure deployment readiness checklist","slug":"11-2-azure-deployment-readiness-checklist","depth":2,"children":[]},{"title":"11.3 Key contacts","slug":"11-3-key-contacts","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"layerup","siteName":"Layerup","title":"Deployment Readiness Reference - Layerup","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-18T22:33:52.592Z","originalFileLocation":"agents/appendix.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Layerup\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Deployment Readiness Reference - Layerup\">\u003cmeta data-mint-head property=\"og:description\" content=\"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Layerup\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.uselayerup.com/agents/appendix\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://layerup.mintlify.app/_mintlify/api/og/v2?division=Reference\u0026amp;title=Deployment+Readiness+Reference\u0026amp;description=Complete+AWS+and+Azure+deployment+readiness+checklists%2C+owner+assignments+for+each+prerequisite%2C+and+key+contacts+for+the+Layerup+implementation+engagement.\u0026amp;theme=bb302b0a1cec2007607c5737\u0026amp;signature=25d88af1a00fd5953fac6515467293025229e4266a2aa7826f799b0ff32986d6\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Deployment Readiness Reference - Layerup\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://layerup.mintlify.app/_mintlify/api/og/v2?division=Reference\u0026amp;title=Deployment+Readiness+Reference\u0026amp;description=Complete+AWS+and+Azure+deployment+readiness+checklists%2C+owner+assignments+for+each+prerequisite%2C+and+key+contacts+for+the+Layerup+implementation+engagement.\u0026amp;theme=bb302b0a1cec2007607c5737\u0026amp;signature=25d88af1a00fd5953fac6515467293025229e4266a2aa7826f799b0ff32986d6\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/layerup/AI2c3611NSqy-PIO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Layerup\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0a0a0b\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.uselayerup.com/agents/appendix\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/agents/appendix.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.uselayerup.com/#organization\",\"name\":\"Layerup\",\"url\":\"https://docs.uselayerup.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/layerup/7JDjwgQFFUauG8YE/logo/logo-lightmode.png?fit=max\u0026auto=format\u0026n=7JDjwgQFFUauG8YE\u0026q=85\u0026s=e3cb87895efb1a8ca2d812d71d4afe32\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.uselayerup.com#website\",\"name\":\"Layerup\",\"url\":\"https://docs.uselayerup.com\",\"publisher\":{\"@id\":\"https://docs.uselayerup.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.uselayerup.com/agents/appendix#webpage\",\"url\":\"https://docs.uselayerup.com/agents/appendix\",\"name\":\"Deployment Readiness Reference\",\"description\":\"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.\",\"dateModified\":\"2026-08-18T22:33:52.592Z\",\"isPartOf\":{\"@id\":\"https://docs.uselayerup.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.uselayerup.com/agents/appendix#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.uselayerup.com/agents/appendix#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Layerup\",\"item\":\"https://docs.uselayerup.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deployment Readiness Reference\",\"item\":\"https://docs.uselayerup.com/agents/appendix\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.uselayerup.com/agents/appendix#article\",\"headline\":\"Deployment Readiness Reference\",\"name\":\"Deployment Readiness Reference\",\"description\":\"Complete AWS and Azure deployment readiness checklists, owner assignments for each prerequisite, and key contacts for the Layerup implementation engagement.\",\"url\":\"https://docs.uselayerup.com/agents/appendix\",\"mainEntityOfPage\":{\"@id\":\"https://docs.uselayerup.com/agents/appendix#webpage\"},\"dateModified\":\"2026-08-18T22:33:52.592Z\",\"publisher\":{\"@id\":\"https://docs.uselayerup.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.uselayerup.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Layerup\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Layerup","nav":{"global":null,"tabs":[{"tab":"Platform Docs","pages":[{"title":"Platform Docs","href":"/overview"}]},{"tab":"Agents Docs","groups":[{"group":"Foundations","pages":[{"title":"Agents Overview","href":"/agents/overview"},{"title":"Architectural Principles","href":"/agents/principles"}]},{"group":"Deployment Architecture","pages":[{"title":"Deployment Options","href":"/agents/deployment/options"},{"title":"Native VPC Deployment Paradigm","href":"/agents/deployment/paradigm"},{"title":"Infrastructure \u0026 Compute Runtimes","href":"/agents/deployment/compute"},{"title":"Agent Core Service Suite","href":"/agents/deployment/agent-core-services"},{"title":"Companion Dashboard","href":"/agents/deployment/dashboard"},{"title":"Layerup's Cloud","href":"/agents/deployment/layerup-cloud"},{"title":"Multi-Line Deployment","href":"/agents/deployment/multi-line"}]},{"group":"Security \u0026 Governance","pages":[{"title":"Identity, Access \u0026 AI Guardrails","href":"/agents/security/iam"},{"title":"Encryption \u0026 Supply Chain Security","href":"/agents/security/data-protection"},{"title":"SSO \u0026 API Authentication","href":"/agents/security/sso"}]},{"group":"Data \u0026 Integration","pages":[{"title":"Data Pipeline \u0026 Ingestion","href":"/agents/data/pipeline"},{"title":"Output Schema \u0026 Write-Back","href":"/agents/data/output"}]},{"group":"Observability \u0026 Resilience","pages":[{"title":"Observability, Logging \u0026 Audit Trails","href":"/agents/observability/telemetry"},{"title":"Error Handling \u0026 Resilience","href":"/agents/observability/resilience"}]},{"group":"Configuration \u0026 Lifecycle","pages":[{"title":"Agent Operating Procedure \u0026 Configuration","href":"/agents/lifecycle/aop"},{"title":"CI/CD Pipeline \u0026 Deployment Strategies","href":"/agents/lifecycle/cicd"},{"title":"Agent Update Lifecycle","href":"/agents/lifecycle/updates"}]},{"group":"Confidence \u0026 Scoring","pages":[{"title":"Confidence Engine","description":"The confidence engine is the backbone of every Layerup AI Agent recommendation — a multi-signal, evidence-grounded scoring system that governs whether a case is resolved, flagged, or escalated to a human underwriter.","href":"/agents/confidence/engine"}]},{"group":"Reference","pages":[{"title":"Deployment Readiness Reference","href":"/agents/appendix"}]}]},{"tab":"Integration Docs","pages":[{"title":"Integration Docs","href":"/integrations/chat-widget/embed"}]},{"tab":"Prompting Guides","hidden":true,"pages":[{"title":"Prompting Guides","href":"/guides/prompting/contents"}]},{"tab":"Usage Guides","hidden":true,"pages":[{"title":"Usage Guides","href":"/guides/usage/customer-support"}]}]},"basePath":"","title":"Deployment Readiness Reference - Layerup","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":[],"chunks":[]}