Skip to content

docs: trim README#47

Merged
vaaraio merged 1 commit into
mainfrom
chore/readme-rewrite
Apr 28, 2026
Merged

docs: trim README#47
vaaraio merged 1 commit into
mainfrom
chore/readme-rewrite

Conversation

@vaaraio
Copy link
Copy Markdown
Owner

@vaaraio vaaraio commented Apr 28, 2026

61 lines instead of 320. Pointers to COMPLIANCE.md and docs/formal_specification.md.

Summary by CodeRabbit

Release Notes

  • Documentation
    • README refactored with refreshed headline description highlighting core capabilities
    • Quick Start guide simplified for easier onboarding
    • New reference section added directing users to key documentation and directories
    • Updated logo alt text and license link formatting

Compact, factual README. Drops marketing prose, triadic framings, and
cluster-vocabulary tells. Lede states what the library does mechanically.
Names Microsoft's Agent Governance Toolkit as the broader alternative.
Substance lives in COMPLIANCE.md and docs/formal_specification.md;
README points to it. AI Act framing demoted from identity to optional
output (regulatory mapping is one consumer of the audit stream, not
the library's identity).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 28, 2026

📝 Walkthrough

Walkthrough

The README has been substantially condensed, removing extensive sections on compliance mapping, EU governance, ML classifiers, and framework integrations. The core product description is rewritten to emphasize tool-call interception, conformal risk intervals, and audit capabilities, while the Quick Start example is simplified and a new "Where things live" section guides readers to detailed documentation.

Changes

Cohort / File(s) Summary
Documentation Restructuring
README.md
Removed detailed sections (compliance mapping, EU governance, ML classifiers, framework integrations, architecture/persistence docs); condensed product description; simplified Quick Start example; added "Where things live" reference section; minor formatting updates to logo alt text and links.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Poem

🐰 A rabbit hops through tangled text,
Trimming excess, what comes next?
Shorter reads, clearer sight—
The docs now dance in focused light!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'docs: trim README' accurately and concisely describes the primary change: a substantial condensation of the README file from 320 to 61 lines.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/readme-rewrite

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
README.md (2)

27-27: Consider adding a docs-check guard to keep README claims aligned with packaging metadata.

The "Zero runtime deps" claim on line 27 is currently accurate—pyproject.toml shows dependencies = [] with optional dependencies isolated under [project.optional-dependencies]. However, this guard would prevent accidental drift if someone adds dependencies without updating the README.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 27, Add a docs-check CI guard that verifies the README
claim "Zero runtime deps" stays in sync with the package metadata: implement a
small check (e.g., scripts/validate_readme.py or a workflow step) that reads
pyproject.toml's [project].dependencies and [project.optional-dependencies] and
fails if README.md contains "Zero runtime deps" while pyproject.toml lists
non-empty runtime dependencies; wire this check into your CI workflow (job name
like "docs-check" or "readme-meta-guard") so PRs break until README and
pyproject.toml agree.

44-47: Distinguish ESCALATE from DENY in the quick-start example.

Lines 41–44 currently collapse both rejected outcomes into a single else clause. Since result.decision provides three distinct states (ALLOW/ESCALATE/DENY), the quick-start should show explicit handling:

Proposed README tweak
 if result.allowed:
     pipeline.report_outcome(result.action_id, outcome_severity=0.0)
+elif result.decision == "escalate":
+    print(f"Escalate: {result.reason}")
 else:
-    print(result.reason)
+    print(f"Deny: {result.reason}")

This reduces integration ambiguity by making it clear that ESCALATE (human review) and DENY (automatic block) require different downstream handling.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 44 - 47, Update the quick-start example to explicitly
branch on the three possible result.decision values (ALLOW, ESCALATE, DENY)
instead of using a single else; locate the snippet that calls report_outcome and
prints result.reason and replace the single else handler with three distinct
branches that handle ALLOW (proceed normally and call report_outcome with
success), ESCALATE (route to human review workflow and call report_outcome with
an “escalated_for_review” outcome), and DENY (block the action, log/notify
denial, and call report_outcome with a “denied” outcome) so integrators can see
how to treat human-review vs automatic block differently while still printing
result.reason.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Around line 51-52: Update the README entry describing COMPLIANCE.md so the EU
AI Act articles list matches the compliance engine: add "Article 17" to the
parenthetical list (so it reads "Articles 9, 11 to 15, 17, 61"), ensuring
consistency with the compliance engine implementation (engine.py) that documents
support for Article 17.

---

Nitpick comments:
In `@README.md`:
- Line 27: Add a docs-check CI guard that verifies the README claim "Zero
runtime deps" stays in sync with the package metadata: implement a small check
(e.g., scripts/validate_readme.py or a workflow step) that reads
pyproject.toml's [project].dependencies and [project.optional-dependencies] and
fails if README.md contains "Zero runtime deps" while pyproject.toml lists
non-empty runtime dependencies; wire this check into your CI workflow (job name
like "docs-check" or "readme-meta-guard") so PRs break until README and
pyproject.toml agree.
- Around line 44-47: Update the quick-start example to explicitly branch on the
three possible result.decision values (ALLOW, ESCALATE, DENY) instead of using a
single else; locate the snippet that calls report_outcome and prints
result.reason and replace the single else handler with three distinct branches
that handle ALLOW (proceed normally and call report_outcome with success),
ESCALATE (route to human review workflow and call report_outcome with an
“escalated_for_review” outcome), and DENY (block the action, log/notify denial,
and call report_outcome with a “denied” outcome) so integrators can see how to
treat human-review vs automatic block differently while still printing
result.reason.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c8da8ac7-496a-42fa-888a-34144cb3f040

📥 Commits

Reviewing files that changed from the base of the PR and between 45c540a and 3824e86.

📒 Files selected for processing (1)
  • README.md

Comment thread README.md
Comment on lines +51 to +52
- [docs/formal_specification.md](docs/formal_specification.md): math. MWU regret bound O(sqrt(T log N)), conformal coverage guarantees, security properties.
- [COMPLIANCE.md](COMPLIANCE.md): Article-level evidence mapping for EU AI Act (Articles 9, 11 to 15, 61) and DORA (Articles 10, 12, 13). Eval numbers, threshold sweeps, PAIR adversarial calibration.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== README statement =="
rg -nP 'EU AI Act|Articles?' README.md

echo
echo "== COMPLIANCE.md article references =="
rg -nP 'Article|Articles|EU AI Act' COMPLIANCE.md

echo
echo "== Engine-supported framework/article statement =="
rg -nP 'EU AI Act|Articles 9|11-15|17|61|DORA' src/vaara/compliance/engine.py -n -C2

Repository: vaaraio/vaara

Length of output: 4638


Update README.md line 52 to include Article 17 in the EU AI Act articles list.

Line 52 lists EU AI Act Articles 9, 11–15, 61, but src/vaara/compliance/engine.py line 14 documents the framework as supporting Articles 9, 11–15, 17, 61. Update the README to match the engine's actual scope.

Current README.md line 52
- [COMPLIANCE.md](COMPLIANCE.md): Article-level evidence mapping for EU AI Act (Articles 9, 11 to 15, 61) and DORA (Articles 10, 12, 13). Eval numbers, threshold sweeps, PAIR adversarial calibration.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 51 - 52, Update the README entry describing
COMPLIANCE.md so the EU AI Act articles list matches the compliance engine: add
"Article 17" to the parenthetical list (so it reads "Articles 9, 11 to 15, 17,
61"), ensuring consistency with the compliance engine implementation (engine.py)
that documents support for Article 17.

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