Skip to content

WorldwideChat v1.50: Redesigned for 26.1, Add Guardrails, New AI Options

Latest

Choose a tag to compare

@dominicfeliton dominicfeliton released this 08 Jun 07:54
df03810

Hello!
This is a major release focused on backend stability, AI reliability, and user-facing translation experience improvements.

Changes:

  1. Added guardrail support for all AI providers. Essentially a 'guardrail' prompt will run before each request with your arbitrary rules. This model can be set to be separate from the main one.
  2. Added OpenAI-compatible provider support alongside existing ChatGPT and Ollama paths. This is a third AI option meant for services such as vLLM/OpenRouter.
  3. Enabled OpenAI Responses API defaults:
    • Endpoint: https://api.openai.com/v1/responses
    • Default ChatGPT model: gpt-5.3-chat-latest
  4. Added optional Guidelines AI checks with configurable prompts and model selection.
  5. Added the new loading/translation indicator experience (action bar based progress instead of chat, smoother spinner flow).
  6. Added Paper Dialog API input support with configurable General.inputMethod:
    • auto
    • paper-dialog
    • conversation
    • none
  7. Added translation controls for capacity and object throughput for better performance:
    • General.translationCapacityLimit
    • General.objectTranslationConcurrencyLimit
  8. Added clearer feedback from translation failures and make them less vague.
  9. Much better concurrency support for entity/world translation (meaning faster responses with sign/book translation.)
  10. Expanded migration + status checks for SQL and MongoDB cleanup/deduplication and lookup performance.
  11. Bumped runtime baseline to Java 21 and plugin compatibility docs to Spigot/Paper/Folia 1.20+. 1.19 and below are no longer supported.
  12. Fixed bugs across /wwct stop, /wwcg, /wwcs, rate limiting, folia scheduling issues, and more
  13. New testing server :)

As always take care!


Technical Notes (for those inclined, see per-commit for more details.)

  • Added migration engine wiring:

    • StorageMigrationUtils and migration status model
    • Flyway-backed SQL/PostgreSQL migration path
    • Mongock-backed MongoDB migration path
    • New normalization migration for cache dedupe/index/key consistency
    • Migration failure handling disables plugin on unsafe state rather than continuing partial startup
  • AI/prompt pipeline changes:

    • OpenAI-compatible API support (URL/API key/model/prompt integration)
    • Shared guardrail/prompt templates across providers
    • Better OpenAI response parsing for both strict JSON and failure paths
    • Optional Guidelines AI is now explicit and configurable instead of implicit behavior
  • Input/interaction refactor:

    • Input abstraction for conversations/paper dialogs/null-input modes
    • General.inputMethod selection exposed in config + GUI paths
    • Paper dialog availability checks by version/classpath plus fallback strategy
  • Loading/progress revamp details:

    • Action bar indicator now behaves as a proper lifecycle:
      • delayed start display
      • pulsing frame updates while active
      • safe clear path on completion
      • hard timeout guard and explicit error state behavior
    • Separate handling for object translation UX so long-running object workflows don’t stall or spam chat output
  • Throughput and concurrency:

    • Added bounded translation capacity + object concurrency controls
    • Broader race-condition and queue fixes in translation/test flows
    • Threading and scheduler behavior improved for async/folia-safe execution paths
  • Storage and startup:

    • Cache loading and sync logic tightened across YAML/SQL/Postgres/Mongo
    • Better startup task orchestration during reload to reduce partial-init races
    • More deterministic plugin bootstrap and background task cancellation/restart behavior
  • Maintenance + hygiene:

    • Large dependency refresh across modules
    • GitHub workflow security/CI adjustments
    • Expanded test coverage for migration paths and platform-specific scheduler/performance scenarios