feat(sensitive): require separate validated model output policy - #84
Draft
seonghobae wants to merge 6 commits into
Draft
feat(sensitive): require separate validated model output policy#84seonghobae wants to merge 6 commits into
seonghobae wants to merge 6 commits into
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Partial implementation of #10, stacked on PR #81.
Buyer/security gap
Issue #10 requires sensitive-model output to be validated and retained under a policy separate from invocation admission. PR #81 fails closed when a trusted broker detects unrelated conversation history, but an authorized invocation still must not imply that arbitrary returned output is accepted or retained.
Dependency
This Draft is stacked on unchanged exact PR #81 head
0ec604deb1c0293008560e0fcd4af7ccb65d93adand must remain Draft while that prerequisite and its sensitive-data stack remain active.TDD / RCA sequence
32af45f2525f17fa1dbae50f59e4641999a50695established the intended production-boundary RED. CI run31486146752, Rust contracts job93761899904, passed repository contracts and formatting, then failed at the locked workspace check becauseModelOutputDecision,ModelOutputRequest,ModelOutputScope,ModelOutputValidation, andevaluate_model_outputdid not exist.99165350c13c9920c052e845815ee4e32af3ecf1added the deterministic separate output-policy boundary. Rust contracts succeeded, but Production coverage in run31487250765, job93765361123, correctly failed exact branch coverage at611/612.9099636441localized the only uncovered branch to the punctuation-only case inoutput_policy_identifier_is_valid: the predicate requiring at least one ASCII alphanumeric byte had never taken its false branch while the surrounding syntax predicate remained otherwise valid.902ecc5d69f637774b39c6628d041c08a263c52dadded the realistic---malformed-policy regression, restoring exact production coverage and full Rust-contract GREEN in CI run31487701456.62f69cadbe0b4011fec67f9e482b04c4cacf181badds only the truthful Unreleased changelog entry. Fresh exact-head CI run31487969844is GREEN: Rust contracts job93767614892and Production coverage job93767614791both completed successfully, including repository contracts, formatting, locked workspace/all-target check, tests, strict Clippy, rustdoc, and exact owned production function/line/region/branch coverage.Implemented contract
The branch now requires:
Rejectedvalidation never to become authorized; andNo formal reviews are currently returned for this exact head. No predecessor-head check, review, mergeability result, or synthetic status is transferred to the current head.
Truth boundary
This is deterministic metadata policy only. It does not inspect model-output bytes, execute schema validation, authenticate or invoke a provider, persist output, enforce a real retention/deletion system, authorize model invocation, disclose protected values, choose fallback routes, attest validator identity, or complete issue #10. A trusted validator and retention owner must supply the facts consumed by this policy primitive.
Keep Draft while #81 and the prerequisite sensitive-data stack remain active; fresh exact-head/live-base acceptance is required again after any dependency movement.