Skip to content

docs(conformance): add runtime-enforcement-mapping addendum (OWASP#802) - #177

Merged
pshkv merged 1 commit into
mainfrom
docs/owasp-runtime-enforcement-mapping
Jul 23, 2026
Merged

docs(conformance): add runtime-enforcement-mapping addendum (OWASP#802)#177
pshkv merged 1 commit into
mainfrom
docs/owasp-runtime-enforcement-mapping

Conversation

@pshkv

@pshkv pshkv commented Apr 21, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds docs/conformance/runtime-enforcement-mapping.md — an invariant-level companion to owasp-asi-mapping.md that maps each of the 30 ASI fixture vectors to the four runtime integrity invariants converging in OWASP/www-project-top-10-for-large-language-model-applications#802.

Follow-through on the commitment made in the OWASP thread to contribute this addendum.

Structure

  • Layer 1 (Transmission integrity) — 3 fixtures. Ed25519 + RFC 8785 JCS guarantees. Open gap tracked in Persistence round-trip: rowToToken drops 8 optional token fields (follow-up to #168) #175.
  • Layer 2 (Authorization integrity at execution) — 10 fixtures. SINT's primary claim. request_authorized == request_executed.
  • Layer 3 (Execution integrity) — 12 fixtures. Supply chain, history, circuit breaker.
  • Layer 4 (Intent integrity) — 4 fixtures, explicitly scoped as advisory, not deterministic. Keeps heuristic detection separate from cryptographic enforcement so conformance claims can't overclaim.

Why this matters for conformance

Implementations claiming "ASI02 coverage" should specify the invariant (authorization-integrity-at-execution, fixtures X/Y/Z) rather than just the control ID. Intent-layer coverage should be explicitly scoped as heuristic and fail-open. This doc gives that level of granularity without changing any existing owasp-asi-mapping.md content.

Files changed

  • docs/conformance/runtime-enforcement-mapping.md (new, 130 lines)
  • docs/conformance/owasp-asi-mapping.md (+1 line — header link to new doc)

Test plan

  • Docs-only change; no test suite run required
  • Verify invariant-level counts (3 + 10 + 12 + 4 = 29) against fixture pack (30 vectors — ASI07-safe-valid-delegation-chain is non-vector-enforced, delegation allow case)
  • Verify links resolve (./runtime-enforcement-mapping.md from owasp-asi-mapping.md)

Refs

Maps each of the 30 ASI fixture vectors to the four runtime integrity
invariants converging in OWASP#802 (transmission / authorization-at-
execution / execution / intent).

Rationale:
- Implementations should claim coverage against a specific invariant,
  not the broader OWASP category — a regex heuristic is not the same
  conformance guarantee as a monotonic-delegation check
- Keeps the cryptographic layer (deterministic) separate from the
  intent layer (advisory, fail-open) so conformance claims can't
  overclaim intent integrity as runtime-enforceable
- Addresses the "pin each layer to concrete control-class IDs"
  suggestion raised in the thread

Links companion doc from owasp-asi-mapping.md header.

Refs: OWASP/www-project-top-10-for-large-language-model-applications#802
Refs: #175 (transmission-integrity fixture gap tracked separately)
@pshkv
pshkv force-pushed the docs/owasp-runtime-enforcement-mapping branch from 2341afc to 454f14e Compare June 8, 2026 06:34
@pshkv

pshkv commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

Rebased this PR onto current main and removed the three unrelated v0.3 ancestor commits (including the stray .claude/worktrees entry). The PR is now focused on the two intended documentation files only. Verified with pnpm run docs:build and git diff --check.

@pshkv
pshkv merged commit 6bc3b93 into main Jul 23, 2026
3 checks passed
@pshkv
pshkv deleted the docs/owasp-runtime-enforcement-mapping branch July 23, 2026 02:50
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