alishahryar1--free-claude-code
12621477c9
## Problem Messaging startup computed a relative path from `ALLOWED_DIR` to FCC's plan directory. Windows raises before Telegram or Discord polling starts when those paths are on different drives, while Claude requires custom plan directories to remain inside the project root. Fixes #1077. ## Changes | Before | After | | --- | --- | | Runtime startup converted FCC's plan path relative to the customer workspace. | Runtime startup no longer computes or transports a custom plan path. | | Managed Claude configuration carried `plans_directory` through four ownership layers. | Managed Claude relies on its native user-level plan storage. | | `~/.fcc/agent_workspace` was described as a Claude workspace. | The existing path is explicitly owned as messaging state for `sessions.json`. | | Cross-volume `ALLOWED_DIR` values could disable messaging startup. | `ALLOWED_DIR` remains the project workspace regardless of filesystem volume. |
18 行
608 B
Python
18 行
608 B
Python
from pathlib import Path
|
|
|
|
from free_claude_code.cli.managed.session import ManagedClaudeSession
|
|
|
|
|
|
def test_cli_session_owns_typed_runner_config(tmp_path: Path) -> None:
|
|
session = ManagedClaudeSession(
|
|
workspace_path=str(tmp_path),
|
|
proxy_root_url="http://127.0.0.1:8082",
|
|
allowed_dirs=[str(tmp_path)],
|
|
claude_bin="claude-test",
|
|
)
|
|
|
|
assert session.config.workspace_path == str(tmp_path)
|
|
assert session.config.proxy_root_url == "http://127.0.0.1:8082"
|
|
assert session.config.allowed_dirs == [str(tmp_path)]
|
|
assert session.config.claude_bin == "claude-test"
|