@magyk/vincent 0.1.7 → 0.1.9

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
@@ -6,6 +6,53 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
 
7
7
  ---
8
8
 
9
+ ## [0.1.9] — 2026-05-12
10
+
11
+ ### Added
12
+ - **Update notifications** — at startup, Vincent checks npm for a newer version
13
+ (12-hour cached, non-blocking). When one is available a banner appears in chat:
14
+ `⬆ Vincent X.Y.Z is available (you have W.X.Y). Run /update to install.`
15
+ - **`/update` slash command** — runs `npm install -g @magyk/vincent@latest` and
16
+ streams progress into the chat. On success prompts you to restart. On failure
17
+ (permission, network, or other) shows the exact manual command to run instead.
18
+ - **`--version` / `-v` flag** — print the installed version and exit.
19
+
20
+ ### Changed
21
+ - Proposals are now framed in a **cyan bordered callout** (`❯ Proposal — title`)
22
+ so they're unmistakably distinct from the agent's regular response text.
23
+ - Thinking zone moved **below the editor input** and labelled
24
+ "▸ Vincent's thoughts" — reads as running commentary rather than part of the
25
+ chat history.
26
+ - User-visible product name unified through a central `PRODUCT_NAME = "Vincent"`
27
+ constant — CLI help, TUI header, session picker, and self-test banner now all
28
+ show "Vincent" consistently.
29
+
30
+ ---
31
+
32
+ ## [0.1.8] — 2026-05-11
33
+
34
+ ### Fixed
35
+ - Terminal-width overflow crashes hardened across all custom UI components:
36
+ - `BorderBox` title fill now uses visible (ANSI-stripped) width; long titles
37
+ are truncated gracefully instead of overflowing the border line
38
+ - `BorderBox.padRight` truncates defensively so a misbehaving child component
39
+ can no longer propagate an overflow crash to the parent
40
+ - Proposal widget: title line, frozen-feedback line, and word-wrap now all
41
+ cap output to the given render width; single long words (URLs, base64
42
+ strings) are hard-broken instead of passing through unsplit
43
+ - `/open` hint added to the fallback message shown when inline images are not
44
+ supported by the terminal
45
+
46
+ ### Added
47
+ - Shared `assertWidthInvariant` test helper (`layout-utils.ts`) — one-line
48
+ width-contract verification for any `Component`
49
+ - `layout-constraints.test.ts` — 21 layout tests covering `BorderBox`,
50
+ `ProposalWidget`, `ThinkingComponent`, and `ContentRenderer` at widths
51
+ 40/60/80/120 with adversarial content (long titles, long single-word
52
+ descriptions, long feedback text)
53
+
54
+ ---
55
+
9
56
  ## [0.1.7] — 2026-05-11
10
57
 
11
58
  ### Fixed