{{ toast.i18n ? t('errors.loadFailed') : toast.title }} {{ toast.i18n ? errorToastMessage(toast.i18n) : toast.message }}

{{ t('onboarding.setup.welcome') }}

{{ t('onboarding.setup.subtitle') }}

{{ t('onboarding.setup.done') }}

{{ tParams('onboarding.setup.doneMessage', { name: setupWizard.organizationName }) }}

{{ t('auth.draftRestore.title') }}

{{ t('auth.draftRestore.hint') }}

  • {{ t(entry.labelKey) }}

{{ shiftLiveAnnouncement }}

{{ t(shiftCanAggregate() ? 'shift.scope.provider' : 'shift.scope.customer') }}

{{ t('shift.brief.template.personal') }}

{{ t('shift.tab.brief') }}

{{ shiftGreeting() }}

{{ t(['completed_shift', 'previous_completed_shift'].includes(shiftBriefingSelected.anchor_kind) ? 'shift.brief.template.previousEnd' : 'roster.generate.from') }}
{{ t('shift.brief.template.currentStart') }}
{{ t('shiftBriefing.generating') }}
{{ t('shift.brief.noneTitle') }}

{{ shiftBriefingCurrentError || t(isReadOnly ? 'shift.brief.viewer.noneBody' : 'shift.brief.noneBody') }}

{{ t('shift.handover.template.currentShift') }} · {{ handoverWorkspace.occurrence.name }}

→

{{ t('shift.handover.outgoing') }}{{ shiftPeopleNames(handoverWorkspace.outgoing_members, 'shift.unknownUser') }}
{{ t('shift.handover.incoming') }}{{ shiftPeopleNames(handoverWorkspace.incoming.members, 'shift.unknownUser') }}{{ handoverWorkspace.incoming.occurrences.map(item => item.name).join(', ') }}

{{ t('shift.handover.template.manualHint') }}

  • {{ userDisplayName(extension.user_id) }} · {{ t('shift.extension.status.' + extension.status) }} · {{ shiftStamp(extension.actual_end_at || extension.effective_end_at) }}
{{ t('roster.loadingDetail') }}
{{ t('shift.tab.handover') }}

{{ rosterHandoffTitle(rosterSelectedHandoff) }}

→

{{ t('shift.handover.template.through') }} · {{ t('roster.detail.version') }} {{ rosterSelectedHandoff.version }}

{{ t(rosterSelectedHandoff.published_at ? 'roster.publish.published' : 'roster.publish.draft') }}{{ t('roster.status.acknowledged') }}
{{ rosterSelectedHandoff.team_metrics?.[metric] ?? '–' }}{{ t('roster.kpi.' + metric) }}

{{ t('shift.handover.template.' + kind + 'Contribution') }}

{{ t('shift.handover.template.analyst') }}{{ t('roster.kpi.' + kind + '_' + suffix) }}
{{ analyst.display_name }}{{ analyst.metrics[kind + '_' + suffix] ?? '–' }}

{{ t('roster.analysts.empty') }}

{{ t('roster.tenants.title') }}

{{ t('shift.handover.template.tenant') }}{{ t('roster.kpi.' + metric) }}
{{ tenant.tenant_name }}{{ t('roster.tenants.partial') }}{{ tenant.metrics[metric] ?? '–' }}

{{ t('shift.handover.template.investigations') }}

{{ rosterRiskRows().length }} / {{ (rosterSelectedHandoff.sections?.risks?.length || 0) + (rosterSelectedHandoff.sections?.open_cases?.length || 0) }}

{{ t('shift.handover.risk.nextActionHint') }}

{{ t('shift.handover.risk.item') }}{{ t('shift.handover.risk.customer') }}{{ t('shift.handover.risk.priority') }}{{ t('shift.handover.risk.nextAction') }}
{{ t('shift.handover.risk.' + row.kind) }}
{{ row.text }}

{{ row.text }}

{{ row.customer || '–' }}{{ row.priority || '–' }}{{ row.nextAction }}{{ t('shift.handover.risk.noNextAction') }}

{{ t('shift.handover.risk.noMatches') }}

{{ t('shift.handover.template.followUps') }}

{{ t('shift.handover.template.noFollowUps') }}

{{ t('roster.notes.title') }}

{{ t('roster.notes.hint') }}

  1. {{ t('shift.brief.notes.pinned') }}{{ rosterSelectedHandoff.note_amendments?.filter(amendment => amendment.note_id === note.id).at(-1)?.replacement_text || note.text }}

    {{ note.author_name }} · · {{ t('roster.notes.status.' + note.status) }}
    {{ t('roster.notes.amend.history') }}

    {{ t('roster.notes.amend.original') }} {{ note.text }}

    1. {{ amendment.replacement_text }}{{ t('roster.notes.amend.reason') }}: {{ amendment.reason }} · {{ amendment.amended_by_name || t('roster.notes.amend.manager') }} ·

    {{ t('roster.notes.amend.immutable') }}

{{ t('roster.notes.empty') }}

{{ t('shift.handover.template.evidence') }}

{{ t('roster.publish.publishedAt') }} {{ rosterDateTime(rosterSelectedHandoff.published_at) }} · {{ userDisplayName(rosterSelectedHandoff.published_by) }}

{{ t('shift.extension.plannedEnd') }} {{ rosterDateTime(rosterSelectedHandoff.planned_end_at) }}

{{ t(rosterQualityWarningKey(warning.code)) }}

{{ receipt.display_name }} · {{ receipt.acknowledged_at ? rosterDateTime(receipt.acknowledged_at) : t('roster.status.pending') }}

  1. {{ event.text }}

{{ t('roster.delivery.' + rosterSelectedHandoff.delivery_status) }}

{{ t('roster.handoffs.empty') }}

{{ t('shift.handover.template.empty') }}

{{ t('roster.eyebrow') }}

{{ t('roster.calendar.title') }}

{{ tParams('roster.calendar.hint', { timezone: rosterLocalTimezone() }) }} {{ t('roster.calendar.coverageHint') }}

{{ t('roster.loading') }}

{{ t('socDashboard.title') }}

{{ t('socDashboard.window.label') }} {{ formatSocDashboardWindowTimestamp(socDashboardData.from) }} {{ formatSocDashboardWindowTimestamp(socDashboardData.to) }} {{ socDashboardRange === 'custom' ? t('socDashboard.window.custom') : tParams('socDashboard.window.preset', { range: socDashboardRange }) }} {{ tParams('socDashboard.window.timezone', { timezone: userTimezone() }) }} {{ tParams('socDashboard.scope.count', { count: socDashboardData.scope.tenant_count }) }}

{{ t('socDashboard.subtitle') }}

{{ t('socDashboard.range.label') }}
{{ t('socDashboard.live') }}{{ tParams('socDashboard.dataThrough', { time: formatSocDashboardWindowTimestamp(socDashboardData.to) }) }}
{{ t('socDashboard.scope.label') }}
{{ t('socDashboard.scope.currentOrganization') }}

{{ t('socDashboard.overview') }}

{{ t('socDashboard.trend.title') }}

{{ t('socDashboard.trend.subtitle') }}

{{ t('socDashboard.trend.selectedPeriod') }}
{{ tick.value }} {{ formatSocDashboardTrendLabel(label.start) }}
{{ tParams('socDashboard.trend.hoverTotal', { count: socDashboardTrendHover.values.total }) }} {{ formatSocDashboardTrendLabel(socDashboardTrendHover.start) }} · {{ t('socDashboard.trend.selectedPeriod') }}
{{ t(`socDashboard.trend.${card.key}`) }}

{{ t('socDashboard.activity.triggered.title') }}

{{ t('socDashboard.activity.triggered.subtitle') }}

{{ t('socDashboard.activity.topFive') }}
  1. {{ row.title }}{{ row.tenantLabel }}{{ row.source }}{{ row.identity_value }}
    {{ row.count }}

{{ t('socDashboard.activity.triggered.empty') }}

{{ t('socDashboard.activity.classification.title') }}

{{ t('socDashboard.activity.classification.subtitle') }}

  • {{ t(`socDashboard.activity.classification.${row.key}`) }}{{ row.count }}
{{ t(`socDashboard.activity.classification.${insight.key}`) }}{{ insight.value }}

{{ t('socDashboard.performance.eyebrow') }}

{{ t('socDashboard.performance.title') }}

{{ t('socDashboard.performance.subtitle') }}

{{ t('socDashboard.slaState.within') }}{{ t('socDashboard.slaState.near') }}{{ t('socDashboard.slaState.breached') }}

{{ t(`socDashboard.metric.${card.key}.title`) }}

{{ socDashboardSlaStateLabel(card.state) }}

{{ formatSocDashboardMetric(card.metric?.mean_seconds) }}

{{ t('socDashboard.categories.title') }}

{{ t('socDashboard.categories.subtitle') }}

{{ t('socDashboard.slaState.within') }}{{ t('socDashboard.slaState.near') }}{{ t('socDashboard.slaState.breached') }}
{{ t('socDashboard.categories.title') }}
{{ t('socDashboard.categories.priority') }}{{ t('socDashboard.categories.alerts') }}{{ t('socDashboard.categories.mtta') }}{{ t('socDashboard.categories.respond') }}{{ t('socDashboard.categories.resolve') }}{{ t('socDashboard.categories.compliance') }}
{{ row.priority }}{{ t(`socDashboard.sla.${row.category}`) }}{{ row.alert_count }}{{ formatSocDashboardMetric(row.acknowledge?.mean_seconds) }}{{ socDashboardSlaStateLabel(row.acknowledgeState) }}{{ formatSocDashboardMetric(row.respond?.mean_seconds) }}{{ socDashboardSlaStateLabel(row.respondState) }}{{ formatSocDashboardMetric(row.resolve?.mean_seconds) }}{{ socDashboardSlaStateLabel(row.resolveState) }}
{{ outcome.label }}{{ outcome.compliant }} {{ t('socDashboard.slaState.within') }}{{ outcome.breached }} {{ t('socDashboard.slaState.breached') }}{{ outcome.pending }} {{ t('socDashboard.activity.classification.pending') }}{{ outcome.notApplicable }} {{ t('socDashboard.notApplicable') }}

{{ t('socDashboard.breaches.eyebrow') }}

{{ t('socDashboard.breaches.title') }}

{{ t('socDashboard.breaches.subtitle') }}

{{ socDashboardRawSlaBreachCount }}
{{ t('socDashboard.breaches.title') }}
{{ row.title }}{{ row.alert_id }} · {{ row.tenant_id }} {{ row.priority }} {{ socDashboardBreachMetricLabel(row.metric) }} {{ formatSocDashboardMetric(row.elapsed_seconds) }} {{ formatSocDashboardMetric(row.breach_seconds) }} {{ t('socDashboard.breaches.over') }}{{ formatSocDashboardMetric(row.threshold_seconds) }} {{ t('socDashboard.breaches.target') }}
{{ t('socDashboard.breaches.noMatches') }}
{{ t('common.showing') }} {{ socDashboardSlaBreachView.start }}-{{ socDashboardSlaBreachView.end }} {{ t('common.of') }} {{ socDashboardSlaBreachView.total }}
{{ tParams('common.pageOf', { current: socDashboardSlaBreachView.page, total: socDashboardSlaBreachView.totalPages }) }}
{{ t('socDashboard.breaches.empty') }}

