Blog

SOC 2 work, written for the person doing it.

How to close failing controls, approve sensitive changes, and keep the evidence an auditor asks for.

RSS
Engineering

How we built an integration factory

How Deixic uses typed provider contracts, a shared Rust runtime, and executable verification to expand integrations without rebuilding the plumbing for each API.

· Engineering · 8 min

Approvals & policy

The model is not the institution

Intelligence and authority are separate properties. Capability decides what work a model is useful for. The system decides what it is allowed to do and what evidence is required before the result is accepted.

· Approvals & policy · 5 min

Engineering

How we turned our coding agent into our own bugbot

We already had a coding agent that could read a repository, trace callers, and run tools. The reviewer became a second operating mode of it: pinned revisions, forced investigation, an adversary for every high-severity finding, maintainer adjudication, and replay against bugs we already shipped.

· Engineering · 8 min

Approvals & policy

Designing approvals operators actually read

The failure mode every agent-approval system hits is rubber-stamp clickwrap. Design moves that delay it: signal selection, payload composition, deadlines, audit, and the hand-off problem.

· Approvals & policy · 8 min

Engineering

After the outage: making agent completion provable

An agent turn can be accepted, scheduled, streamed, and still fail. We changed the runtime so intermediate progress can no longer masquerade as completion.

· Engineering · 5 min

Identity & access

Sub-agent identity: inherit and narrow

The two rules that govern how a sub-agent's identity should be derived from its parent's, what a sub-agent claim looks like, and how audit reconciliation works across the run graph.

· Identity & access · 7 min

Engineering

When a passing test runs the wrong code

Our Rust verifier has a regression test that first reproduces a false green. The repair preserves warm builds and migrates source timestamps in existing build slots.

· Engineering · 4 min

