<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Martin Nicolas Sanchez Morales</title>
    <description>The latest articles on Forem by Martin Nicolas Sanchez Morales (@mnsanchezmorales).</description>
    <link>https://forem.com/mnsanchezmorales</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3820761%2F81fc26ce-a5ab-4a08-adb6-5a700877e87e.png</url>
      <title>Forem: Martin Nicolas Sanchez Morales</title>
      <link>https://forem.com/mnsanchezmorales</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/mnsanchezmorales"/>
    <language>en</language>
    <item>
      <title>What If We’ve Been Doing Software Governance Wrong This Whole Time?</title>
      <dc:creator>Martin Nicolas Sanchez Morales</dc:creator>
      <pubDate>Thu, 23 Apr 2026 18:04:24 +0000</pubDate>
      <link>https://forem.com/mnsanchezmorales/what-if-weve-been-doing-software-governance-wrong-this-whole-time-2hj9</link>
      <guid>https://forem.com/mnsanchezmorales/what-if-weve-been-doing-software-governance-wrong-this-whole-time-2hj9</guid>
      <description>&lt;p&gt;`# What If We’ve Been Doing Software Governance Wrong This Whole Time?&lt;/p&gt;

&lt;p&gt;I know. Big claim.&lt;/p&gt;

&lt;p&gt;But hear me out.&lt;/p&gt;




&lt;p&gt;We’re really good at tracking systems.&lt;/p&gt;

&lt;p&gt;Like, &lt;em&gt;really&lt;/em&gt; good.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;logs&lt;/li&gt;
&lt;li&gt;metrics&lt;/li&gt;
&lt;li&gt;traces&lt;/li&gt;
&lt;li&gt;event streams&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We can replay what happened down to the millisecond.&lt;/p&gt;

&lt;p&gt;But then something breaks — not just a bug, but something messy —&lt;br&gt;
and suddenly the question changes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;not &lt;em&gt;what happened&lt;/em&gt;&lt;br&gt;
but &lt;em&gt;why did we allow this to happen?&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And that’s where things get weird.&lt;/p&gt;




&lt;h2&gt;
  
  
  The thing we don’t model
&lt;/h2&gt;

&lt;p&gt;There’s one thing almost no system treats as a real, first-class object:&lt;/p&gt;

&lt;p&gt;👉 the &lt;strong&gt;human decision&lt;/strong&gt; behind a change&lt;/p&gt;

&lt;p&gt;We assume it exists somewhere:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;“it was approved”&lt;/li&gt;
&lt;li&gt;“we talked about it”&lt;/li&gt;
&lt;li&gt;“it’s in a ticket”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But inside the system?&lt;/p&gt;

&lt;p&gt;It’s gone.&lt;/p&gt;




&lt;h2&gt;
  
  
  So what do we actually have?
&lt;/h2&gt;

&lt;p&gt;We have systems that can tell you:&lt;/p&gt;

&lt;p&gt;✔ what changed&lt;br&gt;
✔ when it changed&lt;br&gt;
✔ how it changed&lt;/p&gt;

&lt;p&gt;But not:&lt;/p&gt;

&lt;p&gt;❌ who decided&lt;br&gt;
❌ under what reasoning&lt;br&gt;
❌ whether that decision even existed&lt;/p&gt;




&lt;h2&gt;
  
  
  That’s not a bug
&lt;/h2&gt;

&lt;p&gt;That’s a missing layer.&lt;/p&gt;




&lt;h2&gt;
  
  
  And it gets worse with AI
&lt;/h2&gt;

&lt;p&gt;Now we’re building systems that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;generate code&lt;/li&gt;
&lt;li&gt;trigger actions&lt;/li&gt;
&lt;li&gt;chain decisions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And we’re still logging like it’s 2010.&lt;/p&gt;

&lt;p&gt;We’re capturing outputs…&lt;/p&gt;

&lt;p&gt;but not the decision boundary that allowed them.&lt;/p&gt;




&lt;h2&gt;
  
  
  The uncomfortable realization
&lt;/h2&gt;

&lt;p&gt;We’ve been building systems that can explain everything…&lt;/p&gt;

&lt;p&gt;except responsibility.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I’ve been working on
&lt;/h2&gt;

&lt;p&gt;I’ve been exploring this as a structural problem, not a tooling one.&lt;/p&gt;

&lt;p&gt;The idea is simple:&lt;/p&gt;

&lt;p&gt;What if decisions were part of the system?&lt;/p&gt;

&lt;p&gt;Not comments.&lt;br&gt;
Not tickets.&lt;br&gt;
Not “somewhere else”.&lt;/p&gt;

&lt;p&gt;But &lt;strong&gt;bound to the execution itself&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Minimal model
&lt;/h2&gt;

&lt;p&gt;That leads to something very small, almost boring:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;append-only logs&lt;/li&gt;
&lt;li&gt;evidence that includes presence &lt;em&gt;and absence&lt;/em&gt; (E+ / E−)&lt;/li&gt;
&lt;li&gt;explicit decision events (&lt;code&gt;HUMAN_DECISION&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That’s it.&lt;/p&gt;

&lt;p&gt;No framework.&lt;br&gt;
No magic.&lt;/p&gt;

&lt;p&gt;Just a missing primitive.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why this matters
&lt;/h2&gt;

&lt;p&gt;If a system can’t reconstruct:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;who allowed a change and why&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Then it’s not fully auditable.&lt;/p&gt;

&lt;p&gt;And if it’s not auditable…&lt;/p&gt;

&lt;p&gt;you don’t actually control it.&lt;/p&gt;




&lt;h2&gt;
  
  
  I wrote this up
&lt;/h2&gt;

&lt;p&gt;Paper:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“The Missing Decision Layer: Structural Failure in Information Systems and the Case for a Minimal Governance Kernel”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://doi.org/10.5281/zenodo.19709093" rel="noopener noreferrer"&gt;https://doi.org/10.5281/zenodo.19709093&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Curious
&lt;/h2&gt;

&lt;p&gt;How are you handling this today?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;approvals in code?&lt;/li&gt;
&lt;li&gt;logs + tickets?&lt;/li&gt;
&lt;li&gt;just trust? 😅&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because I’m starting to think:&lt;/p&gt;

&lt;p&gt;👉 we’ve been solving observability&lt;br&gt;
👉 but ignoring authority&lt;/p&gt;

&lt;p&gt;And that gap is going to matter more than we think.&lt;br&gt;
`&lt;/p&gt;

