fix(update): surface plugin channel fallbacks#81422
Conversation
30c36c8 to
a3d03d2
Compare
|
Codex review: needs real behavior proof before merge. Reviewed June 3, 2026, 6:49 PM ET / 22:49 UTC. Summary PR surface: Source +115, Tests +144. Total +259 across 6 files. Reproducibility: yes. Source inspection shows current main can log an npm beta fallback during the update flow but the post-core summary only repeats aggregate counts and errors, so a successful fallback can be missing from the final summary. Review metrics: 1 noteworthy metric.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Carry fallback metadata through Do we have a high-confidence way to reproduce the issue? Yes. Source inspection shows current main can log an npm beta fallback during the update flow but the post-core summary only repeats aggregate counts and errors, so a successful fallback can be missing from the final summary. Is this the best way to solve the issue? Yes for the code shape: structured metadata on AGENTS.md: found and applied where relevant. Codex review notes: model gpt-5.5, reasoning high; reviewed against 381c5e0762d1. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +115, Tests +144. Total +259 across 6 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
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
|
|
This pull request has been automatically marked as stale due to inactivity. |
|
ClawSweeper PR egg: 🎁 locked until real behavior proof passes. Details
|
a3d03d2 to
192e96c
Compare
192e96c to
8ad556c
Compare
8ad556c to
1b2fc33
Compare
|
Land-ready proof for 6fedc53:
|
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
* fix: surface plugin update channel fallbacks * fix: clarify dry-run plugin fallback output * fix: preserve failed plugin fallback metadata * chore: mark compatibility aliases deprecated * chore: fix channel runtime lint directive --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
Summary
@latestbecause@betawas unavailable.channelFallbackmetadata and both direct plugin updates and post-core summaries emit a concise warning.Change Type (select all)
Scope (select all touched areas)
Linked Issue/PR
Real behavior proof (required for external PRs)
@latestbecause@betais unavailable.pnpm test src/plugins/update.test.ts src/cli/update-cli.test.tsto exercise the production post-core summary path and direct plugin update reporting path.npm plugins: 1 updated, 0 unchanged.followed byplugin channel fallback: lossless-claw used @latest because @beta was unavailable.Root Cause (if applicable)
Regression Test Plan (if applicable)
src/plugins/update.test.ts,src/cli/update-cli.test.ts@betato@latest, and the final summary emits the concise channel fallback warning.User-visible / Behavior Changes
Plugin update summaries may now include a concise warning such as
plugin channel fallback: lossless-claw used @latest because @beta was unavailablewhen an npm plugin falls back from a requested channel to@latest.Diagram (if applicable)
Security Impact (required)
Yes/No) NoYes/No) NoYes/No) NoYes/No) NoYes/No) NoYes, explain risk + mitigation: N/ARepro + Verification
Environment
pnpm testSteps
git diff --check.pnpm test src/plugins/update.test.ts src/cli/update-cli.test.ts.Expected
Actual
git diff --checkpassed.pnpm test src/plugins/update.test.ts src/cli/update-cli.test.tspassed with 2 files and 163 tests.Evidence
Attach at least one:
Human Verification (required)
What you personally verified (not just CI), and how:
@betafallback metadata, failed@betafallback metadata, fallback-second-failure error shape, direct plugin update warning plumbing, and post-core final warning output.Review Conversations
If a bot review conversation is addressed by this PR, resolve that conversation yourself. Do not leave bot review conversation cleanup for maintainers.
Compatibility / Migration
Yes/No) YesYes/No) NoYes/No) NoRisks and Mitigations