fix(policy): revalidate current semantic state at dispatch - #103
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks 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 |
…ation-revalidation' into codex/restack-pr103 Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # crates/originweave-policy/src/semantic_node_action.rs
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
…ation-revalidation' into codex/restack-pr103 Signed-off-by: Seongho Bae <me@seonghobae.me>
|
Restacked non-destructively on PR #102 exact head |
Commit-Message-Assisted-by: Claude (via Claude Code) Signed-off-by: Seongho Bae <me@seonghobae.me>
|
Restacked non-destructively on exact current #102 |
Partial implementation of #28, stacked on current #102.
Current stack
Exact live prerequisite #102 is
a123c55d4839dae1db7e6671f7d4d158c7cfd9db; exact #103 head is8b3416169346fa04b53c915b813d55ccf47d1876. The branch was advanced by non-force merge after rechecking both refs; the parent-relative delta remains the same-call dispatch gate and its focused policy tests.Contract
dispatch_if_current_observationchecks the retained registry-issued browser authority first, then compares the supplied fresh semantic state for exact node identity, retained action support, and required enabled state. The adapter callback is never invoked when either check fails. After document advance removes admission, the browser-authority failure isNotAdmitted. The boundary does not obtain or authenticate the observation, execute Chromium by itself, expand authority, or prove a post-condition.Exact-current evidence
At exact head
8b3416169346fa04b53c915b813d55ccf47d1876, focused RED reproduced the stale inherited authority diagnostic and a test-first documentation RED established the missing non-transitive boundary. Local verification passed 146 Python contracts; locked Rust format, check, all-target tests, strict Clippy, and rustdoc; exact 100% production function, line, region, and branch coverage. Hosted exact-head checks remain non-passing until terminal success.Keep Draft while #102 and its upstream stack remain active. No self-approval, force-push, destructive rebase, workflow/ruleset/secret mutation, gate weakening, release, or predecessor-evidence transfer is authorized.