Files
2026-05-27 23:29:53 +01:00

1.2 KiB

Tasks: enterprise-compress-image

1. Scaffold

  • 1.1 universal/compression/compress-image/; 100/100/100/100; guard tests; CLAUDE/README/FOLDERS.

2. Errors + schemas

  • 2.1 src/error-codes.ts, src/errors/compression-errors.ts.
  • 2.2 Zod schemas per type.

3. Format adapters

  • 3.1 src/adapters/jpeg.ts (jsquash/jpeg).
  • 3.2 src/adapters/png.ts (jsquash/png).
  • 3.3 src/adapters/webp.ts (jsquash/webp).
  • 3.4 src/adapters/avif.ts (jsquash/avif).
  • 3.5 Co-located .md + fixture tests.

4. Resize

  • 4.1 src/resize/resize.ts — max-dimension constraint via jsquash/resize.

5. Planner / compressor

  • 5.1 src/planner/planner.ts — build CompressionPlan from ResolvedCompressionOptions.
  • 5.2 src/compressor/image-compressor.ts — ImageCompressor.
  • 5.3 OTel histogram + counter + gauge.

6. Presets / constants

  • 6.1 src/types/compression.types.ts exports QUALITY_PRESETS, VALID_FORMATS, VALID_PRESETS, FORMAT_QUALITY_RANGES, MAX_DIMENSION.

7. Docs / barrel / subpath exports / README

8. Benchmarks

  • 8.1 Compress 1 MB / 10 MB test images per format.

9. Ship gate

  • 9.1 Verification sequence; fold + archive.