feat(core): bind semantic node action targets to browser authority - #58
Draft
seonghobae wants to merge 6 commits into
Draft
feat(core): bind semantic node action targets to browser authority#58seonghobae 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 was referenced Aug 10, 2026
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 #28.
Buyer/security gap
The active semantic-observation and typed-query stack can identify bounded node evidence, but the first real Chromium vertical slice also needs a narrow bridge from an observed node to one node-local typed action while preserving stale-node authority checks. Without that bridge, later browser adapters risk carrying an unvalidated node/action pair or conflating descriptive
NodeActionKindevidence with policy authorization.Exact TDD evidence
This Draft remains stacked on exact PR #57 head
b4fa49953cbbb21c879a3340e264a6e132e41634.The first test-only head
308fa77a5ea84ad428101792da9d8a7a0b9fcdacexposed only canonical rustfmt drift, so it was not accepted as the intended RED. Formatting-only headf2bb6db04488e4bfa873e290eb8b6283e1238fdfthen passed repository contracts and rustfmt and established the intended compile RED in CI run31430805418:cargo check --locked --workspace --all-targetsfailed specifically because publicSemanticNodeActionTargetandSemanticNodeActionTargetErrordid not exist.The narrow production implementation provides an authority-bound target that:
NodeActionKindactually advertised by an already validatedSemanticNodeObservation;ObservedNodeHandlerather than retaining a raw browser/protocol selector;Current exact head
efe440c7a609cac187faacfa03a4df904a99386fadditionally exercises same-authority success plus cross-session, cross-context, cross-origin, and stale-document rejection through the action-target boundary.Exact-head acceptance
On unchanged exact head
efe440c7a609cac187faacfa03a4df904a99386f:31431277478: success, including repository contracts, formatting, locked workspace checks/tests, strict Clippy, rustdoc and exact owned production function/line/region/branch coverage;31431277521: success;No predecessor-head result is transferred to this exact head.
Scope boundary
This lane adds no browser I/O, policy approval, capability grant, mapping from node-local actions to coarse business-risk
ActionKind, CSS/XPath/raw DOM selectors, arbitrary JavaScript, persistence, secrets, network authority, workflow mutation or release claim. In particular, a node advertisingClickcannot by itself determine whether the business action is submit/purchase/delete/legal-consent/etc.; business intent and policy risk classification remain a separate explicit boundary.Keep Draft while #57/#52/#40 remain active. Canonical whole-product documentation remains owned by PR #44.