mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-07 15:18:29 +00:00
* fix: ensure persisted state overrides class defaults - Remove early return in Flow.__init__ to allow proper state initialization - Add test_flow_default_override.py to verify state override behavior - Fix issue where default values weren't being overridden by persisted state Fixes the issue where persisted state values weren't properly overriding class defaults when restarting a flow with a previously saved state ID. Co-Authored-By: Joe Moura <joao@crewai.com> * test: improve state restoration verification with has_set_count flag Co-Authored-By: Joe Moura <joao@crewai.com> * test: add has_set_count field to PoemState Co-Authored-By: Joe Moura <joao@crewai.com> * refactoring test * fix: ensure persisted state overrides class defaults - Remove early return in Flow.__init__ to allow proper state initialization - Add test_flow_default_override.py to verify state override behavior - Fix issue where default values weren't being overridden by persisted state Fixes the issue where persisted state values weren't properly overriding class defaults when restarting a flow with a previously saved state ID. Co-Authored-By: Joe Moura <joao@crewai.com> * test: improve state restoration verification with has_set_count flag Co-Authored-By: Joe Moura <joao@crewai.com> * test: add has_set_count field to PoemState Co-Authored-By: Joe Moura <joao@crewai.com> * refactoring test * Fixing flow state * fixing peristed stateful flows * linter * type fix --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Joe Moura <joao@crewai.com>
31 lines
828 B
Python
31 lines
828 B
Python
import os
|
|
from pathlib import Path
|
|
|
|
import appdirs
|
|
|
|
"""Path management utilities for CrewAI storage and configuration."""
|
|
|
|
def db_storage_path() -> str:
|
|
"""Returns the path for SQLite database storage.
|
|
|
|
Returns:
|
|
str: Full path to the SQLite database file
|
|
"""
|
|
app_name = get_project_directory_name()
|
|
app_author = "CrewAI"
|
|
|
|
data_dir = Path(appdirs.user_data_dir(app_name, app_author))
|
|
data_dir.mkdir(parents=True, exist_ok=True)
|
|
return str(data_dir)
|
|
|
|
|
|
def get_project_directory_name():
|
|
"""Returns the current project directory name."""
|
|
project_directory_name = os.environ.get("CREWAI_STORAGE_DIR")
|
|
|
|
if project_directory_name:
|
|
return project_directory_name
|
|
else:
|
|
cwd = Path.cwd()
|
|
project_directory_name = cwd.name
|
|
return project_directory_name |