@ -188,12 +188,24 @@ working tree; one now exists.
`zip_prefixed_empty` ) build archives in memory, prepend a fake executable prefix,
`zip_prefixed_empty` ) build archives in memory, prepend a fake executable prefix,
and verify both offset conventions land on the right base_offset with members
and verify both offset conventions land on the right base_offset with members
extracting intact. Suite now 125/125.
extracting intact. Suite now 125/125.
- Remaining for acceptance: extract-to-directory argument (upstream); machine-readable
- 2026-07-27 the two upstream-side prerequisites from Approach LANDED (commit 7f88096,
listing mode + zig-side format pin test (upstream; must keep the stdout=product /
punkzip v2.2.0, suite 128/128): `extract [-d <dir>]` (target dir created if absent,
stderr=diagnostics split per Notes); `build` subcommand finish-or-remove decision;
human output gains an extract_to line, no-flag behaviour unchanged) and
vendor into `src/tools/punkzip/` with provenance (upstream commit id), re-vendor
`list [-porcelain]` - machine-readable format v1, PINNED by CLI tests: parsers skip
procedure and licence records; make.tcl tool build step (zig OPTIONAL - absence
`# ` -prefixed and blank lines; first significant line `punkzip_porcelain_v1` ; header
reported, not fatal; test gate keys on exit code, not clean stderr - the zip suite's
fields file_size / base_offset / num_members / archive_comment_bytes (comment bytes
negative tests print EOCD warnings while passing); punk::zip accelerator detection +
follow on their own line); member records
fast path behind the G-124 floor; parity suite in `src/tests/modules/punk/zip/` ;
`m < isdir > < method > < uncomp > < comp > < crc32-8hex > < mtime-unixsecs > < encrypted >
< madeby > < namelen > < name > ` with the length-prefixed name LAST (spaces safe; CR/LF
names refused). mtime is the deterministic UTC interpretation of the DOS-stored
local wall time (musl time.zig, no tz database) - machine-independent, so the
parity suite can compare it directly. Member comments deliberately deferred to a v2.
(The user separately committed upstream hwzip 2.4 C source under `reference/` for
sync comparison - cb2a731.)
- Remaining for acceptance: `build` subcommand finish-or-remove decision; vendor into
`src/tools/punkzip/` with provenance (upstream commit id), re-vendor procedure and
licence records; make.tcl tool build step (zig OPTIONAL - absence reported, not
fatal; test gate keys on exit code, not clean stderr - the zip suite's negative
tests print EOCD warnings while passing); punk::zip accelerator detection + fast
path behind the G-124 floor; parity suite in `src/tests/modules/punk/zip/` ;
recorded benchmark (speedup + entry count where it becomes material).
recorded benchmark (speedup + entry count where it becomes material).