all: s/title/slug/, adjust branch handling

There are two intertwined changes here.

First, replace title with slug, and precommit with commit-message-style.

The slug makes enough of a title, and it provides a single human-readable
identifier we can use everywhere.

Second, construct the branch name on the fly instead of storing it,
out of slug, branch prefix, and retryNumber.
This removes some duplicated data, and makes the retry loop
easier to follow and reason about.
diff --git a/webui/src/web-components/DEAR_LLM.md b/webui/src/web-components/DEAR_LLM.md
index d0cf3d7..13fd9d1 100644
--- a/webui/src/web-components/DEAR_LLM.md
+++ b/webui/src/web-components/DEAR_LLM.md
@@ -17,8 +17,8 @@
            - **sketch-tool-card-done**
            - **sketch-tool-card-patch**
            - **sketch-tool-card-take-screenshot**
-           - **sketch-tool-card-title**
-           - **sketch-tool-card-precommit**
+           - **sketch-tool-card-set-slug**
+           - **sketch-tool-card-commit-message-style**
            - **sketch-tool-card-multiple-choice**
            - **sketch-tool-card-generic** (fallback for unknown tools)
              - All of these specialized components **contain** or **compose with** the base **sketch-tool-card**