test(verify): reproduce malformed audit-bundle shape escapes - #597
test(verify): reproduce malformed audit-bundle shape escapes#597altrudev wants to merge 2 commits into
Conversation
…st-io#593) Signed-off-by: altrudev <266135212+altrudev@users.noreply.github.com>
|
🟡 Contributor Check: MEDIUM
Automated check by AgenTrust Contributor Check. |
|
Batch response for this cluster is here: agentrust-io/agent-manifest#357 (comment) Short version: the finding class is real and welcome. Your CI had never run, held under first-time-contributor gating, until I released 36 runs across your PRs an hour ago, and five of your eight are now red. Please fix those, sequence trace-spec#258 against #252 which touch the same two files, and tell me the order you want them reviewed in. |
|
I reconciled the released CI failure here as well. Lint/type/security were already green; the red At That keeps this draft executable without treating a known-current defect as a general CI regression, and it does not pretend #593 is implemented. I am keeping #597 out of the review queue until the narrow structural implementation is ready. Fresh CI is currently waiting on workflow approval; no green claim yet. |
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
What
Executable reproducer for #593.
This draft adds a focused matrix for the public
verify_audit_bundle()result boundary. It exercises malformed JSON container shapes in both the bundle itself and the optional claim-binding input.The asserted invariant is intentionally narrow:
Coverage
Bundle-side vectors:
entriesas string, integer, boolean, or object;entriescontaining string, integer, boolean, list, or null;Optional claim-binding vectors:
gateway;gateway.audit_chain;trace;trace.tool_transcript;trace.cnf/trace.cnf.jwk.A one-entry bundle helper computes the actual entry hash, so claim-side shape failures are not hidden behind an unrelated bundle hash/link failure.
Baseline
Pinned to
2c0a601805bfb31fddc49db32ae122bae8e2251e.Expected current result
The new vectors are expected to fail on current
mainwhere.items()/ chained.get()calls consume malformed container types. This PR is therefore kept draft as a test-first reproducer until the narrow structural classification implementation is added.No wire-format, evidence semantics, hash construction, or claim-verification precedence change is proposed.
AI-assistance disclosure: ChatGPT assisted with source triage, adversarial matrix design, and drafting.
altrudevreviewed the bounded claim and remains responsible for the contribution.