# basic.tar - Uncompressed TAR Fixture

## Purpose
Test uncompressed tar format operations without compression overhead.

## Contents
- **README.md** (text, ~600 bytes): Fixture documentation
- **config.json** (text, ~100 bytes): JSON configuration
- **metadata.txt** (text, ~120 bytes): Fixture metadata
- **data/sample.txt** (text, ~100 bytes): Nested directory sample
- **data/tiny.png** (binary, ~100 bytes): Binary file (PNG-like blob)

**Total**: ~1KB content, ~10KB tar archive (includes tar headers/padding)

## Expected Behavior

### create()
- `compression_level` option: Ignored (no error, tar has no compression)
- `compression_ratio`: Always 1.0

### extract()
- **Fastest extraction**: No decompression overhead
- Binary integrity: tiny.png bytes identical after round-trip

### scan()
- **Fastest TOC read**: No decompression overhead
- Returns 5 entries (README, config, metadata, data/sample.txt, data/tiny.png)

### info()
- `format`: "tar"
- `compressed_size` = `total_size` (ratio = 1.0)
- `entry_count`: 5

### verify()
- No bomb detection from ratio (always 1.0)
- Still enforce max_size and max_entries limits
- All checksums valid

## Test Coverage
- ✅ Tar format create/extract operations
- ✅ Verify compression_ratio = 1.0
- ✅ Binary data integrity (PNG blob round-trip)
- ✅ Performance: tar should be fastest (vs tar.gz/zip)
- ✅ Telemetry: format=tar label in metrics
- ✅ Edge case: compression_level ignored (not an error)

## Size Governance
- **Max size**: 25KB (tar format has 512-byte block padding overhead)
- **Content size**: ~1KB actual data
- **Archive size**: Includes tar headers + 512-byte block padding
- **Enforcement**: Verified by generate-fulpack-fixtures.ts

Generated by: scripts/generate-fulpack-fixtures.ts
Last updated: 2025-11-14
