ranade-oss builds a cautious conveyor belt for upstream Mike changes

The fork is trying to stay current without letting an automated assistant quietly rewrite the product.

workflowsecurity

This is a substantial investment in maintenance, not a new legal feature. Each day, the system reviews upstream changes, asks an AI assistant how risky they are, and prepares a proposed update only after a separate validation and review step. Nothing goes straight into the main product.

  • Risk sorting: changes are marked for adoption, adaptation, investigation or rejection, with uncertain security work deferred to a person.
  • Guardrails: proposed updates face limits on their size and scope, then a full quality check before a pull request is opened.
  • Defensive intake: upstream material is treated as untrusted, a sensible precaution when AI is reading third-party content.

The catch is that the automation has changed quickly, and its auto-merge trust rules deserve a close look.

So what Teams running a long-lived legal-AI fork should study this if upstream drift is becoming a governance and maintenance problem.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

85 commits from ranade-oss/ROSS-RanadeOSS, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
556a7114 Add bulk upstream Mike synchronizer (#38) ranade-oss 2026-07-28 ↗ GitHub
* Initialize upstream Mike sync state

* Add bulk upstream Mike synchronizer

* Trust marked upstream sync bot PRs

* Merge marked upstream sync bot PRs
ad740d80 Add bounded bulk Mike synchronizer (#39) ranade-oss 2026-07-28 ↗ GitHub
commit body
* Add bounded bulk Mike synchronizer

* Initialize Mike synchronization cursor

* Add Mike synchronization ledger

* Document bulk Mike synchronization

* Test bulk Mike synchronization safeguards

* Tighten bulk synchronizer protected paths
475ca5c8 Automate medium and high risk upstream Mike batches (#40) ranade-oss 2026-07-28 ↗ GitHub
* Initialize medium and high risk upstream sync state

* Automate medium and high risk upstream batches

* Separate escalated sync parsing from patch application
58482851 Refresh release manifest after merge github-actions[bot] 2026-07-28 ↗ GitHub
cbc4f166 Consolidate and run upstream Mike synchronizers (#41) ranade-oss 2026-07-28 ↗ GitHub
commit body
* Remove duplicate low-risk Mike synchronizer

* Remove duplicate synchronizer documentation

* Remove duplicate synchronizer regression test

* Remove duplicate upstream synchronization ledger

* Remove duplicate upstream synchronization cursor

* Add ordered upstream synchronization runner

* Fix ordered synchronizer PR discovery

* Request immediate ordered Mike synchronization
08c775b0 Run ordered upstream Mike synchronization ranade-oss 2026-07-28 ↗ GitHub
7d3ed759 Backfill and drain upstream Mike risk queues (#42) ranade-oss 2026-07-28 ↗ GitHub
* Enable bounded historical Mike backfill

* Drain historical low-risk Mike backlog

* Persist and drain escalated Mike backlog

* Simplify ordered Mike synchronizer entrypoint

* Avoid duplicate marker dispatches
00506a02 Start historical Mike synchronization backfill ranade-oss 2026-07-28 ↗ GitHub
b882cd46 Add root lockfile for GitHub Actions caching (#43) ranade-oss 2026-07-28 ↗ GitHub
9ece4398 Synchronize low-risk upstream Mike batch (#44) ranade-oss 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
f74b171b Restart upstream Mike synchronization queues ranade-oss 2026-07-29 ↗ GitHub
ea98285d Dispatch escalated Mike sync on external requests (#45) ranade-oss 2026-07-29 ↗ GitHub
2cf00630 Refresh release manifest after merge github-actions[bot] 2026-07-29 ↗ GitHub
3129c0cd Add one-shot upstream sync batch-size migration (#46) ranade-oss 2026-07-29 ↗ GitHub
6045b108 Trigger upstream sync batch-size migration ranade-oss 2026-07-29 ↗ GitHub
c34af574 Reduce upstream Mike classification batches to eight ranade-oss 2026-07-29 ↗ GitHub
d19551e6 Restart upstream Mike synchronization queue ranade-oss 2026-07-29 ↗ GitHub
ff2d23d1 Prepare none-risk upstream Mike synchronization (#48) ranade-oss 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
d1a05436 Synchronize low-risk upstream Mike batch (#47) ranade-oss 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
bea71dd6 Restart upstream Mike synchronization with native PR creation ranade-oss 2026-07-29 ↗ GitHub
7c3cb8c3 Record upstream Mike backlog classifications (#49) github-actions[bot] 2026-07-29 ↗ GitHub
Record the next eight historical upstream Mike classifications after successful exact-head Baseline verification.
3664d6b4 Restart upstream Mike synchronization queues ranade-oss 2026-07-29 ↗ GitHub
01171164 Synchronize low-risk upstream Mike batch (#50) github-actions[bot] 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
e4242047 Synchronize low-risk upstream Mike batch (#51) github-actions[bot] 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
ee9d1899 Handle oversized upstream diffs without aborting escalation (#52) ranade-oss 2026-07-29 ↗ GitHub
594dbc0e Restart Mike synchronization after oversized-diff fix ranade-oss 2026-07-29 ↗ GitHub
85d3594c Prepare none-risk upstream Mike synchronization (#53) github-actions[bot] 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
22415087 Fail closed on invalid escalated patches (#54) ranade-oss 2026-07-29 ↗ GitHub
d9fb968e Restart upstream Mike synchronization after fail-closed patch handling ranade-oss 2026-07-29 ↗ GitHub
6224f96a Prepare none-risk upstream Mike synchronization (#55) github-actions[bot] 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
ab6f06ec Reconcile verified agent pull request merges (#56) ranade-oss 2026-07-29 ↗ GitHub
ad8623b0 Restart upstream Mike synchronization queues ranade-oss 2026-07-29 ↗ GitHub
72b27156 Retry transient workspace install failures (#57) ranade-oss 2026-07-29 ↗ GitHub
* Add bounded workspace install retries

* Use resilient workspace installer

* Update website install contract for resilient installer
2ab41274 Restart upstream Mike synchronization after resilient installs ranade-oss 2026-07-29 ↗ GitHub
f96ed60d Bootstrap pinned npm before shared installs (#58) ranade-oss 2026-07-29 ↗ GitHub
* Bootstrap repository-pinned npm before workspace installs

* Test pinned npm bootstrap in shared installer
6638adc3 Restart upstream Mike synchronization after npm bootstrap fix ranade-oss 2026-07-29 ↗ GitHub
9080f239 Harden clean-runner npm bootstrap (#59) ranade-oss 2026-07-29 ↗ GitHub
* Harden pinned npm bootstrap on clean runners

* Guard runner-safe npm activation

* Exercise permission fallback behavior
61e1482e Refresh release manifest after merge github-actions[bot] 2026-07-29 ↗ GitHub
4400d2e1 Restart upstream Mike synchronization after runner bootstrap hardening ranade-oss 2026-07-29 ↗ GitHub
ce3c78f6 Refresh release manifest after merge github-actions[bot] 2026-07-29 ↗ GitHub
c40bd23d Prepare generated artifacts before staged CI verification (#60) ranade-oss 2026-07-29 ↗ GitHub
* Prepare deterministic generated artifacts for staged CI changes

* Test staged generated artifact preparation
7b698403 Prepare none-risk upstream Mike synchronization (#61) github-actions[bot] 2026-07-29 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
03b33502 Restart upstream synchronization queues ranade-oss 2026-07-29 ↗ GitHub
135d3c16 Refresh release manifest after merge github-actions[bot] 2026-07-29 ↗ GitHub
ae5655d4 Fix Codex Action bot actor allowlist ranade-oss 2026-07-30 ↗ GitHub
a21ac3b2 Handle superseded baseline runs cleanly ranade-oss 2026-07-30 ↗ GitHub
369cfffd Synchronize low-risk upstream Mike batch (#65) github-actions[bot] 2026-07-30 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
8693b1a5 Prepare none-risk upstream Mike synchronization (#66) github-actions[bot] 2026-07-30 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
57dd4c37 Restart upstream Mike synchronization queues ranade-oss 2026-07-30 ↗ GitHub
27613f11 Refresh release manifest after merge github-actions[bot] 2026-07-30 ↗ GitHub
d438c937 Synchronize low-risk upstream Mike batch (#70) ranade-oss 2026-07-31 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
b924494e Restart upstream Mike synchronization queues ranade-oss 2026-07-31 ↗ GitHub
32761b44 Dispatch Baseline past approval-blocked runs (#72) ranade-oss 2026-07-31 ↗ GitHub
* Ignore approval-blocked pull request runs when dispatching Baseline

* Test approval-blocked Baseline dispatch handling
cb22b639 Restart upstream Mike synchronization queues ranade-oss 2026-07-31 ↗ GitHub
4fd741a8 Synchronize low-risk upstream Mike batch (#71) github-actions[bot] 2026-07-31 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
cdf9d3be Restart upstream Mike synchronization queues ranade-oss 2026-07-31 ↗ GitHub
98cd143e Prepare none-risk upstream Mike synchronization (#73) github-actions[bot] 2026-07-31 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
5d49a84b Synchronize low-risk upstream Mike batch (#75) ranade-oss 2026-07-31 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
6756d5c2 Restart upstream Mike synchronization queues ranade-oss 2026-07-31 ↗ GitHub
491f59da Synchronize low-risk upstream Mike batch (#78) github-actions[bot] 2026-08-04 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1b8af9b8 Synchronize low-risk upstream Mike batch (#81) github-actions[bot] 2026-08-04 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
433a639a Prepare medium-risk upstream Mike synchronization (#83) github-actions[bot] 2026-08-04 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fb57f3af Prepare none-risk upstream Mike synchronization (#85) github-actions[bot] 2026-08-04 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
7655f425 Restart upstream Mike synchronization queues ranade-oss 2026-08-04 ↗ GitHub
085e6396 Refactor Mike synchronization for capability retries (#87) ranade-oss 2026-08-04 ↗ GitHub
e6a8d330 Fix release source-report argument (#88) ranade-oss 2026-08-04 ↗ GitHub
Co-authored-by: Codex <codex@openai.com>
9225587e Synchronize low-risk upstream Mike batch (#79) github-actions[bot] 2026-08-04 ↗ GitHub
Co-authored-by: ranade-oss <ranade.abhijit@gmail.com>
0b4cc0f3 Refresh release manifest after merge github-actions[bot] 2026-08-04 ↗ GitHub
bf93dd42 Synchronize low-risk upstream Mike batch (#82) github-actions[bot] 2026-08-04 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
9f71c707 Synchronize low-risk upstream Mike batch (#90) ranade-oss 2026-08-05 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
7bdbc34e Synchronize low-risk upstream Mike batch (#89) ranade-oss 2026-08-05 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
d75259ae Restart upstream synchronization queues ranade-oss 2026-08-05 ↗ GitHub
67e8adc9 Fix deferred Mike reconsideration and high-severity audits (#93) ranade-oss 2026-08-07 ↗ GitHub
* Fix deferred Mike reconsideration and high-severity audits

* Govern vendored image-size mitigation
85b5ddd6 Fix reconciler failure reporting permissions (#94) ranade-oss 2026-08-07 ↗ GitHub
deb7aa09 Fix escalated Mike classification binding (#96) ranade-oss 2026-08-07 ↗ GitHub
13f055a5 Restart upstream synchronization queues ranade-oss 2026-08-07 ↗ GitHub
b856960e Synchronize one upstream Mike capability (#92) github-actions[bot] 2026-08-07 ↗ GitHub
Co-authored-by: ranade-oss <ranade.abhijit@gmail.com>
a02c7292 Run agent reconciler once daily (#100) ranade-oss 2026-08-09 ↗ GitHub
* Run agent reconciler daily

* Update reconciler cadence contract

* Update reconciler cadence contract
54624505 Extract shared exact-head PR gates (#101) ranade-oss 2026-08-10 ↗ GitHub
* Extract exact-head PR gates

* Extract exact-head PR gates

* Extract exact-head PR gates

* Extract exact-head PR gates

* Extract exact-head PR gates

* Extract exact-head PR gates
a082defb Restart upstream Mike synchronization queues ranade-oss 2026-08-10 ↗ GitHub
d45efcaf Prevent duplicate Mike synchronization proposals (#109) ranade-oss 2026-08-12 ↗ GitHub
* Prevent duplicate Mike synchronization proposals

* Fix Mike deduplication regression test literals
212940aa Fix Mike sync Baseline handoff timeout (#110) ranade-oss 2026-08-12 ↗ GitHub
commit body
* Add bounded Baseline handoff helper

* Support explicit Baseline run handoff

* Test explicit Baseline run handoff

* Repair low-risk Baseline handoff

* Cover bounded Mike queue handoff

* Repair escalated Baseline handoff

* Add explicit Baseline-result handoff

* Correct Mike handoff regression assertion

* Fix handoff path assertion

* Fail closed on non-Baseline run handoff

* Test fail-closed Baseline workflow identity
727272e5 Synchronize one upstream Mike capability (#107) github-actions[bot] 2026-08-13 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
ae507038 Fix Mike helper resolution in GitHub Script (#111) ranade-oss 2026-08-13 ↗ GitHub
e2f8230b Synchronize one escalated upstream Mike capability (#112) github-actions[bot] 2026-08-14 ↗ GitHub
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-906.md from inside the repo you want the changes in.

⬇ Download capture-thread-906.md