52 lines
1.9 KiB
Markdown
52 lines
1.9 KiB
Markdown
# Tasks: enterprise-exif
|
|
|
|
## 1. Scaffold
|
|
- [x] 1.1 `universal/media/exif/`; 100/100/100/100; guard tests; CLAUDE/README/FOLDERS.
|
|
|
|
## 2. Errors + schemas
|
|
- [x] 2.1 `src/errors/exif-error.ts` — codes.
|
|
- [x] 2.2 Zod schemas for ExifData, ImageMetadata, MetadataPatch, IccProfile.
|
|
|
|
## 3. Binary primitives
|
|
- [x] 3.1 `src/binary/reader/*` — `ByteReader`, `ByteOrder`.
|
|
- [x] 3.2 `src/binary/writer/*` — `ByteWriter`.
|
|
- [x] 3.3 `src/binary/rational/*` — rational arithmetic + property tests.
|
|
- [x] 3.4 `src/binary/crc32/*`, `src/binary/md5/*`.
|
|
|
|
## 4. IFD engine
|
|
- [x] 4.1 `src/ifd/entry/*` — entry codec + `TIFF_TYPE`.
|
|
- [x] 4.2 `src/ifd/parse/*` — `parseTiff`.
|
|
- [x] 4.3 `src/ifd/build/*` — `buildTiff`.
|
|
- [x] 4.4 Round-trip property test on random IFD trees.
|
|
|
|
## 5. Format readers/writers
|
|
- [x] 5.1 JPEG segments `src/formats/jpeg/*`.
|
|
- [x] 5.2 PNG chunks `src/formats/png/*`.
|
|
- [x] 5.3 TIFF `src/formats/tiff/*`.
|
|
- [x] 5.4 WebP chunks `src/formats/webp/*`.
|
|
- [x] 5.5 ISOBMFF/HEIC box reader + read/write `src/formats/isobmff/*`.
|
|
- [x] 5.6 RAW dispatch `src/formats/raw/dispatch/*`.
|
|
- [x] 5.7 Real-image fixture tests per format.
|
|
|
|
## 6. Core dispatch
|
|
- [x] 6.1 `src/core/detect/*` — `detectImageFormat`.
|
|
- [x] 6.2 `src/core/read/*`, `src/core/write/*`, `src/core/strip/*`.
|
|
- [x] 6.3 OTel histograms per format.
|
|
|
|
## 7. Metadata sub-systems
|
|
- [x] 7.1 GPS: convert + timestamp.
|
|
- [x] 7.2 ICC: read / write / validate / convert (classifyProfile, isSRGB, isAdobeRGB, isDisplayP3, profileDescription).
|
|
- [x] 7.3 IPTC: read / write.
|
|
- [x] 7.4 XMP: read / write + namespaces.
|
|
|
|
## 8. MakerNotes
|
|
- [x] 8.1 Dispatch + Apple bplist + Apple + Canon + Nikon (+ cipher) + Sony (+ cipher).
|
|
|
|
## 9. Differential fuzz
|
|
- [x] 9.1 Differential harness vs `exifr` on 1 000-image corpus; record discrepancies.
|
|
|
|
## 10. Docs / barrel / subpath exports / README / benchmarks
|
|
|
|
## 11. Ship gate
|
|
- [x] 11.1 Verification sequence; fold + archive (merge with main-branch `exif-migration` delta).
|