Claude
3501d547c0
feat: dedup wave 2 — file factory + V1/V2 mapping + bot handler
...
Deploy FileDrop / deploy (push) Successful in 42s
- ✨ buildNewFile() factory (src/domain/entities/file-factory.ts)
eliminates ~380 lines of archive null / isDeleted / field defaults
- ♻️ 27 creation blocks → buildNewFile() across 8 files
- ♻️ S3 V1/V2 object listing mapping → mapFileToListEntry()
- ♻️ Bot handler size validation → checkFileSize() from shared utils
- 🔎 computeHash audit: all 10 instances are streaming (no dedup)
- Lint ✅ Build ✅ Push ✅
2026-07-29 16:02:01 +07:00
Claude
332853f398
chore: dedup dead code + compress utility
...
Deploy FileDrop / deploy (push) Successful in 43s
- Hapus src/shared/utils/retry.ts (0 imports, dead)
- Hapus src/shared/errors/index.ts (7 classes, 0 imports)
- Hapus drizzle type exports dari schema.ts (tidak dipake)
- Hapus src/config/index.ts, redirect 8 imports langsung ke env.ts
- Ekstrak maybeCompressChunk ke shared/utils/compress.ts
- Hapus duplikasi gzipSync di upload-file.ts + chunked-storage.ts
- Lint clean, build clean
2026-07-29 15:51:39 +07:00
Claude
667921b100
chore: fix lint errors — duplicate import, unused imports, formatting
...
Deploy FileDrop / deploy (push) Successful in 45s
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-28 20:09:42 +07:00
Claude
ea48e8fc03
feat: create application use cases (bucket, s3-object, multipart)
...
- manage-bucket.ts: extract bucket CRUD logic with validation
(createListBuckets, createGetBucket, createCreateBucket,
createDeleteBucket, createBucketExists)
- s3-object.ts: extract S3 object operations
(createGetObject, createHeadObject, createPutObject,
createCopyObject, createDeleteObject, createDeleteObjects,
createListObjects, createFindObject)
- multipart-upload.ts: extract S3 multipart upload logic
(createInitiateMultipartUpload, createUploadPart,
createCompleteMultipartUpload, createAbortMultipartUpload,
createListMultipartUploads, createListParts)
All use cases follow the existing factory function pattern with
dependency injection via repository/telegram service interfaces.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-28 18:04:01 +07:00
Claude
e2de8c4245
feat: create application use cases (upload, get-file, auth)
...
Create upload-file.ts use case with factory pattern supporting dedup, file type detection, size validation, and chunked/single storage strategies.
Create get-file.ts use case supporting redirect, chunked, and archive-entry retrieval strategies.
Create authenticate.ts use case with login, logout, and me operations.
All use cases use dependency injection and return typed DTOs.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-28 17:59:49 +07:00
Claude
5e29589f1a
feat: create application DTOs
...
Add data-transfer-object interfaces for the application layer:
upload, file, bucket, S3, and auth domains.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-28 17:56:49 +07:00