33Production-oriented Azure infrastructure foundation for the Coding Autopilot
44System (CAS). It provides environment-isolated Container Apps hosting,
55workspace-based observability, system-assigned managed identity, budgets, and
6- safe validation tooling without storing secrets.
6+ safe validation tooling without storing secrets. The workload module implements
7+ the public ` cas-reference-product ` deployment interface.
78
89## v0.1 foundation
910
@@ -13,6 +14,8 @@ safe validation tooling without storing secrets.
1314- Log Analytics, Application Insights, diagnostic settings, tags, and budgets.
1415- Dev, test, and production parameter sets.
1516- Local and CI validation plus a non-deploying Azure ` what-if ` script.
17+ - Reference-product configuration injection and liveness/readiness probes.
18+ - Optional Foundry project RBAC requiring an explicit project scope and role.
1619
1720## Validate locally
1821
@@ -40,6 +43,18 @@ az login
4043The script only invokes ` az deployment sub what-if ` . It never invokes a create
4144or deploy command.
4245
46+ ## Reference product configuration
47+
48+ The Container App injects ` ENVIRONMENT ` , ` WORKFLOW_BACKEND ` ,
49+ ` FOUNDRY_PROJECT_ENDPOINT ` , ` FOUNDRY_AGENT_NAME ` , and
50+ ` APPLICATIONINSIGHTS_CONNECTION_STRING ` . Local mode is the safe default.
51+ Foundry mode requires a project endpoint and Next Gen agent name.
52+
53+ Foundry RBAC is disabled unless both ` foundryProjectResourceId ` and
54+ ` foundryRoleDefinitionResourceId ` are explicitly supplied. The assignment is
55+ created only at that Foundry project resource. Select and approve the minimum
56+ role externally; the template does not assume a broad built-in role.
57+
4358## Architecture
4459
4560See [ architecture] ( docs/architecture.md ) , [ threat model] ( docs/threat-model.md ) ,
@@ -48,6 +63,7 @@ kept under `.planning/`.
4863
4964## Security
5065
51- Public ingress is disabled by default. No secrets, credentials, connection
52- strings, or access keys are accepted by the templates. Runtime access to future
53- dependencies must use managed identity with narrowly scoped RBAC.
66+ Public ingress is disabled by default. No secrets, credentials, or access keys
67+ are accepted by the templates. Runtime access to dependencies uses managed
68+ identity with narrowly scoped RBAC. Private networking and Azure Policy remain
69+ deferred until a target landing-zone contract defines topology and ownership.
0 commit comments