|
| 1 | +# Changelog |
| 2 | + |
| 3 | +## [0.2.9] - 2026-04-09 |
| 4 | + |
| 5 | +### Core: Summarization Engine Overhaul |
| 6 | + |
| 7 | +- **Structured output with Zod schema** — Replaced fragile `generateText()` + manual JSON parsing with `generateObject()` + Zod schema validation. LLM output is now guaranteed to match the expected structure, eliminating truncation and parse failures. |
| 8 | +- **Built-in retry on schema violation** — `generateObject()` with `maxRetries: 3` automatically feeds validation errors back to the model for self-correction, replacing the previous no-retry-on-parse-failure behavior. |
| 9 | +- **Output token limit** — Added `maxOutputTokens: 4096` to prevent mid-JSON truncation caused by low default token limits on some providers/models. |
| 10 | +- **System prompt rewrite** — New prompt guides the model to produce structured summaries covering decision context, implementation details, and reusable knowledge. Removed redundant JSON format instructions (now handled by schema). |
| 11 | +- **Language-following summaries** — Summaries now match the conversation's language (Chinese conversations get Chinese summaries, English get English) instead of being hardcoded to Chinese. |
| 12 | +- **Truncation-aware** — Prompt explicitly instructs the model to summarize based on visible content only when conversations are truncated, rather than guessing omitted parts. |
| 13 | +- **Deleted legacy code** — Removed `extractJSON()` and `validateResult()` functions (~50 lines of brittle parsing logic). |
| 14 | + |
| 15 | +### Core: Search Quality Improvements |
| 16 | + |
| 17 | +- **Search result text preview** — `semanticSearch()` now returns actual `chunkText` from the embeddings table instead of hardcoded empty strings, enabling meaningful result previews. |
| 18 | +- **Richer embeddings** — Embedding text now includes tags and code snippet descriptions in addition to title, summary, and conclusions, improving keyword matching and semantic relevance. |
| 19 | +- **Cleaned up dynamic imports** — Replaced redundant dynamic `import()` calls in the search expand-relations path with top-level imports. |
| 20 | + |
| 21 | +### Dependencies |
| 22 | + |
| 23 | +- Added `zod` as a direct dependency (previously only a transitive dependency via `ai` SDK). |
| 24 | + |
| 25 | +### Landing Page & Site |
| 26 | + |
| 27 | +- Full landing page with Astro 6 + React islands + Tailwind CSS v4 + Framer Motion. |
| 28 | +- Bilingual i18n (EN `/`, ZH `/zh/`). |
| 29 | +- 7 sections: Hero, IntegrationStrip, HowItWorks, FeatureBento, LocalFirst, CliShowcase, Footer. |
| 30 | +- GitHub Pages deployment via GitHub Actions. |
| 31 | +- Replaced all emoji icons with proper SVG brand icons (Anthropic, Cursor, OpenAI from SimpleIcons). |
| 32 | +- Design audit and full redesign pass. |
| 33 | + |
| 34 | +### Promo Animations (Remotion) |
| 35 | + |
| 36 | +- 5 new landing page compositions: hero, feature-search, feature-mcp, feature-cli, cli-showcase. |
| 37 | +- macOS window style (Variant B), 800x450 @ 30fps. |
| 38 | +- TransitionSeries for CLI segment transitions. |
| 39 | +- Batch render script (`promo/render-landing.sh`). |
| 40 | + |
| 41 | +### CI/CD |
| 42 | + |
| 43 | +- Upgraded all GitHub Actions to Node 24 compatible versions. |
| 44 | +- Reverted `setup-node` to v4 (v5 does not exist). |
| 45 | + |
| 46 | +### Docs |
| 47 | + |
| 48 | +- Added website badge to README. |
| 49 | + |
| 50 | +## [0.2.8] - 2026-04-08 |
| 51 | + |
| 52 | +- Interactive TUI for CLI (`crystal` commands with Ink 7). |
| 53 | +- Codex CLI and Cursor data source adapters. |
| 54 | +- File watcher for auto-import from all three data sources. |
| 55 | + |
| 56 | +## [0.2.7] - 2026-04-08 |
| 57 | + |
| 58 | +- Electron desktop app with system tray, single-instance lock, window state persistence. |
| 59 | +- CSP security policy, graceful shutdown, sandbox mode. |
| 60 | +- NSIS installer packaging. |
0 commit comments