Skip to content

Rename the global stop to Lockdown #203

Description

@hellno

Part of #179. Naming/copy only — no wire or semantic change.

Problem / decision

Today's only real "stop" is RevokeAll: zeroize the signing key, deny everything in flight — key, agents, dapps alike. The amber brake presents it as "Stop all agents", which under-describes what it does — and over-promises scope, because no per-agent stop exists (the wire has one anonymous Agent origin).

Decision (2026-07-07): the global action is named Lockdown. "Stop"/"revoke" become the scoped verbs: per-site revoke ships with Connections (#199); a true per-agent stop is a follow-up (needs agent identity on the wire — #204).

Corrected 2026-07-10 (codebase re-verified): the ⌘K command already reads "STOP", not "Stop all agents" — the only runtime string that needs changing is the amber brake label. Scope narrowed below. Do this WITH #199 — its lifecycle copy already references "Lockdown" and both touch the same palette/brake files, so renaming separately re-touches them twice.

Scope (verified)

  • The one runtime string to change: the stop_brake Ready label "Stop all agents" → "Lockdown" at widgets.rs:919 (amber = human action). The Armed confirm already reads "Confirm STOP: revoke & lock signing · Esc to cancel" (widgets.rs:921) — decide whether it should also carry "Lockdown".
  • The ⌘K command is already fine: title is "STOP — lock & revoke all" (palette_commands.rs:179), aliases stop/panic/kill/revoke/halt/emergency/freeze. Decide whether to add a lockdown alias. (The original body's claim that the command title says "Stop all agents" was wrong.)
  • Doc-comments to keep in sync: shell.rs:1478, activity_view.rs:476, and DESIGN.md:167 (prose "Stop all agents").
  • Plain-words rule (CLAUDE.md): explain on first use — "Lockdown — stop everything: agents, connected sites, and pending requests; the signing key is wiped from memory until you unlock again." Check "Lockdown" against the plain-words guidance and the amber=human two-signal model.
  • Docs: agent quickstart, THREAT-MODEL, README wording.
  • Wire/API unchanged: SignerRequest::RevokeAll and the MCP tool id deckard_revoke_all stay; only the tool description gains the Lockdown wording.
  • Once Connections: daemon-held dapp sessions, listed in the app, revocable per site #199 lands, Lockdown also clears dapp sessions — the copy should include connected sites.

Taxes

  • Touches a GUI view (widgets.rs) → before/after screenshots required on the PR (CLAUDE.md).
  • Touches DESIGN.md widget vocabulary → plain-words + two-signal check.

Non-goals

Acceptance

Every user-facing surface says Lockdown consistently (⌘K, brake, docs); reflective tests green; screenshots.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions