Skip to content

feat: support enterprise agent flows with real components#11

Closed
cfchase wants to merge 4 commits into
mainfrom
feature/enterprise-agent-migration
Closed

feat: support enterprise agent flows with real components#11
cfchase wants to merge 4 commits into
mainfrom
feature/enterprise-agent-migration

Conversation

@cfchase
Copy link
Copy Markdown
Owner

@cfchase cfchase commented Feb 23, 2026

Summary

  • Add custom LangFlow image support (dev-langflow.sh) for real redhat_agents components with editable install, platform component mounts, gcloud credentials, and Granite Guardian env vars
  • Forward host DNS servers to LangFlow container for VPN-resolved internal hostnames
  • Increase timeouts for long-running flows (5-30 min): httpx read=1800s, OAuth proxy upstream=1800s
  • Fix InvalidToken crash in token refresh when encryption key changes
  • Decouple token injection from flow names — platform now injects all available OAuth tokens automatically, removing the hardcoded flow-to-services mapping

Test plan

  • All 222 backend tests pass
  • E2E verified: enterprise-agent-real flow completes through platform chat UI (~6.5 min, no timeouts)
  • Token injection works without flow-specific configuration
  • Verify no regressions on existing flows (test-document-searcher, enterprise-agent-stub)

🤖 Generated with Claude Code

Infrastructure changes to support long-running LangFlow flows (5-30 min)
with real redhat_agents components through the platform:

- Add custom LangFlow image support in dev-langflow.sh (editable install,
  platform component mounts, gcloud credential mounts, Granite Guardian
  and Google Cloud env vars)
- Forward host DNS servers to container for VPN-resolved hostnames
- Increase chat timeouts for long-running flows (httpx read=1800s,
  OAuth proxy upstream=1800s)
- Catch InvalidToken in token refresh to prevent 500 on encryption key
  mismatch
- Decouple token injection from flow names: platform now injects all
  available OAuth tokens and lets flows take what they need, removing the
  hardcoded flow-to-services mapping
Custom LangFlow images now use the same PostgreSQL database and
DATA_DIR conventions as stock images. Data mounted at /data/langflow
instead of /app/langflow to avoid conflicting with the editable install.
This ensures langflow-import can register MCP servers for both image types.
Custom agents-python image doesn't include psycopg (built for SQLite).
Override entrypoint to install psycopg[binary] before starting LangFlow
so custom images can use the shared PostgreSQL database.
psycopg is now baked into the custom image (agents-python Dockerfile).
No need for entrypoint override at container start.
@cfchase
Copy link
Copy Markdown
Owner Author

cfchase commented Feb 25, 2026

Closing — all changes from this branch were already merged into main via direct push. Main has additional improvements on top (extra test coverage, warning logs, updated docs).

@cfchase cfchase closed this Feb 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant