Add native numeric evidence and Assay companion conformance - #13
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Essentials Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
Included review availability: 0 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 5 reviews per hour. 📝 WalkthroughWalkthroughThe evidence record schema advances to 0.3.0-draft. Version 0.3.0 supports numeric verdicts, while versions 0.1.0 and 0.2.0 retain string-only verdicts. New fixtures and conformance tests validate schemas, lineage, declarations, and numeric bounds. ChangesEvidence record contract
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~25 minutes Merge Risk: ⚪ Minimal · up to The reviewed changes are mergeable with normal checks. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 9.09% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 22 functions across 5 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
🟡 Changes recommended
Moderate unresolved compatibility, lockfile, and package-version findings remain.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR releases paa-contracts 0.3.0 with version-gated numeric evidence verdicts and adds Assay scalar-quality companion conformance.
Changes:
- Adds native numeric verdict support while preserving legacy envelopes.
- Adds Assay schemas, fixtures, lineage checks, and negative cases.
- Updates documentation, metadata, dependencies, locks, and conformance tests.
File summaries
| File | Summary |
|---|---|
uv.lock |
Updates the workspace contract version. Moderate finding (1 vote): regenerate the package-local lock as well. |
schemas/paa-evidence-record.schema.json |
Adds v0.3 numeric verdict support. Moderate finding (1 vote): add a v0.3 string positive case. |
README.md |
Documents contract version changes. |
pyproject.toml |
Raises the conformance dependency minimum. |
packages/paa-contracts/tests/test_contracts.py |
Updates corpus count assertions. |
packages/paa-contracts/src/paa_contracts/__init__.py |
Bumps the package version. |
packages/paa-contracts/README.md |
Documents Assay fixtures and v0.3 behavior. |
packages/paa-contracts/pyproject.toml |
Sets the package release to 0.3.0. Moderate findings (2 votes each): regenerate the nested lockfile and align npm package metadata to 0.3.0. |
examples/runtime-conformance/payload-schemas/assay-scalar-quality.schema.json |
Adds the Assay companion schema. Moderate finding (1 vote): add v0.1/v0.2 companion-validator negatives. |
examples/runtime-conformance/invalid/evidence-cases.json |
Adds numeric verdict negative cases. |
examples/runtime-conformance/evidence-records/evidence/paa/772600716f1b221836cd5f0732e7633e38edb6903e48f463dbfb4c97f848672a/evidence.json |
Adds the numeric Assay evidence fixture. |
conformance/test_operating_records.py |
Tests retained versions and numeric evidence. |
conformance/test_evidence_integrity.py |
Tests companion schemas and declaration identity. |
conformance/test_corpus_integrity.py |
Updates corpus totals. |
Review details
Suppressed comments (2)
examples/runtime-conformance/payload-schemas/assay-scalar-quality.schema.json:11
- This v0.3-only
constis a compatibility boundary, but no test exercises it. The new v0.1/v0.2 numeric cases validate only the base schema viaviolations("evidence", ...), while companion tests always start from a v0.3 record; removing this guard would leave the suite green and allow an old envelope through this companion schema. Add companion-validator negatives for v0.1 and v0.2 records.
"record_schema": { "const": "paa-evidence-record/0.3.0-draft" },
schemas/paa-evidence-record.schema.json:147
- The new union is exercised only by the numeric v0.3 fixture. Existing string fixtures are v0.1/v0.2, and the companion test intentionally rejects strings, so no test proves that a v0.3 string remains valid; changing this to
type: numberwould leave the current tests green while violating the documented compatibility contract. Add a v0.3 string positive/base-validation case.
"type": ["string", "number"],
- Files reviewed: 13/14 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| [project] | ||
| name = "paa-contracts" | ||
| version = "0.2.0" | ||
| version = "0.3.0" |
| [project] | ||
| name = "paa-contracts" | ||
| version = "0.2.0" | ||
| version = "0.3.0" |
|
Addressed the approved review findings in ef37850:
Validation: 767 runtime/conformance tests and 89 contract-package tests pass; lint and runtime type checks pass; npm pack dry-run identifies version 0.3.0; The suppressed claim that removing the companion's v0.3 const would admit older envelopes was checked and is incorrect: the base schema requires string verdicts for older versions, while the scalar companion requires numbers. Those envelopes remain rejected even without that const. The guard itself remains unchanged. No review threads were automatically resolved. |
Summary
paa-contracts0.3.0 with native numeric evidence verdicts; olderenvelope versions remain string-only.
inbound_reply_surfacingevaluator,correct its canonical content address, and strengthen required lineage refs.
full fixture conformance.
This is Assay's schema/conformance prerequisite, not a runtime dependency of
the Assay verifier: RankOneLabs/assay#1
Validation
validators.
Summary by CodeRabbit
New Features
Bug Fixes
Documentation