</description>
    </item>
    <item>
      <title>We built a governance layer for AI-assisted development (with runtime validation and real system)</title>
      <dc:creator>Martin Nicolas Sanchez Morales</dc:creator>
      <pubDate>Fri, 27 Mar 2026 22:49:59 +0000</pubDate>
      <link>https://forem.com/mnsanchezmorales/we-built-a-governance-layer-for-ai-assisted-development-with-runtime-validation-and-real-system-afm</link>
      <guid>https://forem.com/mnsanchezmorales/we-built-a-governance-layer-for-ai-assisted-development-with-runtime-validation-and-real-system-afm</guid>
      <description>&lt;p&gt;I’ve been working on a project called Janus — a governance layer for AI-assisted development systems.&lt;/p&gt;

&lt;p&gt;The core idea is simple:&lt;/p&gt;

&lt;p&gt;Instead of evaluating performance, we evaluate governance through evidence and protocol conformance.&lt;/p&gt;

&lt;p&gt;We just published the second paper, which moves from the theoretical model to measurable governance:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Evidence-based model (E+/E−)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Omission detection&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Human authority boundaries&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deterministic reconstruction&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Benchmark (ECR, GVL, PVDR)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Paper 1 (model):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://doi.org/10.5281/zenodo.18974356" rel="noopener noreferrer"&gt;https://doi.org/10.5281/zenodo.18974356&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Paper 2 (validation):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://doi.org/10.5281/zenodo.19239183" rel="noopener noreferrer"&gt;https://doi.org/10.5281/zenodo.19239183&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There’s also a live system running on top of it:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://lluviadeideas-juegosdidacticos.github.io/trivias/" rel="noopener noreferrer"&gt;https://lluviadeideas-juegosdidacticos.github.io/trivias/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And the framework used to run it:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://framework.janusgovernance.org/" rel="noopener noreferrer"&gt;https://framework.janusgovernance.org/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’d really appreciate feedback — especially from people working on observability, event sourcing, or AI tooling.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>github</category>
      <category>softwareengineering</category>
      <category>softwaredevelopment</category>
    </item>
    <item>
      <title>Building Janus: A Minimal Governance Kernel for Human–AI Development</title>
      <dc:creator>Martin Nicolas Sanchez Morales</dc:creator>
      <pubDate>Thu, 12 Mar 2026 16:45:29 +0000</pubDate>
      <link>https://forem.com/mnsanchezmorales/building-janus-a-minimal-governance-kernel-for-human-ai-development-3d4c</link>
      <guid>https://forem.com/mnsanchezmorales/building-janus-a-minimal-governance-kernel-for-human-ai-development-3d4c</guid>
      <description>&lt;p&gt;I just published the foundational paper for a project called Janus.&lt;/p&gt;

&lt;p&gt;Janus is a minimal governance kernel for human–AI development systems. The goal is to introduce a lightweight governance layer that helps maintain traceability, deterministic reconstruction, and evidence-based decision processes when building software with AI assistance.&lt;/p&gt;

&lt;p&gt;The project explores how small governance primitives can help teams understand what happened during development, why decisions were made, and how a system state can be reconstructed.&lt;/p&gt;

&lt;p&gt;The foundational paper and repository were developed in about a week using the same governance protocol the project proposes.&lt;/p&gt;

&lt;p&gt;Paper (DOI)&lt;br&gt;
&lt;a href="https://doi.org/10.5281/zenodo.18974356" rel="noopener noreferrer"&gt;https://doi.org/10.5281/zenodo.18974356&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Repository&lt;br&gt;
&lt;a href="https://github.com/Janus-Governance/janus-governance-core" rel="noopener noreferrer"&gt;https://github.com/Janus-Governance/janus-governance-core&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>softwaredevelopment</category>
      <category>softwareengineering</category>
    </item>
  </channel>
</rss>
