fix: hide package resources when owners are banned#2283
fix: hide package resources when owners are banned#2283vyctorbrzezowski wants to merge 4 commits into
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 maintainer review before merge. Latest ClawSweeper review: 2026-05-23 22:51 UTC / May 23, 2026, 6:51 PM ET. Workflow note: Future ClawSweeper reviews update this same comment in place. How this review workflow works
Summary Reproducibility: yes. Source inspection on current main shows ban/delete flows do not touch packages or package publish tokens, while package reads already hide rows with softDeletedAt. 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:
Next step before merge Security Review detailsBest possible solution: Land a maintainer-approved moderation policy that sanctions personal package resources, preserves org-owned resources, keeps publish tokens revoked after sanctions, and preserves the matching-ban restore invariant with regression coverage. Do we have a high-confidence way to reproduce the issue? Yes. Source inspection on current main shows ban/delete flows do not touch packages or package publish tokens, while package reads already hide rows with softDeletedAt. Is this the best way to solve the issue? Yes, pending maintainer policy sign-off. Reusing the existing package soft-delete/search-digest path with indexed owner batches and focused token revocation is the narrowest maintainable implementation I found. Label justifications:
What I checked:
Likely related people:
Codex review notes: model gpt-5.5, reasoning high; reviewed against c9e105fa3465. |
be120c0 to
b985f0c
Compare
b985f0c to
433bc65
Compare
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
433bc65 to
2afb65d
Compare
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
|
ClawSweeper PR egg ✨ Hatched: 🥚 common Moonlit Patch Peep Hatch commandComment Hatchability rules:
Rarity: 🥚 common. What is this egg doing here?
|
2c45a09 to
958314a
Compare
958314a to
352734f
Compare
Summary
When a personal account is banned or deleted, its personal package resources disappear too. Packages owned by an org stay with the org, even if an old user field still points at the banned account.
What changed
packages.softDeletedReasondistinguishes ban-hidden packages from account-deleted packages.ownerUserIdfield.Public behavior
Personal package resources become unavailable when the owning account is banned or deleted. Ban-hidden personal package resources are restored only by the matching unban batch.
Org-owned package resources remain owned by the org and are not hidden just because one member, or a legacy
ownerUserId, is sanctioned.Policy note for maintainer review: this PR intentionally treats personal package resources as sanction-bound while preserving org-owned resources.
Behavior proof
Live Convex runtime proof from ban, delete, unban, package soft-delete, token revocation, and org-owned preservation:
This proof shows a personal package hidden on ban with its publish token revoked, the org-owned package preserved, the personal package restored on matching unban, and account-deleted package state staying non-restorable.
Focused regression suite:
Validation
Current GitHub CI for this head has
packages,types-build,e2e-http, andplaywright-smokepassing, withplaywright-local-authstill running at the time of this update. Thestaticjob currently stops atbun auditon the existing transitivewsadvisoryGHSA-58qx-3vcg-4xpx.