-
e3b346e881
fix: correct Stats() to scan only hit/miss counts, compute HitRate properly
clawbot
2026-02-08 15:59:27 -08:00
-
-
-
0ff3071337
fix: encode source query in GenerateSignedURL to avoid malformed URLs
clawbot
2026-02-08 15:58:32 -08:00
-
-
be293906bc
Add type-safe hash types for cache storage
sneak
2026-01-08 16:55:20 -08:00
-
555f150179
Add additional hosts to dev whitelist
sneak
2026-01-08 16:14:05 -08:00
-
87a8393537
Change encrypted URL format to /v1/e/{token}/img.{ext}
sneak
2026-01-08 16:14:01 -08:00
-
6ab0d4a5b9
Simplify log source to file.go:line format
sneak
2026-01-08 16:13:56 -08:00
-
982accd549
Suppress verbose vips logging output
sneak
2026-01-08 16:13:52 -08:00
-
3849128c45
Remove runtime nil checks for always-initialized components
sneak
2026-01-08 15:58:44 -08:00
-
02dedd433b
Require signing_key at startup, add default config
sneak
2026-01-08 15:48:37 -08:00
-
d2e2e319be
Create /var/lib/pixa directory in Docker image for database/cache
sneak
2026-01-08 15:34:48 -08:00
-
fc49e69d8b
Add make devserver target for local Docker development
sneak
2026-01-08 15:19:27 -08:00
-
78f844fca5
Switch to govips for native CGO image processing
sneak
2026-01-08 15:16:34 -08:00
-
4b2d85010e
Add two-stage Dockerfile with CGO support
sneak
2026-01-08 15:05:49 -08:00
-
467237c849
Add AVIF option to URL generator
sneak
2026-01-08 13:12:51 -08:00
-
ca4446e10a
Implement AVIF encoding support
sneak
2026-01-08 13:12:34 -08:00
-
32f9166ece
Add failing test for AVIF encoding
sneak
2026-01-08 13:11:12 -08:00
-
1bdf0a9424
Implement AVIF decoding support
sneak
2026-01-08 13:10:34 -08:00
-
615586fcea
Add failing test for AVIF decoding
sneak
2026-01-08 13:09:40 -08:00
-
9bfae69ccf
Fix logging: add response_bytes to middleware, cache_key to handler
sneak
2026-01-08 13:05:10 -08:00
-
e5135b3697
Add 1-minute expiration option and quality presets to URL generator
sneak
2026-01-08 12:52:14 -08:00
-
77c6744383
Add upstream connection info and download metrics to logging
sneak
2026-01-08 12:47:31 -08:00
-
7d0ac0a139
Remove Buildarch from ldflags, use runtime.GOARCH instead
sneak
2026-01-08 12:38:24 -08:00
-
15d9439e3d
Add fetch/conversion metrics and improve logging
sneak
2026-01-08 12:34:26 -08:00
-
4426387d1c
Fix hot cache to include ContentType and SizeBytes
sneak
2026-01-08 12:28:17 -08:00
-
51a1ae4a13
Add failing test for hot cache ContentType
sneak
2026-01-08 12:25:01 -08:00
-
10b5cc7063
Fix proportional scaling when single dimension is 0
sneak
2026-01-08 12:20:58 -08:00
-
817d760b4d
Add failing tests for proportional scaling
sneak
2026-01-08 12:20:19 -08:00
-
70d55977c0
Add WebP encoding support
sneak
2026-01-08 11:55:45 -08:00
-
0c9eb35bd2
Add failing test for WebP encoding support
sneak
2026-01-08 11:54:03 -08:00
-
aab43db44a
Add WebP and AVIF encoding support to P0 TODO
sneak
2026-01-08 11:12:59 -08:00
-
064ab10607
Add no-silent-fallback rule to CLAUDE.md
sneak
2026-01-08 11:08:33 -08:00
-
37af10cc2b
Update generator form for supported formats and Never expiry
sneak
2026-01-08 11:08:28 -08:00
-
b55b75cbe7
Fix silent fallbacks for unsupported formats and fit modes
sneak
2026-01-08 11:08:22 -08:00
-
df6d347e68
Add tests for unsupported output format errors
sneak
2026-01-08 11:08:16 -08:00
-
014c144d73
Add 'Never' expiry option for encrypted URLs
sneak
2026-01-08 11:08:11 -08:00
-
d9f4e2038e
Add manual test script for auth and encrypted URLs
sneak
2026-01-08 10:53:02 -08:00
-
b233871241
Add detailed logging for image conversions on cache miss
sneak
2026-01-08 10:44:34 -08:00
-
02de534cc2
Reorganize TODO.md: remove completed, prioritize for 1.0
sneak
2026-01-08 10:41:00 -08:00
-
d8bb374f73
Merge feature/http-response-handling: ETag, HEAD, conditional requests
sneak
2026-01-08 10:09:14 -08:00
-
-
774ee97ba1
Update TODO.md: mark HTTP response handling items complete
sneak
2026-01-08 10:09:10 -08:00
-
1f809a6fc9
Implement ETag, HEAD requests, and conditional requests
sneak
2026-01-08 10:08:38 -08:00
-
4df3e44eff
Add failing tests for ETag, HEAD requests, and conditional requests
sneak
2026-01-08 10:06:18 -08:00
-
-
aed9dd6e8d
Merge feature/graceful-shutdown-and-sanitization: Add security headers middleware
sneak
2026-01-08 10:02:34 -08:00
-
-
6f423af65d
Update TODO.md: mark graceful shutdown and sanitization as complete
sneak
2026-01-08 10:02:29 -08:00
-
2e349a8b83
Implement security headers middleware
sneak
2026-01-08 10:02:17 -08:00
-
5de7a26735
Add failing tests for security headers middleware
sneak
2026-01-08 10:01:36 -08:00
-
-
9592175238
Merge feature/security-validations: Add input dimension and path traversal validation
sneak
2026-01-08 08:50:43 -08:00
-
-
90be4e7763
Update TODO.md: mark security validations as complete
sneak
2026-01-08 08:50:37 -08:00
-
95408e68d4
Implement max input dimensions and path traversal validation
sneak
2026-01-08 08:50:18 -08:00
-
c964feac7e
Add failing tests for input dimension and path traversal validation
sneak
2026-01-08 08:48:11 -08:00
-
-
857be30e82
Update TODO.md: mark auth/encrypted URLs feature as complete
sneak
2026-01-08 08:43:23 -08:00
-
06c99b6f4e
Merge feature/auth-and-encrypted-urls: Add login, sessions, and encrypted URLs
sneak
2026-01-08 07:41:28 -08:00
-
-
f601e17812
Add implementation plan for auth and encrypted URLs feature
sneak
2026-01-08 07:39:31 -08:00
-
6355886dba
Add vendoring and repo size guidelines to CLAUDE.md
sneak
2026-01-08 07:39:27 -08:00
-
2cbafe374c
Add mock fetcher and service tests for imgcache
sneak
2026-01-08 07:39:18 -08:00
-
1f0ec59eb5
Wire up auth routes and encrypted URL endpoint
sneak
2026-01-08 07:38:44 -08:00
-
08d6e264ed
Add auth and encrypted image handlers
sneak
2026-01-08 07:38:15 -08:00
-
aad5e59d23
Add static files and HTML templates for web UI
sneak
2026-01-08 07:38:09 -08:00
-
c033e918f0
Add encurl package for encrypted URL tokens
sneak
2026-01-08 07:38:05 -08:00
-
041b18f651
Add session package for encrypted cookie management
sneak
2026-01-08 07:37:58 -08:00
-
3f4f345d1c
Add seal package for authenticated encryption
sneak
2026-01-08 07:37:53 -08:00
-
-
1e890ffbcc
Fix spelling, punctuation, and capitalization in CLAUDE.md
sneak
2026-01-08 05:29:08 -08:00
-
f244d9c7e0
Add per-host connection limits for upstream fetching
sneak
2026-01-08 05:19:20 -08:00
-
49ff72dfa8
Add bin/ to gitignore
sneak
2026-01-08 05:14:11 -08:00
-
6304556837
Refactor to serve all responses from cached files on disk
sneak
2026-01-08 05:11:55 -08:00
-
1a97f42cd8
Add detailed logging for image requests with cache status and timing
sneak
2026-01-08 05:04:08 -08:00
-
6a20406b0f
Add -config flag using cobra to specify config file path
sneak
2026-01-08 04:58:05 -08:00
-
271527679e
Add example config file with whitelisted hosts
sneak
2026-01-08 04:09:06 -08:00
-
9647829ac9
Support YAML list format for whitelist_hosts config
sneak
2026-01-08 04:08:51 -08:00
-
3fcf9d9146
Add failing test for YAML list format in whitelist_hosts config
sneak
2026-01-08 04:08:11 -08:00
-
cc0fd29954
Update TODO.md with completed image processing items
sneak
2026-01-08 04:02:53 -08:00
-
fd2d108f9c
Wire up image handler endpoint with service orchestration
sneak
2026-01-08 04:01:53 -08:00
-
5462c9222c
Add pure Go image processor with resize and format conversion
sneak
2026-01-08 03:54:50 -08:00
-
9629139989
Add tests for cache service
sneak
2026-01-08 03:39:23 -08:00
-
11295db68a
Exclude vendor directory from format checks
sneak
2026-01-08 03:37:58 -08:00
-
d9e57de108
Add TDD and commit workflow rules to CLAUDE.md
sneak
2026-01-08 03:36:22 -08:00
-
b14c897408
Update TODO.md with completed caching layer items
sneak
2026-01-08 03:36:05 -08:00
-
6d32b7ee23
Fix formatting in fetcher and signature tests
sneak
2026-01-08 03:36:00 -08:00
-
30c5c077e5
Add cache service with hot cache and negative caching
sneak
2026-01-08 03:35:55 -08:00
-
2f20c71da0
Add content-addressable storage and cache key generation
sneak
2026-01-08 03:35:50 -08:00
-
4595929275
Add embedded SQL migrations system
sneak
2026-01-08 03:35:43 -08:00
-
27eb9fb513
Add HMAC signature specification to README
sneak
2026-01-08 03:35:36 -08:00
-
30d63e80dc
Add magic byte detection for image format validation
sneak
2026-01-08 03:35:29 -08:00
-
9ff44b7e65
Update TODO.md with completed core features
sneak
2026-01-08 03:02:24 -08:00
-
cc2c40bfbf
Implement HMAC-SHA256 signature generation and verification
sneak
2026-01-08 03:02:09 -08:00
-
2b0ccd6052
Implement host whitelist for source domains
sneak
2026-01-08 03:00:53 -08:00
-
018c280267
Add ParseImagePath for chi wildcard and upstream fetcher with SSRF protection
sneak
2026-01-08 02:59:48 -08:00
-
c69ddf6f61
Implement URL parser for image proxy routes
sneak
2026-01-08 02:55:05 -08:00
-
a9573a4b10
Mark project setup tasks complete in TODO.md
sneak
2026-01-08 02:53:49 -08:00
-
09a0e6f039
Fix formatting alignment in server constants
sneak
2026-01-08 02:31:01 -08:00
-
1ac16bcfb4
Remove unused respondError function
sneak
2026-01-08 02:30:13 -08:00
-
837c91e0dd
Rename unused ctx parameters in server hooks
sneak
2026-01-08 02:29:48 -08:00
-
827f9743b8
Add package and const block comments to imgcache
sneak
2026-01-08 02:29:25 -08:00
-
453fd22ce2
Add doc comment to HandleHealthCheck method
sneak
2026-01-08 02:28:30 -08:00
-
eb2ba92745
Add comment to SQLite blank import
sneak
2026-01-08 02:28:05 -08:00
-
29adb6ee47
Rename unused parameters to _ to satisfy linter
sneak
2026-01-08 02:27:45 -08:00
-
146eeee070
Use bit shift for HTTPMaxHeaderBytes constant
sneak
2026-01-08 02:26:47 -08:00
-
31df1a4a03
Rename LoggerParams to Params to avoid stuttering
sneak
2026-01-08 02:26:15 -08:00
-
1824d99f55
Rename ServerParams to Params to avoid stuttering
sneak
2026-01-08 02:25:56 -08:00
-
3f6328766c
Rename MiddlewareParams to Params to avoid stuttering
sneak
2026-01-08 02:25:42 -08:00