feat: implementar Fase 2 del roadmap (Modo Replica Exacta / Mirroring)

This commit is contained in:
Carlos Tello
2026-08-14 21:50:00 -03:00
parent a72cf1480e
commit a1cafff90e
14 changed files with 421 additions and 14 deletions
+10
View File
@@ -25,6 +25,7 @@ class ChunkUploader:
self,
filepath: Path,
job_id: Optional[int] = None,
source_path: Optional[str] = None,
progress_callback: Optional[Callable[[int, int, float], None]] = None,
max_retries: int = 5
) -> Dict[str, Any]:
@@ -37,6 +38,14 @@ class ChunkUploader:
full_sha256 = chunker.full_sha256
filename = filepath.name
client_relative_path = filename
if source_path:
try:
resolved_src = Path(source_path).resolve()
client_relative_path = str(filepath.relative_to(resolved_src)).replace("\\", "/")
except Exception:
pass
headers = self._get_headers()
base_url = self.config.server_url.rstrip("/")
@@ -44,6 +53,7 @@ class ChunkUploader:
# 1. Initialize or resume upload session
init_payload = {
"filename": filename,
"client_relative_path": client_relative_path,
"file_size": chunker.file_size,
"sha256": full_sha256,
"chunk_size": chunker.chunk_size,