dv-pipecat-flows 0.0.0.dev2098__tar.gz → 0.0.0.dev2228__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.gitignore +5 -0
  2. dv_pipecat_flows-0.0.0.dev2228/.python-version +1 -0
  3. {dv_pipecat_flows-0.0.0.dev2098/src/dv_pipecat_flows.egg-info → dv_pipecat_flows-0.0.0.dev2228}/PKG-INFO +1 -2
  4. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/README.md +0 -1
  5. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/engine_primitives_plan.md +1 -1
  6. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/pyproject.toml +1 -1
  7. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228/src/dv_pipecat_flows.egg-info}/PKG-INFO +1 -2
  8. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/dv_pipecat_flows.egg-info/SOURCES.txt +2 -25
  9. dv_pipecat_flows-0.0.0.dev2228/src/dv_pipecat_flows.egg-info/scm_file_list.json +492 -0
  10. dv_pipecat_flows-0.0.0.dev2228/src/dv_pipecat_flows.egg-info/scm_version.json +8 -0
  11. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/actions.py +332 -19
  12. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/adapters.py +268 -2
  13. dv_pipecat_flows-0.0.0.dev2228/src/pipecat_flows/condition_evaluator.py +518 -0
  14. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/flow_validator.py +8 -2
  15. dv_pipecat_flows-0.0.0.dev2228/src/pipecat_flows/manager.py +4295 -0
  16. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/processors/user_turn_observer.py +60 -0
  17. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/router_mode.py +141 -11
  18. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/types.py +42 -2
  19. dv_pipecat_flows-0.0.0.dev2098/.python-version +0 -1
  20. dv_pipecat_flows-0.0.0.dev2098/evals/kb/.gitignore +0 -2
  21. dv_pipecat_flows-0.0.0.dev2098/evals/kb/README.md +0 -213
  22. dv_pipecat_flows-0.0.0.dev2098/evals/kb/RESULTS.md +0 -133
  23. dv_pipecat_flows-0.0.0.dev2098/evals/kb/UNIFIED_KB_BENCHMARKS.md +0 -713
  24. dv_pipecat_flows-0.0.0.dev2098/evals/kb/chunkers.py +0 -179
  25. dv_pipecat_flows-0.0.0.dev2098/evals/kb/contracts.py +0 -128
  26. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datagen/generate_corpus.py +0 -281
  27. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datagen/generate_dataset.py +0 -413
  28. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datagen/generate_hybrid.py +0 -181
  29. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datagen/templates/insurance.yaml +0 -40
  30. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datasets/.gitignore +0 -9
  31. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datasets/v1_hybrid/manifest.json +0 -33
  32. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datasets/v1_retrieval/manifest.json +0 -16
  33. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datasets/v1_retrieval_long/manifest.json +0 -17
  34. dv_pipecat_flows-0.0.0.dev2098/evals/kb/datasets/v1_synthetic/manifest.json +0 -45
  35. dv_pipecat_flows-0.0.0.dev2098/evals/kb/runners/run_filter_pick.py +0 -515
  36. dv_pipecat_flows-0.0.0.dev2098/evals/kb/runners/run_filter_scaling.py +0 -286
  37. dv_pipecat_flows-0.0.0.dev2098/evals/kb/runners/run_hybrid.py +0 -205
  38. dv_pipecat_flows-0.0.0.dev2098/evals/kb/runners/run_latency.py +0 -232
  39. dv_pipecat_flows-0.0.0.dev2098/evals/kb/runners/run_rerank.py +0 -279
  40. dv_pipecat_flows-0.0.0.dev2098/evals/kb/runners/run_retrieval.py +0 -340
  41. dv_pipecat_flows-0.0.0.dev2098/evals/kb/service/API.md +0 -490
  42. dv_pipecat_flows-0.0.0.dev2098/evals/kb/service/__init__.py +0 -0
  43. dv_pipecat_flows-0.0.0.dev2098/evals/kb/service/app.py +0 -332
  44. dv_pipecat_flows-0.0.0.dev2098/evals/kb/service/jobs.py +0 -230
  45. dv_pipecat_flows-0.0.0.dev2098/src/pipecat_flows/condition_evaluator.py +0 -289
  46. dv_pipecat_flows-0.0.0.dev2098/src/pipecat_flows/manager.py +0 -2183
  47. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.agents/skills/loki-logs/SKILL.md +0 -0
  48. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.agents/skills/loki-logs/query-reference.md +0 -0
  49. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.claude/skills/loki-logs/SKILL.md +0 -0
  50. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.claude/skills/loki-logs/query-reference.md +0 -0
  51. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.gitattributes +0 -0
  52. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.pre-commit-config.yaml +0 -0
  53. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/.readthedocs.yaml +0 -0
  54. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/AGENTS.md +0 -0
  55. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/CHANGELOG.md +0 -0
  56. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/CLAUDE.md +0 -0
  57. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/CONTRIBUTING.md +0 -0
  58. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/LICENSE +0 -0
  59. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/MANIFEST.in +0 -0
  60. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/dev-requirements.txt +0 -0
  61. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/docker-compose.dev.yml +0 -0
  62. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/.eslintrc.json +0 -0
  63. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/.prettierrc +0 -0
  64. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/css/tailwind.css +0 -0
  65. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/examples/food_ordering.json +0 -0
  66. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/examples/movie_explorer.json +0 -0
  67. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/examples/patient_intake.json +0 -0
  68. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/examples/restaurant_reservation.json +0 -0
  69. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/examples/travel_planner.json +0 -0
  70. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/favicon.png +0 -0
  71. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/favicon.svg +0 -0
  72. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/index.html +0 -0
  73. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/editor/canvas.js +0 -0
  74. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/editor/editorState.js +0 -0
  75. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/editor/sidePanel.js +0 -0
  76. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/editor/toolbar.js +0 -0
  77. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/main.js +0 -0
  78. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/baseNode.js +0 -0
  79. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/endNode.js +0 -0
  80. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/flowNode.js +0 -0
  81. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/functionNode.js +0 -0
  82. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/index.js +0 -0
  83. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/mergeNode.js +0 -0
  84. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/nodes/startNode.js +0 -0
  85. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/types.js +0 -0
  86. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/utils/export.js +0 -0
  87. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/utils/helpers.js +0 -0
  88. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/utils/import.js +0 -0
  89. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/js/utils/validation.js +0 -0
  90. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/jsdoc.json +0 -0
  91. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/package-lock.json +0 -0
  92. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/package.json +0 -0
  93. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/postcss.config.cjs +0 -0
  94. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/public/favicon.png +0 -0
  95. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/public/favicon.svg +0 -0
  96. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/tailwind.config.cjs +0 -0
  97. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/vercel.json +0 -0
  98. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/editor/vite.config.js +0 -0
  99. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/env.example +0 -0
  100. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/images/food-ordering-flow.png +0 -0
  101. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/pipecat-flows.png +0 -0
  102. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/pipecat_upgrade.md +0 -0
  103. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/remote-asterisk-code/README.md +0 -0
  104. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/remote-asterisk-code/extensions.conf +0 -0
  105. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/remote-asterisk-code/rtp.conf +0 -0
  106. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/requirements.txt +0 -0
  107. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/scripts/check-pypi-package.py +0 -0
  108. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/scripts/fix-ruff.sh +0 -0
  109. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/scripts/pre-commit.sh +0 -0
  110. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/setup.cfg +0 -0
  111. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/dv_pipecat_flows.egg-info/dependency_links.txt +0 -0
  112. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/dv_pipecat_flows.egg-info/requires.txt +0 -0
  113. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/dv_pipecat_flows.egg-info/top_level.txt +0 -0
  114. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/__init__.py +0 -0
  115. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/exceptions.py +0 -0
  116. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/processors/__init__.py +0 -0
  117. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/processors/router_mode_guard.py +0 -0
  118. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/src/pipecat_flows/processors/speak_interruption_guard.py +0 -0
  119. {dv_pipecat_flows-0.0.0.dev2098 → dv_pipecat_flows-0.0.0.dev2228}/uv.lock +0 -0
