Skip to content

backdraft 0.7.0

Choose a tag to compare

@spencerbraun spencerbraun released this 14 Aug 13:21
· 84 commits to main since this release

Tokens run backwards, and a source list runs to the end.

  • backdraft show <token>... — the inverse of minting. Hand it a token from an artifact, a draft, or a bind report and it prints that token's bind status, its locator, and the verbatim snippet. drifted prints both the snippet that was cited and the one standing there now; unresolved says whether the slug or the locator is the wrong half; malformed names the grammar. It is the gate, so what it shows is minted and citable — a token copied out of somebody else's artifact becomes yours to cite by showing it. Exit 1 if any token named nothing.
  • ingest finishes its list. A source that cannot be read no longer ends the run: everything else still lands, and the command exits 1 printing N of M sources ingested with one line per failure and its reason. Re-running the same list after a fix re-ingests nothing that already landed unchanged.
  • --config keys are declared and checked. Each extractor declares the keys it reads, and the parsed config is validated against the extractor that was actually chosen — so --config dpy=300 fails and names the keys that would have worked, instead of being silently ignored. The keys are listed in backdraft ingest --help, pinned to the declarations by a test.
  • Bind report line items name the claim. ! unresolved: <token> — <the claim's own words> @<offset> — exit 2 now says which sentence to go edit, and the offset is what tells two line items carrying the same token apart.
  • Maintenance. The drift lookup that had landed in both the gate and bind is now one registry-owned function; DESIGN.md's decision table is un-split and pinned by a test; show no longer prints the same next step twice; EXIT_USAGE documents what it actually covers.

1146 tests.