Skip to content

fix(console): name the default preset and fill use preset once a preset is chosen - #2991

Merged
freeqaz merged 3 commits into
mainfrom
fix-2066
Oct 20, 2026
Merged

freeqaz merged 3 commits into
mainfrom
fix-2066

Conversation

@freeqaz

@freeqaz freeqaz commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

Dogfood D661 (board finding 2066, low). In the Create Agent chooser:

  • Start with default Preset did not say which Preset it loads;
  • after the reader chose a Preset in Preset template, Use Preset stayed a secondary button while Start with default Preset kept the filled primary style, so the filled button pointed away from the next step.

Change

Console only (agents/presets.mjs, one line in agents/create.mjs); no API change.

  • A hint under the launch buttons reads "The default Preset is default-codex." and describes Start with default Preset (aria-describedby). It shows only when default-codex is readable; otherwise the existing "default-codex is not available to you in this Namespace" hint applies, as before.
  • Choosing a Preset moves the filled style to Use Preset and makes the shortcut secondary. Clearing the choice moves it back, and so does a failed Preset read, which leaves Use Preset disabled. The page still has one filled action (UX plan C2).
  • Storybook Pages/Create Agent → Preset variables gains steps for both. docs/reference/console/create-and-deploy.md already says Start with default Preset loads default-codex and is at the docs word limit, so it is unchanged.

Verification

  • New test in tests/browser/console-agent-presets.test.mjs (real controller, installed default-codex plus a Namespace Preset): "the Preset chooser names its default and fills Use Preset once a Preset is chosen". It checks the hint and aria-describedby, shortcut filled / Use Preset not, the swap after choosing the Preset, the swap back after clearing it, and the shortcut keeping the filled style after a failed (503) Preset read.
    • Fails on main sources (waits for the hint) and passes with the change.
  • Whole files at 2 CPUs (final sources for presets): console-agent-presets 33/33, console-button-hierarchy 10/10 (one filled action per view), console-focus-ring 4/4, console-agents 31/31.
  • Pinned at 2 CPUs: console-agent-presets.test.mjs 20/20 runs (33/33 tests each) on the final sources.
  • prettier and eslint clean on touched files. Storybook frame checked locally at 1440 and 390.
  • Open-PR conflict check (3-way git merge-tree, conflict hunks in the touched files) against every open PR touching them: identical to main except Support custom Installation profiles and readable Preset starters #2253 (custom Installation profiles), which rewrites the same defaultId lines to pick a starter Preset. If this lands first, Support custom Installation profiles and readable Preset starters #2253 would name its starter in the hint instead of default-codex.

Screenshots (Storybook Preset variables, a Preset chosen)

Before 1440 After 1440 Before 390 After 390

Risks

  • Low. Styling and one hint line. The button labels are unchanged, so tests and stories that click them by name are unaffected.

…et is chosen

The Create Agent chooser's Start with default Preset did not say which
Preset it loads, and after a Preset was chosen Use Preset stayed a
secondary button while the shortcut kept the filled style (dogfood finding
2066). A hint under the shortcut names default-codex and describes the
button; choosing a Preset moves the filled style to Use Preset, and
clearing the choice moves it back.
@freeqaz
freeqaz requested a review from a team as a code owner October 20, 2026 01:58
@clawsweeper

clawsweeper Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

ClawSweeper review complete

ClawSweeper finished reviewing this revision. The review result is being finalized.

View the workflow run.

@clawsweeper clawsweeper Bot added clawsweeper:intake:bug Preliminary submission classification; full source review pending. clawsweeper:intake:needs-environment Preliminary submission classification; full source review pending. clawsweeper:intake:needs-repro Preliminary submission classification; full source review pending. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed clawsweeper:intake:bug Preliminary submission classification; full source review pending. clawsweeper:intake:needs-environment Preliminary submission classification; full source review pending. clawsweeper:intake:needs-repro Preliminary submission classification; full source review pending. labels Oct 20, 2026
…ed Preset read

Use Preset stays disabled after a failed read, so the clickable default
shortcut keeps the filled style. The hint's id follows the selector's, as
other ids in this file do.
The added sentence pushed the page past the 2,500-word docs check. The page
already says Start with default Preset loads default-codex, so the change
is dropped.
@freeqaz

freeqaz commented Oct 20, 2026

Copy link
Copy Markdown
Collaborator Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

🦞👀
Exact review queued.

Re-review progress:

@clawsweeper clawsweeper Bot added clawsweeper:intake:bug Preliminary submission classification; full source review pending. clawsweeper:intake:needs-environment Preliminary submission classification; full source review pending. clawsweeper:intake:needs-repro Preliminary submission classification; full source review pending. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. clawsweeper:intake:bug Preliminary submission classification; full source review pending. clawsweeper:intake:needs-environment Preliminary submission classification; full source review pending. clawsweeper:intake:needs-repro Preliminary submission classification; full source review pending. labels Oct 20, 2026
@clawsweeper

clawsweeper Bot commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge.

What this changes

The PR names default-codex beside the default shortcut and moves primary button emphasis to Use Preset when a Preset is selected.

Example: Select Research assistant in the Create Agent Preset chooser.

  • Before: Start with default Preset remains filled, while Use Preset stays secondary.
  • After: Use Preset becomes filled, the shortcut becomes secondary, and its hint names default-codex.

Review scores

Measure Result What it means
Overall readiness 🦪 silver shellfish (2/6) The focused patch appears correct and has meaningful browser coverage, but supplied visual evidence does not complete the repository's UI verification gate.
Proof confidence 🦪 silver shellfish (2/6) Real behavior proof is not required for maintainer- or bot-authored pull requests.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Product