{{ t('socDashboard.breaches.emptyHint') }}

{{ t('socDashboard.sla.eyebrow') }}

{{ t(`socDashboard.sla.source.${socDashboardData.sla.source}`) }}

{{ t('socDashboard.sla.title') }}

{{ t('socDashboard.sla.subtitle') }}

{{ t('socDashboard.sla.mixedTitle') }}

{{ tParams('socDashboard.sla.mixedDescription', { count: socDashboardData.sla.tenant_count }) }}

{{ t('socDashboard.sla.title') }}
{{ t('socDashboard.sla.priority') }}{{ t('socDashboard.sla.acknowledge') }}{{ t('socDashboard.sla.respond') }}{{ t('socDashboard.sla.contain') }}
{{ row.priority }}{{ t(`socDashboard.sla.${row.severity}`) }} {{ formatSocDashboardCommitment(row.acknowledge_seconds) }} {{ formatSocDashboardCommitment(row.respond_seconds) }} {{ formatSocDashboardCommitment(row.contain_seconds) }}
{{ t('kpi.criticalAlerts') }}
{{ kpis.alerts?.critical || 0 }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.critical_alerts) }} {{ tParams('kpi.criticalAlertsHint', { open: kpis.alerts?.open || 0, resolved: kpis.alerts?.resolved || 0 }) }}
{{ t('kpi.activeInvestigations') }}
{{ kpis.investigations?.active || 0 }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.active_investigations) }} {{ tParams('kpi.activeInvestigationsHint', { completed: kpis.investigations?.completed_today || 0 }) }}
{{ t('kpi.playbookRunsToday') }}
{{ kpis.playbooks?.runs_today || 0 }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.playbook_runs) }} {{ tParams('kpi.playbookRunsHint', { rate: (kpis.playbooks?.success_rate || 0).toFixed(0) }) }}
{{ t('kpi.agentRunsToday') }}
{{ kpis.tasks?.runs_today || 0 }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.agent_runs) }} {{ tParams('kpi.agentRunsHint', { completed: dashboardOperationalInsights?.agentic_runs?.completed || 0, total: dashboardOperationalInsights?.agentic_runs?.total || 0 }) }}
{{ (kpis.connectors?.total || 0) === 0 ? t('kpi.noConnectors') : t('kpi.connectorsHealthy') }} {{ kpis.connectors?.healthy || 0 }}/{{ kpis.connectors?.total || 0 }} {{ ((kpis.connectors?.degraded || 0) + (kpis.connectors?.disconnected || 0)) > 0 ? tParams('kpi.connectorsIssuesHint', { degraded: kpis.connectors?.degraded || 0, disconnected: kpis.connectors?.disconnected || 0 }) : t('kpi.connectorsAllHealthy') }}
{{ t('kpi.mtta') }} {{ kpis.performance?.mtta_display || '–' }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.mtta_minutes) }} {{ !kpis.performance?.mtta_display || kpis.performance.mtta_display === '–' ? t('kpi.mttaEmpty') : t('kpi.mttaHint') }}
{{ t('kpi.mttr') }} {{ kpis.performance?.mttr_display || '–' }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.mttr_minutes) }} {{ !kpis.performance?.mttr_display || kpis.performance.mttr_display === '–' ? t('kpi.mttrEmpty') : t('kpi.mttrHint') }}
{{ t('kpi.escalationRate') }} {{ kpis.performance?.escalation_rate == null ? '–' : (kpis.performance.escalation_rate || 0).toFixed(1) + '%' }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.escalation_rate) }} {{ kpis.performance?.escalation_rate == null ? t('kpi.escalationRateEmpty') : tParams('kpi.escalationRateHint', { count: kpis.performance?.escalated_cases || 0 }) }}
{{ t('kpi.falsePositiveRate') }} {{ kpis.performance?.false_positive_rate == null ? '–' : (kpis.performance.false_positive_rate || 0).toFixed(1) + '%' }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.false_positive_rate) }} {{ kpis.performance?.false_positive_rate == null ? t('kpi.falsePositiveRateEmpty') : tParams('kpi.falsePositiveRateHint', { count: kpis.performance?.false_positive_cases || 0 }) }}
{{ t('kpi.threatIntelMatches') }} {{ kpis.threats?.alert_matches ?? '–' }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.threat_intel_matches) }} {{ tParams('kpi.threatIntelHint', { count: kpis.threats?.new_iocs_24h || 0 }) }}

{{ t('onboarding.welcome.title') }}

{{ t('onboarding.welcome.subtitle') }}

1
{{ t('onboarding.welcome.step1Title') }}

{{ t('onboarding.welcome.step1Body') }}

2
{{ t('onboarding.welcome.step2Title') }}

{{ t('onboarding.welcome.step2Body') }}

3
{{ t('onboarding.welcome.step3Title') }}

{{ t('onboarding.welcome.step3Body') }}

{{ t('dashboard.triageQueue') }}

{{ t('dashboard.triageQueueSubtitle') }}

{{ t('dashboard.queue.oldestUnacked') }} {{ triageQueue.oldest_open_at ? formatRelativeTime(triageQueue.oldest_open_at) : '–' }} {{ kpiTrendSrLabel(dashboardKpiTrendChips.oldest_unacked_minutes) }}

{{ t('dashboard.agents.title') }}

{{ tParams('dashboard.agents.working', { count: dashboardAgentWorkingCount() }) }} {{ t('dashboard.agents.idle') }}

{{ t('dashboard.agents.outcome.closed') }} {{ tParams('dashboard.automation.lastDays', { days: 30 }) }}
{{ t('dashboard.agents.outcome.hours') }} {{ tParams('dashboard.automation.lastDays', { days: 30 }) }}
% {{ t('dashboard.automation.coverage') }}

{{ t('dashboard.agents.unavailable') }}

{{ t('dashboard.agents.empty.title') }}

{{ t('dashboard.agents.empty.reason') }}

{{ tParams('dashboard.agents.runsMeta', { hours: dashboardOperationalInsights.agentic_runs.period_hours, total: dashboardOperationalInsights.agentic_runs.total, completed: dashboardOperationalInsights.agentic_runs.completed, failed: dashboardOperationalInsights.agentic_runs.failed }) }}

{{ t('dashboard.valueBoard.title') }}

{{ t('dashboard.teamImpact.title') }}

{{ teamImpactHeroHoursPerDay.toFixed(1) }} {{ t('dashboard.teamImpact.hoursPerDayUnit') }} {{ t('dashboard.teamImpact.heroLabel') }}

{{ tParams('dashboard.teamImpact.annualizedNote', { hours: Math.round(teamImpactAnnualizedHours) }) }}

{{ t('dashboard.teamImpact.capability.' + row.key) }} {{ row.hours.toFixed(1) }}{{ t('dashboard.teamImpact.hoursShortSuffix') }}

{{ t('dashboard.teamImpact.capability.' + row.key + 'Desc') }}

{{ teamImpactClosureRates.closure_rate.toFixed(0) }}% {{ tParams('dashboard.teamImpact.closureRate', { count: teamImpactClosureRates.closed, total: teamImpactClosureRates.total_alerts }) }}
{{ teamImpactClosureRates.escalation_rate.toFixed(0) }}% {{ tParams('dashboard.teamImpact.escalationRate', { count: teamImpactClosureRates.escalated, total: teamImpactClosureRates.total_alerts }) }}
{{ teamImpactClosureRates.agent_closure_rate.toFixed(0) }}% {{ tParams('dashboard.teamImpact.agentClosedShare', { count: teamImpactClosureRates.agent_closed, total: teamImpactClosureRates.total_alerts }) }}
${{ teamImpactAiCostPerAlert.toFixed(2) }} {{ t('dashboard.teamImpact.aiCostPerAlert') }}
{{ t('dashboard.teamImpact.howComputed') }}
{{ t('dashboard.teamImpact.assumption.triageBaseline') }}
{{ tParams('dashboard.teamImpact.minutesValue', { minutes: teamImpactAssumptions.manual_triage_baseline_min }) }}
{{ t('dashboard.teamImpact.assumption.enrichmentBaseline') }}
{{ tParams('dashboard.teamImpact.minutesValue', { minutes: teamImpactAssumptions.manual_enrichment_baseline_min }) }}
{{ t('dashboard.teamImpact.assumption.playbookBaseline') }}
{{ tParams('dashboard.teamImpact.minutesValue', { minutes: teamImpactAssumptions.manual_playbook_baseline_min }) }}
{{ t('dashboard.teamImpact.assumption.partialWeight') }}
{{ teamImpactAssumptions.partial_run_weight }}
{{ t('dashboard.teamImpact.assumption.source') }}
{{ teamImpactAssumptions.task_manual_minutes_source }}

{{ teamImpactAssumptions.annualized_projection_note }}

{{ t('dashboard.teamImpact.empty') }}

{{ t('dashboard.teamImpact.emptyHint') }}

{{ t('dashboard.aiCoverage.title') }}

{{ t('dashboard.aiCoverage.caveat') }}

{{ t('dashboard.cohorts.cohort.' + row.key) }} {{ row.share }} {{ row.count }} / {{ aiCoverageView.total }}

{{ t('dashboard.aiCoverage.' + row.key + 'Hint') }}

{{ t('dashboard.aiCoverage.noAlerts') }}
{{ aiCoverageView.total }}{{ t('dashboard.aiCoverage.received') }}
  1. {{ t('dashboard.aiCoverage.' + row.key) }} {{ row.count }} · {{ row.share }}

{{ t('dashboard.aiCoverage.flowHint') }}

{{ t('dashboard.aiCoverage.overlapUnknown') }}

{{ t('dashboard.aiCoverage.empty') }}

{{ t('dashboard.aiCoverage.emptyHint') }}

{{ t('dashboard.recentAlerts') }}

{{ alert.title }} {{ alert.source }} - {{ formatRelativeTime(alert.timestamp) }}
{{ t('alert.status.' + alert.status) || alert.status }}
{{ t('empty.noRecentAlerts') }}

{{ t('empty.noRecentAlertsHint') }}

{{ t('dashboard.recentAlerts.askAdmin') }}

{{ t('investigations.alerts.queueTitle') }}

