Resolve 3 file conflict: - docs/refactor/Refactoring_Checklist.md: giữ nội dung incoming (phía HEAD trống ở đoạn conflict). - tests/integration/test_routing_surfaces.py: khôi phục từ incoming (bị mất ở merge trước đó), điều chỉnh lại cho khớp API hiện tại của RoutingApplicationService (resolve()/RouteEvaluation/mode_resolver thay vì route_turn()/mode_reader cũ), bỏ 2 test pin một lớp RoutingDecision không còn tồn tại trên nhánh này. - ui/folder_tab.py: chấp nhận xoá (deleted by them) — đã được thay thế hoàn toàn bởi presentation/folder/* (R08-T12), không còn nơi nào import module cũ. Sửa thêm 2 chỗ lệch API bị auto-merge không báo conflict (phát hiện khi chạy lại test): - presentation/folder/ai_edit_model_resolver.py + ai_file_editor_dialog.py: AiEditModelResolver.apply_routing() gọi route_turn() đã bị xoá khỏi RoutingApplicationService — chuyển sang build_routing_application_service() .resolve(RoutingRequest(...)) giống chat_panel.py/co4e_chat.py; sửa luôn chữ ký _confirm_routing_switch nhận thêm timeout cho khớp contract confirm mới. - config.py: import JsonConfigRepository ở đầu file gây circular import với core/tasks.py (cần CONFIG_DIR) qua chuỗi mới infrastructure/persistence/json/task_repository_impl.py (R07). Dời import xuống ngay trước chỗ dùng đầu tiên. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
17 lines
527 B
Python
17 lines
527 B
Python
"""JSON-file persistence adapters: crash-safe writes and the workspace/
|
|
conversation/task repositories built on them (EPIC R06, R07)."""
|
|
|
|
from .atomic_json_file import AtomicJsonFile
|
|
from .atomic_write import write_json
|
|
from .conversation_repository_impl import ConversationRepository
|
|
from .task_repository_impl import TaskRepository
|
|
from .workspace_repository_impl import WorkspaceRepository
|
|
|
|
__all__ = [
|
|
"AtomicJsonFile",
|
|
"write_json",
|
|
"WorkspaceRepository",
|
|
"ConversationRepository",
|
|
"TaskRepository",
|
|
]
|