Skip to content

docs(format): RAR5/UDF/Deflate64 feasibility ADR [RM-306]#64

Merged
P4suta merged 2 commits into
mainfrom
feature/dev-112-rm-306-rar5-and-udf-feasibility-resolution-and-scope-adr
Jul 23, 2026
Merged

docs(format): RAR5/UDF/Deflate64 feasibility ADR [RM-306]#64
P4suta merged 2 commits into
mainfrom
feature/dev-112-rm-306-rar5-and-udf-feasibility-resolution-and-scope-adr

Conversation

@P4suta

@P4suta P4suta commented Jul 22, 2026

Copy link
Copy Markdown
Owner

RM-306 / DEV-112 — RAR5 and UDF feasibility resolution and scope ADR

Feasibility-and-scope decision (ADR-0013) resolving the RAR5, UDF, and Deflate64 questions that RM-300 and ADR-0012 delegated to RM-306. No provider lands with this ADR; support-matrix cells still flip only when a provider is implemented.

Decisions

  • Deflate64 (method 9) — read = go via the external pure-Rust deflate64 decoder consumed behind the codec-provider boundary (C-free portable profile, #![forbid(unsafe_code)], bounded 64 KiB window), landing in a follow-on slice; write = won't-do (no pure-Rust encoder exists, demand nil). Supersedes ADR-0012's "Deflate64 (read + write)" deficit with a write-only won't-do row.
  • UDFgo for a scoped read-only in-tree pure-Rust provider (Phase 1: revisions 1.02/1.50/2.01, activated from the shared Volume Recognition Sequence); write / VAT / sequential CD-R / sparable maps / UDF 2.50–2.60 metadata partitions out of scope. Generic RAND boilerplate recorded as a low-but-nonzero tracked IP risk. Follow-on implementation slice.
  • RAR5 — legally defensible as an independent read-only decoder, but the provider is deferred in its entirety: no clean-room forbid(unsafe) pure-Rust decompressor exists, C-UnRAR FFI is disqualified by the portable profile, and a metadata+Stored-only cut would read almost no real archive. Decode-only / clean-room / nominative-naming constraints fixed for any future work.

Changes

  • docs/adr/0013-rar5-udf-deflate64-feasibility.md (new)
  • docs/support-matrix.md — deficit ledger + not-yet-implemented prose
  • docs/tracking/campaign-3-evidence.md — RM-306 evidence

No src/ change, no dependency added. just ci passed locally (pre-push gate).

🤖 Generated with Claude Code

P4suta and others added 2 commits July 23, 2026 08:09
ADR-0013 resolves the RAR5, UDF, and Deflate64 feasibility questions that
RM-300 and ADR-0012 delegated to RM-306. It is a feasibility-and-scope
decision that lands no provider; support-matrix cells still flip only when a
provider is implemented.

- Deflate64 (method 9): read = go via the external pure-Rust `deflate64`
  decoder behind the codec-provider boundary (follow-on slice); write =
  won't-do (no pure-Rust encoder exists). Supersedes ADR-0012's
  "Deflate64 (read + write)" deficit with a write-only won't-do row.
- UDF: go for a scoped read-only in-tree pure-Rust provider (Phase 1: rev
  1.02/1.50/2.01, activated from the shared Volume Recognition Sequence);
  write/VAT/sparable/2.50-2.60 metadata partitions out of scope. Generic RAND
  boilerplate recorded as a low-but-nonzero tracked IP risk.
- RAR5: legally defensible as an independent read-only decoder, but the
  provider is deferred in its entirety — no clean-room forbid(unsafe) pure-Rust
  decompressor exists, C-UnRAR FFI is disqualified by the portable profile, and
  a metadata+Stored-only cut would read almost no real archive. Decode-only /
  clean-room / nominative-naming constraints fixed for any future work.

Updates docs/support-matrix.md (deficit ledger + not-yet-implemented prose) and
docs/tracking/campaign-3-evidence.md. No src/ change, no dependency added.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@P4suta
P4suta enabled auto-merge (squash) July 23, 2026 03:31
@P4suta
P4suta merged commit 21b8dc8 into main Jul 23, 2026
22 checks passed
@P4suta
P4suta deleted the feature/dev-112-rm-306-rar5-and-udf-feasibility-resolution-and-scope-adr branch July 23, 2026 03:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant