Releases: lemony-ai/cascadeflow
Releases · lemony-ai/cascadeflow
v1.1.0
cascadeflow v1.1.0 — Hardening Release
Highlights
- 10x faster import: ~20ms via PEP 562 lazy loading (down from ~1900ms)
- Proxy security: CORS opt-in, 10MB body limit, Bearer auth with constant-time comparison
- Thread safety: Locking for SDK patch/unpatch, run counters, and record()
- Performance: Pre-compiled regex in ComplexityDetector (~4x faster)
- DX improvements: Actionable ImportError for missing integrations, removed deprecated CascadeAgent params, langchain optional extra
Breaking Changes
CascadeAgentno longer accepts deprecatedconfig,tiers,workflows,enable_caching,cache_size,enable_callbacksparams- Proxy CORS default changed from
*toNone(opt-in viacors_allow_origin) richmoved to optional extra (pip install cascadeflow[rich])
npm Packages
@cascadeflow/core1.1.0@cascadeflow/ml1.1.0@cascadeflow/langchain1.1.0@cascadeflow/vercel-ai1.1.0@cascadeflow/paygentic1.1.0@cascadeflow/n8n-nodes-cascadeflow1.2.0
Full Changelog
v1.0.0
What's Changed
- feat(n8n): tool call validation, domain verifiers, agent domain routing by @saschabuehrle in #125
- fix(n8n): eager model resolution for visual flow highlighting by @saschabuehrle in #127
- fix(n8n): single getInputConnectionData call for correct model resolution by @saschabuehrle in #129
- fix(n8n): shorten domain labels, single domain verifier toggle by @saschabuehrle in #130
- fix(n8n): move domain verifiers toggle to visible position by @saschabuehrle in #131
- fix(n8n): section dividers, tool call validation default on by @saschabuehrle in #132
- fix(n8n): rename to Domain Cascading, clarify verifier fallback by @saschabuehrle in #133
- feat(n8n): convert CascadeFlowAgent to standalone execute() node by @saschabuehrle in #134
- feat(paygentic): ship opt-in integration with resilient delivery by @saschabuehrle in #136
- fix(vercel-ai): support AI SDK parts messages and improve integration DX by @saschabuehrle in #138
- Fix LangChain runtime issues and align JS integration with 1.x by @saschabuehrle in #135
- feat(core): TS rule-engine parity and OpenClaw decision-log opt-in by @saschabuehrle in #139
- fix(core): refresh Anthropic factory defaults to current model IDs by @saschabuehrle in #128
- chore(testing): extended E2E benchmark session runner by @saschabuehrle in #106
- LangChain integration: add CascadeAgent loops + domain policy routing by @saschabuehrle in #137
- docs(langchain): refresh Anthropic model IDs in examples and guides by @saschabuehrle in #140
- chore(vercel-ai): bump package version to 0.7.3 by @saschabuehrle in #141
- fix(vercel-ai): refresh Anthropic IDs and strengthen integration DX by @saschabuehrle in #142
- Improve Vercel/LangChain integration docs, publish hardening, and deployed /api/chat E2E by @saschabuehrle in #143
- fix(proxy): resolve stats timeout and normalize tool-call shape by @saschabuehrle in #144
- Improve Vercel + LangChain integration loops and DX by @saschabuehrle in #145
- Add ClawHub CascadeFlow skill under OpenClaw integrations by @saschabuehrle in #147
- Harden v1 security posture and safe example tooling by @saschabuehrle in #146
- Harden ClawHub CascadeFlow skill metadata and safety guidance by @saschabuehrle in #148
- Clarify ClawHub skill credential metadata and package verification by @saschabuehrle in #153
- Improve integration example DX and tool-loop reliability by @saschabuehrle in #154
Full Changelog: v0.7.1...v1.0.0
Release 0.7.1
Release 0.7.0
- docs: update README with 15 domains and add Banking77 benchmark (8e17e44)
- fix: correct version to 0.6.5 and update Banking77 benchmark (ca26798)
- fix: resolve Ruff lint errors in banking77_benchmark.py (223e777)
- docs: consistent cascadeflow naming + domain routing image (#94) (c6554a2)
- feat: Full Integration - Vercel AI SDK, n8n, Proxy, All Providers (#95) (a923702)
- fix: resolve proxy import conflict for CI (bd26bc1)
- fix: Black formatting + Python 3.9 compatibility (6bc7512)
- fix: correct AI SDK package names + regenerate pnpm-lock (0ac09c4)
- fix: black format errors.py (e8ae386)
- fix: ignore UP045 ruff rule for Python 3.9 compat (2ff1853)
- fix: resolve duplicate ValidationResult + ruff lint errors (450e2b3)
- fix: apply Codex CI fixes - clean imports, vitest config (530d4dc)
- feat(quality): v14 function call validation + agentic benchmark (#96) (6ce735e)
- fix: resolve core build and typecheck failures (#97) (24bb33d)
- OpenClaw integration: production readiness + OpenAI-compatible server hardening (#99) (da0a96e)
- feat(skills): add cascadeflow skill for OpenClaw/ClaWHub (404b0f3)
- fix(skills): make cascadeflow skill generic for ClaWHub users (be7b959)
- fix: add OpenAI-compatible streaming chunks (initial role + final finish_reason) (bf8627e)
- fix: OpenAI streaming compatibility + add working gpt-4o config (a1c2842)
- fix: GPT-5 streaming + OpenAI-compatible SSE format (494d7f5)
- fix(skills): update anthropic-only config - code/general/reasoning use Opus verifier (e1d1d10)
- feat: map heartbeat/cron to Haiku-only domains for cost efficiency (96d398d)
- fix(skills): sync anthropic-only config template (afacd10)
- feat(skills): add heartbeat/cron domains to all config templates (9eca566)
- fix(health): Return degraded status when no providers initialized (6b8e8be)
- fix: track routing decisions (cascade/direct) in streaming telemetry (118a689)
- feat(vercel-ai): useChat integration + agentic tool-loop parity (#101) (1344468)
- fix(benchmarks): repair MMLU runner + use GSM8K config (#103) (9a397f8)
- Fix OpenClaw GPT-5 Responses + Anthropic tool loop (#100) (1e8251a)
- LangChain v2: tool-risk verifier gating + tool-safe streaming (#105) (269c946)
- Gateway proxy consolidation + DX cleanup (#104) (21e30f1)
- feat(config): update anthropic-only preset with correct model names (e4c04e3)
- fix(config): use Haiku 4.5 as default drafter (6da94c4)
- fix(config): use Sonnet 4.5 for code/reasoning/creative drafters (f48c372)
- fix(anthropic): preserve non-empty text across multi-block responses (#107) (59a126b)
- feat(n8n): CascadeFlow Agent node + model highlighting (#102) (325e055)
- fix(openclaw): emit parser-safe streaming final chunk (#108) (329dd8f)
- fix(openclaw): use HTTP/1.1 protocol for OpenAI-compat server (6864fc2)
- fix(openclaw): add Connection: close header for SSE streaming (4261b11)
- fix(openclaw): include content in delta of final streaming chunk (f3a7b14)
- fix(streaming): discard draft chunks when cascading to verifier (7ba4898)
- test(openclaw): align final streaming delta assertion (#109) (adaabd8)
- fix(streaming): dont duplicate content in final delta chunk (24a8746)
- fix(openclaw): handle tool text streams and avoid mixed cascade output (#110) (7ae1b44)
- fix(openclaw): add stream_options.include_usage support for OpenClaw/pi-ai compatibility (#111) (44d2fb3)
- fix: OpenAI streaming spec compliance for all cascadeflow users (#112) (26c6087)
- fix: handle tool call events in streaming mode (#113) (b5be027)
- fix: surface upstream provider errors to OpenClaw users and normalize no-logprobs confidence (e1416cf)
- fix(alignment): add paraphrase floor to prevent 0% Anthropic acceptance (eab6fa4)
- fix(telemetry): track draft acceptance and cost in streaming mode (095f4d1)
- style: fix Black formatting and Ruff lint errors for CI (e0912bc)
- fix: record draft acceptance telemetry in stream_events (a90333f)
- Revert "fix: record draft acceptance telemetry in stream_events" (55c6832)
- fix(streaming): validate text drafts in tool pipeline instead of blind rejection (783a31e)
- feat(openclaw): decision trace JSONL + domain stats (#114) (3ffcffb)
- fix(telemetry): draft acceptance stats stuck at 0% for tool streaming (0933b91)
- style: fix Black formatting and ruff lint for CI (6ece809)
- feat(openclaw): native OpenClaw integration with domain routing and decision tracing (#116) (0ee7da7)
- Fix forced-verifier routing + benchmark cost accounting (#115) (5721893)
- chore: release cleanup — remove dev artifacts, fix docs and examples (#117) (351f616)
- fix: integration audit — 6 fixes across LiteLLM, n8n, LangChain, Vercel AI, OpenRouter (#118) (e2c8d80)
- fix(e2e): harden basic usage parity script for reproducible CI (#119) (c637291)
- feat(openclaw): add demo mode auth bypass with per-ip rate limiting (#120) (bb2d342)
- fix: release prep — npm publish pipeline, package metadata, and Python packaging (#121) (9f2cfe8)
- fix: update README — examples, docs, features, icons, provider count (#122) (2091a45)
- chore: release v0.7.0 — version bumps, release workflow fix, Vercel AI first publish (#123) (badc2af)
Release 0.6.5
- fix: add --no-scripts flag to n8n package publish (dd1154f)
- Migrate npm publishing to OIDC trusted publishing (#77) (2c01fe0)
- Fix documentation and examples for v0.7 (#78) (fbaa106)
- Fix TypeScript API naming in root README (2d348b2)
- Fix reasoning-models.ts example: Update model names and add error handling (#79) (804cb3c)
- Benchmark: Provider Comparison (OpenAI vs Anthropic) (#81) (06e31ec)
- Add HumanEval code generation benchmark (#82) (a51e75f)
- Add benchmark infrastructure for performance validation (#80) (1fe1543)
- Add GSM8K math reasoning benchmark (#83) (9720333)
- Add benchmark runner for executing all benchmarks (#84) (0c43c40)
- Add MT-Bench multi-turn conversation benchmark (9c0df22)
- Add comprehensive benchmarking guide documentation (9cf0a22)
- Add TruthfulQA factual accuracy benchmark (6c00feb)
- Add customer support benchmark for real-world ROI validation (9bfe51d)
- feat(langchain-python): Complete LangChain tool calling and structured output support (#89) (143fecb)
- fix(langchain-ts): Match TypeScript quality scoring thresholds to Python (#90) (35314a7)
- fix(langchain): enable PreRouter by default to match Python behavior (#91) (5489f51)
- fix(ci): correct GitHub Actions syntax for secret checks (95a8afa)
- fix(ci): remove problematic if conditions from test-examples workflow (94c0962)
- chore: remove temporary development files and update .gitignore (#92) (9ad9d36)
- feat: implement full 16 domain configs with 2025 models (#93) (19576f9)
- feat(python): add enterprise HTTP configuration support (25fd5fa)
- feat(typescript): add enterprise HTTP configuration support (7479e17)
- docs: add enterprise HTTP configuration guide (f92121b)
- chore: update .gitignore for benchmark artifacts (a797bc8)
- style: fix Black formatting in config.py (83c35f4)
- feat(n8n): v2 with 16-domain routing and circuit breaker (f117069)
- fix(n8n): fix lint error in domain routing description (8a4b9cf)
- feat(n8n): dynamic domain model inputs and v0.6.2 (da8fecd)
- feat(n8n): individual domain toggles for better UX v0.6.3 (9ac96eb)
- feat(n8n): shorter domain input labels v0.6.4 (914c046)
- fix(n8n): disable semantic validation by default v0.6.5 (e918621)
- fix(n8n): remove semantic validation to prevent OOM v0.6.4-1 (4696c54)
- chore(n8n): bump version to 0.6.5 (364ec0c)
- docs(n8n): update README with v0.6.x changelog, remove old warning (125f14c)
- chore(n8n): bump to v0.6.6 with updated docs (e9eb7b0)
- docs(n8n): add multi-domain cascading documentation (c4858e5)
- chore(n8n): bump to v0.6.7 with domain docs (c36d2d2)
- chore: release prep cleanup (c82b09d)
- fix: correct year to 2025 in ARCHITECTURE.md (cb8d7ae)
- docs: update presets.md version to v0.6.0 (54fe772)
- chore: update pnpm-lock.yaml for @cascadeflow/ml ^0.6.0 (6054e6d)
- refactor: reorganize benchmarks into dedicated directory (5d56b2b)
- refactor: move benchmarks to tests/benchmarks/ (c6d48ab)
- docs: add benchmark results to README header (5d3c5a4)
- docs: format benchmark results as table (b4b6106)
- docs: simplify benchmark line in README (197369d)
- docs: adjust benchmark wording (be827c8)
- docs: change GPT-4o to GPT-5 in benchmark header (007c1ad)
- docs: add spacing around benchmark line (4b90be5)
- docs: add br tags for more spacing around benchmark (305df2d)
- fix: remove extraneous f-prefix from print statements (169fcd9)
- chore: bump all packages to v0.6.5 (02fc8e5)
Release 0.6.0
- revert: restore original logo sizes (cae1720)
- fix: use absolute URLs for README logo to ensure GitHub rendering (db8ed61)
- feat: smart max_tokens defaults and n8n port mapping improvements (1c89dc8)
- fix: simplify logo to single img tag for better device compatibility (28bf4a3)
- revert: restore picture element for theme-aware logo display (0f28921)
- fix: use responsive logo with relative paths and percentage width (8dd6645)
- fix: apply responsive logo styling across all READMEs (eeba099)
- fix: swap n8n port mapping and improve model debugging (52f71c4)
- fix: show specific model names in all cascade flow logs (c1063a7)
- fix: simplify main README logo with fixed width styling (e6a1661)
- Revert "fix: simplify main README logo with fixed width styling" (f130b50)
- fix: update logo SVGs with embedded fonts as paths (b60be7a)
- feat: TypeScript Parity - Milestone 1 Complete (Foundation & Core Infrastructure) (#67) (0f4da85)
- feat(n8n): Upgrade n8n integration with advanced cascade features (#68) (7bb23e6)
- chore: remove package-lock.json and prevent npm lockfile (using pnpm) (0588dcf)
- chore: move LangChain integration plan to feature branch (9a41678)
- feat: LangChain integration with universal provider support and PreRouter (#74) (671be43)
- fix: update n8n boolean parameter descriptions to start with 'Whether' (f3f6a14)
- feat: add @cascadeflow/langchain-cascadeflow to publish workflow (7af6e8f)
- chore: exclude generated TypeScript API docs from git (75ff111)
- feat: add Python LangChain integration with cascade pattern (222307d)
- feat(langchain): move to integrations/ and add PreRouter + complexity detection (286bbdb)
- feat(langchain-python): add streaming support with optimistic drafter execution (18503b8)
- feat(langchain-python): add model discovery and helpers (b6264a8)
- feat(langchain): add GPT-5 cascade demo (7522270)
- fix: format Python code with Black (916e0c2)
- fix: apply Ruff linting fixes for Python LangChain integration (ba9b891)
- fix: apply Black formatting to langchain_model_discovery.py after Ruff changes (29fe978)
- fix: resolve mypy type checking errors in LangChain integration (03bf9e3)
- feat: LangChain Python integration fixes and multi-instance docs (#75) (f1fe9f6)
- fix: resolve Python code quality (Ruff) linting errors (11653cd)
- chore: bump version to 0.6.0 (8b10ba5)
Release 0.5.0
- feat: enable npm provenance and add @cascadeflow/ml to publish workflow (b744fd3)
- fix: update @cascadeflow/ml dependency and TestPyPI permissions (495e4ec)
- chore: update pnpm lockfile for @cascadeflow/ml@0.4.0 (deaf408)
- fix: build @cascadeflow/ml before core (dependency order) (2df439e)
- fix: skip prepublishOnly script for n8n package (already built) (6c7be62)
- fix: make publish workflow not fail on already-published packages (58da107)
- fix: replace pepy.tech downloads badge with shields.io PyPI badge (f53f2bb)
- feat: add PePy total downloads badge (24842b5)
- fix: remove deployment tracking from publish workflow (5538418)
- fix: restore environment tracking to show green deployments (454ccea)
- docs: fix broken documentation links and clean up outdated references (8526cc5)
- docs: remove outdated version references and future roadmap items (e8915d9)
- OpenRouter provider (#62) (4320b4d)
- fix: typescript types and linting (#63) (b036829)
- fix: resolve n8n package workspace dependency issue (v0.4.1) (#64) (7617993)
- Release v0.5.0: Multi-instance support, TypeScript parity, and bug fixes (780ebcb)
Release 0.4.0
- fix(core): update dependency from workspace to npm version (3cc2df7)
- ci: fix test dependencies (3473546)
- ci: fix test workflow (1423984)
- ci: fix ruff linting errors (c095c6e)
- ci: fix critical ruff linting errors (fd0036a)
- Update TypeScript examples for newer models (#53) (5df2339)
- ci: disable strict mypy checking temporarily (8715662)
- ci: disable additional mypy error codes (c2da6ea)
- ci: exclude integration tests from CI runs (ee6928f)
- style: format code with Black (cc95c6b)
- test: fix domain detection test assertions (79fc8b0)
- style: format test files with Black (8e71395)
- fix: remove trailing space from config.yml filename (Windows compatibility) (2eaf676)
- test: skip flaky timing test on Windows (8259bab)
- test: skip flaky timing tests on Windows and macOS (add311e)
- docs: update README badges (0a12f91)
- docs: reorder README badges - X and Stars at end (f3b219b)
- feat(n8n): migrate to scoped @cascadeflow/n8n-nodes-cascadeflow package (9a013b5)
- ci: update n8n package name to @cascadeflow/n8n-nodes-cascadeflow (19ad777)
- docs: update all references to use @cascadeflow/n8n-nodes-cascadeflow (e2994bd)
- docs: fix remaining n8n package reference in main README (a337ee2)
- chore: bump version to 0.4.0 (82c74b6)
Release 0.3.0
Release 0.2.1
- chore: update all URLs after repository rename to lowercase (235f043)
- chore: remove duplicate org README from cascadeflow repo (acdf26b)
- chore: remove development-only files and backups for public release (35a73f4)
- fix: add rich as required dependency (0ea4143)
- fix: include all subpackages in Python distribution (f3f0c0b)
- fix: add rich to requirements.txt to match pyproject.toml core dependencies (d568864)
- chore: update CODEOWNERS and CONTRIBUTING.md for strict PR workflow (#37) (271843e)
- test: verify branch protection blocks direct push (9f3cb90)
- Revert "test: verify branch protection blocks direct push" (#38) (7774066)
- chore: remove outdated .github checklist files from v0.1.1 (#39) (f8eadf4)
- chore: update CascadeFlow logo assets (#40) (537cf79)
- feat: resize logos and remove internal documentation (#41) (e12b5d0)
- fix: correct logo size to display 1/3 larger (#42) (052f09b)
- fix: correct logo display using width attribute instead of viewBox (#43) (9965758)
- docs: improve TypeScript and n8n README formatting and readability (9c14dcf)
- docs: standardize brand name to lowercase 'cascadeflow' across all files (e20e9f7)
- docs: audit and cleanup documentation structure (03f372a)
- feat: update to latest OpenAI pricing and improve model accessibility (6b71a96)
- docs: update quickstart guide to use GPT-4o-mini and GPT-4o (a82a3d4)
- docs: update providers guide to remove GPT-3.5 reference (da867fe)
- feat: upgrade Claude models from 3.5 to 4.5 series (a6bf14d)
- docs: clarify GPT-5 verification requirements (fa43478)
- feat: add proper GPT-5 support with max_completion_tokens parameter (84a7f67)
- feat: update basic_usage.py example to use GPT-5 verifier (549c36a)
- fix: complete GPT-5 support - reasoning model with proper parameter handling (71b8e2c)
- fix: update to latest OpenAI pricing (Jan 2025) (a3ce663)
- fix: calculate tokens from costs instead of accessing non-existent fields (c9a6e43)
- fix: increase timeout for reasoning models and optimize max_tokens (03e4e2e)
- revert: restore basic_usage.py to use GPT-4o instead of GPT-5 (1c8bc13)
- docs: update cost_tracking.md with latest OpenAI pricing (Jan 2025) (ffaab47)
- docs: update TypeScript ML section to match Python style (ce8b02b)
- fix: correct ML semantic validation API documentation (f0af961)
- feat: LiteLLM integration and cost validation with accurate README pricing (02fa6fa)
- docs: merge integration READMEs into comprehensive guide (#45) (18814cc)
- docs: add comprehensive README for enforcement examples (#46) (2cefb85)
- docs: improve examples README with complete coverage and navigation (#47) (7da88c3)
- docs: update TypeScript package READMEs (#49) (45f1888)
- docs: remove future/planned content from READMEs and update feature table (#50) (eda4ca1)
- docs: fix packages/ml/README.md API documentation (#51) (ac802a5)
- docs: fix broken references and formatting in documentation (#52) (5c8f4a0)
- fix: resolve TypeScript errors and update tests (#48) (5ec0fd3)
- fix: tool calling example node.js (a976a06)
- docs: comprehensive validation fixes for bullet-proof developer experience (9dc37d6)
- revert: restore examples/basic_usage.py to working version (f67af86)
- revert: restore examples/reasoning_models.py to working version (e321a8b)
- feat(typescript): add complexity detection and PreRouter logic (6fd160e)
- fix(typescript): correct cascade tracking in cost-tracking example (c895bbc)
- feat(typescript): add alignment scorer and LiteLLM integration (5cc5b3c)
- docs: add ML models documentation for GitHub Models tab (7cd073c)
- docs: update feature parity documentation and accuracy (0d9385d)
- chore: gitignore Python vs TypeScript comparison docs (4273db3)
- chore: gitignore release notes (RELEASE_NOTES_V0.2.0.md) (888ba8d)
- docs: fix Examples section links in docs/README.md (9778fe6)
- fix(typescript): correct cost calculation with longest-prefix matching (8b4a116)
- docs: update TypeScript examples README to match Python style (aba1e12)
- docs: remove 🆕 emoji from Reasoning Models table entry (#55) (8f942d2)
- docs: fix TypeScript validation examples and add TypeScript quickstart guide (3985895)
- docs: fix TypeScript quickstart examples in main README (8fb359e)
- fix(n8n): update node for compatibility with core changes (547f32b)
- chore: bump version to 0.2.1 for pre-launch validation (a3e0849)