# Greenfield wizard — Snowflake vocabulary questions mapped to intent paths. version: 1 mode: greenfield questions: - id: customer prompt: "What is the customer slug? (lowercase, e.g. acme)" intent_path: customer type: string required: true - id: env_strategy prompt: "How should environments be isolated?" intent_path: env_strategy type: choice choices: - value: database_per_env label: "Databases per environment in one account (default)" - value: account_per_env label: "Separate Snowflake account per environment" default: database_per_env - id: environments prompt: "Which environments do you need? (comma-separated: dev,test,prod)" intent_path: environments type: list default: [dev, test, prod] item_enum: [dev, test, prod, sandbox] - id: domains prompt: "List business domains / data products (comma-separated, e.g. sales,finance,ops)" intent_path: domains type: domain_list required: true default_access_profile: standard - id: domain_access prompt: "Any domain that needs restricted access? (comma-separated names, or none)" type: restricted_domains default: none maps_to: domains[].access_profile - id: warehouse_profile prompt: "Warehouse profile?" intent_path: warehouses.profile type: choice choices: - value: standard_cost_saver label: "Cost saver (X-SMALL, aggressive auto-suspend)" - value: performance label: "Performance (MEDIUM)" default: standard_cost_saver - id: identity_sso prompt: "SSO status?" intent_path: identity.sso type: choice choices: - value: none label: "No SSO (service users / local only)" - value: planned label: "SSO planned later" - value: okta label: "Okta now" - value: azure_ad label: "Azure AD now" - value: other label: "Other IdP now" default: planned - id: prod_curated_exceptions prompt: "Any domain that needs prod curated read early (against restricted defaults)? (comma-separated or none)" type: override_with_decision override_path_template: "domains.{name}.prod_curated_read" decision_required: true decision_prompt: "Why is prod curated read allowed early for {name}? (stored as a decision)" default: none