Skip to content

Show the name of the newest Found step instead of "Simplified" #176

Open

Description

@CatarinaGamboa

Problem

The diagnostics panel labels the newest step of a Found derivation as Simplified, and never shows the name of that step's simplification. The verifier now adds named display steps at the end of the derivation. For example, liquid-java/liquidjava#495 appends a step called Relevant to Expected to state errors. With the current code, that name is never shown: the step appears as "Simplified", and the step before it is labelled with its own pass name.

Where

client/src/webview/views/diagnostics/vc-implications.ts, renderStepHeader:

const label = escapeHtml(index === 0 ? "Simplified" : simplification || "Original");

Proposed fix (one line)

Show the step's simplification name whenever it is set. Keep "Simplified" only as the fallback for the newest step:

const label = escapeHtml(simplification || (index === 0 ? "Simplified" : "Original"));

No server change is needed: VCSimplificationResultDTO already serialises simplification for every step.

Side effect to check: the newest step would then always show its pass name (for example "Binder" or "Substitution"), instead of "Simplified". If we want "Simplified" kept for ordinary passes, the alternative is to show the name only for named display steps. One way is a check such as index === 0 && simplification === "Relevant to Expected", or a flag sent by the verifier.

Needed for the error-message study (liquid-java/liquidjava#297).

🤖 Generated with Claude Code

Activity

  1. added
    enhancementNew feature or request
    studyNeeded before the error-message user study
    on Nov 6, 2026
  2. CatarinaGamboa commented on Nov 6, 2026

    @CatarinaGamboa
    CollaboratorAuthor

    PM decision: show the step's name on every step, as long as it isn't distracting. If a plain label is too noisy, put it behind an (i) icon next to the step header whose tooltip says what that step did (e.g. "Relevant to Expected: keeps only the facts that share a term with Expected"), so the extra information is there for those who want it.

    Suggested split, to keep the header calm:

    • Display steps that change what the user reads ("Relevant to Expected") get the name as the visible label.
    • Internal passes ("Binder", etc.) keep the "Simplified"/"Original" label, with the (i) tooltip giving a one-line plain-language description of the pass; raw pass names should not be shown on their own, since users are not told what they mean.

    Include before/after screenshots in the PR.

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

    enhancementNew feature or requeststudyNeeded before the error-message user study

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions