GIT-003: ingest re-encoder — per-object normalize foreign packs into the OFS-only stream, with dedup

Input

Context

Child of GIT-001; depends on GIT-002. KEEPIngestFile (keeper/KEEP.c:2238) and KEEPIngestStream (:2431) append the received object stream verbatim, patch one PACK count, drop a (count, byte_len) bookmark, then UNPKIndex the slice. A verbatim foreign pack carries REF_DELTA / thin bases / arbitrary offsets — incompatible with the OFS-only invariant. Replace the verbatim append with a dependency-ordered per-object re-emit through the GIT-002 writer: foreign packs may use whatever, the stored result is uniform OFS-only. UNPK already walks and resolves every object (OFS forest + REF waiters + Phase-C thin fallback), so the re-emit fuses into that existing pass rather than adding a second one. See PackLog, CLAUDE.

Goals

Constraints

WIP

Design decisions

TODOs

Drain → resolve (UNPK forest) → topo-emit per object through the GIT-002 writer.

Blockers and bummers

Outcome