Skip to content

Persist plugin listing lifecycle - #2748

Closed
brsbl wants to merge 7 commits into
bb/plugin-discovery-contractsfrom
bb/plugin-listing-persistence
Closed

Persist plugin listing lifecycle#2748
brsbl wants to merge 7 commits into
bb/plugin-discovery-contractsfrom
bb/plugin-listing-persistence

Conversation

@brsbl

@brsbl brsbl commented Aug 31, 2026

Copy link
Copy Markdown
Collaborator

Product intent and requirements

  • Make authored-plugin listing state and plugin health durable across server restarts.
  • Preserve drafts, submission progress, publication state, notices, and failure context instead of rebuilding them from transient UI state.
  • Use targeted database queries and indexes so the lifecycle remains scalable as plugin counts grow.
  • Keep this layer persistence-only; user-facing presentation belongs in later stack layers.

What was wrong

The discovery contracts had no durable owner for authored listing drafts, submission state, marketplace publication, notices, or the plugin health data needed to explain failures across restarts.

What changed

  • Adds generated migrations for plugin health and listing lifecycle storage.
  • Adds the listing lifecycle data-access layer and schema indexes used by its targeted queries.
  • Persists plugin health alongside existing plugin records.
  • Covers migration, lifecycle, and persistence behavior with real in-memory SQLite tests.

Product context

This persistence layer enables the durable My Plugins lifecycle shown below in the later integration layer; it does not itself change rendered UI.

Stack outcome: durable authored-plugin collection and creation experience

## How you verified
  • This persistence-only layer has no intentional rendered UI change, so before/after UI evidence is not applicable.
  • Pull-request CI is green on exact head aeefa3d9ef84b2c172b4cd5c7c560f88f28ce89d; all required checks passed and the platform-inapplicable jobs were skipped.
  • No CI-equivalent tests, typechecks, or lint were run locally per repository policy. Pull-request CI is the validation path.

BB-Thread-ID: thr_9tmqez22hd

AGENT GENERATED

@SawyerHood

Copy link
Copy Markdown
Collaborator

Closing: the listing lifecycle table was dropped with the My Plugins feature by owner decision, and the plugin health columns were split into #2871 and then closed as not needed. Nothing from this layer is pending.

AGENT GENERATED

@SawyerHood SawyerHood closed this Sep 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants