drop the parity harness, keep what it argued

The harness compared these tools against the code they replaced — Python
imported from book-pipeline, podcast-pipeline and knowledge-mcp, and
JavaScript copied out of the podcast media server and indexer, each pinned to
a commit. All of it has since been deleted, so the live half cannot run and
the golden half pins answers against a source nobody can consult.

What was worth keeping was never the comparison. `KNOWN.md` argued, at
length, why a dozen of these tools deliberately do something a reader would
not expect: why pdfgutter measures the crop box throughout, why avplan finds
the encoder rather than reading one out of the environment, why mdscrub will
not manufacture a page boundary. Those arguments are about this code and
stand on their own, so they are now `docs/decisions.md`, rewritten to say
what each tool does and why rather than what it does differently.

Binding coverage is unaffected: the bindings carry 24 tests of their own, a
node smoke test against the built package, and a typecheck.
This commit is contained in:
funkpower
2026-09-21 07:25:10 -04:00
parent bd0e1ed521
commit c4e1fb9c02
233 changed files with 258 additions and 34196 deletions
+3 -3
View File
@@ -5,9 +5,9 @@
//! stream comes out. Everything downstream of this works on cues and never
//! has to know which of the three a recording arrived with.
//!
//! The SubRip reader is a port, quirks kept, of the parser a podcast archive
//! was indexed with; the other two are new, and are written to the same
//! shape. Where the port deliberately differs, `parity/KNOWN.md` says so.
//! The SubRip reader keeps the quirks of the parser a podcast archive was
//! indexed with, so that re-reading the archive gives back what is already in
//! it. The other two are written to the same shape.
pub mod ass;
pub mod cue;
+1 -2
View File
@@ -41,8 +41,7 @@ pub fn parse(content: &str) -> Vec<Cue> {
/// Each half is reduced to the one token that could be a timestamp, which is
/// what lets the same reader take a WebVTT cue line — where the end time is
/// followed by positioning settings — and an old SubRip file with screen
/// coordinates after it. See `parity/KNOWN.md`: the original reads each half
/// whole and drops such a cue entirely.
/// coordinates after it. Reading each half whole drops both.
fn times(line: &str) -> Option<(f64, f64)> {
let (before, after) = line.split_once("-->")?;
let start = timestamp(before.split_whitespace().next_back().unwrap_or(""));