Skip to content

docs(deployment): cold-start optimization guide + release notes#12789

Merged
ogabrielluiz merged 4 commits into
cold-start/01-measurement-foundationfrom
cold-start/06-docs-publication
May 6, 2026
Merged

docs(deployment): cold-start optimization guide + release notes#12789
ogabrielluiz merged 4 commits into
cold-start/01-measurement-foundationfrom
cold-start/06-docs-publication

Conversation

@ogabrielluiz

Copy link
Copy Markdown
Contributor

Summary

Publishes the cold-start improvements milestone: a new deployment guide covering build-time and image-layer tuning, plus a release-notes bullet with headline scenario numbers.

Scope

  • docs/docs/Deployment/deployment-cold-start.mdx — new guide covering:
    • UV_COMPILE_BYTECODE=1 build-time bytecode compilation
    • Multi-stage uv sync --no-install-project layer separation for cache-friendly rebuilds
    • Pre-bake flow dependency recipes
    • LANGFLOW_GUNICORN_PRELOAD=true default flip with opt-out guidance + fork-safety audit summary
    • Measured improvements section linking back to the release notes
  • docs/docs/Deployment/deployment-docker.mdx — cross-link
  • docs/docs/Deployment/deployment-prod-best-practices.mdx — cross-link
  • docs/docs/Support/release-notes.mdx — cold-start performance improvements bullet with 4-scenario headline table
  • docs/sidebars.js — register the new cold-start page

Stacked on

#12788 (service init + container) → #12786 (lazy validate) → #12785 (import deferrals) → #12784 (component index) → #12783 (measurement harness)

Notes for review

The release-notes bullet currently sits under ## 1.9.x. Release managers may want to move it to a new ## 1.10.0 section or a patch-release section depending on where the 1.10.0 release is cutting from — this is a one-line move.

Test plan

  • cd docs && npm install && npm start — render the docs site locally
  • Visit /docs/Deployment/deployment-cold-start — renders, sidebar entry appears, code blocks formatted
  • Visit /release-notes — new bullet visible under the correct version section
  • Cross-links from deployment-docker and deployment-prod-best-practices resolve

@coderabbitai

coderabbitai Bot commented Apr 20, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 773e36dd-d8d3-4f68-bae4-80f424982609

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cold-start/06-docs-publication

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Apr 20, 2026
@github-actions

This comment has been minimized.

Adds docs/docs/Deployment/deployment-cold-start.mdx documenting
UV_COMPILE_BYTECODE, multi-stage layer separation, pre-warmed venv
patterns, pre-bake-deps recipes, and LANGFLOW_GUNICORN_PRELOAD guidance.
Cross-links from the Docker deployment guide and the production best
practices guide. Registers the new page in the sidebar.

Adds a release-notes.mdx bullet summarizing the cold-start performance
improvements across lfx run and langflow run, with headline scenario
numbers.
Removes internal roadmap IDs (IDX-01, MEAS-03, Phase 2, Phase 5) from
the cold-start deployment guide. No behavioral changes.
@ogabrielluiz ogabrielluiz force-pushed the cold-start/06-docs-publication branch from 4320276 to 43feb33 Compare April 20, 2026 16:53
@github-actions github-actions Bot added documentation Improvements or additions to documentation and removed documentation Improvements or additions to documentation labels Apr 20, 2026
@github-actions

This comment has been minimized.

@github-actions github-actions Bot added documentation Improvements or additions to documentation and removed documentation Improvements or additions to documentation labels May 6, 2026
@github-actions

This comment has been minimized.

@github-actions github-actions Bot added documentation Improvements or additions to documentation and removed documentation Improvements or additions to documentation labels May 6, 2026
@github-actions

github-actions Bot commented May 6, 2026

Copy link
Copy Markdown
Contributor

Build failure! ❌

