ranade-oss makes release checks fail loudly before production

This fork is building a staged deployment process that catches bad releases in rehearsal, before they reach the live legal-AI service.

infrastructuresecurity

The early rollout was bumpy, with several same-day fixes to its release process. The later work is more settled: reviewed changes, separate staging diagnostics, and checks on the deployment image before it goes out.

  • Rehearsal deployments on Fly.io, a cloud hosting platform, give the team a place to test releases before production.
  • Staging health checks now fail closed: an unclear or masked error stops the release instead of letting it proceed.
  • Automated checks now lint the deployment workflow itself, catching malformed automation before it runs.
  • A release record can refresh automatically on trusted in-house pull requests; the write access and trigger choice deserve a security review.

The team also added a test around keeping one tenant's data separate from another's, though it merits scrutiny because it appears to be the sole test for that protection.

So what Legal teams considering a hosted deployment should care: this is practical work on release safety and tenant isolation, with a few CI security decisions worth inspecting on GitHub.

View this fork on GitHub →

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

Commits in this thread

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

SHA Subject Author Date
aa6b69e5 Fly frontend deploy fix ranade-oss 2026-07-26 ↗ GitHub
1f2fbe26 Release Train V1 ranade-oss 2026-07-26 ↗ GitHub
a0eac99f Train Fix ranade-oss 2026-07-26 ↗ GitHub
a6153612 Train fix ranade-oss 2026-07-26 ↗ GitHub
4461dca8 Train fix ranade-oss 2026-07-26 ↗ GitHub
d3174663 Train & Legal Sources Fix ranade-oss 2026-07-26 ↗ GitHub
124de53e Add staging-debug release-train workflow, validation helpers, docs, and tests (#18) ranade-oss 2026-07-26 ↗ GitHub
* Fix staging rollback and diagnostics

* Separate staging image build namespaces

* Address staging debug review findings

* Test staging failure and partial cleanup

* Restore staging by immutable digest
3d5eb6d5 [Draft] Replace #19: harden staging-debug release train (#20) ranade-oss 2026-07-27 ↗ GitHub
* Harden staging debug release-train correction

* Address staging debug review findings
79b225fa Fix staging-debug artifact output expression (#21) ranade-oss 2026-07-27 ↗ GitHub
commit body
* Fix staging debug artifact output expression

* Test staging debug output expression syntax

* Refresh release manifest for workflow fix

* Fix staging workflow regression regexes

* Refresh manifest for corrected workflow tests

* Correct manifest digest for workflow regression test
245880f6 Fix staging-debug workflow YAML and add actionlint (#22) ranade-oss 2026-07-27 ↗ GitHub
commit body
* Fix staging debug workflow YAML

* Validate GitHub workflows with actionlint

* Refresh release manifest for workflow syntax fix

* Scope actionlint ignores to intentional workflow patterns

* Govern actionlint configuration

* Refresh release manifest for actionlint configuration
770f8504 Fix staging-debug live failure handling (#23) ranade-oss 2026-07-27 ↗ GitHub
* Fail closed on masked staging probe errors

* Normalize Fly image JSON in staging probe

* Classify deliberate port-9 health failure

* Add live staging failure regressions

* Regenerate release manifest
525280eb Fix release record preflight (#24) ranade-oss 2026-07-28 ↗ GitHub
* Fix release record preflight

* Refresh release manifest from exact branch bytes

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
d571dbdb Automate release manifest refresh for trusted PRs (#27) ranade-oss 2026-07-28 ↗ GitHub
* Automate release manifest refresh for trusted PRs

* Make Baseline verify regenerated manifest bytes

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-893.md from inside the repo you want the changes in.

⬇ Download capture-thread-893.md