Skip to content

fix(parmana-server): enforce canonical 64-byte base64 signatures and guard non-dict fields in parmana_evidence (#377) - #382

Merged
rajnisht7 merged 2 commits into
agentrust-io:mainfrom
drk-ram:drk-ram-fix-parmana-377
Oct 28, 2026
Merged

rajnisht7 merged 2 commits into
agentrust-io:mainfrom
drk-ram:drk-ram-fix-parmana-377

Conversation

@drk-ram

@drk-ram drk-ram commented Oct 25, 2026

Copy link
Copy Markdown
Contributor

Closes #377

Summary

  • Enforce base64.b64decode(..., validate=True), 64-byte signature length, and canonical base64 round-trip equality in parmana_evidence._verify, returning False on malformed base64 instead of raising binascii.Error.
  • Guard non-dict signature, payload, and issuer fields in verify_refusal_record and verify_approval.
  • Add unit tests in integrations/parmana-server/tests/test_parmana_evidence.py.

Validation

  • pytest integrations/parmana-server/tests/test_parmana_evidence.py -q — passed

…guard non-dict fields in parmana_evidence (agentrust-io#377)

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Raghuvar Durga <177662415+drk-ram@users.noreply.github.com>
@drk-ram
drk-ram requested review from a team, carloshvp and imran-siddique as code owners October 25, 2026 06:59
@github-actions

github-actions Bot commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

🟡 Contributor Check: MEDIUM

Check Result
Profile MEDIUM
Credential LOW
Overall MEDIUM

Automated check by AgenTrust Contributor Check.

@github-actions github-actions Bot added the needs-review:MEDIUM Contributor check flagged MEDIUM risk label Oct 25, 2026

@carloshvp carloshvp left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Reviewed exact head 31107bc8976edafe276c3215ec0b37e179892670 in an isolated checkout.

The approval/refusal helpers reject noncanonical or wrong-length standard-base64 signatures and malformed containers while preserving the signed fixture controls. All 23 offline integration tests pass. The five focused rejection controls fail with the baseline module restored in process. I used a fresh hash-locked review environment resolved from the integration's declared test dependencies, including parmana 1.6.0; pip check, repository CI Ruff and diff whitespace checks pass. This is fixture/signature verification rather than a new Parmana execution or observed downstream effect. No blocking source finding; hosted checks and maintainer policy remain separate.

Reviewed with OpenAI Codex.

@rajnisht7
rajnisht7 merged commit b57ce7e into agentrust-io:main Oct 28, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-review:MEDIUM Contributor check flagged MEDIUM risk

Projects

None yet

Development

Successfully merging this pull request may close these issues.

integrations/parmana-server: parmana_evidence._verify accepts non-base64 characters in signatures and crashes on non-dict signature/payload fields

3 participants