fix: abort stale unban skill restore batches#2284
Conversation
|
@vyctorbrzezowski is attempting to deploy a commit to the Amantus Machina Team on Vercel. A member of the Team first needs to authorize it. |
|
Codex review: needs changes before merge. Latest ClawSweeper review: 2026-05-23 22:44 UTC / May 23, 2026, 6:44 PM ET. Workflow note: Future ClawSweeper reviews update this same comment in place. How this review workflow works
Summary Reproducibility: yes. Source inspection shows current main restores unban pages without re-reading owner state, and PR head's remaining gap is reproducible from source with a legacy PR rating Rank-up moves:
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. Real behavior proof Risk before merge
Maintainer options:
Copy recommended automerge instructionNext step before merge Security Review findings
Review detailsBest possible solution: Land the owner re-read and fail-closed restore behavior after extending monotonic retimestamping to legacy no-status Do we have a high-confidence way to reproduce the issue? Yes. Source inspection shows current main restores unban pages without re-reading owner state, and PR head's remaining gap is reproducible from source with a legacy Is this the best way to solve the issue? Not yet. The owner re-read and monotonic marker direction is the right narrow fix, but the retimestamp guard should include legacy no-status Label justifications:
Full review comments:
Overall correctness: patch is incorrect Acceptance criteria:
What I checked:
Likely related people:
Codex review notes: model gpt-5.5, reasoning high; reviewed against c538848a3d1e. |
632a52b to
ac6d90b
Compare
ac6d90b to
762bf1b
Compare
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
762bf1b to
bd3562e
Compare
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
|
ClawSweeper PR egg 🔥 Warming up: real-behavior proof passed; findings, security review, or rank-up moves are still in progress. Hatch commandComment Hatchability rules:
What is this egg doing here?
|
9761d85 to
cb1143e
Compare
Summary
When a user is unbanned, ClawHub restores their hidden skills in background steps. This PR makes each step check whether the user was banned again before restoring anything. The latest ban always wins.
What changed
softDeletedAtback from a newer ban timestamp.Public behavior
Unban restore is fail-closed. If a restore page is stale because the user was banned or deactivated again, the page aborts instead of restoring old state.
Ban-hidden rows keep the newer ban marker. Removed rows remain removed.
Behavior proof
Live Convex runtime proof from a stale unban restore page after a later ban:
This proof creates a stale restore page, applies a later ban before the page runs, then confirms the restore aborts and the skill remains hidden with the later ban marker.
Focused regression suite:
Validation
Current GitHub CI for this head also has
packages,types-build,e2e-http,playwright-smoke, andplaywright-local-authpassing. Thestaticjob currently stops atbun auditon the existing transitivewsadvisoryGHSA-58qx-3vcg-4xpx.