---
status: partial
phase: 25-file-system
source: [25-VERIFICATION.md]
started: 2026-04-01T00:25:00Z
updated: 2026-04-01T00:25:00Z
---

## Current Test

[awaiting human testing]

## Tests

### 1. Drag a file onto the chat input area
expected: Drop zone overlay appears with dashed border and 'Drop files here' text; on release, file uploads with progress chip visible
result: [pending]

### 2. Paste an image from clipboard into the chat textarea
expected: Image upload begins immediately, progress chip appears above textarea
result: [pending]

### 3. Click the Paperclip button in ChatInput, select a file
expected: Native file picker opens; selecting a file starts the upload and shows a pending chip
result: [pending]

### 4. View a message with an attached code file (.ts, .py, etc.)
expected: ChatCodeFilePreview renders with syntax highlighting, copy button, language label, and a download card below
result: [pending]

### 5. Click the microphone button, speak, then click the stop button
expected: Loader2 spinner while transcribing; transcription text inserted into textarea
result: [pending]

### 6. In a project-linked conversation, click the FolderUp button on a ChatFileCard
expected: File is promoted to project scope; FolderUp button disappears
result: [pending]

### 7. Upload any file and inspect the storage directory with 'git log'
expected: A new commit with message 'Upload: <filename>' appears in the git log for the storage directory
result: [pending]

### 8. Call GET /api/files/:fileId/history for an uploaded file
expected: JSON response with 'items' array containing objects with hash, date, message, author fields
result: [pending]

## Summary

total: 8
passed: 0
issues: 0
pending: 8
skipped: 0
blocked: 0

## Gaps