Kind: Bug fix · Worth it: Yes · Fix scope: Complete
User problem: The chooser does not identify its default Preset and visually favors the shortcut after the user chooses another template.
Reason: The collaborator-authored direction is already owner-approved under the review rules and improves a visible workflow with a narrow presentation change.

Merge readiness

✅ Ready for maintainer review

Keep this PR open: it addresses a concrete chooser usability problem that remains on current main, and review found no introduced code defect.

Priority: P3
Reviewed head: ac179117f99be8cadd50aebb36ae68c5e0bb8389

Before merge

None.

Findings

None.

Tests

  • Missing end-to-end proof: A short browser walkthrough must show choosing and clearing a Preset and the resulting emphasis changes; the supplied browser regression report does not replace that required visual evidence.
Agent review details

How this fits together

The console chooser reads authorized Namespace Presets, collects template variables, and passes rendered settings into the existing editable Agent form.

flowchart LR
  A[Create Agent chooser] --> B[Namespace Preset API]
  B --> C[Readable Preset summaries]
  C --> A
  A --> D[Selected Preset and variables]
  D --> E[Template rendering]
  E --> F[Editable Agent form]
Loading

Technical review

Best possible solution:

Keep the focused presentation change within the existing Preset chooser and Agent creation flow.

Do we have a high-confidence way to reproduce the issue?

Current-main source keeps the shortcut primary after selection and provides no adjacent default-name hint; the before screenshots show both behaviors, although no target code was executed during review.

Is this the best way to solve the issue?

The patch uses the existing chooser, button classes, and asynchronous response guards, making it a proportionate solution without another configuration or creation path.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning medium; reviewed against 33132e12df10.

Provenance checked

  • Default-Preset shortcut and one-time template application keeps the original intent (refactor: load the console Codex starter from a default preset #453: Use the installed default-codex Preset while retaining explicit creation without a Preset and exact-resource read behavior.)
  • Primary button hierarchy keeps the original intent (90c63bf: Provide a consistent button hierarchy with at most one primary action per view.)

Testing

Proof path: in-process harness.

Security

None.

Evidence

What I checked:

  • Introduced patch and current-main behavior: The pinned introduced diff changes only the chooser presentation, its mounting point, Storybook instructions, and browser coverage; current main still lacks the hint and emphasis switching. (apps/controller/src/console/agents/presets.mjs:89, ac179117f99b)
  • Selection and failure handling: Selection changes update emphasis immediately; clearing restores the shortcut; failed reads restore it only after existing connected-view and request-version checks reject stale responses. (apps/controller/src/console/agents/presets.mjs:294, ac179117f99b)
  • Visual evidence and discussion: Inspected all four linked desktop and phone screenshots locally: the after images visibly show the hint and selected-Preset emphasis. Full discussion contains a re-review request and bot acknowledgments, without additional walkthrough media. (ac179117f99b)
  • Applicable repository policy: Read the complete root instructions; no nested AGENTS.md files or maintainer-notes directory were found. UI changes require screenshots and a walkthrough video uploaded as native GitHub attachments. The user prohibition superseded the autoreview helper instruction; no helper or second reviewer ran. (AGENTS.md, ac179117f99b)
  • Feature history and original intent: History and the discussions at refactor: load the console Codex starter from a default preset #453 and feat(console): button hierarchy classes #2896 establish the installed default-Preset shortcut and button hierarchy; both contracts remain intact. The follow-history search reached an unavailable creation-era blob, limiting further introduction tracing. (apps/controller/src/console/agents/presets.mjs:80, 33132e12df10)
  • Exact-head checks: CI Required passed on the reviewed head; cancelled dispatch/admission attempts have successful counterparts and establish no diff-caused failure. (ac179117f99b)

Likely related people:

  • Free Wortley: Raw commit 90c63bf adds apps/controller/src/console/agents/presets.mjs:75 relative to its recorded parents. This identifies author metadata, not feature responsibility or a PR merger. (role: source-line author; confidence: high; commits: 90c63bf8e7c2; files: apps/controller/src/console/agents/presets.mjs)
  • kevinlin-openai: Raw commit 38c8773 adds apps/controller/src/console/agents/presets.mjs:43 relative to its recorded parents. This identifies author metadata, not feature responsibility or a PR merger. (role: source-line author; confidence: high; commits: 38c877301f94; files: apps/controller/src/console/agents/presets.mjs)

Labels

Label changes:

  • add rating: 🦪 silver shellfish: Overall readiness is 🦪 silver shellfish; proof is 🦪 silver shellfish and patch quality is 🐚 platinum hermit.
  • remove rating: 🦐 gold shrimp: Current PR rating is rating: 🦪 silver shellfish, so this older rating label is no longer current.

Label justifications:

  • P3: This improves chooser clarity and visual emphasis without changing creation behavior or blocking an existing workflow.
  • rating: 🦪 silver shellfish: Overall readiness is 🦪 silver shellfish; proof is 🦪 silver shellfish and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR.

Rating scale

6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior.

Workflow

ClawSweeper edits this one comment on every review. Comment @clawsweeper re-review for a fresh review only. Repair and merge execution lanes are retired.

Reviewed October 19, 2026, 11:19 PM ET / October 20, 2026, 03:19 UTC.

@freeqaz
freeqaz merged commit 3363a3b into main Oct 20, 2026
70 of 73 checks passed
@freeqaz
freeqaz deleted the fix-2066 branch October 20, 2026 03:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant