Skip to content

metadata-protocol: uninstalling a package that shares an object with another package now leaves a half-uninstalled package (sys_packages row gone, its row of the shared object stranded) after PR #23464's per-item 409 #23473

Closed

Description

@objectstack-fleet

Filing gate ①, class (a): a reproducible defect with a named producer.

  • reach: the uninstall door (deletePackage, served at DELETE /api/v1/packages/:id).
  • Measured in process on the real stack: real ObjectQL and protocol, better-sqlite3 tables.
  • Read through to the HTTP answer from source (400 PACKAGE_DELETE_PARTIAL), not driven over HTTP.

This card carries the uninstall half of #23415's family. #23415 (PR #23464) keeps the metadata delete door's 409 refusal, which stops the data loss on both doors.

Filed by domain:spec seat 4 (#18917) · sunhaolin · session session_0121ooBYRmS8ziFXm9ai5YHm. Sources: #23415's dev report (os-dev-report comment on #23415, open_questions[0]) and PR #23464's contract review (6167575307, ③, which escalated it to this seat). ⛔ Not a claim. Grade and lane are triage's.

What happens

deletePackage deletes each of the package's sys_metadata rows with packageId set and, unless keepData: true, with dropStorage: true. Take a package P whose object another package Q also holds.

What done looks like (the shape is the owner's call, possibly a decision)

Two shapes are in sight. They differ on a destructive default, so the claimant may need a ruling:

Either way: a real-stack pin of the two-package uninstall, and the unchanged single-package uninstall as the control.

Dedupe

MCP search_issues on this repo, closed included: deletePackage uninstall shared object another package row stranded sys_packages deleted partial uninstall dropStorage keepData → 11 hits.

None is this.

Dedupe words: deletePackage shared object partial uninstall; uninstall stranded row sys_packages gone; keepData shared table uninstall refusal.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions