We value your privacy

This site uses cookies to improve your browsing experience, analyze site traffic, and show personalized content. See our Privacy Policy.

  1. MooseStack
  2. Release Notes
  3. October 24, 2025

October 24, 2025

Highlights
  • New: moose migrate --clickhouse-url enables serverless ClickHouse schema deploys
  • Improved: ClickHouseJson type enables dynamic JSON payloads with fine-grained controls

Serverless ClickHouse migrations with moose migrate

Run schema diffs and applies straight against a ClickHouse endpoint—perfect for OLAP-only or CI/CD environments that don't boot the full Moose runtime.

# Detect changes and persist the migration plan
moose generate migration \
  --clickhouse-url "https://user:pass@ch.serverless.dev/main" \
  --save
 
# Apply the plan directly to ClickHouse
moose migrate --clickhouse-url "https://user:pass@ch.serverless.dev/main"

PR: (#2872) | Docs: Serverless ClickHouse migrations guide

Adaptive JSON columns with ClickHouseJson

Model semi-structured payloads while locking in typed paths for the fields you care about.

import { Key, ClickHouseJson, Int64 } from "@514labs/moose-lib"; interface UserMetadata {  userId: string;  sessionId: string;} export interface UserActivity {  id: Key<string>;  // ClickHouseJson<maxDynamicPaths, maxDynamicTypes, skipPaths, skipRegexes>  metadata: UserMetadata & ClickHouseJson<256, 16, ["internal.debug"], ["^tmp\\."]>;}

PR:(#2887) | Docs: Data modeling

Moose

  • moose migrate --clickhouse-url – Generate and apply migrations directly against hosted ClickHouse, ideal for OLAP-only or CI/CD workflows that run without the full Moose runtime. Docs: Serverless ClickHouse migrations | PRs #2872.
  • LLM-friendly docs & endpoints – Framework pages expose TS/Py "LLM view" links and the CLI now serves /llm-ts.txt + /llm-py.txt for assistants that need scoped context. Docs: LLM docs | PRs #2892.
  • Flexible JSON columns – ClickHouseJson lets models cap dynamic paths, pin typed paths, or skip keys/regexes so ingestion can accept evolving payloads without breaking typed reads. Docs: Data modeling | PRs #2887.
  • Configurable source_dir – moose.config.toml can point at src/ (or any folder) instead of the default app/, simplifying adoption inside existing repos. Docs: Configuration | PRs #2886.
  • Array transforms can fan out events – Transform functions that return arrays automatically emit one Kafka message per element, covering explode/normalize patterns without extra producers. Docs: Transform functions | PRs #2882.
  • ClickHouse modeling controls – Table DSL now covers TTL per table/column, sampleByExpression, and fully configurable secondary indexes (type, args, granularity) so you can encode retention + performance plans directly in code. Docs: TTL | Docs: Schema optimization | Docs: Secondary indexes | PRs #2845, #2867, #2869.
  • get_source MCP tool – AI assistants can resolve a Moose component (tables, APIs, streams) back to its source file for faster code navigation. Docs: MCP get_source tool | PRs #2848.
  • Google Analytics v4 connector – Service-account authenticated connector streams GA4 reports and realtime metrics into Moose pipelines so marketing data lands without bespoke ETL. Docs: Connector reference | PRs registry#121.
  • Connector registry APIs – Public REST endpoints expose connector metadata, docs, schemas, and versions for catalogs or automation. Docs: Registry API docs | PRs registry#120.
  • Onboarding & docs polish – Quickstart, auth, materialized view, and config guides now call out install checkpoints, nullable column behavior, and when to prefer moose.config.toml over Docker overrides. Docs: Quickstart | PRs #2903, #2894, #2893, #2890.
  • Integer validation parity – The ingest API enforces every ClickHouse integer range (Int8–UInt256) with clear errors, preventing silent overflows. Docs: Ingest API | PRs #2861.
  • MCP watcher stability – The MCP server now waits for file-system changes to settle before responding so IDE bots always read consistent artifacts. Docs: MCP server | PRs #2884.
  • Release + schema compiler hardening – Version detection ignores CI-only tags, and ClickHouse parsing handles ORDER BY around PARTITION BY, TTL, SAMPLE BY, and secondary indexes even when optional arguments are omitted. PRs #2902, #2898, #2897, #2889.
  • Proxy request fidelity – Consumption APIs now preserve headers/body metadata end-to-end, keeping auth tokens and content negotiation intact. PRs #2881.

Fiveonefour

  • Navigation slug fix – Visiting a 404 no longer strips the org ID from subsequent links, so multi-tenant operators stay on the right workspace. (commercial#1014)

On this page

Serverless ClickHouse migrations with `moose migrate`Adaptive JSON columns with `ClickHouseJson`MooseFiveonefour
Edit this page
FiveonefourFiveonefour
Fiveonefour Docs
MooseStackHostingTemplatesGuides
Release Notes
Source531
  • Overview
Build a New App
  • 5 Minute Quickstart
  • Browse Templates
  • Existing ClickHouse
Add to Existing App
  • Next.js
  • Fastify
Fundamentals
  • Moose Runtime
  • MooseDev MCP
  • Language Server
  • Data Modeling
Moose Modules
  • Moose OLAP
  • Moose Streaming
  • Moose Workflows
  • Moose APIs & Web Apps
Deployment & Lifecycle
  • Moose Dev
  • Moose Migrate
  • Moose Deploy
Reference
  • API Reference
  • Query Layer
  • Data Types
  • Table Engines
  • CLI
  • Configuration
  • Observability Metrics
  • Help
  • Release Notes
    • February 19, 2026
    • February 12, 2026
    • February 6, 2026
    • January 30, 2026
    • January 23, 2026
    • January 16, 2026
    • January 9, 2026
    • December 22, 2025
    • December 15, 2025
    • December 5, 2025
    • November 22, 2025
    • November 14, 2025
    • November 7, 2025
    • November 1, 2025
    • October 24, 2025
Contribution
  • Documentation
  • Framework