This website requires JavaScript.
1ef73fefa9
fix: restore multipart part order validation (without strict ETag check)
asepharyana
2026-07-07 06:11:49 +07:00
bc806313b1
fix: use safe LIKE prefix matching instead of non-character range
asepharyana
2026-07-07 06:04:17 +07:00
d1c8cc9d23
fix: ensure S3_DEFAULT_REGION and S3_VHOST_DOMAINS env vars are properly set in docker-compose
asepharyana
2026-07-07 06:02:16 +07:00
34962eb08a
chore: update S3 vhost domains to include asepharana.web.id root/wildcard
asepharyana
2026-07-07 05:47:44 +07:00
8e6ccf2110
feat: S3 client compatibility — virtual-hosted style, CORS, presigned multi-method, ListMultipartUploads, edge case fixes
asepharyana
2026-07-07 05:39:23 +07:00
6aee3723fb
fix: remove home page CSS lint warning
asepharyana
2026-07-07 04:48:44 +07:00
ad3f4ce75e
test: enable strict AWS SDK multipart coverage
asepharyana
2026-07-07 04:47:07 +07:00
339f788dc9
fix: ensure multipart part sizeBytes are Numbers, not DB strings
asepharyana
2026-07-07 04:42:07 +07:00
2e447ee58a
fix: stream complete multipart S3 objects
asepharyana
2026-07-07 04:37:20 +07:00
ad45404132
feat: support ranged S3 GetObject responses
asepharyana
2026-07-07 04:29:24 +07:00
378a084fd3
feat: stream S3 object bodies from Telegram parts
asepharyana
2026-07-07 04:23:12 +07:00
5253fb384d
fix: verify presigned S3 URLs against public host
asepharyana
2026-07-07 04:17:37 +07:00
85aa54592a
feat: add S3 byte range parser
asepharyana
2026-07-07 04:11:10 +07:00
2bf0fa5af5
docs: plan S3 compatibility completion
asepharyana
2026-07-07 04:03:11 +07:00
dbdc5ed1ee
docs: design remaining S3 compatibility fixes
asepharyana
2026-07-07 03:56:40 +07:00
9a48fbf227
fix: satisfy deploy lint gate for S3 compatibility work
asepharyana
2026-07-07 03:07:51 +07:00
06f93e30f6
feat: proxy GetObject from Telegram CDN for real S3 client compatibility
asepharyana
2026-07-07 02:54:51 +07:00
f88ac1a124
test: add real AWS SDK v3 S3 compatibility tests (20 tests)
asepharyana
2026-07-07 01:59:17 +07:00
57f2740df9
fix: production bugs + comprehensive production e2e tests
asepharyana
2026-07-07 00:49:45 +07:00
b731ddd7e1
fix: sequential test execution to avoid mock pollution between files
asepharyana
2026-07-06 22:50:59 +07:00
245138e23a
Refactor code for improved readability and consistency
asepharyana
2026-07-06 22:36:15 +07:00
2d3d7891a0
refactor: auto-run DB migration at startup, robust schema.sql path resolution
asepharyana
2026-07-06 22:32:06 +07:00
0ad783b794
fix: PutObject raw body, presigned URL auth guard, DeleteObjects tracking, home.ts path
asepharyana
2026-07-06 21:38:17 +07:00
e175a27512
test: add S3 auth, operations, and web API tests
asepharyana
2026-07-06 21:15:26 +07:00
5e38f80267
feat: add web file manager UI and S3 catch-all route
asepharyana
2026-07-06 20:56:55 +07:00
a4f902a37b
feat: add JSON v1 web API for S3 management UI
asepharyana
2026-07-06 16:10:17 +07:00
dd61e7e0fc
feat: implement S3 protocol dispatcher with bucket, object, listing, and multipart operations
asepharyana
2026-07-06 15:52:42 +07:00
084ff3fb9d
fix: add region validation, fix presigned URL canonical request (add method, fix headers), normalizeUri decode
asepharyana
2026-07-06 15:31:06 +07:00
ee758aa939
feat: add S3 SigV4 auth verification and XML builders
asepharyana
2026-07-06 14:56:39 +07:00
a2ca489039
fix: add explicit snake_case-to-camelCase mapping for S3FileRecord, add missing findOrphanFilesByBucket
asepharyana
2026-07-06 14:33:27 +07:00
caef31c703
feat: add DB CRUD layer for buckets, multipart, and S3 file extensions
asepharyana
2026-07-06 14:23:37 +07:00
e37fb00295
feat: add S3 env config, bucket and multipart DB schema
asepharyana
2026-07-06 13:59:03 +07:00
0d0d7a5dfa
chore: remove GitHub Actions workflow for notifying parent repository
asepharyana
2026-07-06 01:25:37 +07:00
52bd704d21
refactor: enhance file handling and metrics tracking; remove unused bot health tracker
asepharyana
2026-07-06 01:25:18 +07:00
bbf420759b
chore: update Dockerfile and docker-compose for improved deployment process; add deploy script
asepharyana
2026-07-05 22:06:52 +07:00
20b622c4c2
fix(core): resolve wrong file_id error and zip stream memory leaks
MythEclipse
2026-06-20 22:21:50 +07:00
50176e5764
chore: migrate domain asepharyana.tech to asepharyana.my.id
MythEclipse and Claude Opus 4.8
2026-06-06 12:39:26 +07:00
2a833d3908
feat: include bot token in file info response for Telegram API
MythEclipse
2026-05-30 00:15:35 +07:00
3ca5ab7983
refactor: update Telegram file handling to use new getFileInfo function and include bot token in cache
MythEclipse
2026-05-29 16:53:55 +07:00
cc0f1dde79
ci: remove obsolete deploy.yml, replaced by notify-parent.yml
Asep Haryana Saputra
2026-05-29 15:00:00 +07:00
e88e5dbc39
ci: slim deploy.yml to test-only; build/push/deploy handled by monorepo
Asep Haryana Saputra
2026-05-29 14:08:50 +07:00
0e2f09012f
ci: add notify-parent workflow for monorepo integration
Asep Haryana Saputra
2026-05-29 14:08:21 +07:00
134a7d4bf6
feat: update Traefik router rules to support additional domains and change TLS certresolver to Cloudflare
MythEclipse
2026-05-29 03:45:57 +07:00
8508b36026
feat: update file handling to redirect to Telegram CDN and adjust Swagger documentation
MythEclipse
2026-05-29 03:43:49 +07:00
5425f6d33d
feat: enhance configuration and rate limiting
MythEclipse
2026-05-29 03:33:39 +07:00
be813b1c0e
feat: update Traefik router rule to use new domain for file upload service
MythEclipse
2026-05-29 02:57:50 +07:00
db5de1367d
feat: extend file schema with archive metadata, implement batch upload processing, and add zip utilities for file handling
MythEclipse
2026-05-22 00:51:49 +07:00
56b929ffb1
feat: enhance file upload process with temporary file handling, improved error management, and metrics logging
MythEclipse
2026-05-22 00:29:54 +07:00
fd5eb98586
feat: implement caching for file info, add rate limiting, and enhance upload handling with retry logic
MythEclipse
2026-05-21 23:31:49 +07:00
10c968cf01
feat: add file_hash column and related index to files table; refactor Telegram API utilities for improved file handling
MythEclipse
2026-05-21 22:55:42 +07:00
52340ee77d
feat: enhance file upload handling with improved file detection, size limits, and response formatting
MythEclipse
2026-05-21 22:31:55 +07:00
06844f1fa1
docs: update CLAUDE.md to include details on temporary file handling for API uploads
MythEclipse
2026-05-18 22:03:55 +07:00
884710fd42
feat: implement temporary file handling for uploads and update tests for dynamic ID verification
MythEclipse
2026-05-18 22:01:26 +07:00
cc3f85284b
docs: add dynamic image fetching details for unit tests in CLAUDE.md
MythEclipse
2026-05-18 21:54:57 +07:00
d58b2390ef
refactor: remove concurrency limit from Telegram upload queue and enhance media group handling
MythEclipse
2026-05-18 21:54:39 +07:00
b91b276214
feat: add support for batch uploads of media groups to Telegram with debounce handling
MythEclipse
2026-05-18 21:31:20 +07:00
0bc12651db
fix: clean up logger info message formatting and remove unused import in rate limit tests
MythEclipse
2026-05-18 21:19:38 +07:00
825e969569
feat: implement multi-bot support for Telegram API with rate limit handling and add task queue for uploads
MythEclipse
2026-05-18 21:18:16 +07:00
721fa3db7d
feat: implement auto-retry for Telegram API requests on error 429 and update documentation
MythEclipse
2026-05-18 21:02:38 +07:00
91cfee0b37
fix: load BOT_TOKEN from process.env in tests to prevent leaks
MythEclipse and Claude Opus 4.7
2026-05-18 19:55:03 +07:00
525348b1f3
fix: make forwardToStorage fully dynamic based on fileType
MythEclipse and Claude Opus 4.7
2026-05-18 19:52:46 +07:00
bf6d5f04c4
fix: bundle migration script and ensure file_hash column exists
MythEclipse and Claude Opus 4.7
2026-05-18 19:46:21 +07:00
b2de5f583d
feat: add design document for multi-format upload and anti-duplication feature
MythEclipse
2026-05-18 19:42:17 +07:00
a0262e2d46
style: run formatter on modified files
MythEclipse
2026-05-18 19:41:51 +07:00
ea4341fdfe
feat: implement deduplication and all media types in bot listener
MythEclipse and Claude Opus 4.7
2026-05-18 19:41:16 +07:00
04a2e52250
feat: implement deduplication in HTTP upload router
MythEclipse and Claude Opus 4.7
2026-05-18 19:39:55 +07:00
4e805689c1
feat: extend file type classification and implement computeHash
MythEclipse and Claude Opus 4.7
2026-05-18 19:38:12 +07:00
22c2133b24
feat: add fileHash column to files schema
MythEclipse and Claude Opus 4.7
2026-05-18 19:36:19 +07:00
3d2500ed7f
fix: auto-append file extension based on magic bytes or mime type if missing
MythEclipse
2026-05-18 09:20:03 +07:00
5de424bf8e
ci: add write permission for packages to GHCR pushing
MythEclipse
2026-05-18 08:56:22 +07:00
ed7f607ee4
style: sort imports in telegram test to satisfy Biome check
MythEclipse
2026-05-18 08:55:22 +07:00
ed88069e60
fix: assert sendDocument with config.storageChatId to match dynamic mock env in CI
MythEclipse
2026-05-18 08:54:24 +07:00
910d29d5b9
fix: upgrade Bun setup version to latest to support modern lockfile format
MythEclipse
2026-05-18 08:53:44 +07:00
c0827b09c5
fix: make DB tests more robust by checking definition rather than strict module identity
MythEclipse
2026-05-18 08:42:49 +07:00
7f1178d72b
Merge branch 'worktree-agent-a7a26e7873ab5b94e'
MythEclipse
2026-05-18 08:41:37 +07:00
1fc4080466
ci: add GitHub Actions pipeline for tests, Docker build, and deployment
MythEclipse and Claude Opus 4.7
2026-05-18 08:41:29 +07:00
06a1b38c02
Merge branch 'worktree-agent-aae37f6f3cccac163'
MythEclipse
2026-05-18 08:41:00 +07:00
e4c074c81f
docs: add deployment design and implementation plan
MythEclipse
2026-05-18 08:40:56 +07:00
b41fdb4a88
chore: add docker-compose.yml with Traefik configurations
MythEclipse and Claude Opus 4.7
2026-05-18 08:40:42 +07:00
d7f5180eab
chore: add Dockerfile and dockerignore for production build
MythEclipse and Claude Opus 4.7
2026-05-18 08:39:57 +07:00
2c1c5ad638
fix: add Bun database migration runner
MythEclipse
2026-05-18 08:25:24 +07:00
91986d1d51
fix: upload binary files to Telegram with source payload
MythEclipse
2026-05-18 08:18:55 +07:00
9aedc59b69
fix: refine Swagger docs headers and dynamic examples
MythEclipse
2026-05-18 07:43:15 +07:00
6feca3564a
feat: add Swagger OpenAPI documentation endpoints
MythEclipse
2026-05-18 07:39:27 +07:00
aae8ebfbcf
chore: update bun.lock to include @biomejs/biome, typescript, and related CLI packages
MythEclipse
2026-05-18 07:30:47 +07:00
825a8f42cb
chore: add build script and target bun bundle output
MythEclipse
2026-05-18 07:30:33 +07:00
cf79a1f195
style: format and lint codebase using Biome v2
MythEclipse
2026-05-18 07:29:01 +07:00
3f4e697733
feat: migrate entire codebase to TypeScript
MythEclipse
2026-05-18 07:27:06 +07:00
9c5a855f7d
chore: configure typescript, biome, and package scripts
MythEclipse
2026-05-18 07:23:22 +07:00
252b2e4a1f
test: isolate module mocking and add sequential test script
MythEclipse
2026-05-18 07:16:30 +07:00
434905313c
refactor: replace TypeScript with ESM JavaScript
MythEclipse and Claude Opus 4.7
2026-05-18 07:15:05 +07:00
99b820709d
feat: setup HTTP server and bootstrap application
MythEclipse and Claude Opus 4.7
2026-05-18 07:14:35 +07:00
4996d7548a
feat: add Telegram bot handler
MythEclipse and Claude Opus 4.7
2026-05-18 07:13:17 +07:00
be93a06918
feat: add health check route
MythEclipse and Claude Opus 4.7
2026-05-18 07:10:55 +07:00
d915814277
feat: add file routes (download redirect & info)
MythEclipse and Claude Opus 4.7
2026-05-18 07:09:29 +07:00
d7b8e9dd08
feat: add upload API handler (multipart & base64)
MythEclipse and Claude Opus 4.7
2026-05-18 07:08:13 +07:00
1e29433d5d
feat: add Telegram API utilities
MythEclipse and Claude Opus 4.7
2026-05-18 07:06:21 +07:00
b621a73ca9
feat: add file validation utilities
MythEclipse and Claude Opus 4.7
2026-05-18 07:02:14 +07:00
db71f29288
feat: add in-memory rate limiter
MythEclipse and Claude Opus 4.7
2026-05-18 07:01:32 +07:00
281329a1af
feat: add Drizzle ORM database layer
MythEclipse and Claude Opus 4.7
2026-05-18 07:00:46 +07:00