{{ alertsUrgencyMode === 'sla' ? t('alerts.urgency.groupSla') : t('alerts.urgency.groupUrgency') }}
{{ alertSourceFilterSearch ? t('common.noMatches') : t('common.allSources') }}
{{ alertHostFilterSearch ? t('common.noMatches') : t('common.allHosts') }}
{{ assigneeFilterSearch ? t('common.noMatches') : t('investigations.alerts.assigneeFilter.empty') }}
{{ alertTenantFilterSearch ? t('common.noMatches') : t('crossTenant.noTenants') }}
{{ t('alerts.columns.title') }}
{{ t('findings.table.header.severity') }}
{{ t('investigations.alerts.table.alert') }}
{{ t('investigations.alerts.table.attack') }}
{{ t('investigations.alerts.table.age') }} {{ t('alerts.columns.manage') }}
{{ alertSeverityLabel(alert.severity) }} {{ alert.tenant_name || '–' }} {{ alertUrgencyTierLabelLong(alertUrgencyTier(alert)) }} {{ alertAgeLabel(alert) }} {{ alertEntitiesLabel(alert) }} {{ alertStatusLabel(alert.status) }} {{ alertAiActionLabel(alert) }} {{ alert.source }} {{ alert.mitre_technique }}{{ getKillChainName(alert.kill_chain_phase) }}– {{ formatAlertField(alert.host) }} {{ alertStatusLabel(alert.status) }} {{ alertClassificationLabel(alert.classification) }} {{ alertClassificationLabel('pending') }} {{ userDisplayName(alert.assignee) }} {{ formatRelativeTime(alert.timestamp) }}{{ formatExactTimestamp(alert.timestamp) }} {{ t('investigations.alerts.linked.short') }}
{{ t('common.showing') }} {{ alertsPagination.start }}-{{ alertsPagination.end }} {{ t('common.of') }} {{ alertsPagination.total }}
{{ tParams('common.pageOf', { current: alertsPagination.page, total: alertsPagination.totalPages }) }}
{{ alertDetailIndex() + 1 }} / {{ alertReturnContext.neighbors.length }}
{{ currentAlert.reference_id || currentAlert.id }} {{ alertSeverityLabel(currentAlert.severity) }} {{ alertStatusLabel(currentAlert.status) }} {{ tParams('alertDetail.page.classificationChip', { label: alertClassificationLabel(currentAlert.classification) }) }}

{{ currentAlert.title || t('alertDetail.page.fallbackTitle') }}

{{ t('alertDetail.page.kickerAnalysis') }}

{{ t('alertDetail.aiTriage.summaryTitle') }}

{{ t('alert.detail.actions.aiGenerated') }}
{{ alertAnalysisViewState.statusLabel }}{{ alertAnalysisViewState.statusLabel }}
{{ alertVerdictHero.engine === 'model' ? t('alertDetail.verdict.kicker') : t('alertDetail.verdict.kickerSystem') }}

{{ alertVerdictHero.title }}

{{ t('alertDetail.verdict.confidence.' + alertVerdictHero.confidence) }}
  • {{ line }}

{{ alertVerdictHero.engine === 'model' ? t('alertDetail.verdict.provenanceModel') : t('alertDetail.verdict.provenanceSystem') }}

{{ t('alertDetail.verdict.needsHuman') }} {{ t('alertDetail.verdict.human.' + alertHumanDecision) }}

{{ alertAnalysisViewState.message }}

{{ alertDetailedSummary }}
{{ t('alertDetail.aiTriage.whyPriority') }}
{{ factor.label }}
{{ t('alertDetail.aiTriage.badge') }}

{{ currentAlert.triage_result.summary || currentAlert.triage_result.assessed_severity }}

{{ t('alertDetail.aiTriage.wasHelpful') }}

{{ t('alertDetail.page.description') }}

{{ currentAlert.description }}

{{ t('alertDetail.page.resolution') }}

{{ t('alertDetail.page.verdict') }}
{{ currentAlert.verdict ? t('alert.verdict.' + currentAlert.verdict) : alertClassificationLabel(currentAlert.classification) }}
{{ t('alertDetail.aiTriage.resolvedBy') }}
{{ currentAlert.resolved_by ? userDisplayName(currentAlert.resolved_by) : '–' }}
{{ t('alertDetail.aiTriage.resolvedAt') }}
{{ currentAlert.resolved_at ? formatExactTimestamp(currentAlert.resolved_at) : '–' }}

{{ currentAlert.resolution_summary }}

{{ t('alertDetail.page.detection') }}

{{ t('alertDetail.process.contextTitle') }}

{{ t('alertDetail.fields.parentProcess') }}
{{ alertRawField(currentAlert, 'parent_process') }}
{{ t('alertDetail.detection.process') }}
{{ alertRawField(currentAlert, 'process') }}
{{ t('alertDetail.detection.domain') }}
{{ alertDomainDisplay(currentAlert) }}
{{ t('alertDetail.metadata.user') }}
{{ alertUsernameDisplay(currentAlert) }}
{{ t('alertDetail.fields.commandLine') }} {{ alertRawField(currentAlert, 'command_line') }}
{{ t('alertDetail.fields.encodedPayload') }} {{ alertEncodedExpanded ? alertRawField(currentAlert, 'encoded_command') : truncateMiddle(alertRawField(currentAlert, 'encoded_command'), 240) }}

{{ t('alertDetail.framework.techniquesIndicators') }}

{{ t('alertDetail.framework.context') }}

{{ t('alertDetail.framework.attckMapping') }}

{{ t('alertDetail.framework.attckTactic') }}{{ getMitreTacticName(currentAlert.mitre_tactic) }}
{{ t('alertDetail.page.technique') }}{{ currentAlert.mitre_technique }}
{{ t('alertDetail.framework.killChainPhase') }}{{ getKillChainName(currentAlert.kill_chain_phase) }}
{{ t('alertDetail.framework.evidenceCaptured') }}

{{ t('alertDetail.framework.observedIndicators') }}

{{ currentAlert.indicators.length }}
  • {{ alertIndicatorType(ioc) }}{{ alertIndicatorValue(ioc) }}
{{ t('alertDetail.evidence.provider') }}

{{ t('globalThreat.nav.threatIntel') }}

{{ currentAlert.enrichment.threat_intel.matches?.length || 0 }} matched
{{ match.indicator_value || match.value || 'Matched indicator' }}{{ match.indicator_type || match.type || 'observable' }}
{{ match.source }}
Confidence
{{ alertThreatMatchConfidence(match) }}
{{ t('investigations.offenders.lastSeen') }}
Country
{{ alertThreatMatchCountry(match) }}
{{ source }}

{{ t('overlay.alert.rawAlert') }}

{{ lazyRawAlertJson(currentAlert) }}

{{ t('alert.detail.actions.title') }}

{{ t('alert.detail.actions.aiGenerated') }}

{{ alertRecommendationTeaser.topAction }}

{{ t('alert.detail.actions.title') }}

{{ t('alert.detail.actions.aiGenerated') }}
  1. {{ row.text }}

    {{ t('alert.detail.actions.manualStep') }}

{{ t('alertDetail.empty.actionsTitle') }}

{{ t('alert.detail.actions.empty') }}

{{ t('alert.detail.similar.title') }}

{{ t('alert.detail.similar.emptyTitle') }}

{{ t('alert.detail.similar.emptyBody') }}

{{ t('alert.detail.sameSource.title') }}

{{ alertSameSource.source }}

{{ alertSameSourceCountLabel() }}

{{ t('alert.detail.sameSource.emptyTitle') }}

{{ t('alert.detail.sameSource.emptyBody') }}

{{ Math.round(alertContextGraphScale * 100) }}%

{{ t('alertDetail.contextGraph.building') }}

{{ t('alertDetail.contextGraph.connecting') }}

{{ t('alertDetail.analysisOutput.title') }}

Findings

{{ t('alertDetail.analysisOutput.subtitle') }}

{{ alertAiFindings.length }} total

{{ t('alertDetail.analysisOutput.findingsTitle') }}

{{ alertAiFindings.length }}

{{ t('alertDetail.analysisOutput.inProgress') }}

{{ t('alertDetail.analysisOutput.pendingBody') }}

{{ t('alertDetail.analysisOutput.badge') }}{{ finding.confidence.charAt(0).toUpperCase() + finding.confidence.slice(1) }} confidence

{{ finding.title }}

{{ finding.detail }}

  1. {{ step }}
{{ t('alertDetail.analysisOutput.generatedBy') }}
{{ alertAnalysisViewState.status === 'not_started' ? t('alertDetail.empty.findingsNotStarted') : t('alertDetail.empty.findingsNone') }}

{{ alertAnalysisViewState.message }}

{{ t('threatmapResearch.title') }}

{{ t('threatmapResearch.alertSubtitle') }}

{{ t('common.loading') }}

{{ tParams('threatmapResearch.running', { count: alertResearch.selected.length }) }}

{{ t(researchEmptyStateMeta(alertResearch.lastRun.status).titleKey) }}

{{ alertResearch.lastRun.detail }}
{{ t('threatmapResearch.history') }}
{{ report.provider }}{{ formatRelativeTime(report.generated_at) }}{{ t(researchStatusLabelKey(report.status)) }}
{{ result.value }}
{{ result.type }}{{ t(researchStatusLabelKey(result.status)) }}

{{ result.error }}

{{ t('threatmapResearch.score') }}
{{ result.score ?? t('threatmapResearch.unavailable') }}
{{ t('threatmapResearch.verdict') }}
{{ result.verdict ?? t('threatmapResearch.unavailable') }}
{{ t('threatmapResearch.confidence') }}
{{ result.confidence != null ? result.confidence + '%' : t('threatmapResearch.unavailable') }}
{{ t('threatmapResearch.sourcesSucceeded') }}
{{ researchMetadataMetric(result, 'providers_succeeded') }}
{{ t('threatmapResearch.creditsUsed') }}
{{ researchMetadataMetric(result, 'credits_used') }}

{{ result.summary }}

{{ name }}{{ researchProviderSummary(source).verdict }}
{{ t('threatmapResearch.verdict') }}
{{ researchProviderSummary(source).verdict }}
{{ t('threatmapResearch.providerScore') }}
{{ researchProviderSummary(source).score ?? t('threatmapResearch.unavailable') }}

{{ researchProviderSummary(source).description }}

{{ t('threatmapResearch.rawResponse') }}
{{ JSON.stringify(source, null, 2) }}
{{ t('threatmapResearch.evidence') }}
{{ JSON.stringify(result.payload, null, 2) }}

{{ t('threatmapResearch.truncated') }}

{{ question.label }}

{{ question.summary || question.error }}

  • {{ source.title }} · {{ source.url }}
{{ t('alertDetail.collab.kicker') }}

{{ t('alertDetail.page.tabNotes') }}

{{ t('alertDetail.collab.subtitle') }}

{{ t('alertDetail.collab.linkedCaseNote') }}
{{ t('alertDetail.legacyNote.context') }}

{{ t('alertDetail.legacyNote.title') }}

{{ t('alertDetail.legacyNote.body') }}

{{ currentAlert.investigation_notes }}
{{ note.note_type || 'note' }} {{ t('alert.detail.notes.internalBadge') }} {{ t('alert.detail.notes.copilotBadge') }}
{{ note.content }}
{{ note.author_display || userDisplayName(note.author_user_id) || 'Unknown analyst' }}

{{ t('alertDetail.notes.loading') }}

{{ t('alert.detail.notes.filterEmpty.title') }}

{{ t('alert.detail.notes.filterEmpty.message') }}

{{ t('alertDetail.notes.empty') }}

{{ currentAlert.investigation_id ? t('alertDetail.empty.notesLinked') : t('alertDetail.empty.notesFirst') }}

{{ t('alertDetail.empty.askAdmin') }}

{{ t('investigations.playbooks.library.title') }}

{{ playbook.name || t('playbooks.unnamed') }}

{{ playbook.description || t('playbooks.noDescription') }}

{{ t('investigations.playbooks.library.systemBadge') }} {{ t('investigations.playbooks.library.skillBadge') }} {{ playbook.category_label || formatKey(playbook.category || 'playbook') }} {{ playbookHeroRuns(playbook) > 0 ? tParams('playbooks.card.runMeta', { count: playbookHeroRuns(playbook), rate: playbookSuccessPct(playbook) }) : t('tasks.neverRun') }}

{{ t('playbooks.noMatch') }}

