Skip to content

v0.7.2 — Document Ingestion + Stale Rule Detection

Latest

Choose a tag to compare

@witchwasin witchwasin released this 05 Apr 19:43
· 2 commits to main since this release

What's New

Document Ingestion Pipeline

Load PDF, DOCX, and text files with per-page/section provenance tracking:

from axiomguard import DocumentParser, Tournament

doc = DocumentParser.from_pdf("policy.pdf")
# doc.segments[0].page_number == 1
# doc.segments[0].extracted_text == "Page 1 content..."

tourney = Tournament(source=doc, domain="compliance")
tourney.generate(llm_generate=my_llm)

Install: pip install "axiomguard[ingestion]"

Backward compatible — Tournament(source="plain text") still works.

Stale Rule Detection

Detect when source documents change and rules need re-verification:

from axiomguard import StaleRuleDetector

report = StaleRuleDetector.compare(old_audit, new_audit)
if report.is_stale:
    print(report.summary)
    # "STALE: Source document 'policy.pdf' has changed."
    # "  Changed segments: 2"
    # "  Potentially stale rules: 3"

Audit Trail Enhancements

  • TournamentAudit now includes: source_path, source_type, source_segment_hashes, total_pages
  • CandidateRule now includes: source_page, source_section

Stats

  • Test count: 329 → 355 (+26 new tests)

Full Changelog: v0.7.1...v0.7.2