[ 'en' => 'English', 'de' => 'German', ], 'source' => [ 'explicit_override' => 'session override', 'user_preference' => 'personal preference', 'workspace_default' => 'workspace default', 'workspace_override' => 'workspace override', 'system_default' => 'system default', ], 'shell' => [ 'language' => 'Language', 'current_language' => 'Current language', 'language_source' => 'Source: :source', 'temporary_override' => 'Temporary override', 'switch_language' => 'Switch language', 'clear_override' => 'Use inherited language', 'personal_preference' => 'Personal preference', 'save_preference' => 'Save preference', 'inherit_workspace' => 'Use workspace default', 'workspace' => 'Workspace', 'workspace_scope' => 'Workspace scope', 'workspace_scope_short' => 'Workspace', 'environment_scope_short' => 'Environment', 'workspace_context_label' => 'Workspace: :workspace', 'workspace_scope_no_environment' => 'No environment selected', 'workspace_wide_scope' => 'Workspace-wide', 'scope_indicator_action' => 'Open :scope', 'choose_workspace' => 'Choose workspace', 'switch_workspace' => 'Switch workspace', 'workspace_home' => 'Workspace Home', 'choose_environment' => 'Choose environment', 'environment_count' => ':count environment|:count environments', 'choose_environment_description' => 'Select the environment for your normal active operating context.', 'workspace_wide_available_without_environment' => 'No environment selected is still a valid workspace state on workspace-wide pages such as operations and managed environments.', 'add_environment' => 'Add environment', 'all_environments' => 'All environments', 'show_all_environments' => 'Show all environments', 'managed_environments_title' => 'Managed environments', 'no_managed_environments_yet' => 'No managed environments yet', 'managed_environments_empty_state_description' => 'Add your first managed environment to start managing inventory, backups, drift detection, and policies.', 'environment_scope' => 'Environment scope', 'select_environment' => 'Select environment', 'selected_environment' => 'Selected environment', 'no_environment_selected' => 'No environment selected', 'switch_environment' => 'Switch environment', 'clear_environment_scope' => 'Clear environment scope', 'back_to_environment_registry' => 'Back to environment registry', 'tenant_scope' => 'Environment scope', 'select_tenant' => 'Select environment', 'selected_tenant' => 'Selected environment', 'no_tenant_selected' => 'No environment selected', 'switch_tenant' => 'Switch environment', 'clear_tenant_scope' => 'Clear environment scope', 'context_unavailable' => 'Context unavailable', 'context_unavailable_workspace' => 'The requested scope could not be restored. The shell is showing a valid workspace state instead.', 'context_unavailable_no_workspace' => 'Choose a workspace to continue with a valid admin context.', 'no_active_environments' => 'No active environments available', 'no_active_environments_description' => 'There are no selectable active environments for the normal operating context in this workspace. Workspace-level pages still work with no environment selected, and you can inspect onboarding or archived records through managed environments.', 'view_managed_environments' => 'View managed environments', 'no_active_tenants' => 'No active environments are available for the standard operating context in this workspace.', 'view_managed_tenants' => 'View managed environments', 'workspace_wide_available' => 'No environment selected. Workspace-wide pages remain available, and choosing an environment only sets the normal active operating context.', 'search_environments' => 'Search environments...', 'environment_search_results_count' => ':visible of :total environments shown', 'no_environment_search_results' => 'No environments match this search', 'no_environment_search_results_description' => 'Clear the search to return to the full workspace list.', 'clear_search' => 'Clear search', 'search_tenants' => 'Search environments...', 'choose_workspace_first' => 'Choose a workspace first.', ], 'workspace' => [ 'title' => 'Workspace settings', 'save' => 'Save', 'reset' => 'Reset', 'no_manage_permission' => 'You do not have permission to manage workspace settings.', 'no_workspace_override' => 'No workspace override to reset.', 'last_modified_by' => ':description - Last modified by :user, :time.', 'section' => 'Localization settings', 'section_description' => 'Workspace default used by users without a personal language preference.', 'default_locale_label' => 'Default language', 'default_locale_placeholder' => 'Unset (uses system default)', 'default_locale_helper_unset' => 'Unset. Effective language: :locale (:source).', 'default_locale_helper_set' => 'Effective language: :locale.', ], 'auth' => [ 'microsoft_not_configured' => 'Microsoft sign-in is not configured.', 'sign_in_microsoft' => 'Sign in with Microsoft', 'tenant_admin_membership_required' => 'Admin access requires an environment membership.', ], 'navigation' => [ 'findings' => 'Findings', 'settings' => 'Settings', 'integrations' => 'Integrations', 'manage_workspaces' => 'Manage workspaces', 'operations' => 'Operations', 'evidence_overview' => 'Evidence', 'audit_log' => 'Audit Log', 'alerts' => 'Alerts', 'governance' => 'Governance', 'monitoring' => 'Monitoring', 'workspace_wide' => 'Workspace-wide', 'workspace_admin' => 'Workspace admin', 'dashboard' => 'Dashboard', ], 'dashboard' => [ 'tenant_title' => 'Environment dashboard', 'environment_title' => 'Environment dashboard', 'system_title' => 'System dashboard', 'more_actions' => 'More', 'request_support' => 'Request support', 'support_request_heading' => 'Request support', 'support_request_description' => 'Share a concise summary and TenantAtlas will attach redacted context from existing records.', 'support_request_run_description' => 'Share a concise summary and TenantAtlas will attach redacted context from the current run.', 'submit_request' => 'Submit support request', 'primary_context' => 'Primary context', 'included_context' => 'Included context', 'latest_external_handoff' => 'Latest external handoff', 'latest_external_handoff_none' => 'No support request has been submitted for this context yet.', 'latest_external_handoff_internal_only' => 'Latest support reference :reference is TenantPilot only. No external ticket is linked yet.', 'latest_external_handoff_linked' => 'Latest support reference :reference is linked to external ticket :external.', 'latest_external_handoff_failed' => 'Latest support reference :reference has no external ticket because handoff failed: :failure', 'external_handoff_mode' => 'External handoff', 'handoff_mode_internal_only' => 'TenantPilot only', 'handoff_mode_create_external_ticket' => 'Create external ticket', 'handoff_mode_link_existing_ticket' => 'Link existing ticket', 'external_handoff_mode_helper_available' => 'Choose whether this request stays internal, creates an external ticket, or links an existing one.', 'external_handoff_mode_helper_unavailable' => 'No external support desk target is configured. This request will stay internal.', 'handoff_mutation_scope' => 'Mutation scope', 'mutation_scope_internal_only' => 'TenantPilot only. No external support desk ticket will be created or linked.', 'mutation_scope_external_create' => 'TenantPilot + external support desk. TenantPilot creates the internal support request first, then creates one external ticket.', 'mutation_scope_external_link' => 'TenantPilot + external support desk. TenantPilot stores the external ticket reference you provide and does not create a duplicate ticket.', 'external_ticket_reference' => 'External ticket reference', 'external_ticket_reference_helper' => 'Use the existing desk ticket key, for example PSA-12345.', 'external_ticket_url' => 'External ticket URL', 'external_ticket_url_helper' => 'Optional HTTP or HTTPS link to the existing external ticket.', 'severity' => 'Severity', 'summary' => 'Summary', 'reproduction_notes' => 'Reproduction notes', 'contact_name' => 'Contact name', 'contact_email' => 'Contact email', 'support_request_submitted' => 'Support request submitted', 'support_request_submitted_internal_only' => 'Support reference :reference was created. No external ticket is linked yet.', 'support_request_submitted_created' => 'Support reference :reference was created and external ticket :external was created.', 'support_request_submitted_linked' => 'Support reference :reference was created and linked to external ticket :external.', 'support_request_submitted_failed' => 'Support reference :reference was created, but external handoff failed: :failure', 'open_external_ticket' => 'Open external ticket', 'open_support_diagnostics' => 'Open support diagnostics', 'support_diagnostics' => 'Support diagnostics', 'support_diagnostics_description' => 'Redacted environment context from existing records.', 'close' => 'Close', 'time_window' => 'Time window', 'window' => 'Window', 'enter_break_glass' => 'Enter break-glass mode', 'exit_break_glass' => 'Exit break-glass', 'recovery_mode_enabled' => 'Recovery mode enabled', 'recovery_mode_ended' => 'Recovery mode ended', 'overview' => [ 'page_subheading' => 'Environment governance overview', 'context_workspace' => 'Current workspace', 'context_no_tenant' => 'No environment selected', 'context_no_environment' => 'No environment selected', 'context_workspace_chip' => 'Workspace: :workspace', 'context_provider_chip' => ':provider environment', 'context_latest_activity_chip' => 'Latest activity: :time', 'status_unavailable' => 'Unavailable', 'status_blocked' => 'Blocked', 'status_action_needed' => 'Action needed', 'status_calm' => 'Calm', 'status_not_ready' => 'Not ready', 'status_evidence_available' => 'Evidence available', 'status_needs_action' => 'Needs attention', 'tenant_context_unavailable_headline' => 'Environment context is not available.', 'tenant_context_unavailable_summary' => 'Select an environment to view the decision-first dashboard overview.', 'environment_context_unavailable_headline' => 'Environment context is not available.', 'environment_context_unavailable_summary' => 'Select an environment to view the decision-first dashboard overview.', 'posture_blocked_headline' => 'Provider permissions are blocking environment workflows.', 'posture_blocked_summary' => 'Required application permissions are missing, so provider-backed operations cannot be treated as healthy readiness.', 'posture_calm_headline' => 'No immediate environment blocker is visible.', 'posture_calm_summary' => 'Current findings, permissions, recovery posture, and recent operations do not show an urgent follow-up path.', 'posture_action_needed_fallback_summary' => 'The environment still needs operator follow-up before the landing page can stay calm.', 'section_recommended_actions' => 'Recommended next actions', 'section_additional_follow_ups' => 'Additional follow-ups', 'section_additional_follow_ups_summary' => 'These follow-ups stay secondary to the dominant guidance above.', 'section_governance_status' => 'Governance status', 'section_readiness' => 'Review & evidence readiness', 'section_recent_operations' => 'Recent operations', 'header_primary_focus' => 'Primary focus', 'priority_label' => 'Priority :priority', 'label_reason' => 'Reason', 'label_impact' => 'Impact', 'label_why_this_matters' => 'Why this matters', 'label_recommended_next_action' => 'Recommended next action', 'empty_recommended_actions_headline' => 'No immediate action is waiting.', 'empty_recommended_actions_summary' => 'The environment currently looks calm. Use the status and readiness sections below to confirm what is healthy and what is simply unavailable.', 'empty_recent_operations_headline' => 'No recent operations yet.', 'empty_recent_operations_summary' => 'Once environment operations run, the most recent execution context will appear here without taking over the first decision layer.', 'kpi_high_severity_label' => 'High severity findings', 'kpi_high_severity_description' => 'High or critical findings still needing review.', 'kpi_high_severity_tendency' => ':count active now', 'kpi_high_severity_tendency_window' => ':count active · :window new in 7d', 'kpi_high_severity_tendency_none' => 'No active pressure', 'kpi_overdue_label' => 'Overdue findings', 'kpi_overdue_description' => 'Open workflow items that are already overdue.', 'kpi_overdue_tendency' => ':count overdue now', 'kpi_overdue_tendency_none' => 'None overdue', 'kpi_missing_permissions_label' => 'Missing permissions', 'kpi_missing_permissions_description' => 'Provider-required permissions currently missing for this environment.', 'kpi_missing_permissions_tendency_split' => ':app app · :delegated delegated missing', 'kpi_missing_permissions_tendency_app_only' => ':count app missing', 'kpi_missing_permissions_tendency_delegated_only' => ':count delegated missing', 'kpi_missing_permissions_tendency_none' => 'Permission set complete', 'kpi_active_operations_label' => 'Operations needing attention', 'kpi_active_operations_description' => 'Operation runs that still need follow-up before the environment can be treated as healthy.', 'kpi_active_operations_tendency' => ':count operations require attention', 'kpi_active_operations_tendency_window' => ':count operations require attention', 'kpi_active_operations_tendency_one' => '1 operation needs follow-up', 'kpi_active_operations_tendency_none' => 'No operations need attention', 'action_review_findings' => 'Review findings', 'action_open_overdue_findings' => 'Open overdue findings', 'action_review_permissions' => 'Review permissions', 'action_open_required_permissions' => 'Open required permissions', 'action_review_risks' => 'Review risks', 'action_review_recovery_posture' => 'Review recovery posture', 'action_view_all_operations' => 'View all operations', 'action_view_operation' => 'View operation', 'action_review_operation' => 'Review operation', 'action_review_operations' => 'Review operations', 'action_review_operations_requiring_attention' => 'Review operations requiring attention', 'action_open_operations_hub' => 'Open operations hub', 'action_show_all_operations' => 'Show all operations', 'action_open_governance_inbox' => 'Open governance inbox', 'action_continue_review' => 'Continue review', 'action_open_baseline_compare' => 'Open Baseline Compare', 'action_open_evidence' => 'Open evidence', 'action_open_backup_posture' => 'Open backup posture', 'action_view_export_artifacts' => 'View export artifacts', 'action_open_customer_workspace' => 'Open customer workspace', 'action_open_review_pack' => 'Open review pack', 'action_open_review' => 'Open review', 'action_open_reviews' => 'Open reviews', 'action_review_environment' => 'Review environment', 'reason_missing_application_permissions' => ':count application permission(s) are still missing.', 'impact_missing_application_permissions' => 'Provider-backed inventory, verification, and reporting flows stay blocked until consent is restored.', 'reason_missing_delegated_permissions' => ':count delegated permission(s) still need attention.', 'impact_missing_delegated_permissions' => 'The environment stays partially ready until delegated permissions are reviewed and granted where needed.', 'reason_high_severity_findings' => ':count high severity finding(s) still need operator review.', 'impact_high_severity_findings' => 'Severe drift stays unresolved until those findings are triaged or remediated.', 'reason_overdue_findings' => ':count finding(s) are already overdue.', 'impact_overdue_findings' => 'Workflow delay can hide the environment\'s current risk posture until overdue items are cleared.', 'reason_risk_exceptions' => ':count risk exception(s) or accepted-risk governance item(s) need follow-up.', 'impact_risk_exceptions' => 'Accepted-risk statements stop being trustworthy when their exception history is no longer current.', 'impact_recovery_posture' => 'Recovery readiness should be checked before customer-safe claims rely on backup or restore confidence.', 'reason_terminal_operations' => ':count operation run(s) finished blocked, partial, or failed.', 'impact_terminal_operations' => 'Terminal run outcomes need follow-up before the environment can be treated as calm.', 'reason_operations_requiring_attention' => 'One or more operations finished with an outcome that needs follow-up.', 'impact_operations_requiring_attention' => 'The environment should not be treated as fully healthy until the operation outcome has been reviewed.', 'reason_continue_review' => 'Customer-safe output is not fully ready yet.', 'impact_continue_review' => 'Review output stays partial until the review, evidence, and pack surfaces line up cleanly.', 'operator_guidance_attention_title' => 'Environment needs attention', 'operator_guidance_provider_blocked_title' => 'Provider readiness blocks evidence refresh', 'operator_guidance_provider_attention_title' => 'Provider readiness needs attention', 'operator_guidance_findings_title' => 'Governance findings need attention', 'operator_guidance_operations_title' => 'Operations require follow-up', 'operator_guidance_risks_title' => 'Risk exceptions need review', 'operator_guidance_recovery_title' => 'Recovery posture needs review', 'operator_guidance_review_follow_up_title' => 'Review follow-up is in progress', 'operator_guidance_review_output_title' => 'Review output needs attention', 'operator_guidance_no_urgent_title' => 'No urgent operator action', 'operator_guidance_unavailable_helper' => 'No single repo-real follow-up is currently available.', 'operations_attention_title' => 'Operations requiring attention', 'operations_attention_badge_follow_up' => 'Follow-up required', 'operations_attention_badge_stale' => 'Needs attention', 'operations_attention_outcome_blocked' => 'The operation finished, but a prerequisite blocked completion.', 'operations_attention_outcome_partial' => 'The operation finished, but follow-up is still required.', 'operations_attention_outcome_failed' => 'The operation finished with a failure that needs review.', 'operations_attention_outcome_generic' => 'The operation finished with an outcome that needs follow-up.', 'operations_attention_outcome_stale' => 'The operation is still active, but it is past its expected lifecycle window.', 'operations_attention_outcome_provider_consent_required' => 'The check finished, but provider consent is still required.', 'operations_attention_reason_fallback' => 'The recorded outcome still needs operator review before the environment can be treated as healthy.', 'operations_attention_reason_stale' => 'The run is past its normal lifecycle window and may no longer be progressing.', 'operations_attention_reason_provider_consent_required' => 'Admin consent is required before the provider connection can be used.', 'operations_attention_impact_follow_up' => 'Environment readiness should not be treated as fully healthy until the operation outcome has been reviewed.', 'operations_attention_impact_stale' => 'Environment readiness should not be treated as current until the stalled run has been reviewed.', 'operations_attention_impact_provider_consent_required' => 'Environment readiness cannot be treated as healthy until this is reviewed.', 'operations_attention_timing_completed' => 'Completed :time', 'operations_attention_timing_started' => 'Started :time', 'governance_baseline_compare_label' => 'Baseline compare', 'governance_baseline_compare_description' => 'Current compare posture for the environment baseline.', 'governance_evidence_coverage_label' => 'Evidence coverage', 'governance_review_freshness_label' => 'Review freshness', 'governance_provider_permissions_label' => 'Provider permissions', 'governance_backup_posture_label' => 'Backup posture', 'governance_backup_posture_unavailable_description' => 'Recovery readiness is not yet available.', 'readiness_current_review_title' => 'Current review', 'readiness_current_review_empty_status' => 'No active review', 'readiness_current_review_empty_description' => 'There is currently no review in progress for this environment.', 'readiness_current_review_updated_label' => 'Last updated', 'readiness_current_review_findings_progress_label' => 'Findings with outcome', 'readiness_current_review_completion_progress_label' => 'Review completion', 'readiness_customer_safe_output_title' => 'Customer-safe output', 'readiness_customer_safe_output_empty_status' => 'No customer-safe output', 'readiness_customer_safe_output_empty_description' => 'Generate a review pack once review and evidence are ready for handoff.', 'readiness_customer_safe_output_evidence_label' => 'Evidence snapshot', 'readiness_customer_safe_output_review_pack_label' => 'Review pack', 'readiness_risk_exceptions_title' => 'Risk exceptions', 'readiness_risk_exceptions_active_label' => 'Accepted risks', 'readiness_risk_exceptions_expiring_label' => 'Expiring soon', 'readiness_risk_exceptions_pending_label' => 'Pending approval', 'readiness_provider_health_title' => 'Provider Health', 'readiness_provider_health_empty_status' => 'Provider status unavailable', 'readiness_provider_health_empty_description' => 'No provider health snapshot is currently available for this environment.', 'readiness_provider_health_last_check_label' => 'Last check', 'readiness_provider_health_permissions_label' => 'Missing permissions', 'readiness_provider_health_snapshot_label' => 'Permissions snapshot', 'readiness_provider_health_degraded_description' => 'The latest provider health check reported warnings for this environment.', 'readiness_provider_health_blocked_description' => 'The provider health check is currently blocked for this environment.', 'readiness_provider_health_error_description' => 'The provider health check failed for this environment.', 'readiness_provider_health_pending_description' => 'The latest provider health check is still pending for this environment.', 'readiness_provider_health_unknown_description' => 'No provider health check has been recorded yet.', 'helper_findings_requires_permissions' => 'You can see the environment posture, but opening findings requires additional permissions.', 'helper_risk_exceptions_requires_permissions' => 'You can see the summary, but opening risk exceptions requires additional permissions.', 'helper_review_requires_permissions' => 'You can see the summary, but opening review detail requires additional permissions.', 'helper_continue_review_requires_manage' => 'You can inspect the current review state, but only review managers can continue the review workflow.', 'helper_evidence_requires_permissions' => 'You can see the summary, but opening evidence detail requires additional permissions.', 'helper_customer_workspace_requires_permissions' => 'Customer-safe output is summarized here, but opening the underlying review surfaces requires additional permissions.', 'helper_required_permissions_unavailable' => 'You can see the summary, but opening the required-permissions detail is not available for this actor.', 'helper_operations_unavailable' => 'You can see the summary, but opening operations detail is not available for this actor.', 'helper_baseline_compare_requires_permissions' => 'You can see the summary, but opening baseline compare requires additional permissions.', 'helper_backup_posture_requires_permissions' => 'You can see the summary, but opening backup posture detail requires additional permissions.', 'evidence_unavailable_description' => 'No evidence snapshot is currently available for customer-safe output.', 'evidence_generated_prefix' => 'Latest evidence snapshot generated :time.', 'review_unavailable_description' => 'No review is currently available for this environment.', 'review_updated_prefix' => 'Latest review updated :time.', 'provider_permissions_ready' => 'Ready', 'provider_permissions_blocked' => 'Blocked', 'provider_permissions_needs_attention' => 'Needs attention', 'provider_permissions_complete_description' => 'Required permissions currently look complete.', 'provider_permissions_stale_suffix' => 'The verification snapshot is stale.', 'review_pack_updated_prefix' => 'Latest review pack updated :time.', 'review_pack_evidence_available_description' => 'Evidence exists, but a customer-safe review pack is not ready yet.', 'review_pack_unavailable_description' => 'No customer-safe output is currently ready for handoff.', 'risk_exceptions_need_action_status' => ':count need action', 'risk_exceptions_active_status' => ':count active', 'risk_exceptions_pending_description' => 'Pending, expiring, or expired exceptions still need governance follow-up.', 'risk_exceptions_active_description' => 'Accepted-risk exceptions exist but do not currently need urgent review.', 'risk_exceptions_calm_description' => 'No risk exceptions currently need attention.', 'recent_operation_fallback_summary' => 'Recent operation context for this environment.', ], ], 'provider_guidance' => [ 'status_blocked' => 'Blocked', 'status_action_required' => 'Action required', 'status_ready' => 'Ready', 'reason_label' => 'Reason', 'impact_label' => 'Impact', 'primary_action_label' => 'Recommended next action', 'secondary_actions_label' => 'Secondary', 'details_label' => 'Details', 'provider_readiness_blocked_title' => 'Provider readiness blocked', 'provider_readiness_attention_title' => 'Provider readiness needs attention', 'required_permissions_missing_title' => 'Required permissions missing', 'connection_missing_title' => 'Provider connection required', 'connection_missing_reason' => 'No provider connection is configured for this environment.', 'connection_missing_impact' => 'Evidence refresh, permission posture, inventory sync, and review readiness cannot be treated as ready until a provider connection exists.', 'connection_review_title' => 'Provider connection needs review', 'connection_review_reason' => 'This provider connection is not currently usable.', 'connection_review_impact' => 'TenantPilot cannot verify or use this provider connection until the recorded issue is reviewed.', 'connection_disabled_title' => 'Provider connection disabled', 'connection_disabled_reason' => 'This provider connection is disabled.', 'connection_disabled_impact' => 'Provider-backed evidence refresh, inventory sync, and readiness verification stay blocked while the connection is disabled.', 'admin_consent_required_title' => 'Provider consent required', 'admin_consent_required_reason' => 'Admin consent is missing for this provider connection.', 'admin_consent_failed_reason' => 'TenantPilot could not confirm admin consent for this provider connection.', 'admin_consent_revoked_reason' => 'Previously granted admin consent is no longer valid for this provider connection.', 'admin_consent_required_impact' => 'TenantPilot cannot use the provider connection for evidence refresh, inventory, or review readiness until consent is restored.', 'required_application_permissions_reason' => 'Required application permissions are missing.', 'required_application_permissions_impact' => 'TenantPilot cannot refresh evidence, permission posture, inventory, or review outputs reliably until the missing application permissions are granted.', 'required_delegated_permissions_reason' => 'Required delegated permissions are missing.', 'required_delegated_permissions_impact' => 'Provider-backed workflows may remain partially ready until delegated access is reviewed and granted where needed.', 'verification_required_title' => 'Provider verification required', 'verification_required_impact' => 'TenantPilot cannot confirm whether required permissions and provider access are currently usable until verification runs again.', 'verification_not_run_reason' => 'This provider connection has not been verified yet.', 'verification_stale_reason' => 'Stored provider verification evidence is stale and should be refreshed.', 'verification_failed_title' => 'Provider verification failed', 'verification_failed_reason' => 'The last provider verification did not complete successfully.', 'verification_failed_impact' => 'Provider-backed operations may fail until the issue is reviewed.', 'verification_errors_reason' => ':count permission row(s) are in an unknown or error state and require follow-up.', 'verification_degraded_reason' => 'The latest provider verification completed with warnings and should be reviewed.', 'verification_in_progress_title' => 'Provider verification in progress', 'verification_in_progress_reason' => 'A provider verification is already running for this connection.', 'verification_blocked_notification_title' => 'Provider verification blocked', 'ready_title' => 'Provider connection ready', 'ready_reason' => 'Required provider permissions and verification checks are currently satisfied.', 'ready_impact' => 'No urgent provider readiness action is currently required.', 'action_open_required_permissions' => 'Open required permissions', 'action_open_admin_consent' => 'Open admin consent', 'action_open_admin_consent_guide' => 'Open admin consent guide', 'action_open_provider_connections' => 'Open provider connections', 'action_open_provider_connection' => 'Open provider connection', 'action_edit_provider_connection' => 'Edit provider connection', 'action_run_provider_verification' => 'Run provider verification', 'action_open_verification_operation' => 'Open verification operation', 'action_open_environment_dashboard' => 'Open environment dashboard', 'provider_readiness_section' => 'Provider readiness', 'detail_provider_label' => 'Provider', 'detail_provider_value' => 'Microsoft', 'detail_missing_application_permissions_label' => 'Missing application permissions', 'detail_missing_delegated_permissions_label' => 'Missing delegated permissions', 'detail_verification_state_label' => 'Verification state', 'detail_permission_evidence_label' => 'Stored permission evidence', 'detail_consent_state_label' => 'Consent state', 'detail_last_verification_operation_label' => 'Last verification operation', 'verification_ready_detail' => 'Ready', 'verification_degraded_detail' => 'Degraded', 'verification_blocked_detail' => 'Blocked', 'verification_failed_detail' => 'Failed', 'verification_in_progress_detail' => 'In progress', 'verification_not_run_detail' => 'Not run', ], 'accepted_risk_guidance' => [ 'section' => 'Accepted-risk guidance', 'status_ready' => 'Ready', 'status_action_required' => 'Action required', 'status_blocked' => 'Blocked', 'reason_label' => 'Reason', 'impact_label' => 'Impact', 'primary_action_label' => 'Recommended next step', 'review_focus_label' => 'What to review', 'secondary_actions_label' => 'Related context', 'title_ready' => 'Accepted-risk governance is current', 'title_expiring' => 'Accepted-risk review window is nearing expiry', 'title_expired' => 'Accepted-risk governance has expired', 'title_revoked' => 'Accepted-risk governance was revoked', 'title_rejected' => 'Accepted-risk governance was rejected', 'title_pending' => 'Accepted-risk request is pending review', 'title_pending_renewal' => 'Accepted-risk renewal is pending review', 'title_missing_support' => 'Accepted risk is on record without valid governance support', 'title_fresh_decision_required' => 'Accepted-risk decision must be reviewed again', 'title_incomplete_governance' => 'Accepted-risk governance context is incomplete', 'reason_ready' => 'The current accepted-risk record still has a valid governance basis.', 'reason_expiring' => 'The current accepted-risk governance window is still active, but it is nearing expiry and needs review.', 'reason_expired' => 'The current accepted-risk governance window has lapsed and no longer provides active coverage.', 'reason_pending' => 'This accepted-risk request is still waiting for its first governance decision.', 'reason_pending_renewal' => 'A renewal was requested for the current accepted-risk window and still needs a decision.', 'reason_revoked_or_rejected' => 'The latest governance decision no longer provides active accepted-risk coverage.', 'reason_missing_support' => 'This exception record is present, but it does not currently provide valid governance support.', 'reason_fresh_decision_required' => 'The linked finding changed after the earlier exception decision, so a fresh decision is required.', 'reason_incomplete_governance' => 'The current exception record is missing: :fields.', 'impact_ready' => 'No urgent governance follow-up is required on this exception right now.', 'impact_expiring' => 'If the current window is not reviewed in time, this accepted risk can no longer be treated as actively governed.', 'impact_expired' => 'This accepted risk no longer has current governance coverage and should not be treated as safely governed.', 'impact_revoked_or_rejected' => 'This accepted risk no longer has an approved governance basis and should be reviewed before it is relied on again.', 'impact_pending' => 'Until a decision is recorded, this exception does not establish new accepted-risk coverage.', 'impact_missing_support' => 'This accepted risk should not be relied on as governed until valid governance support is re-established or the finding is formally returned to active remediation.', 'impact_fresh_decision_required' => 'The linked finding changed after the earlier exception decision, so the previous decision should not be relied on without review.', 'impact_incomplete_governance' => 'Missing accountability or review data weakens the governance record even when the exception is still present.', 'action_open_exception' => 'Open exception detail', 'action_open_finding' => 'Open finding', 'action_open_queue' => 'Open approval queue', 'next_step_ready' => 'No urgent change is required. Keep this accepted risk under routine governance review.', 'next_step_expiring' => 'Review the active governance window before it lapses.', 'next_step_expired' => 'Review whether this accepted-risk window should be renewed or whether the finding must return to active remediation.', 'next_step_pending' => 'Review the pending exception request and record an approval or rejection decision.', 'next_step_pending_renewal' => 'Review the pending renewal request and decide whether the accepted-risk window should be renewed.', 'next_step_revoked_or_rejected' => 'Review why governance coverage ended before this accepted risk is relied on again.', 'next_step_missing_support' => 'Review whether valid governance support can be re-established, or whether the finding must return to active remediation.', 'next_step_fresh_decision_required' => 'Review the changed finding and record a fresh accepted-risk decision before relying on earlier governance.', 'next_step_incomplete_governance' => 'Complete the missing governance context before relying on this accepted risk.', 'detail_environment_label' => 'Environment', 'detail_status_label' => 'Lifecycle status', 'detail_validity_label' => 'Governance validity', 'detail_owner_label' => 'Owner', 'detail_request_reason_label' => 'Request reason', 'detail_review_due_label' => 'Review due', 'detail_expires_label' => 'Expires', 'detail_current_decision_label' => 'Current decision', 'detail_missing_fields_label' => 'Missing governance inputs', 'detail_missing_value' => 'Missing', 'detail_not_recorded_value' => 'Not recorded', ], 'review' => [ 'reporting' => 'Reporting', 'customer_reviews' => 'Customer reviews', 'customer_review_workspace' => 'Customer Review Workspace', 'customer_safe_review_workspace' => 'Customer-safe review packages', 'customer_workspace_intro' => 'Review released governance packages, evidence readiness, accepted risks, and handoff status across entitled environments.', 'customer_workspace_canonical_note' => 'Each row is an index entry: open the review detail to inspect package status, the executive entrypoint, supporting evidence, current risks, and the next customer-safe action.', 'customer_workspace_mapping_version' => 'Control readiness interpretation uses :version for this workspace.', 'customer_workspace_non_certification_disclosure' => 'Service delivery summary only. Does not replace formal audit opinion, certification, or legal attestation.', 'customer_workspace_scope_workspace_wide' => 'Workspace-wide customer review', 'customer_workspace_scope_workspace_wide_description' => 'Showing the latest released review across entitled environments. Current first review: :environment.', 'customer_workspace_scope_environment_filtered' => 'Environment filter: :environment', 'customer_workspace_scope_environment_filtered_description' => 'The page data is intentionally narrowed by the canonical environment_id filter while the shell remains workspace-owned.', 'is_review_ready_to_share' => 'Is this review ready to share?', 'review_pack_output_status' => 'What is the current review pack output state?', 'ready_to_share' => 'Ready to share', 'customer_safe_review_pack_ready' => 'Customer-safe review pack ready', 'published_with_limitations' => 'Published with limitations', 'internal_review_package_available' => 'Internal review package available', 'shareable_with_follow_up' => 'Shareable with follow-up', 'follow_up_required_before_sharing' => 'Follow-up required before sharing', 'ready_to_share_reason' => 'The released review, evidence path, and current review pack are available for customer-safe handoff.', 'customer_safe_review_pack_ready_reason' => 'The review package is published, export-ready, and backed by complete required evidence sections.', 'evidence_basis_missing_reason' => 'The review package is published, but the evidence basis is missing.', 'evidence_basis_stale_reason' => 'The review package is published, but the evidence basis is stale.', 'evidence_basis_incomplete_reason' => 'The review package is published, but the evidence basis is incomplete.', 'required_sections_incomplete_reason' => ':limited required sections are partial, missing, or stale in the current package (:complete of :total required complete).', 'publish_blockers_present_reason' => 'Publish blockers are still recorded in the released review summary.', 'contains_pii_reason' => 'This package includes PII and should be reviewed before external sharing.', 'export_not_ready_reason' => 'The review package exists, but the export contract is not ready yet.', 'shareable_with_follow_up_reason' => 'The review pack is available, but accepted-risk follow-up must be called out before handoff.', 'follow_up_required_before_sharing_reason' => 'Review proof or package availability still needs attention before this can be shared.', 'findings_follow_up_required_reason' => ':summary Keep open findings visible before customer handoff.', 'accepted_risk_follow_up_required_reason' => 'Accepted-risk follow-up is recorded for this review. Review the owner, rationale, and review date before handoff.', 'ready_to_share_impact' => 'Stakeholders can use the current review pack and released review as the evidence path.', 'customer_safe_review_pack_ready_impact' => 'Stakeholders can use the current review pack and released review as the evidence path.', 'published_with_limitations_impact' => 'Review output limitations before customer sharing.', 'internal_review_package_available_impact' => 'This package includes internal or PII-bearing detail and should be reviewed before external sharing.', 'export_not_ready_impact' => 'Do not present this package as customer-ready until export readiness passes.', 'shareable_with_follow_up_impact' => 'Use the current pack only with the accepted-risk follow-up included in the customer handoff.', 'follow_up_required_before_sharing_impact' => 'Do not treat this review as share-ready until the unavailable proof has been reviewed.', 'findings_follow_up_required_impact' => 'Do not treat this review as share-ready until open findings are resolved, accepted, or explicitly reviewed.', 'accepted_risk_follow_up_required_impact' => 'The pack can be shared only with the accepted-risk context included in the customer handoff.', 'impact' => 'Impact', 'scope' => 'Scope', 'ready' => 'Ready', 'needs_review' => 'Needs review', 'not_ready' => 'Not ready', 'readiness' => 'Readiness', 'evidence' => 'Evidence', 'review_consumption_flow' => 'Review consumption flow', 'review_consumption_flow_description' => 'Supporting reference for how the released review, evidence, findings, accepted risks, pack, and customer output line up after the decision above.', 'supporting_reference' => 'Supporting reference', 'supporting_actions' => 'Supporting actions', 'review_data' => 'Review data', 'review_data_available_description' => 'A released review is available for this customer-safe workspace.', 'findings_triaged' => 'Findings triaged', 'accepted_risks_reviewed' => 'Accepted risks reviewed', 'customer_output' => 'Customer-safe output', 'customer_output_ready_description' => 'Evidence and review-pack truth support customer-safe consumption.', 'customer_output_needs_review_description' => 'Output exists, but attention items must stay visible during handoff.', 'customer_output_not_ready_description' => 'Customer-safe output is not ready from the current proof state.', 'current_attention_point' => 'Current attention point', 'readiness_dimension_description' => 'Readiness is derived from the released review, evidence, accepted-risk, and review-pack state.', 'readiness_dimension_ready_description' => 'Released review is available.', 'readiness_dimension_follow_up_description' => 'Follow-up required before handoff.', 'accepted_risk_dimension_customer_safe_description' => 'Accepted-risk status is summarized from the released review evidence without internal accountability details.', 'accepted_risk_dimension_no_action_description' => 'No expiring accepted risks.', 'accepted_risk_dimension_follow_up_description' => 'Accepted-risk follow-up is required.', 'accepted_risk_dimension_on_record_description' => 'Accepted risks are recorded.', 'evidence_dimension_available_description' => 'Evidence snapshot is linked.', 'evidence_dimension_unavailable_description' => 'Evidence proof is not available.', 'evidence_dimension_expired_description' => 'Evidence snapshot is expired.', 'evidence_dimension_restricted_description' => 'Evidence access is restricted.', 'review_pack_dimension_available_description' => 'Current pack can be downloaded.', 'review_pack_dimension_not_generated_description' => 'Review pack is not generated.', 'review_pack_dimension_needs_refresh_description' => 'Evidence refresh needed.', 'review_pack_dimension_preparing_description' => 'Review pack is being prepared.', 'review_pack_dimension_expired_description' => 'Review pack is expired.', 'review_pack_dimension_unavailable_description' => 'Review pack is not ready.', 'evidence_path' => 'Evidence path', 'decision_trail' => 'Decision trail', 'accepted_risk_records' => 'Accepted risk records', 'accepted_risk_records_description' => 'Accepted-risk decisions are present in the released review evidence basis.', 'operation_proof' => 'Operation proof', 'operation_proof_available_description' => 'A related operation record exists for this review evidence path.', 'operation_proof_available_with_initiator_description' => 'A related operation record exists for this review evidence path. Initiated by :initiator.', 'operation_proof_unavailable' => 'No operation proof linked', 'operation_proof_unavailable_description' => 'No operation proof link is attached to this released review path.', 'export_artifact' => 'Export artifact', 'export_artifact_available_description' => 'The current export artifact can be downloaded through the review pack flow.', 'export_artifact_unavailable_description' => 'No downloadable export artifact is available from this customer-safe flow.', 'last_generated' => 'Last generated', 'evidence_snapshot_used' => 'Evidence snapshot used', 'export_availability' => 'Export availability', 'export_ready' => 'Export ready', 'export_not_ready' => 'Export not ready', 'package_exists' => 'Package exists', 'package_exists_available_description' => 'A released review pack artifact exists for this review path.', 'package_exists_preparing_description' => 'The review pack artifact is still being prepared for this released review path.', 'package_exists_unavailable_description' => 'No released review pack artifact exists yet for this review path.', 'internal_export' => 'Internal export', 'internal_export_ready_description' => 'An internal export can be opened or downloaded from the current review pack.', 'internal_export_preparing_description' => 'The internal export is still being prepared from the current review pack.', 'internal_export_not_ready_description' => 'A review pack exists, but the internal export is not ready for download yet.', 'internal_export_unavailable_description' => 'No current internal export is available from this review pack path.', 'customer_sharing' => 'Customer sharing', 'customer_sharing_ready_description' => 'The current package can be treated as customer-safe according to the output readiness contract.', 'customer_sharing_internal_only_description' => 'The current package remains internal-only and is not ready for customer sharing.', 'customer_sharing_requires_review_description' => 'Customer sharing still depends on the readiness blockers and limitations shown in the main decision state.', 'evidence_basis_state' => 'Evidence basis', 'section_completeness' => 'Section completeness', 'sharing_boundary' => 'Sharing boundary', 'pii_state' => 'PII', 'contains_pii' => 'Contains PII', 'pii_excluded' => 'PII excluded', 'protected_values' => 'Protected values', 'protected_values_hidden' => 'Protected values hidden', 'disclosure' => 'Disclosure', 'disclosure_present' => 'Disclosure present', 'review_package_index' => 'Review package index', 'review_package_index_description' => 'Released reviews and customer-safe package entries available in this workspace.', 'review_pack_state' => 'Review pack state', 'evidence_source' => 'Evidence source', 'customer_safe_follow_ups' => 'Customer-safe follow-ups', 'customer_safe_follow_ups_empty' => 'No customer-safe follow-ups are listed for this released review.', 'diagnostics_customer_workspace_default_hidden' => 'Support details stay on authorized diagnostic surfaces and are not shown in this customer-safe workspace by default.', 'review_acknowledgement' => 'Review acknowledgement', 'acknowledge_review' => 'Acknowledge review', 're_acknowledge_review' => 'Re-acknowledge review', 'acknowledge_review_heading' => 'Acknowledge this review?', 'acknowledge_review_description' => 'Records that the current published review package was reviewed. It does not make the package customer-ready and is not a legal attestation.', 'acknowledge_review_confirm' => 'Acknowledge', 'acknowledge_review_comment' => 'Comment (optional)', 'acknowledge_review_unavailable' => 'Unable to acknowledge review', 'acknowledge_review_failed' => 'Review acknowledgement failed', 'review_acknowledged' => 'Review acknowledged', 'acknowledgement_not_available' => 'Acknowledgement unavailable', 'acknowledgement_not_available_reason' => 'Acknowledgement is tracked only for published review packages.', 'acknowledgement_not_available_impact' => 'Publish a review package before recording acknowledgement.', 'review_accepted_risks' => 'Review accepted risks', 'acknowledgement_required' => 'Acknowledgement required', 'acknowledgement_required_reason' => 'This published review has not been acknowledged yet.', 'acknowledgement_required_impact' => 'Acknowledgement records review consumption for this published package. Customer-ready status is still determined by the output state above.', 'acknowledgement_requires_permission' => 'You do not have permission to acknowledge reviews.', 'acknowledgement_re_ack_required' => 'Re-acknowledgement required', 'acknowledgement_re_ack_required_reason' => 'The review pack or evidence basis changed after the last acknowledgement.', 'acknowledgement_re_ack_required_impact' => 'Re-acknowledge to confirm you reviewed the current published package. This does not change customer-ready status.', 'acknowledgement_recorded_reason' => 'An acknowledgement is recorded for this published review package.', 'acknowledgement_recorded_impact' => 'This confirms review consumption for the current package. It does not change customer-ready status.', 'basis' => 'Basis', 'acknowledged_by' => 'Acknowledged by', 'acknowledged_at' => 'Acknowledged at', 'accepted_risk_summary' => 'Accepted risks', 'accepted_risk_no_action_needed' => 'No action needed', 'accepted_risk_accountability' => 'Accepted-risk accountability', 'accepted_risk_owner' => 'Owner', 'accepted_risk_next_review' => 'Next review', 'accepted_risk_rationale' => 'Rationale', 'review_date_not_recorded' => 'Review date not recorded', 'not_recorded' => 'Not recorded', 'accepted_risks_expiring_soon' => 'Expiring soon', 'accepted_risks_expired' => 'Expired', 'accepted_risks_pending_approval' => 'Pending approval', 'accepted_risks_needs_review' => 'Needs review', 'disclosure_rule' => 'Disclosure rule', 'disclosure_decision' => 'Decision', 'disclosure_evidence' => 'Evidence', 'disclosure_diagnostics' => 'Diagnostics', 'disclosure_raw_support' => 'Raw/support', 'disclosure_visible' => 'Visible', 'disclosure_collapsed' => 'Collapsed', 'disclosure_hidden' => 'Hidden', 'evidence_snapshot_available_description' => 'Evidence snapshot generated :date.', 'latest_released_review' => 'Latest released review', 'released_review_for_environment' => 'Released review for :environment', 'filtered_by_environment' => 'Filtered by environment: :environment', 'published_date' => 'Published :date', 'reviews' => 'Reviews', 'clear_filters' => 'Clear filters', 'tenant' => 'Environment', 'latest_review' => 'Latest review', 'review_status' => 'Review status', 'output_guidance' => 'Output guidance', 'output_readiness' => 'Output readiness', 'publication_sharing_state' => 'Publication/sharing state', 'output_not_customer_ready' => 'Output not customer-ready', 'publication_blocked' => 'Publication blocked', 'publication_blocked_description' => 'Review blockers must be resolved before this output can be treated as customer-ready.', 'publication_blocked_short_reason' => 'Review blockers are still recorded for this output.', 'publication_blocked_impact' => 'Do not present this review output as customer-ready until the blockers are resolved.', 'output_limitations' => 'Output limitations', 'output_limitations_summary' => '{1} 1 limitation requires review|[2,*] :count limitations require review', 'technical_details' => 'Technical details', 'has_ready_export' => 'Ready export', 'yes' => 'Yes', 'no' => 'No', 'status' => 'Status', 'control' => 'Control', 'control_interpretation' => 'Control readiness interpretation', 'control_readiness' => 'Control readiness', 'assessment_status' => 'Assessment status', 'review_recommended' => 'Review recommended', 'recommended_next_action' => 'Recommended next action', 'customer_safe' => 'Customer-safe', 'requires_review' => 'Requires review', 'internal_only' => 'Internal only', 'interpretation_version_short' => 'Interpretation version: :version', 'additional_controls' => '+:count more control(s)', 'control_limitations_summary' => 'Limitations: :limitations.', 'control_readiness_unmapped' => 'No mapped controls', 'control_readiness_unmapped_description' => 'No canonical controls are mapped in this released review. Treat the control view as partial until evidence references can be mapped.', 'control_evidence_unmapped' => 'No mapped evidence basis is available.', 'control_evidence_unavailable' => 'Evidence basis unavailable.', 'control_recommendation_unmapped' => 'Review unmapped evidence before customer delivery.', 'proof_access_state' => 'Proof access', 'key_findings' => 'Key findings', 'findings_needing_attention' => 'Findings needing attention', 'findings_total' => 'Total findings', 'findings_open' => 'Open findings', 'findings_high_impact' => 'High impact', 'findings_high_impact_summary' => ':open; :high.', 'findings_open_attention_count' => '{1} 1 open finding needs attention|[2,*] :count open findings need attention', 'findings_high_impact_count_summary' => '{1} 1 is high impact|[2,*] :count are high impact', 'findings_open_summary' => '{1} 1 open finding needs customer or operator review.|[2,*] :count open findings need customer or operator review.', 'findings_no_open_summary' => ':total findings are recorded, with no open customer-action findings.', 'findings_none_action_summary' => 'No open findings require customer action.', 'accepted_risks' => 'Accepted risks', 'evidence_proof' => 'Evidence proof', 'evidence_status' => 'Evidence', 'published' => 'Published', 'published_at' => 'Published at', 'generated_at' => 'Generated at', 'interpretation_version' => 'Interpretation version', 'review_pack' => 'Review pack', 'rendered_report' => 'Rendered review report', 'open_latest_review' => 'Open latest review', 'open' => 'Open', 'open_review' => 'Open review', 'open_rendered_review_report' => 'Open rendered report', 'open_draft_review' => 'Open draft review', 'open_successor_review' => 'Open successor review', 'last_review' => 'Last review', 'primary_action' => 'Primary action', 'download_review_pack' => 'Download review pack', 'download_customer_safe_review_pack' => 'Download customer-safe review pack', 'download_review_pack_with_limitations' => 'Download review pack with limitations', 'download_internal_review_pack' => 'Download internal review pack', 'download_current_review_pack' => 'Download current review pack', 'download_governance_package' => 'Download governance package', 'review_package_contents' => 'Review package contents', 'review_output_limitations' => 'Review output limitations', 'review_limitations_below' => 'Review limitations below', 'review_section_limitations' => 'Review section limitations', 'review_pii_redaction_state' => 'Review PII/redaction state', 'resolve_review_blockers' => 'Inspect review blockers', 'refresh_review' => 'Refresh review', 'publish_review' => 'Publish review', 'create_next_review' => 'Create next review', 'create_next_review_heading' => 'Create next review?', 'create_next_review_description' => 'TenantPilot creates the next review cycle from the latest eligible evidence basis and supersedes this published review.', 'create_next_review_confirm' => 'Create next review', 'create_next_review_success' => 'Next review created', 'create_next_review_unavailable' => 'Next review creation is unavailable right now.', 'create_next_review_failed' => 'Unable to create next review', 'draft_review_exists' => 'Draft review exists', 'draft_review_exists_blocked_reason' => 'A successor draft review already exists for this released output. Open the draft review to refresh inputs and resolve the remaining blockers.', 'draft_review_exists_blocked_impact' => 'The operator loop should continue in the existing draft review. Refresh the draft when inputs change, then publish only after the blockers are cleared.', 'draft_review_exists_ready_reason' => 'A successor draft review already exists for this released output and is ready for publication. Open the draft review to publish the next governed outcome.', 'draft_review_exists_ready_impact' => 'The next review cycle is already in progress. Open the draft review and publish it when you are ready to replace the prior released review.', 'resolve_review_blockers_before_publishing' => 'Resolve review blockers before publishing.', 'refresh_review_feedback_blocked' => 'Review inputs refreshed. Blockers remain.', 'refresh_review_feedback_ready' => 'Review inputs refreshed. Ready to publish.', 'open_operation_proof' => 'Open operation proof', 'open_evidence_basis' => 'Open evidence basis', 'output_guidance_detail_mode_note' => 'You are already on the review detail for this output. Use the limitations and technical details below to inspect blockers, evidence state, and the current export.', 'output_action_help_publication_blocked' => 'The primary action opens the review detail with blockers, evidence status, and next steps. The supporting actions download the current package or jump to the evidence basis.', 'output_action_help_published_with_limitations' => 'The primary action opens the review detail for the current limitation. The supporting actions download the current package or jump to the evidence basis.', 'output_action_help_internal_only' => 'The primary action opens the review detail for PII and redaction checks. The supporting actions let you download the internal package or review the released record.', 'output_action_help_export_not_ready' => 'The primary action opens the review detail with the current output limitations. The supporting actions jump to the evidence basis or the released review.', 'output_action_help_customer_safe_ready' => 'The primary action downloads the customer-safe package. Use the supporting action to open the released review detail.', 'output_action_help_create_next_review' => 'Create the next review cycle from the latest eligible evidence basis. Use the supporting actions to inspect blockers, evidence, or the current package before moving forward.', 'output_action_help_refresh_review' => 'Refresh this mutable review from the latest eligible evidence basis. Use the supporting actions to inspect the current evidence basis or review context first.', 'output_action_help_publish_review' => 'Publish this mutable review as the current governed outcome when the output is ready. Use the supporting actions to inspect the evidence basis or current review context first.', 'output_action_help_open_draft_review' => 'Open the existing draft review to continue the next review cycle. Refresh the draft if blockers remain, or publish it when the output is ready.', 'output_action_help_open_successor_review' => 'Open the known successor review to continue the next review cycle. Use the supporting actions for evidence, proof, or the prior released review context.', 'evidence_basis_incomplete_guidance' => 'Evidence basis incomplete', 'evidence_basis_incomplete_guidance_reason' => 'The review pack is anchored to an evidence snapshot with missing or incomplete evidence.', 'evidence_basis_incomplete_short_reason' => 'Evidence basis is incomplete.', 'required_review_sections_missing' => 'Required review sections missing', 'required_review_sections_missing_reason' => '{1} 1 required section is partial, missing, or stale.|[2,*] :count required sections are partial, missing, or stale.', 'required_review_sections_missing_short_reason' => 'Required review sections are missing or incomplete.', 'internal_package_includes_pii' => 'Internal package includes PII', 'internal_package_includes_pii_reason' => 'This export includes PII-bearing detail and should be reviewed before external sharing.', 'internal_package_includes_pii_short_reason' => 'This export includes internal or PII-bearing detail.', 'export_not_ready_guidance_reason' => 'The review package exists, but the export-readiness contract has not passed.', 'export_not_ready_short_reason' => 'The current export is not ready yet.', 'output_disclosure_missing' => 'Required disclosure missing', 'output_disclosure_missing_reason' => 'The customer-safe disclosure is missing from the current output package.', 'output_disclosure_missing_short_reason' => 'Required disclosure is missing from the current output.', 'governance_package' => 'Governance package', 'governance_decisions' => 'Governance decisions', 'governance_decisions_requiring_awareness' => 'Governance decisions requiring awareness', 'governance_package_delivery_note' => 'This governance package is delivered through the current export review pack for the released review.', 'executive_entrypoint' => 'Executive entrypoint', 'executive_entrypoint_description' => 'Start with executive-summary.md in the downloaded package.', 'auditor_appendix' => 'Structured auditor appendix', 'auditor_appendix_description' => 'metadata.json, summary.json, and sections.json remain included as the secondary structured appendix.', 'rendered_report_description' => 'Open the rendered stakeholder report derived from the current review-pack contract.', 'rendered_report_summary_fallback' => 'No executive summary is available for this released review.', 'rendered_report_html_only' => 'This v1 report is HTML-first. Use your browser print dialog when you need a PDF handoff.', 'rendered_report_appendix_note' => 'This rendered report is derived from the current review-pack contract. The ZIP package remains the structured appendix and downloadable artifact.', 'rendered_report_toolbar' => 'Rendered report actions', 'print_rendered_report' => 'Print report', 'return_to_review_detail' => 'Open review detail', 'return_to_review_pack_detail' => 'Open review pack detail', 'view_customer_safe_report' => 'View customer-safe report', 'view_report_with_limitations' => 'View report with limitations', 'view_internal_report' => 'View internal report', 'report_profile' => 'Report profile', 'report_effective_profile' => 'Effective profile', 'report_requested_profile' => 'Requested profile', 'report_audience' => 'Audience', 'report_source_surface' => 'Source surface', 'report_profile_customer_executive' => 'Customer executive', 'report_profile_customer_technical' => 'Customer technical', 'report_profile_internal_msp_review' => 'Internal MSP review', 'report_profile_auditor_appendix' => 'Auditor appendix', 'report_profile_framework_readiness' => 'Framework readiness', 'report_audience_customer_executive' => 'Customer stakeholders and executive readers', 'report_audience_customer_technical' => 'Customer technical and delivery readers', 'report_audience_internal_msp_review' => 'Internal MSP operators and support reviewers', 'report_audience_controlled_auditor' => 'Controlled auditor and assurance readers', 'governance_review_report' => 'Governance review report', 'prepared_by_for' => 'Prepared by :prepared_by for :prepared_for', 'generated_by' => 'Generated by :generated_by', 'report_kpi_strip' => 'Report decision strip', 'report_kpi_governance_status' => 'Governance status', 'report_kpi_evidence_coverage' => 'Evidence coverage', 'report_kpi_key_risks' => 'Key risks', 'report_kpi_key_risks_description' => 'Repo-backed risks summarized in the current governance package.', 'report_kpi_open_decisions' => 'Open decisions', 'report_kpi_open_decisions_description' => 'Governance decisions requiring reader awareness in this report.', 'report_kpi_not_measured' => 'Not measured', 'disclosure_policy' => 'Disclosure policy', 'proof_state_verified' => 'Verified', 'proof_state_assumed' => 'Assumed', 'proof_state_missing' => 'Missing', 'proof_state_unknown' => 'Unknown', 'proof_state_not_applicable' => 'Not applicable', 'report_profile_fallback_notice' => 'Requested report profile is not available for this route.', 'report_profile_fallback_summary' => 'TenantPilot fell back to the internal MSP review profile and kept the request visible.', 'report_appendix_hidden_for_profile' => 'This profile keeps the supporting appendix hidden. Use a bounded internal or auditor profile when detailed appendix content is required.', 'report_disclosure_customer_profile_internal_only' => 'Customer-facing profile blocked by internal-only detail', 'report_disclosure_customer_profile_internal_only_summary' => 'The selected customer-facing profile cannot expose this report while internal or PII-bearing detail remains in scope.', 'report_disclosure_customer_profile_requires_review' => 'This customer-facing profile still requires operator review before external sharing.', 'report_disclosure_non_certification_missing' => 'The required non-certification disclosure had to be enforced from fallback copy. Treat that as missing proof until the stored source is corrected.', 'report_disclosure_audience_boundary' => 'Audience boundary', 'report_disclosure_audience_boundary_summary' => 'This rendered report is constrained to :audience.', 'report_disclosure_evidence_basis' => 'Evidence basis proof', 'report_disclosure_evidence_verified' => 'The current evidence basis is complete enough to verify the disclosure state for this report.', 'report_disclosure_evidence_missing' => 'The evidence basis is incomplete, stale, or missing. Treat evidence-backed claims as limited.', 'report_disclosure_evidence_unknown' => 'The evidence basis state could not be mapped cleanly. Treat evidence-backed claims as unknown.', 'report_disclosure_protected_values' => 'Protected values boundary', 'report_disclosure_protected_values_assumed' => 'Protected values appear hidden based on the current pack options, but that boundary is still treated as assumed rather than independently verified.', 'report_disclosure_protected_values_missing' => 'Protected values cannot be treated as safely hidden for this customer-facing profile.', 'report_disclosure_protected_values_unknown' => 'Protected value handling could not be established cleanly from stored report truth.', 'report_disclosure_protected_values_not_applicable' => 'This profile is internal or auditor-bounded, so hidden-value proof is not the governing disclosure boundary.', 'report_state_customer_safe_ready' => 'Customer-safe report ready', 'report_state_with_limitations' => 'Report with limitations', 'report_state_internal_with_limitations' => 'Internal report with limitations', 'report_state_not_customer_ready' => 'Output not customer-ready', 'report_state_customer_safe_ready_summary' => 'This released review is backed by the current evidence and export-readiness contract. It can be used as a customer-safe governance review report.', 'report_state_limitations_summary' => 'This report is readable, but the evidence, section, or disclosure basis still carries limitations that must be reviewed before external sharing.', 'report_state_internal_summary' => 'This report includes internal or PII-bearing detail and must stay internal until redaction and readiness are reviewed.', 'report_state_not_ready_summary' => 'This output is not ready for external customer sharing. Resolve the shown blockers before treating it as a report.', 'report_external_sharing_warning' => 'Do not share externally before review.', 'executive_summary' => 'Executive summary', 'overall_state' => 'Overall state', 'reason' => 'Reason', 'report_summary_default_impact' => 'Report shareability depends on the readiness, limitations, evidence basis, and disclosure state shown in this report.', 'report_summary_ready_reason' => 'The report is backed by a complete evidence basis and current released review-pack contract.', 'report_summary_limited_reason' => 'The report has limitations that should be reviewed before relying on it externally.', 'report_next_action_ready' => 'Use the report for customer-safe governance review and retain the ZIP package as the structured appendix.', 'report_next_action_internal' => 'Review redaction and PII scope before any external customer handoff.', 'report_next_action_evidence' => 'Review or refresh the evidence basis before external sharing.', 'report_next_action_sections' => 'Review the incomplete sections and refresh the report basis before external sharing.', 'report_next_action_blockers' => 'Resolve the publish blockers before treating this report as customer-ready.', 'report_next_action_limited' => 'Review the listed limitations before external sharing.', 'report_limitation_evidence_summary' => 'The evidence basis is incomplete, stale, or missing. Some review claims cannot be treated as customer-ready until the evidence basis is reviewed or refreshed.', 'report_limitation_sections_summary' => 'Several required sections are incomplete or limited. Review the supporting appendix before external sharing.', 'report_limitation_pii_summary' => 'This output includes internal or PII-bearing detail. It is not customer-safe until redaction and sharing boundaries are reviewed.', 'report_limitation_blockers_summary' => 'Publish blockers are still recorded for this output. Resolve them before presenting this as a customer-ready governance report.', 'report_limitation_export_summary' => 'The export-readiness contract has not passed. Treat this report as an internal preview until the export is ready.', 'report_limitation_disclosure_summary' => 'The required non-certification disclosure is missing or incomplete. Add the disclosure before external sharing.', 'report_limitation_default_summary' => 'This report has a limitation that should be reviewed before external sharing.', 'evidence_snapshot_number' => 'Evidence snapshot #:id', 'evidence_snapshot_missing' => 'No evidence snapshot', 'report_evidence_complete_description' => 'This report is anchored to :snapshot with a complete evidence basis.', 'report_evidence_stale_description' => 'This report is anchored to :snapshot, but the evidence basis is stale. Review or refresh the evidence before external sharing.', 'report_evidence_partial_description' => 'This report is anchored to :snapshot with incomplete evidence. Review the evidence basis before external sharing.', 'report_evidence_missing_description' => 'This report is not anchored to a complete evidence basis. Review or refresh evidence before external sharing.', 'report_evidence_complete_action' => 'Keep the evidence snapshot and review pack together when handing off this report.', 'findings_and_open_risks' => 'Findings and open risks', 'no_open_risks_listed' => 'No open risks are listed for this review.', 'no_accepted_risks_listed_for_review' => 'No accepted risks are listed for this review.', 'accepted_risk_customer_safe_summary_missing' => 'A customer-safe accepted-risk summary is not recorded. Do not expose internal rationale as customer-safe context.', 'accepted_risk_review_due_on' => 'Review due on :date', 'accepted_risk_expires_on' => 'Expires on :date', 'non_certification_disclosure' => 'Non-certification disclosure', 'non_certification_disclosure_text' => 'TenantPilot summarizes available service-delivery evidence for governance review. This report is not a certification, legal attestation, audit opinion, or compliance guarantee.', 'supporting_appendix' => 'Supporting appendix', 'governance_package_available' => 'Governance package available', 'governance_package_available_description' => 'The current export review pack is ready for stakeholder delivery from this released review.', 'governance_package_partial' => 'Governance package partial', 'governance_package_partial_description' => 'The current export review pack is ready, but the supporting review basis remains partial or limitation-aware.', 'governance_package_unavailable' => 'Governance package unavailable', 'governance_package_unavailable_description' => 'No current export review pack is attached to this released review yet.', 'governance_package_not_ready_description' => 'The current export review pack is not ready for stakeholder delivery yet.', 'governance_package_expired' => 'Governance package expired', 'governance_package_expired_description' => 'The current export review pack has expired and cannot be downloaded from this released review.', 'governance_package_blocked' => 'Governance package blocked', 'governance_package_blocked_description' => 'This account can read the released review but cannot download the current export review pack.', 'no_entitled_tenants' => 'No entitled environments match this view', 'no_released_customer_reviews' => 'No released customer reviews match this view', 'no_released_customer_reviews_description' => 'Publish an environment review before it appears in the customer-safe workspace.', 'filtered_no_released_customer_reviews' => 'No released customer reviews match the active environment filter.', 'filtered_no_released_customer_reviews_description' => 'Clear the environment filter to view other released reviews in this workspace.', 'clear_filters_description' => 'Clear the current filters to return to the full customer review workspace for your entitled environments.', 'adjust_filters_description' => 'Adjust filters to return to the full customer review workspace for your entitled environments.', 'no_published_review' => 'No published review', 'no_published_review_available' => 'No published review available yet', 'no_findings_recorded' => 'No findings recorded in the published review.', 'findings_count_summary' => ':count findings summarized in the published review.', 'findings_count_with_outcomes' => ':count findings. Terminal outcomes: :outcomes.', 'no_accepted_risks_recorded' => 'No accepted risks recorded.', 'accepted_risks_need_follow_up' => ':warnings accepted risks need governance follow-up (:total total).', 'accepted_risks_governed' => ':count accepted risks are governed.', 'accepted_risks_on_record' => ':count accepted risks are on record.', 'accepted_risk_accountable' => 'Accountable: :name.', 'accepted_risk_accountable_until' => 'Accountable: :name. Re-review by :date.', 'accepted_risk_reason' => 'Reason: :reason.', 'accepted_risk_partial_accountability' => 'Accountability is partially recorded; review owner details are not fully available.', 'unavailable' => 'Unavailable', 'available' => 'Available', 'limited' => 'Limited', 'partial' => 'Partial', 'blocked' => 'Blocked', 'expired' => 'Expired', 'restricted' => 'Restricted', 'preparing' => 'Preparing', 'review_pack_available' => 'Current review pack available', 'review_pack_available_customer_description' => 'Current review pack is ready to download.', 'review_pack_customer_safe_ready_description' => 'The current review package is available, meets the customer-safe output contract, and can be opened as a rendered report from the review detail.', 'review_pack_with_limitations_description' => 'The review package exists, but evidence, section completeness, or publication limitations still need review.', 'review_pack_internal_review_description' => 'The review package exists, but it includes internal or PII-bearing detail that should be reviewed before external sharing.', 'review_pack_export_not_ready_description' => 'The review package exists, but the export contract is not ready yet.', 'review_pack_preparing' => 'Preparing', 'review_pack_preparing_description' => 'Review Pack is being prepared.', 'review_pack_not_available_yet' => 'Not available yet', 'review_pack_not_available_yet_description' => 'Review Pack has not been generated for this released review yet.', 'review_pack_evidence_incomplete' => 'Evidence incomplete', 'review_pack_evidence_incomplete_description' => 'Review Pack or decision summary may be incomplete.', 'review_pack_unavailable_customer_description' => 'Review Pack cannot be provided right now.', 'no_current_review_pack' => 'No current review pack available yet', 'review_pack_access_unavailable' => 'Review pack access is unavailable for this actor', 'review_pack_unavailable' => 'Review pack is not ready yet', 'review_pack_expired' => 'Review pack expired', 'no_key_findings_listed' => 'No key findings are listed for this released review.', 'no_next_action_listed' => 'No next action is listed for this released review.', 'evidence_proof_available' => 'Proof summary available', 'evidence_proof_absent' => 'No proof summary linked yet', 'evidence_proof_access_unavailable' => 'Proof access is unavailable for this actor', 'evidence_proof_expired' => 'Proof summary expired', 'evidence_available' => 'Evidence available', 'evidence_pending' => 'Evidence pending', 'evidence_restricted' => 'Evidence restricted', 'evidence_expired' => 'Evidence expired', 'assessment_basis' => 'Assessment basis', 'assessment_basis_description' => 'These assessment areas explain how the package statements are supported by the current review evidence.', 'review_completed' => 'Review completed', 'review_requires_attention' => 'Review required', 'review_needed' => 'Review needed', 'ready_for_release' => 'Ready for release', 'accepted_risk_status' => 'Accepted risk status', 'accepted_risk_none' => 'None on record', 'accepted_risk_on_record' => ':count on record', 'accepted_risk_follow_up' => 'Follow-up required', 'customer_review_pack_unavailable' => 'The current review pack cannot be downloaded from this customer-safe flow.', 'customer_review_pack_missing' => 'No current review pack is attached to this released review yet.', 'customer_review_pack_not_ready' => 'The attached review pack is not ready for download yet.', 'customer_review_pack_expired' => 'The attached review pack has expired.', 'customer_review_pack_forbidden' => 'This account can read the review but cannot download the current review pack.', 'decision_summary' => 'Decision summary', 'no_decisions_require_awareness' => 'No decisions require awareness', 'no_decisions_require_awareness_description' => 'No governance decisions require customer awareness in this released review.', 'no_decisions_require_awareness_next_action' => 'No customer action is needed for Decision Register follow-up from this review.', 'decision_evidence_unavailable' => 'Decision evidence unavailable', 'decision_evidence_incomplete' => 'Decision evidence incomplete', 'decision_summary_unavailable_description' => 'Customer-safe decision evidence is unavailable for this released review.', 'decision_summary_unavailable_next_action' => 'Open the released review before treating the decision summary as complete.', 'decision_summary_incomplete_description' => 'Decision evidence is incomplete for this released review.', 'decision_summary_incomplete_next_action' => 'Review the evidence basis before relying on the decision summary.', 'decision_summary_requires_awareness_description' => 'Governance decisions require customer awareness before relying on this released review.', 'decision_summary_requires_awareness_next_action' => 'Review the accepted-risk decision basis before customer delivery.', 'decision_entry_customer_safe_summary' => 'This governance decision needs follow-up before stakeholder delivery.', 'accepted_risk_state_current' => 'Accepted risk', 'accepted_risk_state_review_due' => 'Review due', 'accepted_risk_state_on_record' => 'Accepted risk', 'accepted_risk_customer_safe_summary' => 'Included in the released review evidence basis.', 'evidence_basis_complete' => 'Complete', 'evidence_basis_complete_description' => 'Customer-safe decision summary is backed by released-review evidence.', 'evidence_basis_no_awareness_required' => 'No awareness required', 'evidence_basis_no_awareness_required_description' => 'No governance decisions require awareness in this released-review evidence basis.', 'evidence_basis_missing' => 'Missing', 'evidence_basis_missing_description' => 'Required evidence is missing from the current review basis.', 'evidence_basis_stale' => 'Stale', 'evidence_basis_stale_description' => 'The evidence basis is stale and should be refreshed before sharing.', 'evidence_basis_incomplete' => 'Incomplete', 'evidence_basis_incomplete_description' => 'Decision evidence is incomplete and must not be interpreted as no decisions.', 'evidence_basis_unavailable' => 'Unavailable', 'evidence_basis_unavailable_description' => 'Customer-safe decision evidence is unavailable for this released review.', 'evidence_basis_not_generated' => 'Not generated', 'evidence_basis_not_generated_description' => 'The Review Pack is not available yet; the released review remains visible.', 'section_completeness_complete' => ':complete of :total required complete', 'section_completeness_limited' => ':complete of :total required complete, :limited limited', 'released_governance_record' => 'Released governance record', 'released_governance_record_available' => 'This released review is available for customer-safe governance consumption.', 'outcome_summary' => 'Outcome summary', 'review' => 'Review', 'review_date' => 'Review date', 'completeness' => 'Completeness', 'evidence_snapshot' => 'Evidence snapshot', 'current_export' => 'Current export', 'executive_posture' => 'Executive posture', 'sections' => 'Sections', 'details' => 'Details', 'export_executive_pack' => 'Export executive pack', 'outcome' => 'Outcome', 'export' => 'Export', 'next_step' => 'Next step', 'technical_detail_review_status_value' => 'Review status: :value', 'technical_detail_ready_export_value' => 'Ready export: :value', 'technical_detail_evidence_state_value' => 'Evidence state: :value', 'technical_detail_section_counts_value' => 'Sections - complete: :complete, partial: :partial, missing: :missing, stale: :stale', 'technical_detail_contains_pii_value' => 'Contains PII: :value', 'technical_detail_disclosure_present_value' => 'Disclosure present: :value', 'technical_detail_required_sections_value' => ':complete of :total required complete, :limited limited', 'workspace_next_step_evidence_review' => 'Review evidence', 'workspace_next_step_review_open' => 'Open review', 'workspace_next_step_package_review' => 'Review package', 'workspace_next_step_control_mapping' => 'Review control mapping', 'no_environment_reviews_yet' => 'No environment reviews yet', 'create_first_review_description' => 'Create the first review from an anchored evidence snapshot to start the recurring review history for this managed environment.', 'create_first_review' => 'Create first review', 'create_review' => 'Create review', 'evidence_basis' => 'Evidence basis', 'evidence_basis_helper' => 'Choose the anchored evidence snapshot for this review.', 'unable_create_missing_context' => 'Unable to create review - missing context.', 'select_valid_evidence_snapshot' => 'Select a valid evidence snapshot.', 'unable_create_review' => 'Unable to create review', 'review_already_available' => 'Review already available', 'review_already_available_body' => 'A matching mutable review already exists for this evidence basis.', 'view_review' => 'View review', 'open_operation' => 'Open operation', 'review_composing_background' => 'The review is being composed in the background.', 'unable_export_missing_context' => 'Unable to export review - missing context.', 'export_already_queued_body' => 'An executive pack export is already queued or running for this review.', 'executive_pack_export_unavailable' => 'Executive pack export unavailable', 'unable_export_executive_pack' => 'Unable to export executive pack', 'executive_pack_already_available' => 'Executive pack already available', 'executive_pack_already_available_body' => 'A matching executive pack already exists for this review.', 'view_pack' => 'View pack', 'executive_pack_generating_background' => 'The executive pack is being generated in the background.', 'review_explanation' => 'Review explanation', 'reason_owner' => 'Reason owner', 'platform_core' => 'Platform core', 'platform_reason_family' => 'Platform reason family', 'compatibility' => 'Compatibility', 'highlights' => 'Highlights', 'next_actions' => 'Next actions', 'related_context' => 'Related context', 'publication_readiness' => 'Publication readiness', 'ready_for_publication' => 'This review is ready for publication and executive-pack export.', 'internal_only_publication' => 'This review is currently safe for internal use only.', 'needs_follow_up' => 'This review still needs follow-up before publication.', 'key_entries' => 'Key entries', 'entry' => 'Entry', 'follow_up' => 'Follow-up', 'diagnostics' => 'Diagnostics', 'result_meaning' => 'Result meaning', 'result_trust' => 'Result trust', 'artifact_truth' => 'Artifact truth', 'no_action_needed' => 'No action needed', 'count' => 'Count', 'guidance' => 'Guidance', 'findings' => 'Findings', 'reports' => 'Reports', 'operations' => 'Operations', 'pending_verification' => 'Pending verification', 'verified_cleared' => 'Verified cleared', 'terminal_outcomes' => 'Terminal outcomes', 'pending' => 'Pending', 'operation' => 'Operation', 'operation_description' => 'Inspect the latest review composition or refresh run.', 'executive_pack' => 'Executive pack', 'view_executive_pack' => 'View executive pack', 'executive_pack_description' => 'Open the current export that belongs to this review.', 'customer_workspace' => 'Customer workspace', 'open_customer_workspace' => 'Open customer workspace', 'customer_workspace_description' => 'Open the customer-safe review workspace prefiltered to this environment.', 'view_evidence_snapshot' => 'View evidence snapshot', 'evidence_snapshot_description' => 'Return to the evidence basis behind this review.', ], 'findings' => [ 'all' => 'All', 'needs_action' => 'Needs action', 'overdue' => 'Overdue', 'risk_accepted' => 'Risk accepted', 'resolved' => 'Resolved', 'actions' => 'Actions', 'open_approval_queue' => 'Open approval queue', ], 'policy' => [ 'common' => [ 'policy' => 'Policy', 'policies' => 'Policies', 'type' => 'Type', 'visibility' => 'Visibility', 'category' => 'Category', 'restore' => 'Restore', 'platform' => 'Platform', 'settings' => 'Settings', 'external_id' => 'External ID', 'last_synced' => 'Last synced', 'snapshot' => 'Snapshot', 'version' => 'Version', 'actor' => 'Actor', 'created' => 'Created', 'captured' => 'Captured', 'platform_label_windows' => 'Windows', 'platform_label_android' => 'Android', 'platform_label_ios' => 'iOS', 'platform_label_macos' => 'macOS', 'platform_label_all' => 'All', 'platform_label_mobile' => 'Mobile', 'open_operation' => 'Open operation', 'more' => 'More', 'backup_name' => 'Backup name', 'backup_name_default_prefix' => 'Backup', 'source_microsoft_intune' => 'Source: Microsoft Intune', 'type_delete_to_confirm' => 'Type DELETE to confirm', 'type_delete_to_confirm_validation' => 'Please type DELETE to confirm.', 'preview_only_dry_run' => 'Preview only (dry-run)', ], 'resource' => [ 'sync_action_primary' => 'Sync policies', 'sync_action_secondary' => 'Sync', 'sync_modal_heading' => 'Sync policy inventory', 'sync_modal_description' => 'This queues a background sync operation for supported policy types in the current environment.', 'sync_permission_tooltip' => 'You do not have permission to sync policies.', 'capture_snapshot_action' => 'Capture snapshot', 'capture_snapshot_modal_heading' => 'Capture snapshot now', 'capture_snapshot_modal_subheading' => 'This queues a background job that captures the latest configuration for the current environment and stores a new policy version.', 'capture_snapshot_include_assignments' => 'Include assignments', 'capture_snapshot_include_assignments_helper' => 'Captures assignment include/exclude targeting and filters.', 'capture_snapshot_include_scope_tags' => 'Include scope tags', 'capture_snapshot_include_scope_tags_helper' => 'Captures policy scope tag IDs.', 'capture_snapshot_unavailable_title' => 'Snapshot capture unavailable', 'capture_snapshot_in_progress_title' => 'Snapshot already in progress', 'capture_snapshot_in_progress_body' => 'An active run already exists for this policy. Opening run details.', 'capture_snapshot_permission_tooltip' => 'You do not have permission to capture policy snapshots.', 'visibility_source_unavailable_description' => 'The connected source did not return this policy or is currently unavailable. Historical restore remains available.', 'visibility_source_unavailable_backup_items' => 'The connected source did not return this policy or is currently unavailable. Historical backup items remain available for restore selection.', 'details_section' => 'Policy details', 'tab_general' => 'General', 'tab_json' => 'JSON', 'general_field_name' => 'Name', 'general_field_platforms' => 'Platforms', 'general_field_technologies' => 'Technologies', 'general_field_template_reference' => 'Template reference', 'general_field_setting_count' => 'Setting count', 'general_field_version' => 'Version', 'general_field_last_modified' => 'Last modified', 'general_field_created' => 'Created', 'general_field_description' => 'Description', 'general_empty_state' => 'No general metadata available.', 'general_fallback_field' => 'Field', 'template_fallback' => 'Template', 'settings_empty_state' => 'No policy snapshot available yet.', 'settings_empty_state_helper' => 'This policy has been inventoried but no configuration snapshot has been captured yet.', 'snapshot_metadata_only_helper' => 'Graph returned :status for this policy type. Only local metadata was saved; settings and restore are unavailable until Graph works again.', 'graph_error_fallback' => 'an error', 'snapshot_json_section' => 'Policy snapshot (JSON)', 'payload_size' => 'Payload size', 'large_payload_warning' => 'Large payload (:size KB) - may impact performance', 'settings_available' => 'Available', 'settings_missing' => 'Missing', 'filter_active' => 'Active', 'filter_ignored' => 'Ignored locally', 'filter_source_unavailable' => 'Source unavailable', 'filter_all' => 'All', 'export_to_backup' => 'Export to backup', 'current_backup_unavailable' => 'Current backup unavailable', 'restore_action' => 'Restore', 'restore_bulk_action' => 'Restore policies', 'restore_permission_tooltip' => 'You do not have permission to restore policies.', 'policy_restored' => 'Policy restored', 'ignore_action' => 'Ignore', 'ignore_bulk_action' => 'Ignore policies', 'ignore_permission_tooltip' => 'You do not have permission to ignore policies.', 'policy_ignored' => 'Policy ignored', 'empty_state_heading' => 'No policies in inventory yet', 'empty_state_description' => 'Run a sync to build this environment\'s policy inventory, including versions, restore readiness, and governance evidence.', 'delete_queued_body' => 'Queued deletion for :count policies.', ], 'versions' => [ 'backup_quality_section' => 'Backup quality', 'related_context_section' => 'Related context', 'diff_tab' => 'Diff', 'backup_quality' => 'Backup quality', 'snapshot_mode_full' => 'Full', 'snapshot_mode_metadata_only' => 'Metadata only', 'assignment_quality' => 'Assignment quality', 'next_action' => 'Next action', 'integrity_note' => 'Integrity note', 'boundary' => 'Boundary', 'quality_highlight_metadata_only' => 'Metadata only', 'quality_highlight_assignment_fetch_failed' => 'Assignment fetch failed', 'quality_highlight_assignments_captured_separately' => 'Assignments captured separately', 'quality_highlight_orphaned_assignments' => 'Orphaned assignments', 'quality_highlight_integrity_warning' => 'Integrity warning', 'quality_highlight_unknown_quality' => 'Unknown quality', 'compact_summary_full_payload' => 'Full payload', 'compact_summary_unknown_quality' => 'Unknown quality', 'compact_summary_no_degradations_detected' => 'No degradations detected', 'summary_full_no_degradations' => 'No degradations were detected from the captured snapshot and assignment metadata.', 'summary_unknown_quality' => 'Quality is unknown because this record lacks enough completeness metadata to justify a stronger claim.', 'summary_no_degradations' => 'No degradations were detected.', 'next_action_open_version_detail' => 'Open the version detail if you need raw settings or diff context.', 'next_action_prefer_stronger_version' => 'Prefer a stronger version or inspect the version detail before restore.', 'raw_diff_advanced' => 'Raw diff (advanced)', 'prune_versions' => 'Prune versions', 'prune_modal_description' => 'Only versions captured more than the specified retention window (in days) are eligible. Newer versions will be skipped.', 'retention_days' => 'Retention days', 'retention_days_helper' => 'Versions captured within the last N days will be skipped.', 'manage_permission_tooltip' => 'You do not have permission to manage policy versions.', 'restore_versions' => 'Restore versions', 'restore_versions_modal_heading' => 'Restore :count policy versions?', 'restore_versions_modal_description' => 'Archived versions will be restored back to the active list. Active versions will be skipped.', 'force_delete_versions' => 'Force delete versions', 'force_delete_versions_modal_heading' => 'Force delete :count policy versions?', 'force_delete_versions_modal_description' => 'This is permanent. Only archived versions will be permanently deleted; active versions will be skipped.', 'restore_via_wizard' => 'Restore via wizard', 'restore_via_wizard_modal_heading' => 'Restore version :version via wizard?', 'restore_via_wizard_modal_subheading' => 'Creates a 1-item backup set from this snapshot and opens the restore run wizard prefilled.', 'restore_run_permission_tooltip' => 'You do not have permission to create restore runs.', 'metadata_only_tooltip' => 'Disabled for metadata-only snapshots (Graph did not provide policy settings).', 'restore_disabled_metadata_title' => 'Restore disabled for metadata-only snapshot', 'restore_disabled_metadata_body' => 'This snapshot only contains metadata; Graph did not provide policy settings to restore.', 'different_tenant_title' => 'Policy version belongs to a different environment', 'missing_policy_title' => 'Policy could not be found for this version', 'backup_set_name' => 'Policy version restore - :policy - v:version', 'archive' => 'Archive', 'archived_title' => 'Policy version archived', 'force_delete' => 'Force delete', 'force_deleted_title' => 'Policy version permanently deleted', 'restored_title' => 'Policy version restored', 'empty_state_heading' => 'No policy versions', 'empty_state_description' => 'Capture or sync policy snapshots to build a version history.', 'open_backup_sets' => 'Open backup sets', 'related_entry_current_policy_version' => 'Current policy version', 'related_entry_policy' => 'Policy', 'related_entry_policy_version' => 'Policy version', 'related_action_view_policy' => 'View policy', 'related_action_view_policy_version' => 'View policy version', 'reference_policy_number' => 'Policy #:id', 'reference_version_number' => 'Version :version', 'related_record_fallback' => 'Open related record', 'assignment_fetch_failed_orphaned' => 'Assignment fetch failed and orphaned targets were detected.', 'assignment_fetch_failed' => 'Assignment fetch failed during capture.', 'assignment_orphaned' => 'Orphaned assignment targets were detected.', 'assignment_no_issues' => 'No assignment issues were detected from captured metadata.', 'fallback_display_name' => 'Version :version', ], 'relation' => [ 'restore_to_microsoft_intune' => 'Restore to environment', 'restore_heading' => 'Restore version :version to environment?', 'restore_subheading' => 'Creates a restore run for the current environment using this policy version snapshot.', 'missing_context_title' => 'Missing tenant or user context.', 'restore_run_failed_title' => 'Restore run failed to start', 'restore_run_started_title' => 'Restore run started', 'no_versions_captured' => 'No versions captured', 'no_versions_captured_description' => 'Capture or sync this policy again to create version history entries.', ], 'badges' => [ 'active' => 'Active', 'ignored_locally' => 'Ignored locally', 'source_unavailable' => 'Source unavailable', 'ignored_source_unavailable' => 'Ignored + source unavailable', ], 'taxonomy' => [ 'policies' => 'Policies', ], ], 'operations' => [ 'actionability' => [ 'status' => [ 'actionable' => 'Current follow-up', 'requires_manual_review' => 'Manual review required', 'superseded_by_later_success' => 'Superseded by later success', 'resolved_by_current_state' => 'Resolved by current state', 'informational_only' => 'Historical only', 'not_terminal' => 'No terminal follow-up', ], ], 'actions' => [ 'view_details' => 'View details', 'view_review' => 'View review', 'view_evidence' => 'View evidence', 'view_report' => 'View report', 'view_backup_details' => 'View backup details', 'view_restore_details' => 'View restore details', 'view_affected_families' => 'View affected families', 'reconcile' => 'Reconcile run', 'reconcile_heading' => 'Reconcile this operation run?', 'reconcile_description' => 'TenantPilot will inspect existing repository proof and update only TenantPilot OperationRun/action metadata when the adapter can prove the final run state. This does not retry or change the Microsoft tenant.', 'reconcile_submit' => 'Reconcile run', 'reconcile_success_title' => 'Operation reconciled', 'reconcile_success_body' => 'TenantPilot updated the run from existing repository proof.', 'reconcile_noop_title' => 'No reconciliation applied', 'reconcile_noop_body' => 'The adapter could not prove a safe state change for this run.', 'open_diagnostics' => 'Open diagnostics', 'no_safe_action' => 'No safe action', 'mutation_scope_reconcile' => 'TenantPilot-only OperationRun/action metadata.', 'attention' => [ 'active' => 'The operation is still inside its expected lifecycle window.', 'blocked' => 'Review the blocked prerequisite before starting overlapping work.', 'default' => 'Open the operation detail for stored proof and next-step context.', 'failed' => 'Review the failure proof before starting overlapping work.', 'partial' => 'Review affected items before relying on the result.', 'reconcile_available' => 'Existing repository proof may safely reconcile this stale run.', 'related_available' => 'The related artifact is already available from canonical metadata.', 'scope_unavailable' => 'The operation is outside the current user scope.', 'stale_review' => 'This run is past its lifecycle window and needs review before retrying.', ], 'disabled' => [ 'already_reconciled' => 'This run already has reconciliation metadata.', 'completed_succeeded' => 'Completed successful runs are not retryable from this view.', 'forbidden' => 'This action is forbidden for OperationRuns.', 'high_risk' => 'High-risk operations cannot expose success-forcing or destructive actions.', 'high_risk_retry' => 'High-risk operations cannot be retried from this view.', 'insufficient_proof' => 'Stored proof is insufficient for safe reconciliation.', 'lifecycle_fresh' => 'The operation is still within its expected lifecycle window.', 'missing_capability' => 'You do not have the capability required for this operator action.', 'missing_diagnostics_capability' => 'Support diagnostics require the support diagnostics capability.', 'no_current_follow_up' => 'Current-state checks show this terminal run no longer needs operator follow-up.', 'retry_deferred' => 'Retry is unavailable because no safe repo-verified retry seam exists for this operation family.', 'scope_unavailable' => 'The operation is outside the current user scope.', 'terminal_run' => 'Terminal runs cannot be reconciled from this action.', 'unsupported_reconcile' => 'This operation type has no reconciliation adapter.', ], 'disabled_labels' => [ 'open_support_diagnostics' => 'Open diagnostics', 'reconcile' => 'Reconcile run', 'retry' => 'Retry run', 'view_details' => 'View details', ], ], ], 'notifications' => [ 'locale_override_saved' => 'Language override applied.', 'locale_override_cleared' => 'Language override cleared.', 'user_preference_saved' => 'Language preference saved.', 'user_preference_cleared' => 'Language preference cleared.', 'workspace_settings_saved' => 'Workspace settings saved', 'workspace_settings_unchanged' => 'No settings changes to save', 'workspace_setting_reset' => 'Workspace setting reset to default', 'setting_already_default' => 'Setting already uses default', ], 'validation' => [ 'unsupported_locale' => 'Choose a supported language.', ], ];