langflow-docs@0.0.0 build > docusaurus build [INFO] [en] Creating an optimized production build... (node:2443) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead. (Use node --trace-deprecation ... to show where the warning was created) [REDOCUSAURUS_PLUGIN] errors while bundling spec openapi/openapi.json [1] �[41mopenapi/openapi.json:537:21�[49m �[90mat #/components/schemas/ComponentOutput/properties/status�[39m Can't resolve $ref �[90m535 |�[39m �[90m"title": "Metadata"�[39m �[90m536 |�[39m �[90m},�[39m �[90m537 |�[39m "status": �[31m{�[39m �[90m538 |�[39m �[31m"$ref": "#/$defs/JobStatus"�[39m �[90m539 |�[39m �[31m}�[39m, �[90m540 |�[39m �[90m"type": {�[39m �[90m541 |�[39m �[90m"description": "Type of the component output (e.g., 'message', 'data', 'tool', 'text')",�[39m Error was generated by the �[34mbundler�[39m rule. [2] �[41mopenapi/openapi.json:10078:30�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/application1json/schema/discriminator/mapping/job�[39m Can't resolve $ref �[90m10076 |�[39m �[90m"discriminator": {�[39m �[90m10077 |�[39m �[90m"mapping": {�[39m �[90m10078 |�[39m "job": �[31m"#/components/schemas/WorkflowJobResponse"�[39m, �[90m10079 |�[39m �[90m"response": "#/components/schemas/WorkflowExecutionResponse"�[39m �[90m10080 |�[39m �[90m},�[39m Error was generated by the �[34mbundler�[39m rule. [3] �[41mopenapi/openapi.json:10079:35�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/application1json/schema/discriminator/mapping/response�[39m Can't resolve $ref �[90m10077 |�[39m �[90m"mapping": {�[39m �[90m10078 |�[39m �[90m"job": "#/components/schemas/WorkflowJobResponse",�[39m �[90m10079 |�[39m "response": �[31m"#/components/schemas/WorkflowExecutionResponse"�[39m �[90m10080 |�[39m �[90m},�[39m �[90m10081 |�[39m �[90m"propertyName": "object"�[39m Error was generated by the �[34mbundler�[39m rule. [4] �[41mopenapi/openapi.json:10078:30�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/application1json/schema/discriminator/mapping/job�[39m Can't resolve $ref �[90m10076 |�[39m �[90m"discriminator": {�[39m �[90m10077 |�[39m �[90m"mapping": {�[39m �[90m10078 |�[39m "job": �[31m"#/components/schemas/WorkflowJobResponse"�[39m, �[90m10079 |�[39m �[90m"response": "#/components/schemas/WorkflowExecutionResponse"�[39m �[90m10080 |�[39m �[90m},�[39m Error was generated by the �[34mbundler�[39m rule. [REDOCUSAURUS_PLUGIN] errors while bundling spec openapi/langflow-workflows-openapi.json [1] �[41mopenapi/langflow-workflows-openapi.json:145:27�[49m �[90mat #/paths/1api1v21workflows/get/responses/200/content/text1event-stream/schema�[39m Can't resolve $ref �[90m143 |�[39m �[90m},�[39m �[90m144 |�[39m �[90m"text/event-stream": {�[39m �[90m145 |�[39m "schema": �[31m{�[39m �[90m146 |�[39m �[31m"$ref": "#/components/schemas/WorkflowStreamEvent"�[39m �[90m147 |�[39m �[31m}�[39m, �[90m148 |�[39m �[90m"description": "Server-sent events for streaming status"�[39m �[90m149 |�[39m �[90m}�[39m Error was generated by the �[34mbundler�[39m rule. [2] �[41mopenapi/langflow-workflows-openapi.json:68:27�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/text1event-stream/schema�[39m Can't resolve $ref �[90m66 |�[39m �[90m},�[39m �[90m67 |�[39m �[90m"text/event-stream": {�[39m �[90m68 |�[39m "schema": �[31m{�[39m �[90m69 |�[39m �[31m"$ref": "#/components/schemas/WorkflowStreamEvent"�[39m �[90m70 |�[39m �[31m}�[39m, �[90m71 |�[39m �[90m"description": "Server-sent events for streaming execution"�[39m �[90m72 |�[39m �[90m}�[39m Error was generated by the �[34mbundler�[39m rule. [REDOCUSAURUS_PLUGIN] errors while bundling spec /home/runner/work/langflow/langflow/docs/openapi/openapi.json [1] �[41mopenapi/openapi.json:537:21�[49m �[90mat #/components/schemas/ComponentOutput/properties/status�[39m Can't resolve $ref �[90m535 |�[39m �[90m"title": "Metadata"�[39m �[90m536 |�[39m �[90m},�[39m �[90m537 |�[39m "status": �[31m{�[39m �[90m538 |�[39m �[31m"$ref": "#/$defs/JobStatus"�[39m �[90m539 |�[39m �[31m}�[39m, �[90m540 |�[39m �[90m"type": {�[39m �[90m541 |�[39m �[90m"description": "Type of the component output (e.g., 'message', 'data', 'tool', 'text')",�[39m Error was generated by the �[34mbundler�[39m rule. [2] �[41mopenapi/openapi.json:10078:30�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/application1json/schema/discriminator/mapping/job�[39m Can't resolve $ref �[90m10076 |�[39m �[90m"discriminator": {�[39m �[90m10077 |�[39m �[90m"mapping": {�[39m �[90m10078 |�[39m "job": �[31m"#/components/schemas/WorkflowJobResponse"�[39m, �[90m10079 |�[39m �[90m"response": "#/components/schemas/WorkflowExecutionResponse"�[39m �[90m10080 |�[39m �[90m},�[39m Error was generated by the �[34mbundler�[39m rule. [3] �[41mopenapi/openapi.json:10079:35�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/application1json/schema/discriminator/mapping/response�[39m Can't resolve $ref �[90m10077 |�[39m �[90m"mapping": {�[39m �[90m10078 |�[39m �[90m"job": "#/components/schemas/WorkflowJobResponse",�[39m �[90m10079 |�[39m "response": �[31m"#/components/schemas/WorkflowExecutionResponse"�[39m �[90m10080 |�[39m �[90m},�[39m �[90m10081 |�[39m �[90m"propertyName": "object"�[39m Error was generated by the �[34mbundler�[39m rule. [4] �[41mopenapi/openapi.json:10078:30�[49m �[90mat #/paths/1api1v21workflows/post/responses/200/content/application1json/schema/discriminator/mapping/job�[39m Can't resolve $ref �[90m10076 |�[39m �[90m"discriminator": {�[39m �[90m10077 |�[39m �[90m"mapping": {�[39m �[90m10078 |�[39m "job": �[31m"#/components/schemas/WorkflowJobResponse"�[39m, �[90m10079 |�[39m �[90m"response": "#/components/schemas/WorkflowExecutionResponse"�[39m �[90m10080 |�[39m �[90m},�[39m Error was generated by the �[34mbundler�[39m rule. [info] [webpackbar] Compiling Client [info] [webpackbar] Compiling Server [success] [webpackbar] Server: Compiled successfully in 1.37m [success] [webpackbar] Client: Compiled successfully in 2.10m OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect OpenAPI Sampler: found allOf with "array" type. Result may be incorrect [ERROR] Error: Unable to build website for locale en. at tryToBuildLocale (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:83:15) at async /home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:35:9 ... 4 lines matching cause stack trace ... at async file:///home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/bin/docusaurus.mjs:44:3 { [cause]: Error: Docusaurus found broken links! Please check the pages of your site in the list below, and make sure you don't reference any path that does not exist. Note: it's possible to ignore broken links with the 'onBrokenLinks' Docusaurus configuration, and let the build pass. Exhaustive list of all broken links found: - Broken link on source page path = /langflow-drafts/cold-start-06-docs-publication/next/deployment-docker: -> linking to /langflow-drafts/cold-start-06-docs-publication/deployment-cold-start - Broken link on source page path = /langflow-drafts/cold-start-06-docs-publication/next/deployment-prod-best-practices: -> linking to /langflow-drafts/cold-start-06-docs-publication/deployment-cold-start at throwError (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/logger/lib/logger.js:80:11) at reportBrokenLinks (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/server/brokenLinks.js:250:47) at handleBrokenLinks (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/server/brokenLinks.js:282:5) at executeBrokenLinksCheck (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/buildLocale.js:119:47) at /home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/buildLocale.js:94:67 at Object.async (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/logger/lib/perfLogger.js:42:47) at buildLocale (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/buildLocale.js:94:31) at async runBuildLocaleTask (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:98:5) at async /home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:79:13 at async tryToBuildLocale (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:75:9) at async /home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:35:9 at async mapAsyncSequential (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/utils/lib/jsUtils.js:21:24) at async Command.build (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/build/build.js:34:5) at async Promise.all (index 0) at async runCLI (/home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/lib/commands/cli.js:56:5) at async file:///home/runner/work/langflow/langflow/docs/node_modules/@docusaurus/core/bin/docusaurus.mjs:44:3 } [INFO] Docusaurus version: 3.9.2 Node version: v22.22.2

Base automatically changed from cold-start/05-service-init-container to cold-start/01-measurement-foundation May 6, 2026 16:59
@ogabrielluiz ogabrielluiz merged commit 44b22c9 into cold-start/01-measurement-foundation May 6, 2026
29 of 33 checks passed
@ogabrielluiz ogabrielluiz deleted the cold-start/06-docs-publication branch May 6, 2026 16:59
@github-actions github-actions Bot added documentation Improvements or additions to documentation and removed documentation Improvements or additions to documentation labels May 6, 2026
@ogabrielluiz

Copy link
Copy Markdown
Contributor Author

Consolidated into #12783 for QA. The chain merges that brought this branch's content up to the base PR caused GitHub to auto-mark this as merged; the actual landing happens when #12783 merges into release-1.10.0. Original review thread preserved here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant