Files
session-delete/cordis.patch.yml
T
pyh da8e5e43a4 refactor!: align with the DSH plugin conventions and drop the npm publish workflow
Follow the cordis-plugin-development references instead of the ad-hoc choices
the first version made.

Client half:
- register the row button under this package's own id instead of shadowing the
  shipped `archive` action at a lower priority, so the official hover buttons
  keep their cells and archiving stays where the harness put it
- drop the synthetic `pointerout` dispatched at a `[data-row-key]` ancestor:
  a plugin does not read or drive another package's DOM, so the tooltip is now
  positioned from its own button alone
- keep the self-rendered primitives, the `--dsw-*` token-only styling, and the
  modal focus/Escape behavior, and document why

Host half:
- resolve a conversation's descendants with `sessionQuery.traceSession()`
  instead of listing every stored header and re-deriving `parentSession` edges
- decide liveness from the traced `SessionRecord.live` flag, which removes the
  `agents` and `sessions` dependencies from `inject`
- build the orphan-sweep corpus from `sessionQuery.listSessions()`, which
  already merges live and persisted sessions
- document that `sessionPersistence.locate()` is a JSONL-backend diagnostic
  hook, not part of the seam, and keep probing it explicitly
- record only tree roots in the deferred-deletion ledger: the activation sweep
  removes a root with everything under it, so a separately recorded child was
  deleted twice or needed a pass that never runs
- return the activation's sweep promise from `apply()` so a test can await it

Manifest and docs:
- version 2.0.0, `private`, `dsh.manifestVersion`, and `engines`
- delete the Gitea npm publish workflow and every npm-publishing task: the
  package is distributed only through the Git repository and tags
- rewrite the README around the current install paths and the plugin's limits
2026-09-30 15:30:39 +08:00

14 lines
658 B
YAML

# Bundle patch layer for @dsh-plugin/session-delete.
#
# One Host row is enough: the Host half owns the two authenticated routes the
# browser half posts to, and the browser half is picked up automatically from
# this package's `dsh.client` declaration (dsh-client-modules scans enabled
# Loader entries, serves `/plugins/@dsh-plugin/session-delete/client.js`, and
# boots it with the page), so the client never needs a row of its own.
#
# The row id, this package name, and the client module id are the same string
# in three places; renaming the package means changing all three.
- insert:
- id: session-delete
name: '@dsh-plugin/session-delete'