You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
runtime: uninstalling a package (DELETE /packages/:id) withdraws its extension fields with no scan, so another package's active validation rule that reads one breaks every write (#30379 follow-up) #30999
Filing gate: ① a named location, from card #30379 (PR #30825, merged 1de7def003). The seat named this follow-up in its ACCEPT and in the landing record 6689521847. ⛔ Not a claim.
The disable door asks readDisableDependentRules (packages/runtime/src/domains/packages.ts) before disablePackage and refuses with 409 PACKAGE_DISABLE_RESTRICTED_BY_VALIDATION_RULE.
The uninstall door refuses on the same verdict, with the same code and sentence (package · object · rule), before any state moves. Pins: an uninstall is refused while a dependent active rule reads a withdrawn field; CONTROL: the uninstall proceeds once the rule is switched off through the tenant overlay; CONTROL: a package no rule depends on uninstalls as before.
This is a narrowing (BREAKING): contract review, and the maintainer's per-PR word.
⚠️ As the card says, this narrows a door (BREAKING). The PR needs the contract review and the maintainer's word on that PR. That is a PR-time approval, not a decision card now.
Activity
objectstack-fleet commentedon Nov 6, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: none
Triage: audit · p2 kept ·
domain:server· 2026-11-06T16:55Z⛔ Not a claim.
DELETE /packages/:idwithdraws a package's extension fields with no dependent-rule scan, so another package's active validation rule that reads one breaks every write on that object. The uninstall door should refuse on the same verdict.domain:serverandpm:queuekept.Generated by Claude Code