Repository navigation
This release adds a stop button to the chat UI that aborts streaming responses mid-generation — pressing it also cancels the upstream AI provider request so no further tokens are consumed — and fixes answer-language detection on multilingual sites by carrying the page language on chat REST requests.
Chat UI
- Added a stop button that aborts the in-flight streaming request; on the server side
ignore_user_abort(false)plusconnection_aborted()checks cancel the upstream provider call, preventing further token generation - Aborted responses render any partially received text with a "Response stopped." note; the unanswered exchange is removed from session history and excluded from logging and feedback
Multilingual
- Chat REST requests now carry the rendered page's language slug via a
langparameter (rest_langlocalized value), which Polylang, WPML, and Bogo all understand — fixing the answer language not being detected on unauthenticated REST requests - Answer language resolution order: script detected from the question text (Japanese, Korean, Russian, Arabic), then the multilingual plugin language (
langparameter, context post language, runtime API), then the WordPress locale, with Japanese as the final fallback - Moved the forced language rule into the default system prompt as a "Language Rule" section containing the
{answer_language}placeholder — custom prompts can keep, move, rewrite, or remove the section, and no language rule is injected when the placeholder is absent
Build and Release
- Added an opt-in
announcejob to the release workflow: creates WordPress draft posts (EN/JA via Polylang Pro REST) and posts to X, gated by repository variables and secrets; draft texts go to the job summary when posting is disabled - ESLint now ignores
.github/scripts/(CI-only scripts with runtime-installed dependencies) - Development dependency updates via Dependabot
Tests
- Added unit tests for answer-language resolution and
{answer_language}placeholder replacement
What's Changed
- deps(deps): bump source-map-js from 1.2.1 to 1.2.2 by @dependabot[bot] in #108
- deps(deps-dev): bump shell-quote from 1.10.0 to 1.12.0 by @dependabot[bot] in #109
- deps(deps-dev): bump the npm-development group with 2 updates by @dependabot[bot] in #110
- deps(deps-dev): bump follow-redirects from 1.16.0 to 1.16.1 by @dependabot[bot] in #112
- deps(deps-dev): bump launch-editor from 2.14.1 to 2.14.2 by @dependabot[bot] in #113
- deps(deps-dev): bump markdown-it from 14.3.2 to 14.3.3 by @dependabot[bot] in #114
- Prepare release v1.4.0 by @dxd5001 in #115
Full Changelog: v1.3.0...v1.4.0
What's Changed
- deps(deps): bump source-map-js from 1.2.1 to 1.2.2 by @dependabot[bot] in #108
- deps(deps-dev): bump shell-quote from 1.10.0 to 1.12.0 by @dependabot[bot] in #109
- deps(deps-dev): bump the npm-development group with 2 updates by @dependabot[bot] in #110
- deps(deps-dev): bump follow-redirects from 1.16.0 to 1.16.1 by @dependabot[bot] in #112
- deps(deps-dev): bump launch-editor from 2.14.1 to 2.14.2 by @dependabot[bot] in #113
- deps(deps-dev): bump markdown-it from 14.3.2 to 14.3.3 by @dependabot[bot] in #114
- Prepare release v1.4.0 by @dxd5001 in #115
Full Changelog: v1.3.0...v1.4.0
What's Changed
- deps(deps): bump source-map-js from 1.2.1 to 1.2.2 by @dependabot[bot] in #108
- deps(deps-dev): bump shell-quote from 1.10.0 to 1.12.0 by @dependabot[bot] in #109
- deps(deps-dev): bump the npm-development group with 2 updates by @dependabot[bot] in #110
- deps(deps-dev): bump follow-redirects from 1.16.0 to 1.16.1 by @dependabot[bot] in #112
- deps(deps-dev): bump launch-editor from 2.14.1 to 2.14.2 by @dependabot[bot] in #113
- deps(deps-dev): bump markdown-it from 14.3.2 to 14.3.3 by @dependabot[bot] in #114
- Prepare release v1.4.0 by @dxd5001 in #115
Full Changelog: v1.3.0...v1.4.0