---
title: "v0.29.0 — Entrypoint Badges, FSM Unification & Local CI"
date: 2026-04-02
version: v0.29.0
---

## New features

**Session entrypoint badges** — history session cards now show how each session was started: CLI, VS Code, SDK, or other entrypoints. Visual badge on each card so you can filter and identify sessions at a glance.

**Unified local CI pipeline** — new `./scripts/ci-local.sh` runs 8 sequential quality gates before every release: TS lint, typecheck, and tests; Rust clippy and workspace tests; evidence audit; Storybook build; and integrity gates. The release script now runs full local CI automatically.

## Improvements

**FSM-unified session views** — all session views (history, live, watching) now run on a single finite state machine, replacing the legacy TanStack hook chain. Removed 5,841 lines of duplicated state management and fixed pagination drift that had been present for a month.

**Stable scroll anchoring** — fixed `onStartReached` callback instability across all pagination consumers. Inline anonymous functions and conditional ternaries replaced with stable `useCallback` references, fixing silent scroll anchoring breakage in Virtuoso.

**Keyboard navigation fix** — arrow keys in the sidebar no longer hijack focus from the chat input. Global keyboard navigation removed from sidebar to prevent input stealing.

**Agent name parsing** — the block pipeline now parses `agent-name` JSONL entries for better sub-agent identification in conversation views.

**Evidence baseline sync** — added a baseline-to-parser sync guard that prevents stale evidence drift, catching schema changes before they ship.

## Getting started

```bash
npx claude-view@latest
```
