Rename Dismiss: Expected to Remember as expected

Fifth of the seven contextual entries from the captured Pulse
Intelligence direction. The captured rubric named this button
"Remember this is expected" — future-looking, "Pulse should know
this state is expected" — but the surface labelled it
"Dismiss: Expected", which reads past-looking and groups with
two unrelated dismissal intents (Not an issue, Later).

Renames the button to "Remember as expected" and updates the
confirmation panel:

- Header verb tracks intent: "Remembering as expected" for the
  expected_behavior reason, "Dismiss as: ..." for the other
  reasons.
- Confirmation copy now says Pulse will "remember that this state
  is expected on this resource" alongside the existing
  acknowledgement-and-no-renotify framing.
- Button tooltip explains the future-looking commitment so
  operators understand the intent before clicking.

No wire change — the dismiss reason is still expected_behavior,
and operator-state on the resource still drives auto-acknowledge
behaviour for future similar findings (already in place from
earlier work). This is the rubric-alignment piece; the
operator-memory machinery underneath is unchanged.
This commit is contained in:
rcourtman 2026-05-11 09:25:26 +01:00
parent ac5f140802
commit 4ce4459bc8

View file

@ -1388,8 +1388,9 @@ export const FindingsPanel: Component<FindingsPanelProps> = (props) => {
onClick={(e) => handleStartDismiss(finding, 'expected_behavior', e)}
class="px-2 py-1 rounded border border-border hover:bg-surface-hover"
disabled={actionLoading() === finding.id}
title="Tell Pulse this finding represents an expected state for this resource — it will stay quiet about it but surface again on severity escalation"
>
Dismiss: Expected
Remember as expected
</button>
<button
type="button"
@ -1403,12 +1404,17 @@ export const FindingsPanel: Component<FindingsPanelProps> = (props) => {
</Show>
</div>
</Show>
{/* Inline dismiss confirmation */}
{/* Inline dismiss confirmation. The header verb tracks the
intent: "Remembering as" for expected_behavior (future-looking,
"Pulse should know this is expected"), "Dismiss as" for the
other reasons (past-looking, "make this go away"). */}
<Show when={dismissingId() === finding.id}>
<div class="mt-2 p-2 rounded border border-red-200 dark:border-red-800 bg-red-50 dark:bg-red-900">
<div class="flex items-center gap-2 mb-1.5">
<span class="text-xs font-medium text-red-700 dark:text-red-300">
Dismiss as: {formatIdentifierLabel(dismissReason())}
{dismissReason() === 'expected_behavior'
? 'Remembering as expected'
: `Dismiss as: ${formatIdentifierLabel(dismissReason())}`}
</span>
</div>
<Show when={dismissReason() === 'will_fix_later'}>
@ -1420,8 +1426,9 @@ export const FindingsPanel: Component<FindingsPanelProps> = (props) => {
</Show>
<Show when={dismissReason() === 'expected_behavior'}>
<p class="text-[11px] text-muted mb-1.5">
Pulse will keep this finding visible as acknowledged but won't re-notify
you for it. Severity escalation will still wake it.
Pulse will keep this finding visible as acknowledged and remember
that this state is expected on this resource. It won't re-notify
you for it, but severity escalation will still wake it.
</p>
</Show>
<Show when={dismissReason() === 'not_an_issue'}>