Skip to content

Releases: chasen2041maker/GroundGuard

GroundGuard 0.4.0rc1

GroundGuard 0.4.0rc1 Pre-release
Pre-release

Choose a tag to compare

@chasen2041maker chasen2041maker released this 15 Jul 07:49
3578ab0

Added

  • Added a synchronous, request-scoped Checker protocol, immutable CheckRequest, structured Issue findings, and Fact context fields for subject and observation metadata.
  • Added deterministic issue output to groundguard.report.v1, assertion metadata, Markdown, HTML, and GitHub renderers without changing the report schema version.
  • Added opt-in OrphanNumberChecker and RelativeFreshnessChecker.
  • Added opt-in finance_cn checks for explicit SSE/SZSE consistency and normal-phase price limits.

Fixed

  • Prevented SH.600519, SZ.000001, SSE.600519, and SZSE.000001 from being reported as orphan numbers.

Release Candidate

  • This release candidate is for downstream integration validation.
  • finance_cn supports only explicitly supplied SSE/SZSE context; BSE, Hong Kong, US, and other markets are unsupported.

v0.3.1

Choose a tag to compare

@chasen2041maker chasen2041maker released this 07 Jul 02:46

GroundGuard v0.3.1 publishes the latest distribution engineering work: groundguard-init templates for GitHub Actions, OpenAI, promptfoo, LangGraph, PydanticAI, CrewAI, AutoGen, and FastAPI; packaged public report/config schemas; launch-ready social, benchmark, and flow copy; and centralized runtime policy action selection. Verified locally with 114 passing pytest tests, mkdocs strict build, and python -m build.

v0.3.0

Choose a tag to compare

@chasen2041maker chasen2041maker released this 07 Jul 01:26

Highlights

  • Added FactGate, a high-level runtime API for config-driven record/check flows.
  • Added built-in scoped extractor packs for finance, SaaS, ecommerce, and ops metrics.
  • Added stable groundguard.report.v1 protocol objects and report renderers.
  • Added Markdown, HTML, and GitHub PR comment report output.
  • Added dependency-free OpenTelemetry-style event export plus Langfuse and Phoenix payload exporters.
  • Added a minimal dependency-free groundguard-server entrypoint with POST /check.

Install

python -m pip install -U groundguard-ai==0.3.0

The PyPI distribution name is groundguard-ai; the Python import name remains groundguard.

Quick Check

from groundguard import FactGate

gate = FactGate()
gate.record_tool_result("q3_revenue", "5.2", "billion_usd")
report = gate.check("Q3 revenue came in at $4.8 billion [fact:q3_revenue].", required=["q3_revenue"])
print(report.output_claims[0].status)  # contradicted

Verification

  • python -m pytest -q: 103 passed
  • python -m mkdocs build --strict: passed
  • groundguard-benchmark: 200-case bilingual realistic dataset, 71/71 expected failures detected, 0 false positives, 0 false negatives

v0.2.4

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 14:00

Highlights

  • Added a 200-case bilingual realistic benchmark dataset covering English and Chinese outputs, currencies, percentages, basis points, business-count units, latency, storage units, omissions, contradictions, ambiguity, invented claims, and bare-number extraction limits.
  • Expanded numeric extraction for EUR, GBP, CNY/yuan, bps, operational units, latency units, storage units, and English/Chinese business-count units.
  • Fixed short magnitudes like M stealing compact units such as ms and MB.
  • groundguard-benchmark now prints a concise smoke plus realistic-dataset summary.

Verification

  • python -m pytest -> 84 passed
  • python -m build --outdir .tmp\dist-release-024 -> built wheel and sdist
  • python -m twine check .tmp\dist-release-024\groundguard_ai-0.2.4* -> PASSED

GroundGuard v0.2.3

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 13:12

PyPI distribution renamed to groundguard-ai while keeping the Python import package as groundguard. This release also includes the expanded benchmark, before/after OpenAI demo, py.typed marker, and Python 3.13 CI coverage.

GroundGuard v0.2.2

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 09:29

GroundGuard v0.2.2

GroundGuard v0.2.2 tightens correctness and multi-tenant behavior after the
v0.2 extractor and policy expansion.

