prreviewbuddy 0.55.6 → 0.55.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,83 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.55.10
4
+
5
+ **Complexity worth keeping loses its side rules.** In a KISS review, each item in the list had a
6
+ grey line down its left edge, which made the list look like a timeline or a run of quotations. The
7
+ disclosure arrow and the space between items already show where each one ends, so the line is
8
+ gone, and the items sit a little closer to the left so they line up with the heading.
9
+
10
+ ## 0.55.9
11
+
12
+ **No more 404s in the workspace console.** Opening a review, the Diagrams tab or a file logged a
13
+ "Failed to load resource" error for every chunk the page loads on demand. Vite's preload hints asked
14
+ for each chunk at the site root, while the workspace serves them from `/assets/`. The chunks
15
+ themselves always loaded, so nothing was broken, but the hints were wasted and the console was
16
+ noisy. They now point at `/assets/`, and the page fetches a dynamic import's chunks in parallel as
17
+ intended.
18
+
19
+ ## 0.55.8
20
+
21
+ **Author's context links to the PR description on GitHub.** In the extension, which sits on the PR
22
+ page where GitHub already shows the description in full, Author's context is now a link, **View PR
23
+ description on GitHub ↗**, instead of a second copy of it: on the Conversation tab it scrolls to
24
+ and focuses GitHub's own description, and from any other tab it goes there. Cmd-, Ctrl-, Shift- and
25
+ Alt-click do what they do on any link. Why this change? follows straight after. This is deliberate,
26
+ host-specific layout: the extension does not duplicate what GitHub renders on the same page. The
27
+ workspace keeps its copy of the description, which is the one the analysis read, and adds the same
28
+ link to the section's header, opening GitHub in a new tab; once the review is stale it reads **View
29
+ current PR description on GitHub ↗**, including when it goes stale with the page open. Neither
30
+ shows the link for a review with no PR, such as a local branch. Both hosts still give the analysis
31
+ the stored description. (Extension 0.25.6.)
32
+
33
+ **The CLI prints the PR description's link.** When a review of a PR finishes, the terminal shows
34
+ `PR description:` and its GitHub link under the review's own.
35
+
36
+ **Mermaid diagrams in the workspace.** A block fenced as `mermaid` in a PR description or comment
37
+ is now drawn as a diagram, as GitHub draws it, from the Mermaid the workspace already bundles, with
38
+ nothing fetched from anywhere else. Each one is drawn when it first comes into view, including when
39
+ a collapsed section opens, at its natural size, scrolling sideways in a narrow pane rather than
40
+ shrinking past reading. **View source** shows the Mermaid behind it, with **Copy source**. One that
41
+ cannot be drawn shows its source with "This diagram couldn’t be displayed." Each is labelled for
42
+ screen readers by the title above it, such as "Mermaid diagram: Diagram Walkthrough". Diagrams are
43
+ treated as untrusted, and so are the Diagrams tab's, which a model wrote: both draw through one
44
+ engine, with strict mode, plain-text labels, no scripts, and no links, including `click … href`,
45
+ which is drawn as an ordinary node. A diagram can no longer switch HTML labels back on or inject its
46
+ own styles through `%%{init}%%` or front matter. The extension leaves diagrams to GitHub, on whose
47
+ page it sits.
48
+
49
+ **Workspace pages load nothing from other sites.** Every workspace page now sends a
50
+ Content-Security-Policy that limits images, styles, fonts, media and connections to the workspace
51
+ itself. Mermaid fetches the picture in an image shape (`A@{ img: "https://…" }`) while it lays the
52
+ diagram out, before anything can sanitise it, so without this a PR description could tell its
53
+ author when you opened the review, and from where. Such a diagram now shows its source instead. A
54
+ test draws hostile diagrams with the real Mermaid in Chromium, through both the description and the
55
+ Diagrams tab, and fails on any request that leaves the page.
56
+
57
+ ## 0.55.7
58
+
59
+ **Supports common GitHub-formatted PR descriptions and bot walkthroughs.** A PR description or
60
+ comment that used HTML, such as a template's `<details>` or a review bot's file walkthrough table,
61
+ showed as raw tag text in Author's context and on the PR context page. A documented safe subset is
62
+ now formatted: collapsible `<details>` sections (always starting closed, with Markdown inside them
63
+ when set apart by blank lines), tables (which scroll on their own rather than widening the page),
64
+ paragraphs, lists, links, emphasis, code and line breaks. Images, audio and video are linked, not
65
+ displayed inline: a screenshot becomes **View image: Login page** (or **View attached image** when
66
+ it has no description), and audio and video become **Open attached audio** and **Open attached
67
+ video**. They open in a new tab in your own browser session, so a private repository's uploads open
68
+ too, and nothing is fetched until you choose to. Only https media is linked. Anything else outside
69
+ the subset, such as preformatted HTML, shows as the text inside it, never as tags. The subset is
70
+ rebuilt from a fixed allowlist with only safe attributes: scripts, styles, frames, forms and event
71
+ handlers never reach the page, a link must be http(s) or in-page, and anything left open is closed
72
+ within the description. The preview opens on the author's words, past any HTML ahead of them.
73
+ Analysis output is unchanged. (Extension 0.25.5.)
74
+
75
+ **A long description closes from its top.** Once the full PR description is open, Author's context
76
+ has a **Show less** in its header, which stays at the top of the pane while you read, so you no
77
+ longer scroll to the end of a long description to close it; the one under the description is still
78
+ there. Closing takes you back to the section if you had scrolled past it, with keyboard focus on
79
+ **View full PR description**, and opening it again returns you to where you were reading.
80
+
3
81
  ## 0.55.6
4
82
 
5
83
  **File paths are shown whole.** A deep directory above a file name was cut short with an ellipsis,