{{ t('playbooks.noMatchHint') }}

{{ t('playbooks.emptyTitle') }}

{{ t('playbooks.emptyHint') }}

{{ t('playbooks.emptyAskAdmin') }}

{{ t('common.showing') }} {{ playbooksPagination.start }}-{{ playbooksPagination.end }} {{ t('common.of') }} {{ playbooksPagination.total }}
{{ tParams('common.pageOf', { current: playbooksPagination.page, total: playbooksPagination.totalPages }) }}
{{ t('investigations.playbooks.library.systemBadge') }} {{ t('investigations.playbooks.library.skillBadge') }} {{ currentPlaybook.status === 'active' ? t('playbook.status.active') : (currentPlaybook.status === 'draft' ? t('investigations.playbooks.detail.draft') : t('playbook.status.inactive')) }} {{ tParams('investigations.playbooks.detail.version', { version: currentPlaybook.version }) }}

{{ currentPlaybook.name }}

{{ currentPlaybook.description }}

{{ currentPlaybook.estimated_minutes ? tParams('investigations.playbooks.detail.estimated', { minutes: currentPlaybook.estimated_minutes, steps: (currentPlaybook.steps || []).length }) : tParams('investigations.playbooks.detail.stepCount', { count: (currentPlaybook.steps || []).length }) }} {{ tParams('investigations.playbooks.detail.runs', { count: currentPlaybook.run_count || 0 }) }} {{ tParams('investigations.playbooks.detail.successRate', { rate: Math.round(((currentPlaybook.success_rate || 0) * (currentPlaybook.success_rate <= 1 ? 100 : 1))) }) }} {{ currentPlaybook.last_run ? tParams('investigations.playbooks.detail.lastRun', { time: formatTime(currentPlaybook.last_run) }) : t('investigations.playbooks.detail.never') }}

{{ t('investigations.playbooks.detail.preparation') }}

{{ currentPlaybook.preparation_notes }}

{{ t('investigations.playbooks.detail.triggers') }}

  • {{ tr.field }} {{ tr.operator }} {{ Array.isArray(tr.value) ? tr.value.join(', ') : tr.value }}

{{ t('investigations.playbooks.nist.' + phase.id) }}

{{ playbookStepsByPhase(phase.id).length }}
  1. {{ step.order }}
    {{ step.name }}
    {{ formatKey(step.type) }} {{ step.action }} {{ step.skill_invocation }} {{ t('investigations.playbooks.detail.stepRequiresApproval') }} {{ t('investigations.playbooks.detail.stepAuto') }} {{ tParams('investigations.playbooks.detail.stepEstimate', { seconds: step.estimated_seconds }) }}

{{ tParams('investigations.playbooks.detail.emptyPhases', { phases: nistPhases.filter((entry) => playbookStepsByPhase(entry.id).length === 0).map((entry) => t('investigations.playbooks.nist.' + entry.id)).join(', ') }) }}

{{ t('investigations.playbooks.detail.noStepsTitle') }}

{{ t('investigations.playbooks.detail.noStepsHint') }}

{{ t('investigations.cases.title') }}

{{ tParams('investigations.cases.totalCases', { count: totals.cases }) }}
{{ caseOwnerFilterSearch ? t('common.noMatches') : t('investigations.cases.ownerFilter.empty') }}
{{ caseTenantFilterSearch ? t('common.noMatches') : t('crossTenant.noTenants') }}
{{ t('investigations.cases.table.id') }} {{ t('investigations.cases.table.case') }}
{{ t('investigations.cases.table.severity') }}
{{ t('investigations.cases.table.alerts') }} {{ t('investigations.cases.table.findings') }} {{ t('investigations.cases.table.age') }}
{{ c.description }}
{{ c.tenant_name || '–' }} {{ alertSeverityLabel(c.severity) }} {{ caseStatusLabel(c.status) }} {{ alertClassificationLabel(c.classification) }} {{ (c.alert_ids || []).length }} {{ (c.finding_ids || []).length }} {{ formatRelativeTime(c.opened_at) }}{{ formatExactTimestamp(c.opened_at) }}
{{ t('common.showing') }} {{ casesPagination.start }}-{{ casesPagination.end }} {{ t('common.of') }} {{ casesPagination.total }}
{{ tParams('common.pageOf', { current: casesPagination.page, total: casesPagination.totalPages }) }}
{{ currentCase.case_number }} {{ alertSeverityLabel(currentCase.severity) }} {{ caseStatusLabel(currentCase.status) }} {{ alertClassificationLabel(currentCase.classification) }}

{{ currentCase.title }}

{{ currentCase.assigned_to ? userDisplayName(currentCase.assigned_to) : (currentCase.owner?.name || '–') }} {{ currentCase.tenant_name }} {{ tParams('investigations.cases.openedAgo', { time: formatExactTimestamp(currentCase.opened_at) }) }} {{ tParams('investigations.cases.updatedAgo', { time: formatRelativeTime(currentCase.updated_at) }) }}

{{ t('common.loadingCase') }}

{{ t('investigations.cases.summary.description') }}

{{ currentCase.description }}

{{ t('caseDetail.summary.aiAnalysis') }}

{{ t('investigations.cases.enrichment.notGenerated') }}

{{ t('caseDetail.summary.aiAnalysis') }}

{{ t('investigations.cases.enrichment.running') }}

{{ t('caseDetail.summary.aiAnalysis') }}

{{ currentCase.enrichment.failure_code === 'organization_inactive' ? t('investigations.cases.enrichment.organizationInactive') : t('investigations.cases.enrichment.unavailable') }}

{{ t('caseDetail.summary.aiAnalysis') }} {{ enrichmentEngineLabel(currentCase.enrichment.tier2.summary) }}

{{ t('caseDetail.summary.whyPriority') }}
{{ f.label }}
Classification
{{ currentCase.enrichment.classification.category }}
Risk
{{ currentCase.enrichment.risk.score }} {{ currentCase.enrichment.risk.business_impact }}
{{ t('caseDetail.summary.relatedIncidents') }}
{{ currentCase.enrichment.correlation.count }} prior

{{ t('investigations.cases.summary.mitre') }}

{{ tac }} {{ tec }}

{{ t('investigations.cases.summary.tags') }}

{{ tag }}

Detection

{{ t('caseDetail.agent.title') }}

{{ t('caseDetail.agent.assetCmdb') }}

{{ t('caseDetail.compliance.title') }}

{{ c.framework_label }} {{ c.control }}

{{ t('caseDetail.summary.evidenceCounts') }}

{{ caseIOCs.length || (currentCase.ioc_count || 0) }} {{ t('investigations.cases.summary.iocCount') }} {{ (currentCaseChildren?.assets || []).length || (currentCase.asset_count || 0) }} {{ t('investigations.cases.summary.assetCount') }} {{ (currentCaseChildren?.notes || []).length || (currentCase.note_count || 0) }} {{ t('investigations.cases.summary.noteCount') }} {{ caseTasksByStatus('done').length + '/' + (currentCaseChildren?.tasks || []).length }} {{ t('investigations.cases.summary.taskCount') }}

{{ t('investigations.cases.alerts.title') }}

{{ caseLinkedAlerts.length }}
{{ t('findings.table.header.severity') }} {{ t('investigations.alerts.table.id') }} {{ t('investigations.alerts.table.alert') }} {{ t('common.source') }} {{ t('alert.fields.host') }} {{ t('common.status') }} {{ t('findings.table.header.time') }}
{{ alertSeverityLabel(alert.severity) }} {{ alert.source }} {{ formatAlertField(alert.host) }} {{ alertStatusLabel(alert.status) }} {{ alertClassificationLabel(alert.classification) }} {{ formatExactTimestamp(alert.timestamp) }}

{{ t('investigations.cases.alerts.empty') }}

{{ t('investigations.cases.alerts.emptyHint') }}

{{ t('investigations.cases.timeline.title') }}

{{ tParams('investigations.cases.timeline.events', { count: caseTimeline.length }) }}
{{ t('caseDetail.timeline.loading') }}
  1. {{ formatTimelineTime(evt.timestamp) }} {{ timelineEventLabel(evt.type) }} {{ alertSeverityLabel(evt.severity) }} From alert {{ shortEntityId(evt.metadata.source_alert_id) }}
    {{ timelineEventTitle(evt) }}

    {{ timelineEventDescription(evt) }}

{{ t('investigations.cases.timeline.empty') }}

{{ t('investigations.cases.timeline.emptyHint') }}

{{ t('investigations.cases.findings.title') }}

{{ caseFindingsDisplay.length }}
{{ caseEnrichmentLoading ? (currentCase.status === 'closed' ? t('investigations.cases.enrichment.notGenerated') : t('investigations.cases.enrichment.findingsRunning')) : t('investigations.cases.findings.loading') }}

{{ t('investigations.cases.findings.empty') }}

{{ t('investigations.cases.findings.emptyHint') }}
Severity Finding Type {{ t('caseDetail.findings.fromRun') }} When

{{ t('investigations.cases.iocs.title') }}

{{ caseIOCs.length }}
{{ t('caseDetail.iocs.loading') }}
{{ t('investigations.cases.iocs.table.type') }} {{ t('investigations.cases.iocs.table.value') }} {{ t('investigations.cases.iocs.table.confidence') }} {{ t('investigations.cases.iocs.table.source') }} Tags {{ t('investigations.cases.iocs.table.firstSeen') }} {{ t('investigations.cases.iocs.enrich') }}
{{ ioc.type }} {{ ioc.value }} {{ iocConfidencePct(ioc) }}% {{ iocSourcesSummary(ioc) }} {{ tag }} – {{ ioc.first_seen ? formatExactTimestamp(ioc.first_seen) : '–' }}

{{ t('investigations.cases.iocs.empty') }}

{{ t('investigations.cases.iocs.emptyHint') }}

{{ t('investigations.cases.assets.title') }}

{{ (currentCaseChildren?.assets || []).length }}
{{ t('investigations.cases.assets.table.name') }} {{ t('investigations.cases.assets.table.type') }} {{ t('investigations.cases.assets.table.identifier') }} {{ t('investigations.cases.assets.table.criticality') }} {{ t('investigations.cases.assets.table.compromise') }} {{ t('investigations.cases.assets.table.analysis') }}
{{ a.name }} ×{{ a.source_alert_count }} {{ a.asset_type || a.type }} {{ a.ip || a.domain || a.os || a.owner || '–' }} {{ a.criticality || '–' }} {{ formatCaseStatusLabel(a.compromise_status) }} {{ formatCaseStatusLabel(a.analysis_status) }}

{{ t('investigations.cases.assets.empty') }}

{{ t('investigations.cases.assets.emptyHint') }}

{{ t('investigations.cases.notes.title') }}

{{ (currentCaseChildren?.notes || []).length }}
{{ caseNoteAuthorLabel(n) }} {{ n.note_type }} From alert {{ shortEntityId(n.source_alert_id) }} {{ formatExactTimestamp(n.ts) }} {{ tag }}

{{ t('investigations.cases.notes.empty') }}

{{ t('investigations.cases.notes.emptyHint') }}

{{ t('investigations.cases.artifacts.title') }}

{{ fileCountLabel(caseArtifactsCount) }} · {{ humanSize(caseArtifactsTree?.total_size_bytes || 0) }}