Highlights

  • Repeated facts with the same key now match against the latest registered
    value, which prevents false contradictions after tool retries or refreshed
    data.
  • extract_output_claims(...) and Ledger.coverage_report(...) now accept
    request-scoped extractors, so services can avoid process-global extractor
    mutations.
  • Ledger protects its in-memory indexes with a re-entrant lock for safer
    parallel tool-call registration inside one session.
  • Matcher unit buckets are sorted and searched with bisect, reducing
    same-unit candidate scans for larger ledgers.
  • Shadowed duplicate implementations were removed from the core extractor and
    unit normalization modules.

Install

python -m pip install "git+https://github.com/chasen2041maker/GroundGuard.git@v0.2.2"
groundguard-demo
groundguard-benchmark

GroundGuard v0.2.0

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 08:04

GroundGuard v0.2.0

GroundGuard v0.2.0 turns the v0.1 fact gate into a more usable integration
surface for real agent stacks.

Highlights

  • Extraction transparency: reports now expose suspected_numbers,
    uncovered_numbers, and extraction_coverage, so users can see which
    numeric-looking spans were not covered by deterministic extractors.
  • Pluggable extractors: register_extractor(...) lets teams add custom claim
    extraction without forking GroundGuard.
  • Policy actions: tagged contradictions can be repaired from
    Fact.display_value, or sent back through one reask pass.
  • Eval adapters: promptfoo and DeepEval helpers convert CoverageReport into
    assertion-friendly payloads.
  • Performance groundwork: Ledger key lookup is indexed, and matcher candidate
    lookup is bucketed by normalized unit.

Verification

python -m pytest
68 passed

GroundGuard v0.1.4

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 07:40

GroundGuard v0.1.4

This release implements the first phase of REFACTOR.md: precise claim span
offsets. The goal is to make downstream highlighting and text operations more
reliable without changing the public high-level APIs.

Added

  • OutputClaim.start and OutputClaim.end offsets.
  • Span offsets in assertion JSON claim objects.
  • REFACTOR.md roadmap committed with an execution-status audit.

Changed

  • Unverified claim stripping now uses span offsets when available, so repeated
    text spans do not cause the wrong occurrence to be removed.
  • README installation and GitHub Action examples now point to v0.1.4.

Verified

python -m pytest
59 passed

GroundGuard v0.1.3

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 07:31

GroundGuard v0.1.3

This release tightens the fact gate around the review issues that matter most
for real agent outputs: English numeric formats, unit normalization, ambiguous
matches, safer stripping, and richer assertion JSON.

Added

  • README hero demo GIF plus a reproducible PowerShell renderer for regenerating
    it locally with ffmpeg.
  • Shared numeric unit normalization for registered facts and matched claims,
    including CNY magnitude units such as 亿元 and 万元.
  • ambiguous claim status when multiple unkeyed facts match within tolerance.
  • Top-level per-claim details in assertion JSON for downstream highlighting.
  • Regression coverage for compact English magnitudes and percentages such as
    1.2M, 3,830 million dollars, and 21.5 percent.

Changed

  • Financial report demo output now colorizes failed and passing gate states for
    recordings and terminal demos.
  • on_unverified="strip" now fails reports until unverified claims are actually
    removed, keeping policy behavior in one place.
  • English sentence stripping is more conservative around punctuation.
  • Installation and GitHub Action examples now point to v0.1.3.

Verified

python -m pytest
58 passed

GroundGuard v0.1.2

Choose a tag to compare

@chasen2041maker chasen2041maker released this 06 Jul 07:09

GroundGuard v0.1.2

This release widens the deterministic numeric claim extractor for English-first
agent outputs while keeping the v1 boundary narrow: important numbers still need
a unit, magnitude, or explicit fact marker.

Added

  • English USD amount extraction for common forms:
    • $3.83 billion
    • USD 10.25M
    • 2.5 million dollars
  • Regression tests covering currency prefixes, short magnitudes, and dollar
    suffixes.

Changed

  • README and Chinese README now explain the concrete leadership-report failure
    mode earlier in the page.
  • Claim extraction docs now list both Chinese and English amount examples.
  • Installation and GitHub Action examples now point to v0.1.2.

Verified

python -m pytest
50 passed