Skip to content

test(mv3): prove bounded history mutation compatibility - #59

Draft
seonghobae wants to merge 17 commits into
test/mv3-bookmark-mutationfrom
test/mv3-history-mutation-lifecycle
Draft

test(mv3): prove bounded history mutation compatibility#59
seonghobae wants to merge 17 commits into
test/mv3-bookmark-mutationfrom
test/mv3-history-mutation-lifecycle

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Partial implementation of #27. This Draft is the controlled history-mutation child of the bookmark-diagnostic lane.

Buyer-visible gap

The pinned real-Chromium Manifest V3 lane previously proved the history API only through read-only search. A defensible compatibility claim also needs one controlled mutation lifecycle inside the ephemeral compatibility profile without touching ambient human browsing history.

Live dependency / repaired stack

Exact current head is 7992e13aea34c4784ba96c806e0be1d2c18a33e4. Its exact semantic prerequisite is PR #178 head 2ac31311ac4cd6611c0d4ded36f6b619d02a4dba, which itself non-destructively contains PR #56 head 71420d03483ca8d4377f6712fe54cd9a9f6ab635 and PR #43.

The source ancestry is now exact: comparing #178 → this head reports ahead 11 / behind 0, with merge base exactly 2ac31311ac4cd6611c0d4ded36f6b619d02a4dba. Relative to #178, the semantic product/test delta is the controlled history lifecycle plus its changelog evidence; the merged tree also preserves #178's allow-listed bookmark diagnostics, runner sanitization, and doctoring. No prerequisite/predecessor check or review is transferred.

The PR base metadata still names test/mv3-bookmark-mutation (#56). Source ancestry is therefore the authoritative stack relation until GitHub can safely accept a metadata retarget. Keep Draft while #178/#56/#43 remain active.

TDD and implemented boundary

Test-only head 4b5f393a7420541723a07243b83cdaa7e28948de established RED in CI run 31432051381 because the controlled history-mutation lifecycle did not exist. The real Chromium fixture now:

  • accepts only a parseable controlled http://127.0.0.1/.../page.html sender without embedded credentials;
  • derives a synthetic history URL within the same loopback fixture;
  • adds exactly that URL through chrome.history.addUrl;
  • requires exact bounded readback through chrome.history.search;
  • deletes the synthetic URL in finally through chrome.history.deleteUrl;
  • re-queries and fails compatibility evidence if cleanup did not remove the entry;
  • preserves the hardened bookmark/download prerequisite behavior, including allow-listed bookmark failure diagnostics; and
  • emits readiness/stage evidence without raw browser exception text or browsing-history contents.

Exact-current evidence

On unchanged exact head 7992e13aea34c4784ba96c806e0be1d2c18a33e4 after the stack repair:

  • CI run 31965189932: success;
  • Rust contracts job 95209180018: success for repository contracts, formatting, locked workspace/all-target checks, tests, strict Clippy, and rustdoc;
  • Production coverage job 95209179949: success, including exact owned-production function/line/region/branch coverage enforcement;
  • Manifest V3 Compatibility run 31965189988: success on the pinned real-Chromium lane; and
  • GitHub freshly reports the Draft mergeable.

Feature-base central/security workflows not executed for this exact head are not represented as passing. No predecessor, prerequisite, skipped, queued, cancelled, synthetic-merge, stale, status-only, or model-only result is promoted as current proof.

Scope boundary

Compatibility evidence only. This lane does not grant OriginWeave Agent history or bookmark authority, expose history/bookmark tools, access a human/default profile, persist OriginWeave-owned browser-history data, add model calls, widen network authority, alter workflows, or make a release claim. Chromium permission and compatibility remain separate from OriginWeave Agent capability/policy authority. Passing automation is not independent approval. This scheduled actor does not merge, self-approve, alter workflows, add secrets, weaken checks, tag, or publish.

@coderabbitai

coderabbitai Bot commented Aug 10, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 608f70b4-9aad-4663-ab61-45252b16d3db

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Bookmark create/get/remove failures previously collapsed to ready/missing,
so operators could not tell source rejection from leftover residue. Require
allow-listed stage tokens, sanitize raw Chrome errors, and record the
current chrome.bookmarks APA citation as compatibility evidence only.

Co-authored-by: Seongho Bae <[email protected]>
cursoragent and others added 8 commits August 16, 2026 16:50
…lures

Keep the bookmark stage-token close on the current downloads prerequisite
after #43 classified WebDriver HTTP/1.1 parser failures. Preserve both
allow-listed bookmark diagnostics and the RFC 9112 transport token.

Co-authored-by: Seongho Bae <[email protected]>
Preserve the bookmark diagnostic stage-token work while importing the exact current #43 browser-version diagnostic hardening, regression contract, and changelog evidence. This is a non-destructive stack alignment; prerequisite checks and reviews do not transfer.
Preserve the current bookmark diagnostic tree while adding exact ancestry to PR #56 head 71420d0. The diagnostic branch already contains the bookmark mutation lifecycle plus the same hardened downloads-root changes; this non-destructive merge repairs stack topology without transferring predecessor checks or reviews.
Reconcile the declared MV3 stack by preserving the history add/read/delete lifecycle while importing the exact current bookmark-diagnostic prerequisite. The merged fixture keeps both bounded mutation contracts, and the runner/docs retain the allow-listed bookmark diagnostic evidence without transferring predecessor checks or reviews.
Rebuild the diagnostic lane on the exact current PR #56 tree while preserving the bounded bookmark diagnostic source/test delta. Keep the prerequisite ChromeDriver cleanup resilience and extension-authority hardening, retain the dedicated MV3 doctoring evidence, and avoid reintroducing duplicate/stale generic doctoring/TRD claims. No predecessor check or review evidence transfers.
Rebuild the history-mutation lane on the exact current PR #178 tree while preserving only its controlled history source/test delta and changelog evidence. Keep the prerequisite bookmark diagnostics, ChromeDriver cleanup resilience, and extension-authority hardening intact. No predecessor check or review evidence transfers.
seonghobae added a commit that referenced this pull request Aug 17, 2026
Rebuild the update-migration lane on the exact current PR #59 tree while preserving its controlled update/version-migration source, tests, and changelog evidence. Carry forward the prerequisite bookmark/history behavior and the current ChromeDriver cleanup resilience, including primary-error preservation and successful hard-kill recovery. No predecessor check or review evidence transfers.
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.

2 participants