{{ t('caseDetail.artifacts.readonlyNote') }}
Uploads {{ artifactPolicySummary() }}
  • {{ item.file.name }} {{ humanSize(item.file.size) }} · {{ artifactQueueStatus(item) }} {{ item.error.message }}

{{ caseArtifactUploadLiveMessage }}

{{ t('investigations.cases.artifacts.loading') }}

{{ t('investigations.cases.artifacts.empty') }}

{{ t('investigations.cases.artifacts.emptyHint') }}
{{ t('caseDetail.artifacts.manualUploads') }} {{ fileCountLabel(caseArtifactsTree.manual_uploads.length) }}
{{ pb.playbook_name }} {{ pb.total_runs }} runs · {{ fileCountLabel(pb.total_artifacts) }} · {{ humanSize(pb.total_size_bytes) }}
Run {{ (run.run_id || '').slice(0, 8) }} {{ formatFullTime(run.started_at) }} {{ fileCountLabel((run.artifacts || []).length) }} {{ run.status }}
{{ t('investigations.cases.artifacts.adhocTasks') }} {{ caseArtifactsTree.tasks.length }} runs
{{ task.task_name || ('Run ' + (task.run_id || '').slice(0, 8)) }} {{ formatFullTime(task.started_at) }} {{ fileCountLabel((task.artifacts || []).length) }}

{{ t('investigations.cases.tasks.title') }}

{{ col === 'todo' ? t('investigations.cases.tasks.col.todo') : (col === 'in_progress' ? t('investigations.cases.tasks.col.inProgress') : t('investigations.cases.tasks.col.done')) }}
{{ caseTasksByStatus(col).length }}
{{ t.title }}
{{ t.description }}
{{ userDisplayName(t.assignee) }} {{ t.priority }} {{ formatExactTimestamp(t.due_date) }}
{{ t('investigations.cases.tasks.empty.column') }}

{{ t('common.loading') }}

{{ t('investigations.cases.customerContext.forbidden.title') }}

{{ t('investigations.cases.customerContext.forbidden.message') }}

{{ t('investigations.cases.customerContext.profile.title') }}

{{ customerContextProfileWhy() }}

{{ t('investigations.cases.customerContext.profile.industry') }}
{{ customerContext.org.industry ? customerContextLabel(customerContext.org.industry) : t('investigations.cases.customerContext.profile.industryUnset') }}
{{ t('investigations.cases.customerContext.profile.tier') }}
{{ customerContextLabel(customerContext.org.tier) }}
{{ t('investigations.cases.customerContext.profile.region') }}
{{ customerContext.org.timezone }}
{{ t('investigations.cases.customerContext.profile.contacts') }}
{{ customerContext.org.customer_contact_emails.join(', ') }}

{{ t('investigations.cases.customerContext.attackSurface.title') }}

{{ customerContextAttackSurfaceWhy() }}

{{ t('investigations.cases.customerContext.attackSurface.empty') }}

{{ t('alertDetail.empty.askAdmin') }}
  • {{ conn.health }} {{ conn.name }} ({{ conn.vendor || conn.status }})

{{ t('investigations.cases.customerContext.history.title') }}

{{ customerContextHistoryWhy() }}

{{ customerContext.history.total_alerts }}{{ t('investigations.cases.customerContext.history.totalAlerts') }}
{{ customerContext.history.critical_alerts }}{{ t('investigations.cases.customerContext.history.critical') }}
{{ customerContext.history.open_alerts }}{{ t('investigations.cases.customerContext.history.open') }}

{{ t('investigations.cases.customerContext.industryThreats.title') }}

{{ customerContextIndustryThreatsWhy() }}

{{ t('investigations.cases.customerContext.industryThreats.empty') }}

  • {{ t('investigations.cases.customerContext.industryThreats.related') }} {{ threat.name }} {{ threat.description }}

{{ t('investigations.cases.customerContext.regulatory.title') }}

{{ t('common.comingSoon') }}

{{ t('investigations.cases.customerContext.regulatory.notAvailable') }}

{{ t('threatmapResearch.title') }}

{{ t('threatmapResearch.subtitle') }}

{{ t('common.loading') }}

{{ tParams('threatmapResearch.running', { count: caseResearch.selected.length }) }}

{{ t(researchEmptyStateMeta(caseResearch.lastRun.status).titleKey) }}

{{ caseResearch.lastRun.detail }}
{{ t('threatmapResearch.history') }}
{{ report.provider }}{{ formatRelativeTime(report.generated_at) }}{{ t(researchStatusLabelKey(report.status)) }}
{{ result.value }}
{{ result.type }}{{ t(researchStatusLabelKey(result.status)) }}

{{ result.error }}

{{ t('threatmapResearch.score') }}
{{ result.score ?? t('threatmapResearch.unavailable') }}
{{ t('threatmapResearch.verdict') }}
{{ result.verdict ?? t('threatmapResearch.unavailable') }}
{{ t('threatmapResearch.confidence') }}
{{ result.confidence != null ? result.confidence + '%' : t('threatmapResearch.unavailable') }}
{{ t('threatmapResearch.sourcesSucceeded') }}
{{ researchMetadataMetric(result, 'providers_succeeded') }}
{{ t('threatmapResearch.creditsUsed') }}
{{ researchMetadataMetric(result, 'credits_used') }}

{{ result.summary }}

{{ name }}{{ researchProviderSummary(source).verdict }}
{{ t('threatmapResearch.verdict') }}
{{ researchProviderSummary(source).verdict }}
{{ t('threatmapResearch.providerScore') }}
{{ researchProviderSummary(source).score ?? t('threatmapResearch.unavailable') }}

{{ researchProviderSummary(source).description }}

{{ t('threatmapResearch.rawResponse') }}
{{ JSON.stringify(source, null, 2) }}
{{ t('threatmapResearch.evidence') }}
{{ JSON.stringify(result.payload, null, 2) }}

{{ t('threatmapResearch.truncated') }}

{{ question.label }}

{{ question.summary || question.error }}

  • {{ source.title }} · {{ source.url }}

{{ t('investigations.offenders.title') }}

{{ t('investigations.offenders.subtitle') }}

{{ t('common.loading') }}

{{ t('investigations.offenders.emptyTitle') }}

{{ t('investigations.offenders.empty') }}

{{ t('tiOverview.hero.title') }}
{{ t('tiOverview.hero.checkingFreshness') }} {{ threatCountLabel('tiOverview.hero.sourcesNeedAttention', threatIntelDegradedSources.length) }} {{ threatCountLabel('tiOverview.hero.sourcesCurrent', threatIntelSourceHealth.length) }}
{{ tParams('tiOverview.hero.updated', { time: formatRelativeTime(threatIntelLastRefresh) }) }}
{{ t('tiOverview.hero.partial') }} {{ threatIntelDegradedSources.map(source => source.message ? source.name + ': ' + source.message : tParams('tiOverview.hero.sourceDegraded', { name: source.name })).join(' ') }}
{{ t('tiOverview.hero.sources') }}
{{ source.name }}{{ t('tiOverview.hero.platformManaged') }}{{ threatSourceStatusLabel(source.status) }}{{ tParams('tiOverview.source.records', { count: formatNumber(source.record_count) }) }}
{{ t('tiOverview.hero.unavailable') }}{{ t(isGlobalAdmin && !activeTenantId ? 'tiOverview.hero.unavailableHintAdmin' : 'tiOverview.hero.unavailableHint') }}

{{ t('tiOverview.landscape.title') }}

{{ t(isCrossTenantView ? 'tiOverview.landscape.subtitleCrossTenant' : 'tiOverview.landscape.subtitle') }}

{{ threatIntelScopeLabel }}

{{ t('tiOverview.empty.title') }}

{{ t(isGlobalAdmin && !activeTenantId ? 'tiOverview.empty.bodyAdmin' : 'tiOverview.empty.body') }}

  • {{ t('tiOverview.empty.expectIndicators') }}
  • {{ t('tiOverview.empty.expectReports') }}
  • {{ t('tiOverview.empty.expectMatches') }}
{{ t('tiOverview.matches.emptyTitle') }}

{{ t('tiOverview.matches.emptyHint') }}

{{ t('tiOverview.matches.tableTitle') }}

{{ t('tiOverview.matches.tableSubtitle') }}

{{ tParams('tiOverview.reports.total', { count: formatNumber(totals.intelMatches) }) }}
{{ t('tiOverview.caught.title') }}

{{ t(isCrossTenantView ? 'tiOverview.caught.summaryCrossTenant' : 'tiOverview.caught.summary') }}

{{ t('tiOverview.matches.matchedIndicator') }}{{ t('tiOverview.col.alert') }}{{ t('tiOverview.col.tenant') }}{{ t('tiOverview.matches.matchedField') }}{{ t('tiOverview.matches.lastMatched') }}{{ t('tiOverview.col.disposition') }}{{ t('tiOverview.col.open') }}
{{ match.indicator_value || t('tiOverview.fallback.indicatorUnavailable') }}{{ threatIndicatorTypeLabel(match.indicator_type) }}
{{ match.alert_title || match.alert_id || t('tiOverview.fallback.alertUnavailable') }}{{ t('tiOverview.matches.caseLinked') }} {{ match.tenant_name || match.tenant_id }} {{ match.matched_field || t('tiOverview.fallback.exactValue') }} – {{ threatMatchDispositionLabel(match.disposition) }}
{{ t(isGlobalAdmin && !activeTenantId ? 'tiOverview.matches.catalogOnly' : (hasActiveThreatMatchFilters ? 'tiOverview.matches.noneFiltered' : 'tiOverview.matches.none')) }}

{{ t(isGlobalAdmin && !activeTenantId ? 'tiOverview.matches.catalogOnlyHint' : (hasActiveThreatMatchFilters ? 'tiOverview.matches.noneFilteredHint' : 'tiOverview.matches.noneHint')) }}

{{ tParams('tiOverview.pagination.range', { start: intelMatchesPagination.start, end: intelMatchesPagination.end, total: intelMatchesPagination.total }) }}
{{ tParams('common.pageOf', { current: intelMatchesPagination.page, total: intelMatchesPagination.totalPages }) }}

{{ t('tiOverview.col.indicators') }}

{{ t('tiOverview.indicators.subtitle') }}

{{ tParams('tiOverview.reports.total', { count: formatNumber(totals.intelIndicators) }) }}
{{ t('tiOverview.col.indicator') }}{{ t('tiOverview.col.score') }}{{ t('common.status') }}{{ t('tiOverview.col.sources') }}{{ t('investigations.offenders.lastSeen') }}{{ t('tiOverview.col.matches') }}{{ t('tiOverview.col.open') }}
{{ indicator.value }}{{ threatIndicatorTypeLabel(indicator.type) }}
{{ indicator.operational_score ?? '–' }}{{ t('tiOverview.indicators.relevance') }}
{{ threatLifecycleLabel(indicator.lifecycle_status) }}
{{ source }}+{{ indicator.source_count - 2 }}{{ t('tiOverview.indicators.noSource') }}
{{ indicator.last_seen ? formatTime(indicator.last_seen) : '–' }} {{ t('common.noMatches') }}
{{ t(hasActiveThreatIndicatorFilters ? 'tiOverview.indicators.emptyFiltered' : 'tiOverview.indicators.emptyTitle') }}

{{ t(hasActiveThreatIndicatorFilters ? (filters.intelIndicators.search && filters.intelIndicators.status === 'active' ? 'tiOverview.indicators.emptyInactiveHint' : 'tiOverview.indicators.emptyFilteredHint') : 'tiOverview.indicators.emptyHint') }}

{{ tParams('tiOverview.pagination.range', { start: intelIndicatorsPagination.start, end: intelIndicatorsPagination.end, total: intelIndicatorsPagination.total }) }}
{{ tParams('common.pageOf', { current: intelIndicatorsPagination.page, total: intelIndicatorsPagination.totalPages }) }}

{{ t('tiOverview.reports.pageTitle') }}

{{ t('tiOverview.reports.tabSubtitle') }}

{{ tParams('tiOverview.reports.total', { count: formatNumber(totals.intelReports) }) }}
{{ t('tiOverview.reports.summaryReports') }}
{{ t(threatReportSummary().pageOnly ? 'tiOverview.reports.summaryTouchingPage' : 'tiOverview.reports.summaryTouching') }}
{{ t(threatReportSummary().pageOnly ? 'tiOverview.reports.summaryIndicatorsPage' : 'tiOverview.reports.summaryIndicators') }}

{{ report.title }}

TLP:{{ String(report.tlp).toUpperCase() }}

{{ report.summary || t('tiOverview.reports.noSummary') }}

{{ threatSourceLabel(report.source) }}{{ threatReportMetaTypeLabel(report) }}{{ threatCountLabel('tiOverview.reports.indicatorCount', report.indicator_count) }}{{ threatCountLabel('tiOverview.reports.alertMatchCount', report.alert_match_count) }}
{{ t(hasActiveThreatReportFilters ? 'tiOverview.reports.emptyFiltered' : 'tiOverview.reports.emptyTitle') }}

{{ t(hasActiveThreatReportFilters ? 'tiOverview.reports.emptyFilteredHint' : 'tiOverview.reports.emptyHint') }}

{{ t('tiOverview.empty.askAdmin') }}
{{ tParams('tiOverview.pagination.range', { start: intelReportsPagination.start, end: intelReportsPagination.end, total: intelReportsPagination.total }) }}
{{ tParams('common.pageOf', { current: intelReportsPagination.page, total: intelReportsPagination.totalPages }) }}
{{ t(canViewManagerSurfaces ? 'threatWorkflows.advisories.internal' : 'threatWorkflows.advisories.customerPublication') }}

{{ t(canViewManagerSurfaces ? 'threatWorkflows.advisories.title' : 'threatWorkflows.advisories.customerTitle') }}

{{ t(canViewManagerSurfaces ? 'threatWorkflows.advisories.description' : 'threatWorkflows.advisories.customerDescription') }}

{{ threatWorkflowLinkNotice }}

{{ t('threatWorkflows.common.selectTenant') }}

{{ canCrossTenant && threatWorkflowTenantPicker.loaded && !crossTenantTenants.length ? t('threatWorkflows.common.noTenants') : t('threatWorkflows.common.selectTenantHint') }}

{{ t('threatWorkflows.common.globalAdminHint') }}

{{ t('threatWorkflows.hunts.internal') }}

{{ t('threatWorkflows.hunts.title') }}

{{ t('threatWorkflows.hunts.description') }}

{{ threatWorkflowLinkNotice }}

{{ t('threatWorkflows.common.selectTenant') }}

{{ canCrossTenant && threatWorkflowTenantPicker.loaded && !crossTenantTenants.length ? t('threatWorkflows.common.noTenants') : t('threatWorkflows.common.selectTenantHint') }}

{{ t('threatWorkflows.common.globalAdminHint') }}

{{ t('threats.vulns.title') }}

{{ t('threats.vulns.subtitle') }}

{{ formatNumber(totals.threatVulnerabilities) }} {{ t('threats.vulns.total') }}
{{ formatNumber(threatVulnerabilityKpiChips.total) }}{{ t('threats.vulns.kpis.total') }} {{ formatNumber(threatVulnerabilityKpiChips.critical) }}{{ t('threats.vulns.kpis.critical') }} {{ formatNumber(threatVulnerabilityKpiChips.exploited) }}{{ t('threats.vulns.kpis.exploited') }} {{ formatNumber(threatVulnerabilityKpiChips.internalExposure) }}{{ t('threats.vulns.kpis.internal') }}
{{ t('threats.vulns.table.cve') }}{{ t('common.severity') }}{{ t('threats.vulns.table.cvss') }}{{ t('threats.vulns.table.hosts') }}{{ t('threats.vulns.table.impact') }}{{ t('threats.vulns.table.published') }}{{ t('threats.vulns.table.open') }}
{{ row.cveId }}{{ t('threats.vulns.badge.kev') }}{{ t('threats.vulns.badge.exploited') }}{{ chip.label }}
{{ threatSeverityLabel(row.severity) }}
{{ row.cvssLabel }}{{ t('threats.vulns.table.cvss') }}
{{ formatNumber(row.affectedHostCount) }}{{ t('threats.vulns.table.hosts') }}
{{ threatVulnerabilityImpactLabel(row) }}{{ t('threats.vulns.impact.none') }} {{ row.publishedLabel ? formatExactTimestamp(row.publishedLabel) : '–' }}
{{ hasActiveThreatVulnerabilityFilters ? t('threats.vulns.empty.filteredTitle') : t('threats.vulns.empty.title') }}

{{ hasActiveThreatVulnerabilityFilters ? t('threats.vulns.empty.filteredBody') : t('threats.vulns.empty.body') }}

{{ tParams('tiOverview.pagination.range', { start: threatVulnerabilitiesPagination.start, end: threatVulnerabilitiesPagination.end, total: threatVulnerabilitiesPagination.total }) }}
{{ tParams('common.pageOf', { current: threatVulnerabilitiesPagination.page, total: threatVulnerabilitiesPagination.totalPages }) }}
{{ t('approvals.summary.pendingDecisions') }} {{ approvalAuditSummary().pending }}
{{ t('approvals.summary.approved7d') }} {{ approvalAuditSummary().approved7d }}
{{ t('approvals.summary.rejected7d') }} {{ approvalAuditSummary().rejected7d }}
{{ t('approvals.summary.aiActions30d') }} {{ approvalAuditSummary().aiActions30d ?? '\u2014' }} {{ t('approvals.summary.usageUnavailable') }} {{ t('approvals.summary.noAiActions') }}
{{ t('approvals.summary.aiCost30d') }} {{ approvalAuditCostLabel(approvalAuditSummary().aiCost30d) }} {{ t('approvals.summary.usageUnavailable') }} {{ t('approvals.summary.noAiSpend') }}
{{ t('common.loading') }}

{{ t(approvalAuditEmptyTitleKey()) }}

{{ t(approvalAuditEmptyHintKey()) }}

{{ t('approvals.status.' + row.statusKey) }} {{ row.title }} {{ row.meta }} {{ '\u2014' }}

{{ t('crossCustomerBoard.forbidden.title') }}

{{ t('crossCustomerBoard.forbidden.message') }} {{ t('crossCustomerBoard.forbidden.askAdmin') }}

{{ t('platform.dashboard.kpi.organizations') }}

{{ t('platform.admin.hint') }}

{{ t('platform.admin.loading') }}

{{ t('platform.org.col.organization') }} {{ t('platform.org.col.tier') }} {{ t('platform.dashboard.col.status') }} {{ t('platform.org.adminEmail') }} {{ t('platform.dashboard.col.members') }} {{ t('platform.admin.userLimit') }} {{ t('platform.dashboard.col.provider') }} {{ t('platform.org.col.created') }} {{ t('platform.org.col.actions') }}
{{ org.name }} {{ org.slug }} {{ org.id }} {{ t('platform.org.tier.' + (org.tier || 'free')) }} {{ t('platform.org.status.' + org.status) }} {{ org.admin_email || '–' }} {{ org.member_count ?? 0 }} –

{{ t('platform.admin.noOrgs') }}

{{ t('about.hero.title') }}

{{ t('about.hero.body') }}

  • {{ t('about.capabilities.item1') }}
  • {{ t('about.capabilities.item2') }}
  • {{ t('about.capabilities.item3') }}
  • {{ t('about.capabilities.item4') }}

{{ t('about.roadmap.title') }}

{{ t('about.roadmap.subtitle') }}
{{ t('about.roadmap.now.label') }}
  • {{ t('about.roadmap.now.item1') }}
  • {{ t('about.roadmap.now.item2') }}
{{ t('about.roadmap.next.label') }}
  • {{ t('about.roadmap.next.item1') }}
  • {{ t('about.roadmap.next.item2') }}
  • {{ t('about.roadmap.next.item3') }}
{{ t('about.roadmap.later.label') }}
  • {{ t('about.roadmap.later.item1') }}
  • {{ t('about.roadmap.later.item2') }}
{{ t('about.roadmap.horizon.label') }}
  • {{ t('about.roadmap.horizon.item1') }}
  • {{ t('about.roadmap.horizon.item2') }}
  • {{ t('about.roadmap.horizon.item3') }}
  • {{ t('about.roadmap.horizon.item4') }}
  • {{ t('about.roadmap.horizon.item5') }}

{{ t('about.roadmap.disclaimer') }}

{{ t('common.loading') }}

{{ t('assetProfile.notFound.title') }}

{{ tParams('assetProfile.notFound.body', { asset: assetProfileKey }) }}

{{ t('assetProfile.notFound.hint') }}

{{ t('settings.connectors.title') }}

{{ t('settings.connectors.subtitle') }}

{{ t('empty.noConnectorsConfigured') }}

{{ t('empty.noConnectorsConfiguredHint') }}
{{ group.type.display_name }} {{ group.vendors.length === 1 ? t('settings.connectors.productCountOne') : tParams('settings.connectors.productCount', { count: group.vendors.length }) }}

{{ item.vendor.display_name }}

{{ t('connector.status.' + String(item.connector.status || '').toLowerCase()) }} {{ t('settings.connectors.scope.personal') }}

{{ connectorPurposeLine(item.vendor, group.type) }}

{{ t('connector.status.' + String(item.connector.status || '').toLowerCase()) }}

{{ item.vendor.card_badges.join(' · ') }}

{{ t('common.loadingConnectors') }}

{{ t('empty.noConnectorsFound') }}

{{ group.type.display_name }} {{ group.vendors.length === 1 ? t('settings.connectors.productCountOne') : tParams('settings.connectors.productCount', { count: group.vendors.length }) }}

{{ item.vendor.display_name }}

{{ t('connector.status.' + String(item.connector.status || '').toLowerCase()) }} {{ t('common.comingSoon') }} {{ t('settings.connectors.scope.personal') }}

{{ connectorPurposeLine(item.vendor, group.type) }}

{{ t('connector.status.' + String(item.connector.status || '').toLowerCase()) }}

{{ item.vendor.card_badges.join(' · ') }}

{{ t('settings.team.title') }}

{{ t('settings.team.subtitle') }}

{{ t('common.loadingTeam') }}

{{ t('team.empty.title') }}

{{ t('team.empty.body') }}
{{ t('settings.team.col.user') }} {{ t('settings.team.col.role') }} {{ t('settings.team.col.department') }} {{ t('settings.team.col.status') }} {{ t('settings.team.lastActive') }} {{ t('settings.team.col.actions') }}
{{ (member.name || ' ').charAt(0).toUpperCase() }}
{{ member.name }}
{{ member.email }}
{{ t('settings.team.providerAccess') }} {{ tParams('settings.team.derivedFrom', { org: member.source_organization_name || t('settings.team.providerOrgFallback') }) }}
{{ roleLabel(member.role) }} {{ member.department || '–' }} {{ t('settings.team.status.' + member.status) !== 'settings.team.status.' + member.status ? t('settings.team.status.' + member.status) : member.status }} {{ member.status === 'invited' ? t('settings.team.invitePending') : t('settings.team.neverActive') }}
{{ t('settings.team.managedByProvider') }}
{{ t('common.showing') }} {{ teamPagination.start }}-{{ teamPagination.end }} {{ t('common.of') }} {{ teamPagination.total }}
{{ tParams('common.pageOf', { current: teamPagination.page, total: teamPagination.totalPages }) }}

{{ t('roster.settings.title') }}

{{ t('roster.settings.hint') }}

{{ email }}

{{ t('roster.settings.none') }}

{{ t('roster.settings.optional') }}

{{ t('roster.settings.ai.title') }}

{{ tParams('roster.settings.ai.effective', { source: rosterSettings.ai_routing.effective_source, model: rosterSettings.ai_routing.model || t('roster.settings.ai.noModel') }) }}

{{ t('shiftBriefing.settings.title') }}

{{ t('shiftBriefing.settings.hint') }}

{{ t('common.loading') }}

{{ t('shiftBriefing.settings.verbatim') }}

{{ t('shiftBriefing.settings.skipHint') }}

{{ t('tabs.security') }}

{{ t('settings.security.subtitle') }}

{{ t('settings.sso.microsoftAccount') }}

{{ t('settings.sso.connectHint') }}

{{ ssoAccount.message }}

{{ provider.name }} {{ t('settings.sso.connected') }}
{{ (currentUser?.name || '?').charAt(0).toUpperCase() }}

{{ currentUser?.name || '–' }}

{{ currentUser?.email || '–' }}

{{ roleLabel(currentUser?.role) }}
{{ currentUser.department }}
{{ currentUser.title }}

{{ t('settings.security.editProfile') }}

{{ profileEdit.error }}
{{ security.mfaEnabled ? t('settings.security.mfaOn') : t('settings.security.mfaOff') }}

{{ t('settings.security.mfaProtected') }}

{{ t('settings.security.mfaGenerating') }}

{{ t('settings.security.mfaScanQr') }}

{{ t('settings.security.mfaManualKey') }}
{{ security.mfaSecret }}

{{ security.mfaSetupStep === 'confirm' ? 'Verifying...' : 'Disabling MFA...' }}

{{ passwordStrength(security.passwordForm.newPassword).label }}
8+ characters Uppercase Lowercase Number {{ t('settings.security.specialChar') }}
{{ security.passwordForm.newPassword === security.passwordForm.confirmPassword ? 'Passwords match' : 'Passwords don\'t match' }}

{{ t('settings.security.loadingSessions') }}

{{ t('empty.noActiveSessions') }}

{{ t('empty.noActiveSessionsHint') }}
{{ session.device_label || t('settings.security.unknownDevice') }} {{ t('settings.security.thisDevice') }} {{ session.ip_address || t('settings.security.unknownIp') }}
{{ tParams('settings.security.moreSessions', { count: security.sessions.length - 5 }) }}
{{ session.device_label || t('settings.security.unknownDevice') }} {{ t('settings.security.thisDevice') }} {{ session.ip_address || t('settings.security.unknownIp') }}

{{ t('tabs.preferences') }}

{{ t('settings.preferences.subtitle') }}

{{ t('common.loadingPreferences') }}

{{ t('prefs.notifications') }}

{{ t('prefs.display') }}

{{ t('settings.reporting.monthlyValue.heading') }}

{{ t('settings.reporting.monthlyValue.description') }}

{{ isGlobalAdmin ? t('settings.reporting.monthlyValue.selectOrganizationTitle') : t('settings.reporting.monthlyValue.noAccessTitle') }}

{{ isGlobalAdmin ? t('settings.reporting.monthlyValue.selectOrganization') : t('settings.reporting.monthlyValue.noAccess') }}

{{ t('settings.trust.heading') }}

{{ t('settings.trust.description') }}

{{ t('settings.trust.patterns.heading') }}

{{ t('settings.trust.patterns.description') }}

{{ t('settings.trust.patterns.emptyTitle') }}

{{ t('settings.trust.patterns.emptyBody') }}

{{ pattern.summary }}

{{ tParams('settings.trust.patterns.occurrences', { count: pattern.occurrence_count }) }} {{ tParams('settings.trust.patterns.confidence', { pct: trustFormatPct(pattern.confidence * 100) }) }} {{ trustPatternLinkageLabel(pattern) }}
{{ t('settings.trust.patterns.viewAlerts') }}

{{ t('settings.audit.title') }}

{{ t('settings.audit.description') }}

{{ isGlobalAdmin ? (activeTenantId ? t('settings.audit.scope.selectedTenant') : t('settings.audit.scope.platform')) : t('settings.audit.scope.ownTenant') }} {{ currentOrgKnownName || t('settings.audit.scope.platformName') }} {{ currentOrgShortId }}
{{ t('settings.audit.filters.more') }}{{ [auditLog.filters.actor_email, auditLog.filters.event_type, auditLog.filters.resource_type, auditLog.filters.resource_id, auditLog.filters.action].filter(Boolean).length }}

{{ t('settings.audit.empty.title') }}

{{ t('settings.audit.empty.body') }}

{{ t('settings.branding.heading') }}

{{ t('settings.branding.description') }}

{{ t('settings.auditForwarding.eyebrow') }}

{{ t('settings.auditForwarding.title') }}

{{ t('settings.auditForwarding.description') }}

{{ t('settings.auditForwarding.state.' + auditForwardingState()) }}
{{ t('settings.auditForwarding.organization') }}

{{ t('settings.auditForwarding.organizationHint') }}

{{ t('settings.auditForwarding.selectOrganizationTitle') }}

{{ t('settings.auditForwarding.selectOrganizationHint') }}

{{ t('settings.auditForwarding.loading') }}

{{ t('settings.auditForwarding.destinationFor') }}{{ auditForwardingOrganizationName() }}
{{ t('settings.auditForwarding.format') }}
{{ t(auditForwarding.config?.format === 'syslog' ? 'settings.auditForwarding.formatSyslog' : 'settings.auditForwarding.formatCef') }}
{{ t('settings.auditForwarding.scope') }}
{{ t('settings.auditForwarding.semanticOnly') }}
{{ t('settings.auditForwarding.lastDelivery') }}
{{ auditForwarding.config?.last_delivery_at ? formatTime(auditForwarding.config.last_delivery_at) : t('settings.auditForwarding.never') }}
{{ t('settings.auditForwarding.lastTest') }}
{{ auditForwarding.config?.last_test_at ? formatTime(auditForwarding.config.last_test_at) : t('settings.auditForwarding.never') }}
{{ t('settings.auditForwarding.destination') }}
{{ t('settings.auditForwarding.enable') }}{{ t('settings.auditForwarding.enableHint') }}
{{ t('settings.auditForwarding.disableWarning') }}
{{ t('settings.auditForwarding.standard') }}
{{ t('settings.auditForwarding.transport') }}
{{ t('settings.auditForwarding.hostHint') }} {{ auditForwardingFieldError('host') }}
{{ t('settings.auditForwarding.portHint') }} {{ auditForwardingFieldError('port') }}
{{ t('settings.auditForwarding.customCa') }}{{ t('settings.auditForwarding.configured') }}
{{ t('settings.auditForwarding.customCaHint') }} {{ auditForwardingFieldError('ca') }}
{{ t(auditForwarding.testResult.success ? 'settings.auditForwarding.testSuccess' : 'settings.auditForwarding.testFailed') }}

{{ auditForwarding.testResult.message }}

{{ t('settings.copilot.eyebrow') }}

{{ t('settings.copilot.title') }}

{{ t('settings.copilot.description') }}

{{ copilotModelReady ? t('settings.copilot.ready') : t('settings.copilot.incomplete') }} {{ copilotModelReady ? t('settings.copilot.readyHint') : t('settings.copilot.incompleteHint') }}
{{ t('settings.copilot.organization') }}

{{ t('settings.copilot.organizationHint') }}

{{ t('settings.copilot.configuringFor') }}{{ copilotSettingsOrganizationName }}
{{ t('settings.copilot.loading') }}
{{ t('settings.copilot.modeTitle') }} {{ copilotPlatformScope ? t('settings.copilot.platformDefaultTitle') : copilotModelStatus?.mode === 'byok' ? t('settings.copilot.usingByok') : t('settings.copilot.usingPlatformDefault') }}

{{ copilotPlatformScope ? t('settings.copilot.platformDefaultHintShort') : copilotModelStatus?.mode === 'byok' ? t('settings.copilot.usingByokHintShort') : t('settings.copilot.usingPlatformDefaultHintShort') }}

{{ copilotModelStatus?.mode === 'byok' && !copilotPlatformScope ? t('settings.copilot.platformDefaultLabel') : t('settings.copilot.activeModel') }}
{{ copilotPlatformScope && !copilotModelStatus?.platform_default?.configured ? t('settings.copilot.platformDefaultEmptyAdmin') : copilotPlatformDefaultLabel }}
{{ copilotSettingLabel(setting) }}

{{ copilotSettingDescription(setting) }}

{{ t('settings.sso.title') }}

{{ t('settings.sso.subtitle') }}

{{ ssoAdmin.message }}

{{ t('settings.sso.enableHint') }}

{{ t('settings.sso.methods') }}

{{ t('settings.sso.methodsHint') }}

{{ t('settings.sso.noProviders') }}

{{ ssoAdmin.original.display_name || t('settings.sso.newProvider') }} · {{ ssoAdmin.protocol.toUpperCase() }}

{{ t(isGlobalAdmin ? 'settings.sso.publicOriginHint' : 'settings.sso.publicOriginAdminHint') }}

{{ ssoAdmin.secretConfigured ? t('settings.sso.secretStored') : t('settings.sso.secretHint') }}

{{ t('settings.sso.trustHint') }}

{{ ssoAdmin.callbackUrl }}

{{ t('settings.sso.publicOriginRequired') }}

{{ ssoAdmin.loginUrl }}

{{ t('settings.sso.inviteOnly') }}

{{ t('settings.sso.samlJitOnboarding') }}

{{ t('settings.sso.samlLinkOnlyOnboarding') }}

{{ t('settings.platform.title') }}

{{ t('settings.platform.subtitle') }}

{{ t('settings.platform.loading') }}

{{ t('empty.noPlatformSettings') }}

{{ t('empty.noPlatformSettingsHint') }}

{{ t('settings.sla.title') }}

{{ t(`settings.sla.source.${slaPolicy.source}`) }}

{{ t('settings.sla.description') }}

{{ t('common.loadingSla') }}

{{ t('settings.sla.selectOrganizationTitle') }}

{{ t('settings.sla.selectOrganization') }}

{{ t('settings.network.title') }}

{{ t('settings.network.description') }}

{{ t('common.loadingNetwork') }}

