Skip to content

refactor(tray): native back navigation for cross-page back - #521

Closed
bkudiess wants to merge 4 commits into
openclaw:mainfrom
bkudiess:back-buttons
Closed

refactor(tray): native back navigation for cross-page back#521
bkudiess wants to merge 4 commits into
openclaw:mainfrom
bkudiess:back-buttons

Conversation

@bkudiess

@bkudiess bkudiess commented May 23, 2026

Copy link
Copy Markdown
Collaborator

Summary

Reworked per review feedback to use the native Frame / NavigationView back navigation instead of custom back affordances.

Cross-page back is now handled by a single native back button in the Hub title bar, driven by the NavigationView ContentFrame's real back stack — no bespoke origin tracking or per-page back links.

Supersedes this PR's original approach (custom "consistent back-links across cross-page navigations"). The earlier commits that added those links are now removed by the final commit in favor of native navigation.

What changed

Added

  • Native back button in the Hub title bar wired to ContentFrame.GoBack().
    • Enabled/disabled by CanGoBack (mirrors NavigationView's native greyed-at-root behavior).
    • Alt+Left keyboard accelerator.
    • Left rail re-syncs its selected item on Back/Forward.
  • NavBackButton strings across all five locales (en, fr, nl, zh-cn, zh-tw).

Removed

  • All custom origin-tracking infrastructure: NavOriginLabels helper, the 2-arg IAppCommands.Navigate/NavigateTo overloads, LastNavigationOrigin + pending-origin state on HubWindow, and the related LocalizationHelper additions.
  • The per-page "Back to {origin}" links (Config / Connection / Debug / Voice) and "Back to Connection" links (Sessions / Instances / Permissions), with their handlers and visibility logic.
  • Reverted all 2-arg navigation call sites back to single-arg Navigate across 11 pages.
  • Obsolete resw keys for the removed links.

Intentionally kept

  • In-page form/detail close buttons — ConnectionPage "Add a gateway" (also the form's Cancel) and DebugPage log-detail "Back to Diagnostics". These are view-state toggles within a page, not Frame navigations, so the native back button does not own them.

Net effect

32 files changed, ~307 lines net removed (171 insertions / 478 deletions), including deletion of Helpers/NavOriginLabels.cs.

Validation

  • build.ps1 — all projects (ARM64, .NET 10)
  • ✅ Shared tests — 2045 passed, 0 failed
  • ✅ Tray tests — 934 passed, 0 failed
  • ✅ Manual smoke: rail navigation + native back button + Alt+Left re-highlight the correct rail item; in-page form/detail close buttons unchanged.

Closes the review feedback to rely on native back navigation.

@clawsweeper

clawsweeper Bot commented May 23, 2026

Copy link
Copy Markdown

Codex review: needs real behavior proof before merge. Reviewed June 9, 2026, 3:01 PM ET / 19:01 UTC.

Summary
The PR threads origin tags through tray Hub cross-page navigation, adds localized dynamic Back to origin links on Config, Connection, Debug, and Voice, and loosens one tray wiring test for origin-bearing navigation calls.

Reproducibility: not applicable. this is a tray UX feature PR rather than a bug report. The relevant check is visual proof of the changed Hub navigation states, and the posted screenshot only covers one shown-link state.

Review metrics: 1 noteworthy metric.

  • PR surface: 25 files changed, +280/-20. The diff spans multiple tray pages, helper code, locale resources, and a test, so one screenshot is thin coverage for the changed behavior.

Merge readiness
Overall: 🦐 gold shrimp
Proof: 🦐 gold shrimp
Patch quality: 🐚 platinum hermit
Result: blocked until stronger real behavior proof is added.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • [P1] Add redacted visual proof for representative Back to origin links plus direct rail navigation with no link; after updating the PR body, ClawSweeper should re-review automatically, or a maintainer can comment @clawsweeper re-review.
  • Remove the extra trailing blank lines from NavOriginLabels.cs.

Proof guidance:

  • [P1] Needs stronger real behavior proof before merge: A screenshot now shows one Back to Diagnostics link, but it does not show the hidden-link direct navigation case or representative destination coverage; add redacted screenshots or a short recording and update the PR body to trigger re-review.

Mantis proof suggestion
A short desktop visual proof would materially help verify the shown-link and hidden-link tray navigation states. A maintainer can ask Mantis to capture proof by posting a new PR comment that starts with the OpenClaw Mantis account mention, followed by:

visual task: verify tray Hub Back to origin links appear after cross-page navigation and disappear after direct rail navigation.

Risk before merge

  • [P1] The only posted screenshot shows one after-fix Back to Diagnostics state; it does not prove direct rail navigation hides the link or that the other destination pages render the right origin labels.
  • [P1] The Windows validation commands were not run in this read-only review; the PR body reports ./build.ps1, tray tests, and shared tests passing.

Maintainer options:

  1. Add representative tray proof (recommended)
    Ask for a short redacted recording or paired screenshots showing at least one cross-page Back to origin link and direct rail navigation where the link is hidden.
  2. Accept the visual proof gap
    Maintainers may merge on code review and reported tests alone, but they would own the risk that some tray routes show stale or unexpected backlink UI.

Next step before merge

  • [P1] Contributor-provided real behavior proof is the next blocker; ClawSweeper should not queue a repair because automation cannot prove the contributor’s Windows tray setup for them.

Security
Cleared: The diff is limited to tray UI navigation, localization resources, helper code, and one test; I found no concrete security or supply-chain concern.

Review findings

  • [P3] Remove the extra blank lines at EOF — src/OpenClaw.Tray.WinUI/Helpers/NavOriginLabels.cs:43-45
Review details

Best possible solution:

Land the focused tray UX change after representative visual proof covers both shown and hidden backlink states, and after the helper’s trailing blank lines are trimmed.

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

Not applicable; this is a tray UX feature PR rather than a bug report. The relevant check is visual proof of the changed Hub navigation states, and the posted screenshot only covers one shown-link state.

Is this the best way to solve the issue?

Yes, the implementation direction fits the existing HubWindow LastNavigationOrigin pattern and reuses localized sidebar labels. The remaining merge blockers are proof coverage for the promised behavior and a small EOF whitespace cleanup.

Full review comments:

  • [P3] Remove the extra blank lines at EOF — src/OpenClaw.Tray.WinUI/Helpers/NavOriginLabels.cs:43-45
    git apply --check --whitespace=error-all reports a new blank line at EOF in the added helper. Trim the extra empty lines after the closing brace so whitespace checks stay clean.
    Confidence: 0.91

Overall correctness: patch is correct
Overall confidence: 0.78

AGENTS.md: found and applied where relevant.

Codex review notes: model gpt-5.5, reasoning high; reviewed against 71d249711d63.

Label changes

Label changes:

  • add proof: 📸 screenshot: Contributor real behavior proof includes screenshot evidence. A screenshot now shows one Back to Diagnostics link, but it does not show the hidden-link direct navigation case or representative destination coverage; add redacted screenshots or a short recording and update the PR body to trigger re-review.
  • add rating: 🦐 gold shrimp: Overall readiness is 🦐 gold shrimp; proof is 🦐 gold shrimp and patch quality is 🐚 platinum hermit.
  • remove rating: 🧂 unranked krab: Current PR rating is rating: 🦐 gold shrimp, so this older rating label is no longer current.

Label justifications:

  • P3: This is a low-risk tray navigation UX improvement with limited blast radius and no evidence of urgent broken user workflow.
  • merge-risk: 🚨 other: The merge risk is visual navigation-state correctness that ordinary CI does not prove: backlinks must appear only after cross-page entry and stay hidden for direct navigation.
  • rating: 🦐 gold shrimp: Overall readiness is 🦐 gold shrimp; proof is 🦐 gold shrimp and patch quality is 🐚 platinum hermit.
  • status: 📣 needs proof: The PR needs real behavior proof before ClawSweeper can clear the contributor ask. Needs stronger real behavior proof before merge: A screenshot now shows one Back to Diagnostics link, but it does not show the hidden-link direct navigation case or representative destination coverage; add redacted screenshots or a short recording and update the PR body to trigger re-review.
  • proof: 📸 screenshot: Contributor real behavior proof includes screenshot evidence. A screenshot now shows one Back to Diagnostics link, but it does not show the hidden-link direct navigation case or representative destination coverage; add redacted screenshots or a short recording and update the PR body to trigger re-review.
Evidence reviewed

What I checked:

  • Repository policy read: Read the full target AGENTS.md; its validation guidance was considered, but this read-only review did not run build or test commands. (AGENTS.md:1, 71d249711d63)
  • Current main does not already contain this feature: Current main has no NavOriginLabels, BackToOriginFormat, BackOriginLink, or newly origin-tagged cross-page navigation calls, so the PR is not implemented on main. (71d249711d63)
  • Existing navigation-origin infrastructure: Current main already has HubWindow.LastNavigationOrigin and origin-aware NavigateTo plumbing that this PR extends to more pages. (src/OpenClaw.Tray.WinUI/Windows/HubWindow.xaml.cs:231, 71d249711d63)
  • Provenance for existing origin behavior: git blame ties the current LastNavigationOrigin and existing BackToConnection behavior to commit 85445c7. (src/OpenClaw.Tray.WinUI/Windows/HubWindow.xaml.cs:231, 85445c78066b)
  • PR merge-ref implementation: The GitHub merge ref adds NavOriginLabels.BackToLabel and wires channel Config navigation to pass the channels origin. (src/OpenClaw.Tray.WinUI/Helpers/NavOriginLabels.cs:40, 77197439a509)
  • Real behavior proof inspected: The PR image was downloaded and inspected; it shows the Connection page rendering Back to Diagnostics, but it does not show direct rail navigation with the link hidden or representative destination coverage.

Likely related people:

  • Christine Yan: git blame and git log -S tie the current LastNavigationOrigin infrastructure and existing BackToConnection pattern to the localization/back-link commit. (role: introduced behavior; confidence: high; commits: 85445c78066b; files: src/OpenClaw.Tray.WinUI/Windows/HubWindow.xaml.cs, src/OpenClaw.Tray.WinUI/Pages/SessionsPage.xaml.cs, src/OpenClaw.Tray.WinUI/Pages/InstancesPage.xaml.cs)
  • bkudiess: Prior main history shows this contributor rebuilt the Connection, Channels, Debug, Cron, and Sessions tray surfaces and added the original per-page Back to Connection link before this PR. (role: feature area contributor; confidence: high; commits: 672aadc33fe0, 9c9f70565076, 310809bc329c; files: src/OpenClaw.Tray.WinUI/Pages/ConnectionPage.xaml.cs, src/OpenClaw.Tray.WinUI/Pages/ChannelsPage.xaml.cs, src/OpenClaw.Tray.WinUI/Pages/DebugPage.xaml.cs)
  • Scott Hanselman: Recent current-main history touches HubWindow and ConnectionPage hardening in the same tray navigation surface. (role: recent adjacent contributor; confidence: medium; commits: d23f8ca50013; files: src/OpenClaw.Tray.WinUI/Windows/HubWindow.xaml.cs, src/OpenClaw.Tray.WinUI/Pages/ConnectionPage.xaml.cs)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. labels May 23, 2026
@clawsweeper

clawsweeper Bot commented May 23, 2026

Copy link
Copy Markdown

ClawSweeper PR egg

🎁 Pass real behavior proof to wake the egg and unlock a hatchable treat.

Where did the egg go?
  • The egg game starts only after the PR passes the real-behavior proof check.
  • Before that, no creature or rarity is rolled. The treat waits for real proof.
  • This is still just collectible flavor: proof affects review readiness, not creature quality.

@clawsweeper clawsweeper Bot added merge-risk: 🚨 other 🚨 Merging this PR has meaningful risk outside the owned taxonomy. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. and removed rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. labels Jun 3, 2026
@ranjeshj

Copy link
Copy Markdown
Collaborator

We could probably use the NavigationView's built-in back stack instead of tracking where each page navigation came from and manually navigating back to that origin. That would keep the behavior tied to the actual navigation history rather than a separate origin tag.

We can also use the back button affordance provided by NavigationView instead of adding per-page back-link UI.

bkudiess pushed a commit to bkudiess/openclaw-windows-node that referenced this pull request Jun 15, 2026
…ck links

Replace the custom cross-page back affordances with a single native
title-bar back button driven by the NavigationView ContentFrame's back
stack.

- Add a native back button in the Hub title bar wired to ContentFrame.GoBack(),
  enabled/disabled by CanGoBack (mirrors NavigationView's root behavior),
  plus an Alt+Left accelerator. The rail re-syncs its selection on
  Back/Forward.
- Remove all custom origin-tracking infrastructure: NavOriginLabels helper,
  the 2-arg IAppCommands.Navigate/NavigateTo overloads, LastNavigationOrigin
  and pending-origin state on HubWindow, and the LocalizationHelper origin
  additions.
- Remove the per-page "Back to {origin}" links (Config/Connection/Debug/Voice)
  and the "Back to Connection" links (Sessions/Instances/Permissions), along
  with their code-behind handlers and visibility logic.
- Revert all 2-arg navigation call sites back to single-arg Navigate across
  11 pages.
- Clean up obsolete resw keys and add NavBackButton strings across all five
  locales (en, fr, nl, zh-cn, zh-tw).

In-page form/detail close buttons (ConnectionPage "Add a gateway",
DebugPage log detail) are intentionally kept — they are view-state toggles
within a page, not Frame navigations.

Addresses PR openclaw#521 review feedback to rely on native back navigation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@bkudiess bkudiess changed the title feat(tray): consistent back-links across cross-page navigations refactor(tray): native back navigation for cross-page back Jun 15, 2026
Copilot and others added 4 commits June 15, 2026 15:00
Extended the existing 'Back to Connection' affordance (Sessions/Instances/
Permissions) to every cross-page link in the Hub so users always have a
one-click return path.

- Added Helpers/NavOriginLabels for nav-tag -> display-label mapping so
  destination pages can render 'Back to {origin}' dynamically.
- Threaded originTag through 9 cross-page Navigate calls: About->Debug,
  Channels->Config (x2), Permissions->Voice, and Bindings/Cron/Usage/
  Debug/Instances->Connection.
- Added the inline back HyperlinkButton + Initialize-time wiring to
  ConfigPage, VoiceSettingsPage, DebugPage, and ConnectionPage matching
  the existing Sessions/Instances/Permissions pattern.
- Updated AsyncListLoadingPageWiringTests to accept the originTag-bearing
  Navigate('connection', ...) signature.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ck links

Replace the custom cross-page back affordances with a single native
title-bar back button driven by the NavigationView ContentFrame's back
stack.

- Add a native back button in the Hub title bar wired to ContentFrame.GoBack(),
  enabled/disabled by CanGoBack (mirrors NavigationView's root behavior),
  plus an Alt+Left accelerator. The rail re-syncs its selection on
  Back/Forward.
- Remove all custom origin-tracking infrastructure: NavOriginLabels helper,
  the 2-arg IAppCommands.Navigate/NavigateTo overloads, LastNavigationOrigin
  and pending-origin state on HubWindow, and the LocalizationHelper origin
  additions.
- Remove the per-page "Back to {origin}" links (Config/Connection/Debug/Voice)
  and the "Back to Connection" links (Sessions/Instances/Permissions), along
  with their code-behind handlers and visibility logic.
- Revert all 2-arg navigation call sites back to single-arg Navigate across
  11 pages.
- Clean up obsolete resw keys and add NavBackButton strings across all five
  locales (en, fr, nl, zh-cn, zh-tw).

In-page form/detail close buttons (ConnectionPage "Add a gateway",
DebugPage log detail) are intentionally kept — they are view-state toggles
within a page, not Frame navigations.

Addresses PR openclaw#521 review feedback to rely on native back navigation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
ranjeshj added a commit that referenced this pull request Jun 18, 2026
* feat(tray): consistent back-links across cross-page navigations

Extended the existing 'Back to Connection' affordance (Sessions/Instances/
Permissions) to every cross-page link in the Hub so users always have a
one-click return path.

- Added Helpers/NavOriginLabels for nav-tag -> display-label mapping so
  destination pages can render 'Back to {origin}' dynamically.
- Threaded originTag through 9 cross-page Navigate calls: About->Debug,
  Channels->Config (x2), Permissions->Voice, and Bindings/Cron/Usage/
  Debug/Instances->Connection.
- Added the inline back HyperlinkButton + Initialize-time wiring to
  ConfigPage, VoiceSettingsPage, DebugPage, and ConnectionPage matching
  the existing Sessions/Instances/Permissions pattern.
- Updated AsyncListLoadingPageWiringTests to accept the originTag-bearing
  Navigate('connection', ...) signature.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore(tray): use catalog back icon

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(tray): resolve property resource labels

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* refactor(tray): use native Frame back navigation instead of custom back links

Replace the custom cross-page back affordances with a single native
title-bar back button driven by the NavigationView ContentFrame's back
stack.

- Add a native back button in the Hub title bar wired to ContentFrame.GoBack(),
  enabled/disabled by CanGoBack (mirrors NavigationView's root behavior),
  plus an Alt+Left accelerator. The rail re-syncs its selection on
  Back/Forward.
- Remove all custom origin-tracking infrastructure: NavOriginLabels helper,
  the 2-arg IAppCommands.Navigate/NavigateTo overloads, LastNavigationOrigin
  and pending-origin state on HubWindow, and the LocalizationHelper origin
  additions.
- Remove the per-page "Back to {origin}" links (Config/Connection/Debug/Voice)
  and the "Back to Connection" links (Sessions/Instances/Permissions), along
  with their code-behind handlers and visibility logic.
- Revert all 2-arg navigation call sites back to single-arg Navigate across
  11 pages.
- Clean up obsolete resw keys and add NavBackButton strings across all five
  locales (en, fr, nl, zh-cn, zh-tw).

In-page form/detail close buttons (ConnectionPage "Add a gateway",
DebugPage log detail) are intentionally kept — they are view-state toggles
within a page, not Frame navigations.

Addresses PR #521 review feedback to rely on native back navigation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add OpenClaw Onboard settings card

Add a dedicated "OpenClaw Onboard" card to the Local Gateway section of
Companion Settings. Its "Open onboarding" button opens the hosted setup
window and navigates straight to the gateway onboarding step, skipping
WSL installation.

- New ShowGatewayWizard app command hosts SetupWindow and calls
  NavigateToWizard() after initial content is ready.
- Local Gateway setup card keeps its single "Open setup" button.
- Localized header, description, and button across all 5 locales.
- Extend AppRefactorContractTests to cover the direct onboarding entrypoint.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Address review: guard active setup and fix onboarding header localization

- Guard direct onboarding so it cannot interrupt an in-progress setup.
  ShowGatewayWizardAsync now goes through EnsureSetupWindowAsync, which
  reports whether a setup window was newly created. It only calls
  NavigateToWizard() for a freshly created window; an already-open setup
  window (which may be mid-install on ProgressPage, whose Unloaded handler
  cancels the running pipeline) is just brought to the front instead.
- Register SettingsPage_OnboardWizard_Header.Text as an invariant resource
  key. "OpenClaw Onboard" is a product/feature name kept identical across
  locales (the card's description and button are translated), fixing the
  LocalizationValidationTests all-or-none failure.
- Extend AppRefactorContractTests to assert the active-setup guard
  (EnsureSetupWindowAsync + the createdNew check) stays in place.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add Run gateway doctor action to Diagnostics page

Add a "Run gateway doctor" action to the Diagnostics page (DebugPage). The
card opens a terminal in the app-managed WSL gateway, runs `openclaw doctor`,
and leaves an interactive shell open so the operator can read the report.

- Shown only when the active gateway is an app-managed WSL distro
  (GatewayHostAccessPlan.CanControlWslGateway); hidden for SSH/remote/none.
- Reuses the same launcher path as the Connection page's Open terminal
  (GatewayTerminalLauncher / GatewayHostAccessClassifier), opening a themed
  Windows Terminal tab with a direct wsl.exe fallback.
- Keep-open uses `&& openclaw doctor || true && exec bash` (no `;`):
  Windows Terminal splits its command line on `;` even inside quotes, which
  caused 0x80070002. `|| true` absorbs doctor's frequent advisory non-zero
  exit so the shell always stays open.
- Start() now uses UseShellExecute = !UsesWindowsTerminal so direct wsl/ssh
  launches get a visible console window.
- Adds a Doctor glyph to FluentIconCatalog and resw keys across all 5 locales.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix diagnostics page contract merge

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Address onboarding and navigation review findings

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Hide onboard card after gateway removal

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Translate gateway doctor diagnostics strings

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Allow invariant gateway section label

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: ranjeshj <ranjeshj@DESKTOP-D683G7P>
@ranjeshj

Copy link
Copy Markdown
Collaborator

Closed as superseded by #780, which includes this change plus conflict-resolution, validation, localization, and review fixes.

@ranjeshj ranjeshj closed this Jun 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 other 🚨 Merging this PR has meaningful risk outside the owned taxonomy. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants