Skip to content

Did your last release change what your plugin can do? (2-minute check) #7

Open

Description

@rogerdigital

Hi — I maintain dsh-vet, the static audit tool for DSH plugins. It just learned to compare two releases of the same plugin and report exactly what risk-relevant behavior changed — new endpoints, new capabilities, new install scripts, changed confidence — while ignoring line moves and reformatting.

I ran it on your last two releases (0.9.5 → 0.9.6) so you don't have to install anything. Both scans used the same scanner, full rule profile, complete coverage.

Zero risk-relevant changes. All 7 audited behaviors identical, grade C → C. If that matches your intent for the release, the diff just saved you the re-review — and it would have caught a new endpoint or install script if there'd been one.

Three questions:

  1. Does that match what you intended to change in that release?
  2. Would a per-PR "what changed since the base revision" summary (one Action input) be something you'd read before merging?
  3. Anything you'd want such a comparison to surface that static analysis can't see today?

Answers in any form are useful; I'll record anonymized takeaways in the pilot record. This is the last feedback loop before deciding whether to build CI gating on top (opt-in "fail on new risk"), so negative answers are as valuable as positive ones.

— Roger (dsh-vet)

Activity

  1. pan17 commented on Sep 11, 2026

    @pan17
    Owner

    Thanks for running this comparison.

    Yes, the result matches the intent of the 0.9.6 release. The release only changed /history filtering and presentation, adding /history all and related tests. It was not intended to add or remove any risk-relevant capability, endpoint, or install behavior, so the C → C result with zero added, removed, or changed behaviors looks correct.

    A per-PR “what changed since the base revision” summary would be useful. I would especially value:

    • a clear distinction between “no risk-relevant changes” and “incomparable/incomplete”;
    • added and changed findings called out prominently;
    • scanner/profile/coverage comparability information;
    • behavior observations even when the grade stays the same.

    One limitation I would like to see surfaced, where possible, is behavior that depends on the composed DSH profile or host version—for example, runtime service contracts, registered tools/commands, or ctx.inject behavior. Those may not be fully visible from the plugin package alone. A warning that the result only covers package-level static behavior would still be useful.

    Thanks again—the comparison was helpful and saved a manual re-review for this release.

  2. rogerdigital commented on Sep 11, 2026

    @rogerdigital
    Author

    Thanks for the detailed reply — this is exactly the feedback loop we needed, and glad it saved the re-review.

    On the scope limitation you raised: agreed, and it's now stated explicitly on every dsh-vet diff output and every PR comparison section (not only inside the scan context's coverage limitations):

    Scope: package-level static behavior only — behavior that depends on the composed DSH profile or host version is not visible from the package alone.

    That change is merged and ships in the next release. The other four properties you listed (no-changes vs. incomparable distinction, prominent added/changed callouts, comparability info, observations at unchanged grades) are how the diff already reads in 0.4.0 — good to know the design landed where you'd want it.

    If you cut another release, we'd genuinely value hearing whether you run the comparison again — repeated real use is the bar we set ourselves before building any CI gating on top (opt-in "fail on new risk"), so a "used it a second time" (or "didn't, because X") matters as much as a positive first impression.

    — Roger

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions