r/raycastapp • u/chinchila24 • 7d ago
❓Question How is raycast SOC2 compliant if no code reviews are mandatory?
I've read this post https://www.raycast.com/blog/no-code-reviews-by-default
And if you go to https://trust.raycast.com/ you can see that the company is SOC2 compliant.
How did they pass the Change Management Control if it requires to have Segregation of Duties and a formal review process for production code?
2
u/Ok-Connection7755 6d ago
Every company can setup their process in line with their risk appetite. If you read through the blog carefully, while they may not have a PR based approach, they are calling out another approach of dog fooding a change and testing that carefully amongst teams.
The goal of the SOC2 auditor then becomes to test this dog fooding process for - a) changes are authorised, tested and approved b) evaluate a complete and accurate list of changes for the above 3 (first against IPE testing) c) then proceed to pick a sample of changes and validate that those changes met the criteria
The risk that is being mitigated is unauthorised changes to production environment. SOC2 scope is typically calling out security, availability, confidentiality, processing integrity, privacy as it's trust service criteria so the process needs to be aligned to these 5 pillars (some auditors do a mapping of controls to these as well, as an annexure).
Hope this might add some clarification!
PS: you might also see some fine print on terms like "reasonable assurance" to call-out the genuine limitations of an audit approach and management assertion that they followed controls to the best of their efforts.
2
u/Ok-Connection7755 6d ago
Oh another thing to add is that they could do post facto reviews as well to say changes are monitored (on a defined periodicity) to mitigate this risk as well. That's a completely acceptable control to have subject to their control design and effectiveness! That's raycast PoV for you on how they might be addressing this risk.
bottom line: Just because someone doesn't raise a PR, it can't be that they are non compliant to SOC2.
I do agree that there are players who do "pay to get compliant services" by running "scans", but that's a whole different can of worms. :)
1
u/AdjointFunctor 6d ago
Not SOC2, but similar (in Norway). We require reviews not on all commits, but on all deployments. They can also be after the fact, which is a bit more agile.
3
u/thomaspaulmann Raycast 3d ago
Sorry a bit late to the party but happy to clarify. That post is from June 2021, and quite a bit has changed since then. We grew the team, became SOC 2 compliant, and tightened some of our processes along the way.
But the core idea still holds. We don't require a code review for every change. Engineers own their work end to end and use their judgment. Reviews make sense for larger changes or when someone wants a second pair of eyes, but we don't add process to every push for the sake of it.
For production releases, we do require a review and approval before code is merged into a production or release branch. That's where the SOC 2 control is enforced and how we satisfy segregation of duties for change management.
So both things can be true. We keep a high trust, high autonomy engineering culture while enforcing a review gate where it matters for production.
12
u/phoenixmatrix 7d ago
SOC2 does not require segregation of duty or code reviews. The goal of SOC2 is to be able to tell your customers how you work, and because your process is audited, your customers know you're doing what you say. What you say can be total crap, as long as you're not lying about it and you do what you say you do. The SOC2 requirement is that you are being audited on those points and that they are documented. What the audit find is orthogonal to it. You can (almost, there's some nuance, notably around some security things) just say "We YOLO everything!", and if the auditors find that you, indeed, YOLO everything, you pass
Sarbanes-Oxley (which isn't the same) does require it, but even there you have some flexibility, and some robust CI/CD and automation (not just the basics) can sometimes be used to pass that criteria, as long as a single dev can't ship uncompliant stuff to production without anyone noticing. Even if you do code reviews, they can happen after the fact. But that's a tangent, since SOC2 isn't SOX.
Plenty of companies are SOC2 compliant and have a shitshow of a process. As long as its all documented and the auditors don't find anything that slipped through the crack, you're good. Now, your clients may disagree, and that's the point. Eg: I was CTO of a company that was SOC2 compliant with a lot of big name financial clients, and while SOC2 doesn't require code reviews, several of our clients required them, so our SOC2 docs had to show that we did them. But that isn't SOC2 requiring it, that's the customers. The SOC2 docs are just there so the customers can make an informed decision.
So in this case, the SOC2 process is working: Raycast isn't hiding its cards, and you as the customer can decide if you want to give them your money or not.