| Required fields | hub.kind, hub.network.vcn, and non-empty environments are mandatory. |
| Region defaults | region and region_short_name must be provided together or omitted together; when omitted (or both explicitly set to null) they default to eu-frankfurt-1 and fra. |
| Security targets | Omit security_targets to target all environments; set it explicitly to narrow which environments get security-zone targeting. |
| Hub kinds | Only hub_a, hub_b, hub_c, and hub_e are valid. |
| Hub subnets | Omit hub.network.subnets to auto-generate canonical hub subnets from the hub VCN. |
| Spoke subnets | Omit shared_project_network.network.subnets to auto-generate web, app, db, and infra. |
| Platform subnets | Platforms need explicit subnets unless they also declare an extension that provides subnet metadata. |
| Realm | realm is optional and defaults to oc1, including when explicitly set to null; supported config realms are oc1 and oc19. |
| CIS level | cis_level is optional and defaults to 2; set 1 to emit CIS level 1 security/observability files instead. |
| Extensions | Extension type must be registered in gen/landing_zone.libsonnet. |
| Config-mode network outputs | network.json is canonical final output; network_pre.json appears only for staged hubs. |
| Artifact placement | Ask for both the config file location and the output directory before creating customer artifacts; do not default them into tests/. |
| Unsupported resources | Do not add unsupported config keys or fake extension types. Generate only supported prerequisites, then document the unsupported resource as manual post-deployment configuration. |
| Networked extension CIDRs | Include CIDRs only for network scopes the selected config will emit; do not allocate for unchosen optional placement branches or networkless/infrastructure-only scopes. |
| ExaCS network | Network is required for ExaCS AVMC/VMC placement and forbidden for ExaCS infrastructure-only placement. |
| ExaCS project DB tiers | Use project_db_compartments only for Autonomous Database Dedicated project tiers; shared_project_network is only needed when the environment also needs project network resources. |