{{ t('settings.network.name') }} {{ t('settings.network.type') }} {{ t('settings.network.ip') }} {{ t('settings.network.status') }}
{{ device.name }} {{ device.device_type || device.type || t('common.unknown') }} {{ device.management_ip || device.ip_address || device.ip || '-' }} {{ device.status || t('common.unknown') }}

{{ t('settings.network.empty') }}

{{ t('empty.networkHint') }}

{{ t('settings.runners.title') }}

{{ t('settings.runners.subtitle') }}

{{ t('settings.runners.tokenGenerated') }}
{{ t('settings.runners.step1') }}

Ensure Docker is installed on the target machine. The runner requires outbound HTTPS access to {{ serverOrigin }}. No inbound ports are needed.

{{ t('settings.runners.step2') }}

{{ t('settings.runners.step2Body') }}

docker login ghcr.io -u c3-customer -p <GHCR_ACCESS_TOKEN>
docker pull ghcr.io/zysec-ai/c3-task-runner:latest
{{ t('settings.runners.step3') }}

Copy and run this command. Replace my-runner with a descriptive name for this runner.

{{ getRunnerInstallCommand() }}
{{ t('settings.runners.step4') }}

Once the runner starts, it will automatically register and appear in the list below with an idle status. The registration token expires in 1 hour and can only be used once.

{{ t('settings.runners.showRawToken') }} {{ runnerRegistrationToken }}

{{ t('settings.runners.loading') }}

{{ t('settings.runners.empty.title') }}

{{ t('settings.runners.empty.body') }}

{{ t('settings.runners.empty.hint') }}
{{ t('common.name') }} {{ t('settings.team.col.status') }} {{ t('settings.runners.queue') }} {{ t('settings.runners.labels') }} {{ t('settings.runners.lastSeen') }} Version
{{ runner.display_name || runner.name }} {{ runner.name }} {{ runner.status }} {{ runner.queue_depth }} 0 {{ runner.labels.join(', ') || '\u2014' }} – {{ runner.version || '\u2014' }}

{{ t('settings.customerOps.loading') }}

{{ t('settings.customerOps.outboundTitle') }}

CustomerOps

{{ t('settings.customerOps.outboundSubtitle') }}

{{ customerOpsStatusLabel() }}
{{ customerOps.testResult.message }}
{{ customerOps.config.last_error }}
{{ tParams('settings.customerOps.gapDetected', { since: formatFullTime(customerOps.config.integration_gap_since) }) }}
{{ tParams('settings.customerOps.snapshotReady', { id: customerOps.bootstrapResult.snapshot_id || customerOps.bootstrapResult.snapshotId }) }}

{{ t('settings.customerOps.pushDelivery') }}

{{ t('settings.customerOps.pushDeliverySubtitle') }}

{{ customerOps.config?.has_signing_secret ? t('settings.customerOps.secretConfigured') : t('settings.customerOps.secretRequired') }} · {{ tParams('settings.customerOps.rotatedWhen', { when: formatRelativeTime(customerOps.config.secret_rotated_at) }) }}

{{ t('settings.customerOps.advancedFields') }} {{ customerOps.form.environment || '–' }} · {{ t('settings.customerOps.schemaShort') }} {{ customerOps.form.schema_version || '–' }}

{{ t('settings.customerOps.pullSyncTitle') }}

{{ t('settings.customerOps.pullSyncSubtitle') }}

{{ t('settings.customerOps.noPullKey') }}

{{ t('settings.customerOps.noPullKeyHint') }}
{{ t(activeTenantId ? 'threatWorkflows.stack.tenantScope' : 'threatWorkflows.stack.platformScope') }}

{{ t('threatWorkflows.stack.title') }}

{{ t(activeTenantId ? 'threatWorkflows.stack.tenantConfigDescription' : 'threatWorkflows.stack.description') }}

{{ productStackPull.config.last_error_code ? t('threatWorkflows.stack.failed') : productStackPull.config.enabled ? t('threatWorkflows.stack.enabled') : t('threatWorkflows.stack.disabled') }}

{{ t('threatWorkflows.stack.loading') }}

{{ t('threatWorkflows.stack.outcome.' + productStackPull.syncOutcome) }}

{{ t('threatWorkflows.stack.tenants') }}
{{ productStackPull.config.tenant_count }}
{{ t('threatWorkflows.stack.lastChecked') }}
{{ productStackPull.config.last_checked_at ? formatTime(productStackPull.config.last_checked_at) : '–' }}
{{ t('threatWorkflows.stack.lastFull') }}
{{ productStackPull.config.last_full_pull_at ? formatTime(productStackPull.config.last_full_pull_at) : '–' }}
{{ t('threatWorkflows.stack.lastSnapshot') }}
{{ productStackPull.config.last_snapshot_at ? formatTime(productStackPull.config.last_snapshot_at) : '–' }}

{{ t('threatWorkflows.stack.lastError') }}: {{ productStackErrorLabel(productStackPull.config.last_error_code) }}

{{ t('threatWorkflows.stack.freshnessNote') }}

{{ t('threatWorkflows.stack.tenantScope') }}

{{ t('threatWorkflows.stack.tenantTitle') }}

{{ t('threatWorkflows.stack.tenantDescription') }}

{{ t('threatWorkflows.stack.loading') }}

{{ tenantProductStack.removeOutcome }}

{{ t('threatWorkflows.stack.state.' + tenantProductStack.data.state) }}

{{ t('threatWorkflows.stack.lastSnapshot') }}: {{ formatTime(tenantProductStack.data.synced_at) }} · {{ t('threatWorkflows.stack.version') }} {{ tenantProductStack.data.product_stack_version ?? '–' }}

{{ t(tenantProductStack.data.automatic_sync_enabled ? 'threatWorkflows.stack.removeSyncOn' : 'threatWorkflows.stack.removeSyncOff') }}

{{ group.category }} · {{ group.technology }}{{ product.product }}

{{ t('threatWorkflows.common.selectTenantHint') }}

{{ t('tabs.recipients') }}

{{ tParams('recipients.helpFor', { org: orgRecipients.orgName || copilotSettingsOrganizationName }) }}

{{ tParams('recipients.contactsFor', { org: orgRecipients.orgName || copilotSettingsOrganizationName }) }}

{{ tParams(orgRecipients.merged === 1 ? 'recipients.mergedOne' : 'recipients.mergedOther', { count: orgRecipients.merged }) }}

{{ t('recipients.loading') }}
{{ t('recipients.emailsLabel') }} {{ orgRecipients.emails.length }}

{{ t('recipients.empty') }}

{{ t('settings.policyGates.heading') }}

{{ t('settings.policyGates.description') }}

{{ t('settings.policyGates.metrics.noDecisions') }}

{{ t('settings.policyGates.metrics.policyClosed') }} {{ pgFormatPct(policyGates.metrics.policy_closed.pct) }} {{ tParams('settings.policyGates.metrics.ofDecisions', { n: policyGates.metrics.policy_closed.n }) }}
{{ t('settings.policyGates.metrics.llmResolved') }} {{ pgFormatPct(policyGates.metrics.llm_resolved.pct) }}
{{ t('settings.policyGates.metrics.escalated') }} {{ pgFormatPct(policyGates.metrics.escalated.pct) }}
{{ t('settings.policyGates.metrics.costAvoided') }} {{ pgFormatUsd(policyGates.metrics.estimated_cost_avoided_usd) }} {{ policyGates.metrics.cost_avoided_is_measured ? t('settings.policyGates.metrics.measured') : t('settings.policyGates.metrics.estimated') }}

{{ t('settings.policyGates.empty.title') }}

{{ t('settings.policyGates.empty.body') }}

{{ t('settings.policyGates.table.name') }} {{ t('settings.policyGates.table.ruleType') }} {{ t('settings.policyGates.table.verdict') }} {{ t('settings.policyGates.table.priority') }} {{ t('settings.policyGates.table.matches') }} {{ t('settings.policyGates.table.enabled') }} {{ t('settings.policyGates.table.actions') }}
{{ rule.name }}
{{ rule.description }}
{{ t('settings.policyGates.ruleTypes.' + rule.rule_type) }} {{ t('settings.policyGates.verdicts.' + rule.resulting_verdict) }} {{ rule.priority }} {{ rule.match_count }}

{{ t('settings.escalationQueue.heading') }}

{{ t('settings.escalationQueue.description') }}

{{ t('settings.escalationQueue.rate.label') }} {{ (escalationQueue.rate.escalation_rate * 100).toFixed(1) }}% {{ tParams('settings.escalationQueue.rate.sample', { escalated: escalationQueue.rate.escalated, resolved: escalationQueue.rate.resolved }) }}

{{ t('settings.escalationQueue.empty.title') }}

{{ t('settings.escalationQueue.empty.body') }}

{{ t('settings.escalationPolicies.heading') }}

{{ t('settings.escalationPolicies.description') }}

{{ t('settings.escalationPolicies.empty') }}

{{ t('settings.escalationPolicies.table.name') }} {{ t('settings.escalationPolicies.table.rules') }} {{ t('settings.escalationPolicies.table.sla') }} {{ t('settings.escalationPolicies.table.enabled') }} {{ t('settings.policyGates.table.actions') }}
{{ policy.name }}{{ t('settings.escalationPolicies.default') }} {{ policy.rules.length }} {{ mvrFormatMinutes(policy.sla_minutes) }} {{ policy.enabled ? t('common.enabled') : t('common.disabled') }}

{{ t('settings.evalHarness.heading') }}

{{ t('settings.evalHarness.description') }}

{{ t('settings.evalHarness.corpus.title') }}

{{ evalHarness.importError }}

{{ t('settings.evalHarness.corpus.empty') }}

{{ t('settings.evalHarness.corpus.emptyHint') }}
{{ t('settings.evalHarness.corpus.version') }}{{ t('settings.evalHarness.corpus.size') }}
{{ version }}{{ t('settings.evalHarness.corpus.justImported') }} {{ (evalHarness.importResult && evalHarness.importResult.corpus_version === version) ? evalHarness.importResult.imported_count : '–' }}

{{ t('settings.evalHarness.runs.title') }}

{{ evalHarness.triggerError }}

{{ t('settings.evalHarness.runs.empty') }}

{{ t('settings.evalHarness.runs.createdAt') }} {{ t('settings.evalHarness.corpus.version') }} {{ t('settings.evalHarness.runs.status') }} {{ t('settings.evalHarness.runs.agreement') }}
{{ formatTime(run.created_at) }} {{ run.corpus_version }} {{ t('settings.evalHarness.runs.statusValues.' + run.status) }} {{ evalFormatPct1(run.analyst_agreement_pct) }}

{{ t('settings.backtesting.heading') }}

{{ t('settings.backtesting.description') }}

{{ t('settings.backtesting.config.title') }}

{{ t('settings.backtesting.config.simulationNote') }}

{{ t('settings.backtesting.config.runningNote') }}

{{ t(backtesting.triggerError) || backtesting.triggerError }}

{{ t('settings.backtesting.runs.title') }}

{{ t('settings.backtesting.runs.empty') }}

{{ t('settings.backtesting.runs.window') }} {{ t('settings.backtesting.runs.status') }} {{ t('settings.backtesting.runs.agreement') }}
{{ formatTime(run.window_start) }} – {{ formatTime(run.window_end) }} {{ run.status }} {{ btFormatPct(run.report?.verdict_agreement?.agreement_rate) }}