v2.0.2

d2lang/d2v2.0.2Jul 21, 2026by robinv8

AI Summary

This release focuses on AI enhancements, email notification improvements, and security hardening for the Apache Answer Q&A platform.

Key Highlights

  • Added reasoning content support in AI conversations to preserve model thinking output.
  • Implemented recovery middleware to handle unexpected HTTP panics gracefully.
  • Introduced configurable email throttling and interval support for new question notifications.
  • Performed extensive security hardening, including avatar cleanup checks and external login binding fixes.

New Features

  • Support for reasoning content in AI conversation records and chat UI.
  • Ability to disable email verification from site settings.
  • Recovery middleware for handling unexpected panics in HTTP requests.
  • Interval support for new question email notifications.

Full Release Notes

## What's New in Apache Answer 2.0.2

### New Features

- Add reasoning content support in AI conversation records and chat UI to preserve model thinking output across follow-up rounds (@hgaol #1530)
- Allow disabling email verification from site settings for deployments that do not require mandatory email confirmation (@AsyncAssassin #1540)
- Add recovery middleware to handle unexpected panics more gracefully in HTTP requests (@hhc7 #1537)
- Add interval support for new question email notifications (@AsyncAssassin #1545)

### Improvements

- Move new question email throttling to a dedicated worker and make the email queue configurable for better operational control (@AsyncAssassin)
- Update Docker and CI build flow to use Buildx and Go 1.25 for image builds (@LinkinStars)

### Bug Fixes

- Fix edit question failing when short links are enabled (@LinkinStars #1554)
- Fix missing license entry for mozillazg-go-unidecode (@LinkinStars #1552)
- Prevent incorrect external login account binding during connector sign-in flows (@LinkinStars)
- Align revision audit permission checks for both approve and reject actions (@LinkinStars)
- Enforce avatar cleanup ownership checks when updating profile images (@LinkinStars)
- Harden Accept-Language parsing against malformed oversized headers (@LinkinStars)
- Remove stale administrative API key access after role or account changes (@LinkinStars)
- Restrict deleted or pending answer visibility in answer and MCP retrieval paths (@LinkinStars)
- Preserve accepted answer operations when short links are enabled (@hgaol #1541)
- Limit JSON 500 rewriting to API routes and avoid rewriting responses after they have already been flushed (@hhc7)
- Avoid the `/topic` fallback for non-Latin titles by generating pragmatic ASCII slugs (@ahmedqasid #1526)

**Full Changelog**: https://github.com/apache/answer/compare/v2.0.1...v2.0.2