@@ -71,6 +71,11 @@ npm-debug.log*
71
71
  *.njsproj
72
72
  *.sln
73
73
  *.sw?
74
+ ringg-bot/eval/out/*
75
+ ringg-bot/eval/inputs/*
76
+ ringg-bot/eval/report/*
77
+ ringg-bot/eval/samples/*
78
+ ringg-bot/eval/comparison_analysis/*
74
79
 
75
80
  # Auto-generated docs
76
81
  docs/api
@@ -0,0 +1 @@
1
+ 3.12.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dv-pipecat-flows
3
- Version: 0.0.0.dev2098
3
+ Version: 0.0.0.dev2228
4
4
  Summary: Conversation Flow management for Pipecat AI applications
5
5
  License: BSD 2-Clause License
6
6
  Project-URL: Source, https://github.com/pipecat-ai/pipecat-flows
@@ -309,4 +309,3 @@ We aim to review all contributions promptly and provide constructive feedback to
309
309
  ➡️ [Reach us on X](https://x.com/pipecat_ai)
310
310
 
311
311
 
312
-
@@ -284,4 +284,3 @@ We aim to review all contributions promptly and provide constructive feedback to
284
284
  ➡️ [Reach us on X](https://x.com/pipecat_ai)
285
285
 
286
286
 
287
-
@@ -48,7 +48,7 @@ Phase 1 of `../new_calling_agent_backend/deterministic_agents_plan.md` §6 maps
48
48
  ## 4. New files
49
49
 
50
50
  - `src/pipecat_flows/condition_evaluator.py` — pure-function rule evaluator + variable resolver (no I/O, no manager refs).
51
- - `src/pipecat_flows/flow_validator.py` — static graph validator invoked once at `FlowManager.__init__`; enforces primitive-combination rules and reserved keys.
51
+ - `src/pipecat_flows/flow_validator.py` — static graph validator (skeleton; rule bodies + wiring land in PR-2/3/4). Intended to be invoked once from `FlowManager.initialize()`; will enforce primitive-combination rules and reserved keys. Not yet called at runtime.
52
52
  - `src/pipecat_flows/router_mode.py` — schema builder, prompt builder, response parser, unclear-loop bookkeeping (keeps `manager.py` from ballooning further).
53
53
  - `src/pipecat_flows/processors/router_mode_guard.py` — `FrameProcessor` subclass dropping `LLMTextFrame` etc. when `current_node_config.suppress_llm_text` is true. Owned by flows because the policy is per-node.
54
54
  - `tests/conftest_primitives.py` — shared fixtures: `make_flow_manager(nodes, state=…, llm=FakeLLM())`, fake `LLMSwitcher`, fake adapter, frame-queue sink.
@@ -45,7 +45,7 @@ dev = [
45
45
  "setuptools~=78.1.1",
46
46
  "setuptools_scm~=8.3.1",
47
47
  "python-dotenv>=1.0.1,<2.0.0",
48
- "dv-pipecat-ai[webrtc,websocket,daily,silero,deepgram,cartesia,openai,anthropic,google,aws,runner]>=0.0.85.dev0",
48
+ "dv-pipecat-ai[webrtc,websocket,daily,livekit,silero,deepgram,cartesia,openai,anthropic,google,aws,runner]>=0.0.85.dev0",
49
49
  ]
50
50
 
51
51
  docs = [
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dv-pipecat-flows
3
- Version: 0.0.0.dev2098
3
+ Version: 0.0.0.dev2228
4
4
  Summary: Conversation Flow management for Pipecat AI applications
5
5
  License: BSD 2-Clause License
6
6
  Project-URL: Source, https://github.com/pipecat-ai/pipecat-flows
@@ -309,4 +309,3 @@ We aim to review all contributions promptly and provide constructive feedback to
309
309
  ➡️ [Reach us on X](https://x.com/pipecat_ai)
310
310
 
311
311
 
312
-
@@ -60,31 +60,6 @@ editor/js/utils/import.js
60
60
  editor/js/utils/validation.js
61
61
  editor/public/favicon.png
62
62
  editor/public/favicon.svg
63
- evals/kb/.gitignore
64
- evals/kb/README.md
65
- evals/kb/RESULTS.md
66
- evals/kb/UNIFIED_KB_BENCHMARKS.md
67
- evals/kb/chunkers.py
68
- evals/kb/contracts.py
69
- evals/kb/datagen/generate_corpus.py
70
- evals/kb/datagen/generate_dataset.py
71
- evals/kb/datagen/generate_hybrid.py
72
- evals/kb/datagen/templates/insurance.yaml
73
- evals/kb/datasets/.gitignore
74
- evals/kb/datasets/v1_hybrid/manifest.json
75
- evals/kb/datasets/v1_retrieval/manifest.json
76
- evals/kb/datasets/v1_retrieval_long/manifest.json
77
- evals/kb/datasets/v1_synthetic/manifest.json
78
- evals/kb/runners/run_filter_pick.py
79
- evals/kb/runners/run_filter_scaling.py
80
- evals/kb/runners/run_hybrid.py
81
- evals/kb/runners/run_latency.py
82
- evals/kb/runners/run_rerank.py
83
- evals/kb/runners/run_retrieval.py
84
- evals/kb/service/API.md
85
- evals/kb/service/__init__.py
86
- evals/kb/service/app.py
87
- evals/kb/service/jobs.py
88
63
  images/food-ordering-flow.png
89
64
  remote-asterisk-code/README.md
90
65
  remote-asterisk-code/extensions.conf
@@ -96,6 +71,8 @@ src/dv_pipecat_flows.egg-info/PKG-INFO
96
71
  src/dv_pipecat_flows.egg-info/SOURCES.txt
97
72
  src/dv_pipecat_flows.egg-info/dependency_links.txt
98
73
  src/dv_pipecat_flows.egg-info/requires.txt
74
+ src/dv_pipecat_flows.egg-info/scm_file_list.json
75
+ src/dv_pipecat_flows.egg-info/scm_version.json
99
76
  src/dv_pipecat_flows.egg-info/top_level.txt
100
77
  src/pipecat_flows/__init__.py
101
78
  src/pipecat_flows/actions.py
@@ -0,0 +1,492 @@
1
+ {
2
+ "files": [
3
+ ".pre-commit-config.yaml",
4
+ "README.md",
5
+ "engine_primitives_plan.md",
6
+ "uv.lock",
7
+ "dev-requirements.txt",
8
+ "pipecat-flows.png",
9
+ ".python-version",
10
+ "LICENSE",
11
+ "pyproject.toml",
12
+ "docker-compose.dev.yml",
13
+ "requirements.txt",
14
+ "CHANGELOG.md",
15
+ "CONTRIBUTING.md",
16
+ "AGENTS.md",
17
+ ".gitattributes",
18
+ "CLAUDE.md",
19
+ "MANIFEST.in",
20
+ "pipecat_upgrade.md",
21
+ "env.example",
22
+ ".gitignore",
23
+ ".readthedocs.yaml",
24
+ "scripts/fix-ruff.sh",
25
+ "scripts/check-pypi-package.py",
26
+ "scripts/pre-commit.sh",
27
+ "docs/build-docs.sh",
28
+ "docs/CALL_TRANSFER_SUMMARY_DESIGN.md",
29
+ "docs/Makefile",
30
+ "docs/IMPLEMENTATION_SUMMARY.md",
31
+ "docs/CALL_TRANSFER_API.md",
32
+ "docs/index.rst",
33
+ "docs/requirements.txt",
34
+ "docs/blockkit-agents-cdn-integration.md",
35
+ "docs/make.bat",
36
+ "docs/ASTERISK_OUTBOUND_CHAN_WEBSOCKET.md",
37
+ "docs/ASTERISK_MACHINE_SETUP.md",
38
+ "docs/conf.py",
39
+ "docs/OPENAI_RESPONSES_API_MIGRATION.md",
40
+ "docs/ASTERISK_CHAN_WEBSOCKET_MIGRATION.md",
41
+ "docs/AZURE_MULTI_REGION_ROUTING.md",
42
+ "docs/examples/pb_fintech_call_transfer_config.json",
43
+ "src/pipecat_flows/manager.py",
44
+ "src/pipecat_flows/__init__.py",
45
+ "src/pipecat_flows/exceptions.py",
46
+ "src/pipecat_flows/condition_evaluator.py",
47
+ "src/pipecat_flows/flow_validator.py",
48
+ "src/pipecat_flows/adapters.py",
49
+ "src/pipecat_flows/actions.py",
50
+ "src/pipecat_flows/router_mode.py",
51
+ "src/pipecat_flows/types.py",
52
+ "src/pipecat_flows/processors/__init__.py",
53
+ "src/pipecat_flows/processors/speak_interruption_guard.py",
54
+ "src/pipecat_flows/processors/user_turn_observer.py",
55
+ "src/pipecat_flows/processors/router_mode_guard.py",
56
+ "images/food-ordering-flow.png",
57
+ "editor/vite.config.js",
58
+ "editor/jsdoc.json",
59
+ "editor/vercel.json",
60
+ "editor/package-lock.json",
61
+ "editor/favicon.svg",
62
+ "editor/tailwind.config.cjs",
63
+ "editor/postcss.config.cjs",
64
+ "editor/index.html",
65
+ "editor/favicon.png",
66
+ "editor/.eslintrc.json",
67
+ "editor/.prettierrc",
68
+ "editor/package.json",
69
+ "editor/css/tailwind.css",
70
+ "editor/public/favicon.svg",
71
+ "editor/public/favicon.png",
72
+ "editor/js/main.js",
73
+ "editor/js/types.js",
74
+ "editor/js/utils/export.js",
75
+ "editor/js/utils/validation.js",
76
+ "editor/js/utils/import.js",
77
+ "editor/js/utils/helpers.js",
78
+ "editor/js/editor/canvas.js",
79
+ "editor/js/editor/sidePanel.js",
80
+ "editor/js/editor/toolbar.js",
81
+ "editor/js/editor/editorState.js",
82
+ "editor/js/nodes/endNode.js",
83
+ "editor/js/nodes/index.js",
84
+ "editor/js/nodes/flowNode.js",
85
+ "editor/js/nodes/baseNode.js",
86
+ "editor/js/nodes/mergeNode.js",
87
+ "editor/js/nodes/startNode.js",
88
+ "editor/js/nodes/functionNode.js",
89
+ "editor/examples/travel_planner.json",
90
+ "editor/examples/patient_intake.json",
91
+ "editor/examples/restaurant_reservation.json",
92
+ "editor/examples/food_ordering.json",
93
+ "editor/examples/movie_explorer.json",
94
+ "remote-asterisk-code/extensions.conf",
95
+ "remote-asterisk-code/README.md",
96
+ "remote-asterisk-code/rtp.conf",
97
+ "ringg-bot/backchannel.py",
98
+ "ringg-bot/bot_with_flows.py",
99
+ "ringg-bot/PIPELINE_TESTING.md",
100
+ "ringg-bot/voicemail_detector.py",
101
+ "ringg-bot/README.md",
102
+ "ringg-bot/PIPECAT_ARCHITECTURE.md",
103
+ "ringg-bot/remote-requirements.txt",
104
+ "ringg-bot/simulated_llm.py",
105
+ "ringg-bot/test_bot.py",
106
+ "ringg-bot/Dockerfile",
107
+ "ringg-bot/requirements.txt",
108
+ "ringg-bot/remote-Dockerfile",
109
+ "ringg-bot/ultravox-server.py",
110
+ "ringg-bot/intro_tts_c5ec47239377db3ca20deced71e4648b9c15951172288998b55347d2218304b2.mp3",
111
+ "ringg-bot/pipeline_test.py",
112
+ "ringg-bot/to_json.sh",
113
+ "ringg-bot/bot.py",
114
+ "ringg-bot/server.py",
115
+ "ringg-bot/cache.py",
116
+ "ringg-bot/env.example",
117
+ "ringg-bot/DEPLOYMENT.md",
118
+ "ringg-bot/test.sh",
119
+ "ringg-bot/issues.md",
120
+ "ringg-bot/env_config.py",
121
+ "ringg-bot/smart-turn-v3.2-cpu.onnx",
122
+ "ringg-bot/hold_detector.py",
123
+ "ringg-bot/pytest.ini",
124
+ "ringg-bot/websocket/websocket_service.py",
125
+ "ringg-bot/websocket/router.py",
126
+ "ringg-bot/rag/helpers.py",
127
+ "ringg-bot/rag/weaviate_client.py",
128
+ "ringg-bot/rag/weaviate_script.py",
129
+ "ringg-bot/scripts/delete_agent_cache.py",
130
+ "ringg-bot/scripts/langfuse_export.py",
131
+ "ringg-bot/utils/tts.py",
132
+ "ringg-bot/utils/analyzer_pool.py",
133
+ "ringg-bot/utils/metrics_collector.py",
134
+ "ringg-bot/utils/language_detection.py",
135
+ "ringg-bot/utils/rag_filters.py",
136
+ "ringg-bot/utils/language_resolver.py",
137
+ "ringg-bot/utils/stay_on_line_processor.py",
138
+ "ringg-bot/utils/long_input_processor.py",
139
+ "ringg-bot/utils/twilio_async_client.py",
140
+ "ringg-bot/utils/action_call_handler.py",
141
+ "ringg-bot/utils/call_status.py",
142
+ "ringg-bot/utils/bot_common.py",
143
+ "ringg-bot/utils/function_call_tracker.py",
144
+ "ringg-bot/utils/test_cache_new.mp3",
145
+ "ringg-bot/utils/ozonetel_transfer.py",
146
+ "ringg-bot/utils/call_transfer_strategies.py",
147
+ "ringg-bot/utils/call_timing.py",
148
+ "ringg-bot/utils/rate_limiter.py",
149
+ "ringg-bot/utils/plivo_utils.py",
150
+ "ringg-bot/utils/deepgram_warmup.py",
151
+ "ringg-bot/utils/jinja.py",
152
+ "ringg-bot/utils/azure_region_routing.py",
153
+ "ringg-bot/utils/stt.py",
154
+ "ringg-bot/utils/plivo_async_client.py",
155
+ "ringg-bot/utils/tool_executor.py",
156
+ "ringg-bot/utils/tracking_helpers.py",
157
+ "ringg-bot/utils/auth.py",
158
+ "ringg-bot/utils/cryptography.py",
159
+ "ringg-bot/utils/generate_config.py",
160
+ "ringg-bot/utils/warning_messages.py",
161
+ "ringg-bot/utils/asterisk_ari_client.py",
162
+ "ringg-bot/utils/frames_monitor.py",
163
+ "ringg-bot/utils/background_audio.py",
164
+ "ringg-bot/utils/summary_dispatcher.py",
165
+ "ringg-bot/utils/api_calls.py",
166
+ "ringg-bot/utils/constants.py",
167
+ "ringg-bot/utils/collect_normalizers.py",
168
+ "ringg-bot/utils/tools_helper.py",
169
+ "ringg-bot/utils/pipeline.py",
170
+ "ringg-bot/utils/logger_config.py",
171
+ "ringg-bot/utils/collect_prompts.py",
172
+ "ringg-bot/utils/word_timestamp_logger.py",
173
+ "ringg-bot/utils/test_cache_8k.mp3",
174
+ "ringg-bot/utils/llm.py",
175
+ "ringg-bot/utils/credentials.py",
176
+ "ringg-bot/utils/backend_url_resolver.py",
177
+ "ringg-bot/utils/tracing.py",
178
+ "ringg-bot/utils/participant_handler.py",
179
+ "ringg-bot/utils/common_helper.py",
180
+ "ringg-bot/utils/openai_config_routing.py",
181
+ "ringg-bot/utils/callbacks.py",
182
+ "ringg-bot/utils/http_client.py",
183
+ "ringg-bot/utils/decimal_safe_aggregator.py",
184
+ "ringg-bot/utils/asterisk_url_resolver.py",
185
+ "ringg-bot/utils/transcript.py",
186
+ "ringg-bot/utils/language_sample_store.py",
187
+ "ringg-bot/utils/app_metrics.py",
188
+ "ringg-bot/utils/generic_functions/response_handler.py",
189
+ "ringg-bot/utils/generic_functions/inbound_registration.py",
190
+ "ringg-bot/utils/generic_functions/cleanup.py",
191
+ "ringg-bot/utils/generic_functions/sdk_executor.py",
192
+ "ringg-bot/utils/generic_functions/common.py",
193
+ "ringg-bot/utils/llm_functions/collect_long_input.py",
194
+ "ringg-bot/utils/llm_functions/tools_definition.py",
195
+ "ringg-bot/utils/llm_functions/switch_language.py",
196
+ "ringg-bot/utils/llm_functions/tools.py",
197
+ "ringg-bot/utils/llm_functions/stay_on_line.py",
198
+ "ringg-bot/utils/llm_functions/wait_for_dtmf.py",
199
+ "ringg-bot/utils/llm_functions/end_call_handler.py",
200
+ "ringg-bot/utils/llm_functions/dtmf_output.py",
201
+ "ringg-bot/utils/llm_functions/_kb_planner.py",
202
+ "ringg-bot/utils/llm_functions/generic_function.py",
203
+ "ringg-bot/utils/llm_functions/query_kb.py",
204
+ "ringg-bot/utils/llm_functions/integration_function.py",
205
+ "ringg-bot/utils/llm_functions/end_call_common.py",
206
+ "ringg-bot/utils/llm_functions/call_transfer.py",
207
+ "ringg-bot/utils/flow_tools/collect_long_input.py",
208
+ "ringg-bot/utils/flow_tools/switch_language.py",
209
+ "ringg-bot/utils/flow_tools/stay_on_line.py",
210
+ "ringg-bot/utils/flow_tools/__init__.py",
211
+ "ringg-bot/utils/flow_tools/send_widgets.py",
212
+ "ringg-bot/utils/flow_tools/wait_for_dtmf.py",
213
+ "ringg-bot/utils/flow_tools/dtmf_output.py",
214
+ "ringg-bot/utils/flow_tools/end_call.py",
215
+ "ringg-bot/utils/flow_tools/generic_function.py",
216
+ "ringg-bot/utils/flow_tools/query_kb.py",
217
+ "ringg-bot/utils/flow_tools/integration_function.py",
218
+ "ringg-bot/utils/flow_tools/call_transfer.py",
219
+ "ringg-bot/transports/factory.py",
220
+ "ringg-bot/models/krisp-viva-tel-v2.kef",
221
+ "ringg-bot/assets/background/office_ambience_8k_mono.wav",
222
+ "ringg-bot/ringg_processors/livekit_rpc_bridge.py",
223
+ "ringg-bot/ringg_processors/openai_realtime_transcript_filter.py",
224
+ "ringg-bot/ringg_processors/screen_auto_injector.py",
225
+ "ringg-bot/ringg_processors/user_activity_reset_processor.py",
226
+ "ringg-bot/ringg_processors/function_call_filler_processor.py",
227
+ "ringg-bot/ringg_processors/realtime_tts_bridge.py",
228
+ "ringg-bot/ringg_processors/two_stage_user_idle_processor.py",
229
+ "ringg-bot/ringg_processors/livekit_caption_observer.py",
230
+ "ringg-bot/ringg_processors/language_steering_processor.py",
231
+ "ringg-bot/ringg_processors/end_of_call_processor.py",
232
+ "ringg-bot/templates/uv-stream.xml",
233
+ "ringg-bot/templates/plivo-inbound-stream.xml",
234
+ "ringg-bot/templates/vobiz-stream.xml",
235
+ "ringg-bot/templates/plivo-stream.xml",
236
+ "ringg-bot/templates/plivo-hangup.xml",
237
+ "ringg-bot/templates/vobiz-hangup.xml",
238
+ "ringg-bot/templates/plivo-non-record-stream.xml",
239
+ "ringg-bot/templates/twilio-stream.xml",
240
+ "ringg-bot/replay/schemas.py",
241
+ "ringg-bot/replay/__init__.py",
242
+ "ringg-bot/replay/runner.py",
243
+ "ringg-bot/replay/router.py",
244
+ "ringg-bot/replay/tool_sandbox.py",
245
+ "ringg-bot/tests/test_warning_fixed_message.py",
246
+ "ringg-bot/tests/test_ozonetel_transfer.py",
247
+ "ringg-bot/tests/test_tts_currency.py",
248
+ "ringg-bot/tests/test_logger_brace_safety.py",
249
+ "ringg-bot/tests/test_dropped_turn_regeneration.py",
250
+ "ringg-bot/tests/test_language_sample_store.py",
251
+ "ringg-bot/tests/__init__.py",
252
+ "ringg-bot/tests/test_language_map.py",
253
+ "ringg-bot/tests/test_variable_replacement.py",
254
+ "ringg-bot/tests/test_on_call_sdk_context.py",
255
+ "ringg-bot/tests/test_language_steering.py",
256
+ "ringg-bot/tests/test_sdk_tool_schema.py",
257
+ "ringg-bot/tests/test_decimal_safe_aggregator.py",
258
+ "ringg-bot/tests/test_azure_region_routing.py",
259
+ "ringg-bot/tests/test_connection_watchdog.py",
260
+ "ringg-bot/tests/test_whatsapp.py",
261
+ "ringg-bot/tests/test_summary_dispatcher.py",
262
+ "ringg-bot/tests/test_flow_query_kb.py",
263
+ "ringg-bot/tests/test_inbound_registration_race.py",
264
+ "ringg-bot/tests/test_on_call_api_pre_call_message.py",
265
+ "ringg-bot/tests/test_sdk_executor_flatten.py",
266
+ "ringg-bot/tests/test_word_timestamp_logger.py",
267
+ "ringg-bot/tests/conftest.py",
268
+ "ringg-bot/tests/test_metrics_collector_llm.py",
269
+ "ringg-bot/tests/test_tool_executor_context.py",
270
+ "ringg-bot/tests/test_custom_vars_pipeline_parity.py",
271
+ "ringg-bot/tests/test_recording_flush.py",
272
+ "ringg-bot/tests/test_kb_planner.py",
273
+ "ringg-bot/tests/test_metrics_bridge.py",
274
+ "ringg-bot/tests/test_ozonetel_inbound.py",
275
+ "ringg-bot/tests/test_traffic_split.py",
276
+ "ringg-bot/serializers/ozonetel.py",
277
+ "ringg-bot/serializers/vobiz.py",
278
+ "ringg-bot/krisp_wheels/README.md",
279
+ "ringg-bot/krisp_wheels/krisp_audio-1.5.0-cp312-cp312-linux_x86_64.whl",
280
+ "ringg-bot/krisp_wheels/krisp_audio-1.5.0-cp312-cp312-macosx_12_0_arm64.whl",
281
+ "ringg-bot/krisp_wheels/krisp_audio-1.5.0-cp312-cp312-linux_aarch64.whl",
282
+ "ringg-bot/eval/csv_report.py",
283
+ "ringg-bot/eval/langfuse_trace.py",
284
+ "ringg-bot/eval/README.md",
285
+ "ringg-bot/eval/__init__.py",
286
+ "ringg-bot/eval/models.py",
287
+ "ringg-bot/eval/similarity.py",
288
+ "ringg-bot/eval/candidate_llm.py",
289
+ "ringg-bot/eval/run_eval.py",
290
+ "ringg-bot/eval/from_langfuse.py",
291
+ "ringg-bot/eval/tool_compare.py",
292
+ "ringg-bot/eval/scorecard.py",
293
+ "ringg-bot/eval/turn_level.py",
294
+ "ringg-bot/eval/complete_conversation.py",
295
+ "ringg-bot/eval/agents_to_shift.py",
296
+ "ringg-bot/eval/judge_adherence.py",
297
+ "ringg-bot/eval/semantic_report.py",
298
+ "ringg-bot/fillers/Myra/okay.pcm",
299
+ "ringg-bot/fillers/Myra/hmm.pcm",
300
+ "ringg-bot/fillers/Myra/got_it.pcm",
301
+ "ringg-bot/fillers/Brittany/okay.pcm",
302
+ "ringg-bot/fillers/Brittany/hmm.pcm",
303
+ "ringg-bot/fillers/Brittany/got_it.pcm",
304
+ "ringg-bot/fillers/en-IN-RehaanNeural/en_got_it.pcm",
305
+ "ringg-bot/fillers/en-IN-RehaanNeural/got_it.mp3",
306
+ "ringg-bot/fillers/en-IN-RehaanNeural/en_got_it.wav",
307
+ "ringg-bot/fillers/Dakota/okay.pcm",
308
+ "ringg-bot/fillers/Dakota/hmm.pcm",
309
+ "ringg-bot/fillers/Dakota/got_it.pcm",
310
+ "ringg-bot/fillers/Raj/okay.pcm",
311
+ "ringg-bot/fillers/Raj/hmm.pcm",
312
+ "ringg-bot/fillers/Raj/got_it.pcm",
313
+ "ringg-bot/fillers/Naina/okay.pcm",
314
+ "ringg-bot/fillers/Naina/hmm.pcm",
315
+ "ringg-bot/fillers/Naina/got_it.pcm",
316
+ "ringg-bot/fillers/Monica/okay.pcm",
317
+ "ringg-bot/fillers/Monica/hmm.pcm",
318
+ "ringg-bot/fillers/Monica/got_it.pcm",
319
+ "ringg-bot/fillers/Jonathan/okay.pcm",
320
+ "ringg-bot/fillers/Jonathan/hmm.pcm",
321
+ "ringg-bot/fillers/Jonathan/got_it.pcm",
322
+ "ringg-bot/fillers/Anuj/okay.pcm",
323
+ "ringg-bot/fillers/Anuj/hmm.pcm",
324
+ "ringg-bot/fillers/Anuj/got_it.pcm",
325
+ "ringg-bot/simulation/__init__.py",
326
+ "ringg-bot/simulation/simulation_service.py",
327
+ "ringg-bot/simulation/router.py",
328
+ "ringg-bot/misc/misc_service.py",
329
+ "ringg-bot/misc/router.py",
330
+ "ringg-bot/voice_services/runtime_config_helper.py",
331
+ "ringg-bot/voice_services/common.py",
332
+ "ringg-bot/voice_services/mcube/router.py",
333
+ "ringg-bot/voice_services/mcube/mcube_service.py",
334
+ "ringg-bot/voice_services/ozonetel/__init__.py",
335
+ "ringg-bot/voice_services/ozonetel/router.py",
336
+ "ringg-bot/voice_services/ozonetel/ozonetel_service.py",
337
+ "ringg-bot/voice_services/twilio/__init__.py",
338
+ "ringg-bot/voice_services/twilio/twiml_helpers.py",
339
+ "ringg-bot/voice_services/twilio/router.py",
340
+ "ringg-bot/voice_services/twilio/twilio_service.py",
341
+ "ringg-bot/voice_services/maqsam/__init__.py",
342
+ "ringg-bot/voice_services/maqsam/maqsam_service.py",
343
+ "ringg-bot/voice_services/maqsam/router.py",
344
+ "ringg-bot/voice_services/vobiz/vobiz_service.py",
345
+ "ringg-bot/voice_services/vobiz/router.py",
346
+ "ringg-bot/voice_services/exotel/__init__.py",
347
+ "ringg-bot/voice_services/exotel/router.py",
348
+ "ringg-bot/voice_services/exotel/exotel_service.py",
349
+ "ringg-bot/voice_services/plivo/__init__.py",
350
+ "ringg-bot/voice_services/plivo/plivo_service.py",
351
+ "ringg-bot/voice_services/plivo/router.py",
352
+ "ringg-bot/voice_services/voicelink/__init__.py",
353
+ "ringg-bot/voice_services/voicelink/router.py",
354
+ "ringg-bot/voice_services/voicelink/voicelink_service.py",
355
+ "ringg-bot/voice_services/asteriskv2/asterisk_v2_service.py",
356
+ "ringg-bot/voice_services/asteriskv2/websocket_handler.py",
357
+ "ringg-bot/voice_services/asteriskv2/provider_transforms.py",
358
+ "ringg-bot/voice_services/asteriskv2/router.py",
359
+ "ringg-bot/voice_services/whatsapp/__init__.py",
360
+ "ringg-bot/voice_services/whatsapp/router.py",
361
+ "ringg-bot/voice_services/whatsapp/whatsapp_service.py",
362
+ "ringg-bot/voice_services/convox/__init__.py",
363
+ "ringg-bot/voice_services/convox/router.py",
364
+ "ringg-bot/voice_services/convox/convox_service.py",
365
+ "ringg-bot/voice_services/tatatele/__init__.py",
366
+ "ringg-bot/voice_services/tatatele/tatatele_service.py",
367
+ "ringg-bot/voice_services/tatatele/router.py",
368
+ "ringg-bot/voice_services/webcall/webcall_router.py",
369
+ "ringg-bot/voice_services/webcall/webcall_params.py",
370
+ "ringg-bot/voice_services/webcall/webcall_service.py",
371
+ "ringg-bot/voice_services/asterisk/asterisk_service.py",
372
+ "ringg-bot/voice_services/asterisk/router.py",
373
+ ".agents/skills/loki-logs/SKILL.md",
374
+ ".agents/skills/loki-logs/query-reference.md",
375
+ ".claude/skills/loki-logs/SKILL.md",
376
+ ".claude/skills/loki-logs/query-reference.md",
377
+ "tests/test_collect_prompts.py",
378
+ "tests/test_collect_node.py",
379
+ "tests/__init__.py",
380
+ "tests/test_adapters.py",
381
+ "tests/test_tts_split_cache.py",
382
+ "tests/test_manager.py",
383
+ "tests/test_response_formatters.py",
384
+ "tests/test_openai_realtime_transcript_filter.py",
385
+ "tests/test_helpers.py",
386
+ "tests/test_keypad_menu_node.py",
387
+ "tests/test_actions.py",
388
+ "tests/test_flows_direct_functions.py",
389
+ "tests/test_voicemail_detector.py",
390
+ "tests/test_end_of_call_processor.py",
391
+ "tests/test_function_call_filler.py",
392
+ "tests/test_context_strategies.py",
393
+ "tests/test_end_call_inactivity.py",
394
+ "tests/test_router_no_unclear.py",
395
+ "tests/test_condition_evaluator.py",
396
+ "tests/test_credentials_resolver.py",
397
+ "tests/test_hamsa_stt_config.py",
398
+ "tests/test_router_extract_schema.py",
399
+ "tests/test_end_call_interruptible.py",
400
+ "k8s/dv-pipecat/Chart.yaml",
401
+ "k8s/dv-pipecat/values-prod-asia.yaml",
402
+ "k8s/dv-pipecat/values-prod.yaml",
403
+ "k8s/dv-pipecat/values-stage.yaml",
404
+ "k8s/dv-pipecat/values-stage-asia.yaml",
405
+ "k8s/dv-pipecat/values-canary-asia.yaml",
406
+ "k8s/dv-pipecat/values.yaml",
407
+ "k8s/dv-pipecat/.helmignore",
408
+ "k8s/dv-pipecat/values-canary.yaml",
409
+ "k8s/dv-pipecat/templates/deployment.yaml",
410
+ "k8s/dv-pipecat/templates/serviceaccount.yaml",
411
+ "k8s/dv-pipecat/templates/keda-scaledobject.yaml",
412
+ "k8s/dv-pipecat/templates/ingress.yaml",
413
+ "k8s/dv-pipecat/templates/hpa.yaml",
414
+ "k8s/dv-pipecat/templates/cluster-role.yaml",
415
+ "k8s/dv-pipecat/templates/_helpers.tpl",
416
+ "k8s/dv-pipecat/templates/backendconfig.yaml",
417
+ "k8s/dv-pipecat/templates/service.yaml",
418
+ "k8s/dv-pipecat/templates/keda-trigger-auth.yaml",
419
+ "k8s/dv-pipecat/templates/pdb.yaml",
420
+ "k8s/livekit/Chart.yaml",
421
+ "k8s/livekit/README.md",
422
+ "k8s/livekit/values-prod.yaml",
423
+ "k8s/livekit/values-stage.yaml",
424
+ "k8s/livekit/values.yaml",
425
+ "k8s/livekit/templates/deployment.yaml",
426
+ "k8s/livekit/templates/managed-cert.yaml",
427
+ "k8s/livekit/templates/service-media.yaml",
428
+ "k8s/livekit/templates/secret-config.yaml",
429
+ "k8s/livekit/templates/ingress.yaml",
430
+ "k8s/livekit/templates/_helpers.tpl",
431
+ "k8s/livekit/templates/backendconfig.yaml",
432
+ "k8s/livekit/templates/service.yaml",
433
+ "examples/patient_intake.py",
434
+ "examples/insurance_quote.py",
435
+ "examples/README.md",
436
+ "examples/restaurant_reservation_direct_functions.py",
437
+ "examples/utils.py",
438
+ "examples/llm_switching.py",
439
+ "examples/food_ordering.py",
440
+ "examples/restaurant_reservation.py",
441
+ "examples/runner.py",
442
+ "examples/food_ordering_direct_functions.py",
443
+ "examples/warm_transfer.py",
444
+ "examples/static/travel_planner.py",
445
+ "examples/static/patient_intake_anthropic.py",
446
+ "examples/static/movie_explorer_gemini.py",
447
+ "examples/static/movie_explorer_anthropic.py",
448
+ "examples/static/patient_intake_openai.py",
449
+ "examples/static/food_ordering.py",
450
+ "examples/static/patient_intake_aws_bedrock.py",
451
+ "examples/static/movie_explorer_openai.py",
452
+ "examples/static/patient_intake_gemini.py",
453
+ "examples/static/food_ordering_direct_functions.py",
454
+ "examples/assets/hold_music/README.md",
455
+ "examples/assets/hold_music/hold_music.wav",
456
+ "examples/assets/hold_music/hold_music.py",
457
+ "examples/quickstart/README.md",
458
+ "examples/quickstart/requirements.txt",
459
+ "examples/quickstart/hello_world.py",
460
+ "examples/dynamic/restaurant_reservation_direct_functions.py",
461
+ "examples/dynamic/restaurant_reservation.py",
462
+ "examples/dynamic/insurance_openai.py",
463
+ "examples/dynamic/insurance_aws_bedrock.py",
464
+ "examples/dynamic/insurance_anthropic.py",
465
+ "examples/dynamic/insurance_gemini.py",
466
+ "examples/dynamic/warm_transfer.py",
467
+ ".github/PULL_REQUEST_TEMPLATE.md",
468
+ ".github/ISSUE_TEMPLATE/5-new-service.yml",
469
+ ".github/ISSUE_TEMPLATE/7-troubleshooting.yml",
470
+ ".github/ISSUE_TEMPLATE/2-question.yml",
471
+ ".github/ISSUE_TEMPLATE/6-dependency.yml",
472
+ ".github/ISSUE_TEMPLATE/4-service-issue.yml",
473
+ ".github/ISSUE_TEMPLATE/3-feature_request.yml",
474
+ ".github/ISSUE_TEMPLATE/config.yml",
475
+ ".github/ISSUE_TEMPLATE/1-bug_report.yml",
476
+ ".github/workflows/publish.yaml",
477
+ ".github/workflows/publish-test.yml",
478
+ ".github/workflows/test.yml",
479
+ ".github/workflows/build.yaml",
480
+ ".github/workflows/publish_test.yaml",
481
+ ".github/workflows/force_push_to_pypi.yml",
482
+ ".github/workflows/restart-with-secrets.yml",
483
+ ".github/workflows/promote-prod.yml",
484
+ ".github/workflows/tests.yaml",
485
+ ".github/workflows/format.yaml",
486
+ ".github/workflows/set-traffic-split.yml",
487
+ ".github/workflows/android.yaml",
488
+ ".github/workflows/github.yml",
489
+ ".github/workflows/publish-pypi.yml",
490
+ ".github/workflows/coverage.yaml"
491
+ ]
492
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "tag": "0.0.0.dev0",
3
+ "distance": 2228,
4
+ "node": "g66f882575e5941f93174da42b06deed040fe1524",
5
+ "dirty": false,
6
+ "branch": "dv-stage",
7
+ "node_date": "2026-07-07"
8
+ }