fix(ui): 审计修复 — 路径规范化/SkillInfo类型/分页offset/初始加载/显示统一
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled

- workspace.rs: canonicalize() 解析 '..' 和符号链接
- Workspace.tsx: 组件挂载时调用 loadDirStats + 统一 KB 显示
- configStore: SkillInfo 接口补充 category 字段 + 空数组回退注释
- securityStore: localStorage 审计日志添加 offset 分页支持
This commit is contained in:
iven
2026-04-10 23:24:32 +08:00
parent 1d0e60d028
commit 550e525554
4 changed files with 18 additions and 9 deletions

View File

@@ -26,7 +26,9 @@ export function Workspace() {
}, []);
useEffect(() => {
setProjectDir(quickConfig.workspaceDir || workspaceInfo?.path || '~/.zclaw/zclaw-workspace');
const dir = quickConfig.workspaceDir || workspaceInfo?.path || '~/.zclaw/zclaw-workspace';
setProjectDir(dir);
loadDirStats(dir);
}, [quickConfig.workspaceDir, workspaceInfo?.path]);
const handleWorkspaceBlur = async () => {
@@ -86,8 +88,8 @@ export function Workspace() {
<div>{workspaceInfo?.resolvedPath || projectDir}</div>
<div>
{dirStats?.fileCount ?? workspaceInfo?.fileCount ?? 0}
{dirStats && `,大小:${(dirStats.totalSize / 1024).toFixed(1)} KB`}
{!dirStats && workspaceInfo?.totalSize ? `,大小:${workspaceInfo.totalSize} bytes` : ''}
{((dirStats?.totalSize ?? workspaceInfo?.totalSize ?? 0) > 0) &&
`,大小:${(((dirStats?.totalSize ?? workspaceInfo?.totalSize) ?? 0) / 1024).toFixed(1)} KB`}
</div>
</div>
</div>