Repository navigation
fix(agt): validate Guardian decision responses - #249
mjatin2007 wants to merge 1 commit into
Conversation
Signed-off-by: Jatin Mannepalli <mjatin2007@users.noreply.github.com>
|
Hi @shivang-sec and @President, may I check how you’d prefer to sequence this? Section 6.4 on |
|
Thanks for checking, @mjatin2007 . I’d lean toward opening a Discussion for the Section 6.4 clarification first, while keeping this draft open for implementation review in parallel. That should let us resolve the intended behavior for parseable but schema-invalid Guardian responses before merging a change that deliberately differs from the current wording. I agree with keeping protocol violations distinct from technical failures, with the exact fail-closed behavior and its relationship to I’ll defer to @President on the preferred sequencing before we treat the behavior as settled. |
What changed
Validates parsed, correlated Guardian decision responses against the canonical
response-envelope.jsonschema and its method-specificAcsResultbranch before the host adapter accepts them. A canonical-schema or method-result violation is audited and denied even underon_decision_failure: proceed; inability to run the local validator remains a host-side failure and follows the negotiated posture.This follows the accepted issue's fail-closed direction, but under
proceedit deliberately differs from the literal current §6.4 treatment of a malformed response. Validation covers the complete canonical response envelope, not onlydeny.reasoning. This draft should not be treated as conformant until §6.4 is clarified, and it should not merge ahead of that clarification unless maintainers direct otherwise. Response-signature verification is separate and remains pending in #229.Which issue does this implement
Part of #182
meaning, so it needs no issue
Base branch
integration, because this touches the specification, schemas, a referenceimplementation, an adapter, tests, or CI
main, because every changed path is on the documentation lane allowlist inCONTRIBUTING.md
Type of change
I tested this
uv run pytest -vpasses on my machineuv run mkdocs build --strictpasses on my machineThe AGT validation also passes on the repository's pinned Bun 1.3.11: TypeScript succeeds, and the complete Bun suite reports 1,123 passed, 1 skipped, 0 failed across 68 files.
Checklist
git commit -s(required by the DCO)Security
Security impact: schema-invalid or method-invalid Guardian responses are blocked and audited. Local validator unavailability remains posture-governed and is attributed to the host rather than the Guardian.