AI Visibility Settings (VOCE)
AI Visibility controls whether users can access AI-related visibility features. The setting is implemented at three levels and follows a hierarchy:
Level | Model / Key | UI Label | Location in Admin |
|---|---|---|---|
Account – Product Configuration |
| "AI Visibility" | Configure Products |
Account – Settings |
| "Allow user to access AI Visibility" | Account Settings |
Tier – Settings |
| "Allow user to access AI Visibility" | Tier Settings |
User (Tier Agent - Settings) |
| "Allow user to access AI Visibility" | User Settings |
Behavior:
Product-level (
pc_ai_visibility): Enables or disables the AI Visibility product for the account. When turned OFF, the account-level "Allow user to access AI Visibility" (pp_user_ai_visibility) is also set to false, and the value is cascaded to all tiers and all tier agents in that account.Account-level (
pp_user_ai_visibility): When changed at account or tier level, the new value is propagated to the relevant tier settings and tier agent settings (seeKeySetting#update_tier_ai_visibility).Tier-level (
pp_user_ai_visibility): Tier-level override; cascades to tier agents belonging to that tier (and child tiers).User-level (
ai_visibility): Per-user setting. When not overridden, it inherits from the tier’spp_user_ai_visibility(and thus from account product/settings as well).
1. Account product configuration – AI Visibility (pc_ai_visibility)
Setting key: pc_ai_visibility
Model: AccountSetting (via AccountSettingKey)
UI: Configure Products panel for the account (e.g. "Configure Products - [Account Name]").
This toggle turns the AI Visibility product on or off for the account. When it is turned OFF:
The account-level "Allow user to access AI Visibility" (
pp_user_ai_visibility) is set tofalse.All tier-level
pp_user_ai_visibilityand all tier-agent-levelai_visibilityfor that account are updated tofalse.
2. Account Settings – Allow user to access AI Visibility (pp_user_ai_visibility)
Setting key: pp_user_ai_visibility
Model: AccountSetting (via AccountSettingKey)
UI: Account Settings modal (e.g. "Account Settings - [Account Name]").
This controls whether users in the account are allowed to access AI Visibility. When this value is changed (at account or tier level), it is cascaded to the relevant tier settings and tier agent settings.
3. Tier Settings – Allow user to access AI Visibility (pp_user_ai_visibility)
Setting key: pp_user_ai_visibility
Model: TierSetting (via TierSettingKey)
UI: Tier Settings modal (e.g. "Tier Settings - [Tier Name]").
This is the tier-level override for AI Visibility. Changing it updates the tier’s setting and cascades to all tier agents in that tier (and child tiers).
4. User (Tier Agent) Settings – Allow user to access AI Visibility (ai_visibility)
Setting key: ai_visibility
Model: TierAgentSetting (via TierAgentSettingKey)
UI: User Settings modal (e.g. "User Settings" for a user/agent in the hierarchy).
This is the per-user AI Visibility setting. It can be overridden per user; when not overridden, the effective value is inherited from the tier’s pp_user_ai_visibility (which in turn is driven by account product and account settings).
Technical reference
Setting keys (seeds):
Account:
pc_ai_visibility,pp_user_ai_visibility(boolean, defaulttrue)Tier:
pp_user_ai_visibility(boolean, defaulttrue)TierAgent:
ai_visibility(boolean, defaulttrue)
Cascade logic:
KeySetting#update_tier_ai_visibility(inlib/key_setting.rb) updatesTierSettingandTierAgentSettingwhen account or tier AI visibility is changed.Inheritance: Tier agent
ai_visibilityinherits from tierpp_user_ai_visibilitywhen creating default tier agent settings and when inheriting settings (e.g. on tier change). SeeTierAgent(e.g.inherit_tier_agent_settings, default settings creation).
Jira Ticket:
ROR API: V2DEV-26377
UI: V2DEV-26373