More articles

  1. A screenshot is not a read-backAudit & compliance · 5 min
  2. CC6.2 is where first SOC 2 audits go sidewaysIdentity & access · 5 min
  3. What a 10-person company actually has to decide for SOC 2Approvals & policy · 5 min
  4. What evidence should decide whether an agent workflow gets another quarter?Operations · 4 min
  5. Stop letting GitHub agents rediscover bugs you already fixedEngineering · 4 min
  6. Use internal knowledge without sending internal notesOperations · 4 min
  7. When a source is unavailable, should the agent use a fallback?Engineering · 4 min
  8. Stopping a running agentOperations · 7 min
  9. When an agent asks for more access, what should the buyer ask first?Identity & access · 4 min
  10. An empty report can mean the query ran as the wrong personOperations · 4 min
  11. Why service-account permissions don't fit agentsIdentity & access · 7 min
  12. Stopping an agent does not automatically undo its last tool callEngineering · 4 min
  13. How to evaluate AI agents using the work your team already doesOperations · 7 min
  14. Should you sign an annual agent contract while the workflow is still changing?Cost · 4 min
  15. Make “Friday” mean the same thing to the agent and the teamOperations · 4 min
  16. Why is my Slack bot sending duplicate messages?Operations · 4 min
  17. The write succeeded. Why does the agent still see the old value?Engineering · 4 min
  18. Do agent time savings turn into lower cost or more capacity?Cost · 4 min
  19. How do I stop Stripe retries from doing the work twice?Engineering · 4 min
  20. An Okta agent should explain the access before it changes anythingIdentity & access · 4 min
  21. NIST AI RMF and ISO/IEC 42001 for the agent runtimeAudit & compliance · 4 min
  22. Canceling a project should stop its reminders tooOperations · 4 min
  23. A background job needs a result contract the agent can finishEngineering · 4 min
  24. When can you review a sample of agent output instead of every item?Operations · 4 min
  25. Ask for the missing onboarding step, not another status updateOperations · 4 min
  26. Why does my AI agent keep calling the same tool?Engineering · 4 min
  27. Trace your OpenAI and Anthropic bill to finished tasksCost · 4 min
  28. How to debug an agent without copying every secret into its tracesEngineering · 4 min
  29. Stop letting Slack agents ask questions you already answeredOperations · 4 min
  30. What is the business value of keeping the agent your team already uses?Operations · 4 min
  31. The lethal trifecta: where it actually livesIdentity & access · 6 min
  32. When a customer deadline changes, update the work around itOperations · 4 min
  33. How to replace a connector without changing what the agent meansEngineering · 4 min
  34. What should leaders be told when an agent task goes wrong?Operations · 4 min
  35. Replay: reconstructing an agent action from the audit logAudit & compliance · 8 min
  36. Did the agent solve the problem, or did the customer leave?Operations · 4 min
  37. An agent framework upgrade needs more than a passing importEngineering · 4 min
  38. The pilot worked. Can the review team handle ten times the work?Operations · 3 min
  39. Choose an agent task with a clear finishOperations · 4 min
  40. When should the parent agent stop waiting for a missing child?Engineering · 4 min
  41. Write the pilot acceptance decision before the demo impresses everyoneOperations · 4 min
  42. When the approver is away, keep the work readyOperations · 4 min
  43. How do MCP permissions work when agents use company tools?Identity & access · 4 min
  44. Two agents finished their parts. Why did one result disappear?Engineering · 4 min
  45. When several teams use one agent, who owns a bad result?Operations · 4 min
  46. What makes an agent’s project status believable?Operations · 4 min
  47. Your agent joined two correct facts from different momentsEngineering · 4 min
  48. What actually stops an agent from spending all night?Cost · 4 min
  49. Teach the daily report when to stay quietOperations · 4 min
  50. Why does an agent still quote a document after it was deleted?Engineering · 4 min
  51. Five things that keep breaking when AI agents move into productionOperations · 6 min
  52. Replace the AI security questionnaire with a few concrete demonstrationsAudit & compliance · 4 min
  53. Keep useful knowledge when its owner leavesOperations · 4 min
  54. Your agent found a green status. Did the work actually finish?Engineering · 4 min
  55. Who owns the AI budget when one task crosses three teams?Cost · 4 min
  56. AI agent troubleshooting: find the question behind the failureEngineering · 4 min
  57. An expired sync token should trigger recovery, not an empty knowledge baseEngineering · 4 min
  58. Your Salesforce agent found the customer. Is it the right customer?Operations · 4 min
  59. Agent spend, before the invoiceCost · 3 min
  60. Discovery lag: how long before you find out what your agents did?Operations · 5 min
  61. What should an agent audit actually cover?Audit & compliance · 4 min
  62. A cross-team handoff needs a next actionOperations · 3 min
  63. Your agent is under its limit. Why is the connector still throttled?Engineering · 4 min
  64. Who approves the action when three teams care about it?Approvals & policy · 4 min
  65. Why does my GitHub agent get 404 or resource not accessible errors?Identity & access · 4 min
  66. Make browser research useful to the next decisionOperations · 4 min
  67. Why we built our own agent sandboxEngineering · 5 min
  68. Why one failed agent call becomes many provider requestsEngineering · 4 min
  69. Who should own the credentials an agent uses?Identity & access · 4 min
  70. What an agent audit row should carryAudit & compliance · 7 min
  71. Stop letting support agents forget what you already promised the customerOperations · 4 min
  72. Policy at action time: what the gate evaluatesApprovals & policy · 8 min
  73. Correct an agent answer without creating a company ruleOperations · 4 min
  74. A tool timed out. Did the change still happen?Engineering · 4 min
  75. Stop letting agents turn yesterday’s notes into today’s policyOperations · 4 min
  76. Test your agent exit plan before renewal dayOperations · 4 min
  77. The email timed out. Did it send?Operations · 4 min
  78. What happens when a tool schema changes halfway through an agent task?Engineering · 4 min
  79. A 1-second submit hid a 30-minute outageEngineering · 6 min
  80. What should an agent keep, and for how long?Audit & compliance · 4 min
  81. Approve the email that will actually be sentOperations · 4 min
  82. The tool exists, but your agent cannot discover itEngineering · 4 min
  83. An AI agent rollout checklist for work that crosses teams and toolsOperations · 7 min
  84. Seats, credits, tasks, and tokens: compare agent offers on the same jobCost · 4 min
  85. Check which company a contact represents before outreachOperations · 4 min
  86. Why does an agent choose the wrong tool when both names sound right?Engineering · 4 min
  87. Estimate an agent job before you approve a larger batchCost · 4 min
  88. Carry the sales promise into the renewal handoffOperations · 3 min
  89. When a tool response is too large, keep the fields the task needsEngineering · 4 min
  90. How to budget for agent work before demand is predictableCost · 4 min
  91. A support handoff is finished when someone receives itOperations · 4 min
  92. Finance needs an AI spend reconciliation before month-endCost · 4 min
  93. What the EU AI Act means for the agent runtime: an Article-by-article readAudit & compliance · 8 min
  94. Your agent listed the first page. Did it finish the inventory?Engineering · 4 min
  95. Why does a LangGraph approval step run again when I resume it?Approvals & policy · 4 min
  96. Why do agent conversations get more expensive as they get longer?Cost · 4 min
  97. Does the agent save time once someone checks its work?Cost · 4 min
  98. When meeting notes need to become assigned workOperations · 4 min
  99. Your AI coding agent is probably lying about its tests. It doesn’t know it is.Engineering · 3 min
  100. Build, buy, or connect: what do your AI agents actually need?Operations · 7 min
  101. Why does the right document disappear when an agent adds a filter?Engineering · 4 min
  102. Controls that hold when the agent stops agreeingApprovals & policy · 3 min
  103. Why can my agent find a Notion page but not read its contents?Engineering · 4 min

Series

Focused collections

Start with the problem you are trying to solve.