You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Update CHANGELOG: move unreleased items to v2.2.0 section
- Add generated marquee-1400x560.png store asset
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+21-6Lines changed: 21 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,17 +4,32 @@ All notable changes to vnsh are documented in this file.
4
4
5
5
## [Unreleased]
6
6
7
+
---
8
+
9
+
## [2.2.0] - 2026-02-18
10
+
7
11
### Added
8
-
-**R2 orphan blob cleanup**: Daily Cron Trigger at 03:00 UTC scans all R2 objects and deletes expired blobs. Legacy objects without `expiresAt` metadata are deleted after 8 days (max TTL is 7 days). Prevents unbounded R2 storage cost growth.
9
-
-**Application-level rate limiting**: KV-based sliding window counters with TTL auto-expiry. `POST /api/drop` limited to 50 uploads/hour per IP, `GET /api/blob/:id` limited to 50 reads/minute per IP. Returns `429 Too Many Requests` with `Retry-After` header when exceeded.
10
-
-**Scaling & revenue plan**: Documented 4-phase roadmap in `docs/scaling-revenue.md` covering foundation (rate limiting, analytics, client ID), freemium gate (API keys, tier structure, Stripe), x402 AI payments, and team/enterprise tiers.
11
12
-**Web Viewer extension CTA**: Prominent "Add vnsh to Chrome" card with Chrome logo on all `/v/` viewer pages. Auto-hides when extension is detected, dismissible with localStorage persistence.
12
13
-**Homepage Extension tab**: 4th tab on vnsh.dev homepage showing AI Debug Bundle, Inline Decryption, Right-Click Share features with install button.
13
14
-**Blog infrastructure**: `/blog` index and `/blog/:slug` routes with SEO meta tags, OG tags, and sitemap integration.
14
-
-**First blog post**: "Why Your AI Coding Assistant Shouldn't See Your Secrets in Plaintext" — SEO-optimized article on zero-knowledge encrypted sharing for AI coding workflows.
15
+
-**5 SEO blog posts**:
16
+
- "Why Your AI Coding Assistant Shouldn't See Your Secrets in Plaintext"
17
+
- "Debug CI Failures Faster with vnsh + Claude Code"
18
+
- "How We Implemented Zero-Knowledge Encryption in a Chrome Extension"
19
+
- "One-Click AI Debug Bundles: Packaging Browser Context for LLMs"
20
+
- "Why URL Fragments Are the Best Place to Hide Encryption Keys"
15
21
-**Compact tab layouts**: Redesigned Terminal, Agent, and Extension tabs to fit content without scrolling. Agent manual setup collapsed into `<details>`.
16
-
-**Marquee promo template**: 1400x560 HTML template for Chrome Web Store Featured badge nomination.
17
-
-**Awesome list submissions**: PRs to 5 curated GitHub lists (awesome-chrome, Awesome-WebExtensions, awesome-privacy, chrome-privacy-extensions, awesome-chrome-extensions).
22
+
-**Marquee promo template**: 1400x560 HTML template and generated PNG for Chrome Web Store Featured badge nomination.
23
+
-**Referrer-Policy header**: `no-referrer` on viewer and homepage responses to prevent fragment leakage.
24
+
-**Extension detection**: Content script sets `data-vnsh-ext` attribute on `<html>` for CTA auto-hide.
25
+
26
+
### Changed
27
+
- R2 orphan blob cleanup, rate limiting, and scaling plan moved from unreleased to infrastructure (shipped in prior deploys).
28
+
- Cleaned up roadmaps: removed completed items from `docs/scaling-revenue.md` and `extension/PLAN.md`.
29
+
30
+
### Growth
31
+
- Chrome Web Store Featured badge nomination submitted.
0 commit comments