# coding=utf-8 """ @Time :2026/6/30 @Author :tao.chen """ from typing import Literal from pydantic import BaseModel class FileEntry(BaseModel): path: str # absolute, resolved, inside sandbox name: str type: Literal["file", "directory", "symlink", "other"] size: int # bytes; 0 for directories mtime: float # unix seconds mode: int # st_mode (octal, e.g. 0o644) class OperationResult(BaseModel): path: str status: str # "CREATED" | "UPDATED" | "DELETED" | "MOVED" | "COPIED" size: int | None # None for delete/move