002492626bde3638e2c292e8315982089e6f4d23
Deploy FileDrop / deploy (push) Failing after 15s
Security fixes: - SigV4 signature comparison now uses crypto.timingSafeEqual (timing attack fix) - AccessKey, region, and HMAC signature all timing-safe - Presigned URL expiry capped at 7 days (AWS spec compliance) - Removed duplicate migration import (dead code) Memory & leak fixes: - Temp file leak in createZip(): cleanup temp file on error in both utils/ and shared/utils/ - OOM risk in web-api/v1 upload: stream File to temp instead of arrayBuffer() - Removed duplicate migration import at startup Performance fixes: - Removed file.arrayBuffer() -> Bun.write() pattern in web-api-controller (stream + hash) Test improvements: - All fixes verified: 74/75 tests pass (1 pre-existing env config test) - S3 auth tests: 7/7 pass after timing-safe fix
Telegram Bot Uploader Backend
Backend production-ready untuk upload file ke Telegram yang tersimpan di private channel.
Setup
- Install PostgreSQL database
- Buat database:
createdb telegram_uploader - Setup environment:
cp .env.example .env - Edit
.envdengan nilai yang sesuai - Create table:
bun run db:migrate - Install dependencies:
bun install
Telegram Private Channel Setup
- Buat private channel Telegram
- Tambah bot sebagai admin di channel
- Dapatkan
STORAGE_CHANNEL_ID(misalnya -1001234567890)
Running
bun run dev # Development mode
bun run start # Production mode
API Endpoints
POST /api/upload- Upload fileGET /f/:public_id- Download redirectGET /file/:public_id/info- File metadataGET /health- Health check
FAQ
URL permanen maksudnya apa?
URL backend tetap permanen: https://tele.asepharyana.my.id/f/{public_id}
Ini berarti URL service Anda fix, bukan jaminan file Telegram abadi.
Testing
Gunakan bot Telegram untuk upload, atau upload API langsung via HTTP.
Languages
TypeScript
89.5%
HTML
8%
Shell
1.8%
Nix
0.5%
Dockerfile
0.2%