<?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>DEV Community: Apurba Singh</title>
    <description>The latest articles on DEV Community by Apurba Singh (@apurbalabs).</description>
    <link>https://dev.to/apurbalabs</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%2F1640291%2F822bde7c-9eb5-4e90-b415-2927b35e1ede.jpg</url>
      <title>DEV Community: Apurba Singh</title>
      <link>https://dev.to/apurbalabs</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/apurbalabs"/>
    <language>en</language>
    <item>
      <title>We Didn’t Want Another AI Wrapper — So We Explored a High-Speed Hermes Orchestrator for Engineering Crews</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Mon, 25 May 2026 20:53:59 +0000</pubDate>
      <link>https://dev.to/apurbalabs/we-didnt-want-another-ai-wrapper-so-we-explored-a-high-speed-hermes-orchestrator-for-engineering-1k0e</link>
      <guid>https://dev.to/apurbalabs/we-didnt-want-another-ai-wrapper-so-we-explored-a-high-speed-hermes-orchestrator-for-engineering-1k0e</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hermes-agent-2026-05-15"&gt;Hermes Agent Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Our goal was not to build another AI wrapper, but to explore how Hermes Agent behaves as a persistent orchestration layer coordinating specialized autonomous workers inside real engineering governance workflows.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;Most AI systems today are still fundamentally single-threaded assistants wrapped inside nicer interfaces.&lt;br&gt;
You type a prompt, the model responds, and the workflow ends there.&lt;/p&gt;

&lt;p&gt;But our problem was different.&lt;/p&gt;

&lt;p&gt;Over the last few years we worked closely with alumni groups, business operators, SaaS platforms, and community engineering teams. One recurring issue appeared everywhere:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;People did not simply want AI-generated text.&lt;br&gt;
They wanted workflow intelligence.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;They wanted systems capable of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;coordinating technical tasks,&lt;/li&gt;
&lt;li&gt;evaluating operational risks,&lt;/li&gt;
&lt;li&gt;planning execution flows,&lt;/li&gt;
&lt;li&gt;synthesizing structured engineering decisions,&lt;/li&gt;
&lt;li&gt;and operating reliably across multiple autonomous workers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That realization eventually led us toward Hermes Agent.&lt;/p&gt;

&lt;p&gt;Not because we wanted another chatbot.&lt;/p&gt;

&lt;p&gt;But because we wanted to explore orchestration.&lt;/p&gt;


&lt;h2&gt;
  
  
  The Core Idea
&lt;/h2&gt;

&lt;p&gt;We started asking ourselves a simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What happens when Hermes stops behaving like a conversational assistant and starts behaving like a managerial orchestration layer?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That question became the foundation of our experiment.&lt;/p&gt;

&lt;p&gt;The result was &lt;strong&gt;Gotihub Hermes Crew&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The name itself carries the philosophy behind the project.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Gotihub&lt;/strong&gt; is derived from the Bengali word &lt;em&gt;Goti&lt;/em&gt; (গতি), meaning &lt;strong&gt;Speed&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We wanted to explore whether autonomous engineering workers could coordinate quickly, reliably, and structurally inside real governance workflows.&lt;/p&gt;

&lt;p&gt;The result became a high-speed multi-agent engineering orchestration system capable of analyzing GitHub repositories through specialized autonomous workers coordinated by Hermes.&lt;/p&gt;


&lt;h2&gt;
  
  
  Project Links
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Live Demo
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://crew.gotihub.com" rel="noopener noreferrer"&gt;https://crew.gotihub.com&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  GitHub Repository
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/apurba-labs/gotihub-hermes-crew" rel="noopener noreferrer"&gt;https://github.com/apurba-labs/gotihub-hermes-crew&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  Why We Didn’t Want a Single Monolithic Agent
&lt;/h2&gt;

&lt;p&gt;One massive prompt window handling:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;security analysis,&lt;/li&gt;
&lt;li&gt;architecture auditing,&lt;/li&gt;
&lt;li&gt;roadmap planning,&lt;/li&gt;
&lt;li&gt;and executive synthesis&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;quickly becomes expensive, unstable, and difficult to govern.&lt;/p&gt;

&lt;p&gt;So instead of forcing one model to think about everything simultaneously, we separated:&lt;/p&gt;
&lt;h2&gt;
  
  
  Execution from Governance
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Execution Layer
&lt;/h3&gt;

&lt;p&gt;Specialized Gemma workers execute focused engineering tasks independently.&lt;/p&gt;
&lt;h3&gt;
  
  
  Governance Layer
&lt;/h3&gt;

&lt;p&gt;Hermes coordinates, synthesizes, and manages the outputs generated by those workers.&lt;/p&gt;

&lt;p&gt;That separation became the most important architectural decision in the project.&lt;/p&gt;


&lt;h2&gt;
  
  
  The Multi-Agent Architecture
&lt;/h2&gt;

&lt;p&gt;Our orchestration pipeline follows four major stages:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;SecurityAgent&lt;/strong&gt; performs repository security analysis.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ArchitectureAgent&lt;/strong&gt; evaluates structural and maintainability health.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PlanningAgent&lt;/strong&gt; generates engineering roadmap recommendations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hermes Master&lt;/strong&gt; synthesizes everything into a structured managerial report.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The important detail is that the first stage executes concurrently.&lt;/p&gt;

&lt;p&gt;We intentionally used Python’s native asynchronous execution model instead of sequential blocking pipelines.&lt;/p&gt;


&lt;h2&gt;
  
  
  Stage 1 Concurrency with &lt;code&gt;asyncio.gather&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;The first orchestration layer launches multiple specialized workers simultaneously:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SecurityAgent&lt;/li&gt;
&lt;li&gt;ArchitectureAgent&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Both execute inside an &lt;code&gt;asyncio.gather()&lt;/code&gt; orchestration block.&lt;/p&gt;

&lt;p&gt;This allowed us to explore:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;concurrent repository analysis,&lt;/li&gt;
&lt;li&gt;isolated engineering responsibilities,&lt;/li&gt;
&lt;li&gt;and structured task specialization.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of treating AI as a single giant context window, we treated it like a coordinated engineering crew.&lt;/p&gt;


&lt;h2&gt;
  
  
  System Workflow Architecture
&lt;/h2&gt;

&lt;p&gt;Here is the orchestration workflow powering the system:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpw4nnu51yv8ybc2m6yb3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpw4nnu51yv8ybc2m6yb3.png" alt="Hermes Workflow" width="800" height="98"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The workflow is intentionally separated into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;concurrent execution,&lt;/li&gt;
&lt;li&gt;planning synthesis,&lt;/li&gt;
&lt;li&gt;and executive orchestration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This structure allowed us to keep responsibilities isolated while still producing a consolidated engineering report.&lt;/p&gt;


&lt;h2&gt;
  
  
  Hermes as the Orchestrator
&lt;/h2&gt;

&lt;p&gt;This is where Hermes became genuinely interesting.&lt;/p&gt;

&lt;p&gt;Hermes does &lt;strong&gt;not&lt;/strong&gt; directly parse raw repositories in our architecture.&lt;/p&gt;

&lt;p&gt;Instead, Hermes behaves like a managerial synthesis layer.&lt;/p&gt;

&lt;p&gt;The worker agents generate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;summaries,&lt;/li&gt;
&lt;li&gt;issue reports,&lt;/li&gt;
&lt;li&gt;confidence scores,&lt;/li&gt;
&lt;li&gt;engineering recommendations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hermes then:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;resolves overlap,&lt;/li&gt;
&lt;li&gt;synthesizes cross-agent conclusions,&lt;/li&gt;
&lt;li&gt;generates executive summaries,&lt;/li&gt;
&lt;li&gt;and produces structured JSON outputs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In other words:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The workers execute.&lt;br&gt;
Hermes governs.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That orchestration philosophy changed how we approached agent systems entirely.&lt;/p&gt;


&lt;h2&gt;
  
  
  Multi-Subdomain Infrastructure Design
&lt;/h2&gt;

&lt;p&gt;As the system evolved, we realized orchestration architecture alone was not enough.&lt;/p&gt;

&lt;p&gt;We also needed infrastructure separation.&lt;/p&gt;

&lt;p&gt;So we deployed the ecosystem using multiple subdomains and isolated routing layers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;gotihub.com&lt;/code&gt; → corporate site&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;agl.gotihub.com&lt;/code&gt; → SaaS engine&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;crew.gotihub.com&lt;/code&gt; → Hermes orchestration platform&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Behind the scenes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;FastAPI handled orchestration,&lt;/li&gt;
&lt;li&gt;Docker managed runtime isolation,&lt;/li&gt;
&lt;li&gt;Nginx routed ingress traffic,&lt;/li&gt;
&lt;li&gt;Ollama powered local inference,&lt;/li&gt;
&lt;li&gt;and Hermes coordinated the synthesis layer.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most importantly:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The inference backbone was never exposed directly to the public internet.&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2&gt;
  
  
  Internal AI Backbone Architecture
&lt;/h2&gt;

&lt;p&gt;The deployment topology evolved into something closer to a lightweight orchestration mesh:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6qx3zgkbxme1gh0t9o2n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6qx3zgkbxme1gh0t9o2n.png" alt="Infrastructure Architecture" width="560" height="747"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This allowed multiple services to share:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;one centralized inference core,&lt;/li&gt;
&lt;li&gt;isolated application routing,&lt;/li&gt;
&lt;li&gt;and internal-only AI communication.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  Real Engineering Problems We Hit
&lt;/h2&gt;

&lt;p&gt;This project was not smooth.&lt;/p&gt;

&lt;p&gt;And honestly, that’s where most of the learning happened.&lt;/p&gt;


&lt;h2&gt;
  
  
  The Local Compute Bottleneck
&lt;/h2&gt;

&lt;p&gt;Our earliest orchestration runs were extremely slow.&lt;/p&gt;

&lt;p&gt;One real telemetry session looked like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[TELEMETRY] GitHubLoader fetched 8 files in 5.91 seconds.

[Orchestrator] Starting Full Pipeline...
[TELEMETRY] Stage 1 took 218.68 seconds.
[TELEMETRY] Stage 2 took 72.19 seconds.
[TELEMETRY] Stage 3 took 120.18 seconds.

[TELEMETRY] Pipeline Complete! Total Runtime: 411.05 seconds.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The bottleneck was not orchestration.&lt;/p&gt;

&lt;p&gt;It was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;oversized repository context,&lt;/li&gt;
&lt;li&gt;local inference latency,&lt;/li&gt;
&lt;li&gt;verbose prompt chains,&lt;/li&gt;
&lt;li&gt;and massive token generation overhead.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That distinction mattered.&lt;/p&gt;

&lt;p&gt;Because it meant the architecture itself was scalable — but inference strategy needed optimization.&lt;/p&gt;




&lt;h2&gt;
  
  
  What We Optimized
&lt;/h2&gt;

&lt;p&gt;We eventually began improving runtime by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reducing repository context size,&lt;/li&gt;
&lt;li&gt;prioritizing critical engineering files,&lt;/li&gt;
&lt;li&gt;limiting unnecessary token generation,&lt;/li&gt;
&lt;li&gt;shrinking synthesis payloads,&lt;/li&gt;
&lt;li&gt;and improving async orchestration boundaries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The system became dramatically more stable once we stopped treating every file equally.&lt;/p&gt;




&lt;h2&gt;
  
  
  Defensive Failure Engineering
&lt;/h2&gt;

&lt;p&gt;One of the most important lessons came from structured output failures.&lt;/p&gt;

&lt;p&gt;Large orchestration chains occasionally returned:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;malformed JSON,&lt;/li&gt;
&lt;li&gt;partial synthesis blocks,&lt;/li&gt;
&lt;li&gt;or incomplete manager responses.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of allowing pipeline collapse, we added:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;fallback execution paths,&lt;/li&gt;
&lt;li&gt;JSON cleanup layers,&lt;/li&gt;
&lt;li&gt;defensive parsing,&lt;/li&gt;
&lt;li&gt;and structured failure recovery.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That forced us to think less like prompt engineers and more like systems engineers.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Hermes Actually Worked Well
&lt;/h2&gt;

&lt;p&gt;Frameworks like CrewAI are excellent for rapidly assembling conversational agent pipelines.&lt;/p&gt;

&lt;p&gt;But our exploration focused on something slightly different:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;persistent orchestration,&lt;/li&gt;
&lt;li&gt;structured engineering outputs,&lt;/li&gt;
&lt;li&gt;governance-oriented workflows,&lt;/li&gt;
&lt;li&gt;and isolated worker responsibilities.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We wanted Hermes to operate less like a conversational assistant and more like an engineering coordination layer.&lt;/p&gt;

&lt;p&gt;That distinction became the entire philosophy behind the project.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Fascinated Us Most
&lt;/h2&gt;

&lt;p&gt;The most interesting part was not whether AI could generate text.&lt;/p&gt;

&lt;p&gt;It was whether autonomous workers could coordinate reliably inside real operational systems.&lt;/p&gt;

&lt;p&gt;That changes the conversation entirely.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Can AI answer questions?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We started asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Can AI workers collaborate responsibly inside engineering governance workflows?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Hermes gave us a practical way to explore that future.&lt;/p&gt;

&lt;p&gt;And honestly, that exploration became far more valuable than simply building another AI wrapper.&lt;/p&gt;




&lt;h2&gt;
  
  
  Built With
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Hermes Agent&lt;/li&gt;
&lt;li&gt;FastAPI&lt;/li&gt;
&lt;li&gt;Python AsyncIO&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;li&gt;Gemma 3&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;Nginx&lt;/li&gt;
&lt;li&gt;SQLite&lt;/li&gt;
&lt;li&gt;Next.js&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This project is still evolving.&lt;/p&gt;

&lt;p&gt;We are actively optimizing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;orchestration runtime,&lt;/li&gt;
&lt;li&gt;inference efficiency,&lt;/li&gt;
&lt;li&gt;streaming telemetry,&lt;/li&gt;
&lt;li&gt;structured synthesis,&lt;/li&gt;
&lt;li&gt;and governance reliability.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But the biggest thing we learned was this:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Autonomous systems become genuinely interesting when they stop behaving like isolated chatbots and start behaving like coordinated engineering workers.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That is the future we wanted to explore with Hermes.&lt;/p&gt;

&lt;p&gt;And we are excited to continue building toward it.&lt;/p&gt;

</description>
      <category>hermesagentchallenge</category>
      <category>devchallenge</category>
      <category>agents</category>
      <category>ai</category>
    </item>
    <item>
      <title>GotiHub AGL — Building Governance-First AI Workflows with Local Gemma 4</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Tue, 19 May 2026 17:47:04 +0000</pubDate>
      <link>https://dev.to/apurbalabs/-gotihub-agl-building-governance-first-ai-workflows-with-local-gemma-4-27a1</link>
      <guid>https://dev.to/apurbalabs/-gotihub-agl-building-governance-first-ai-workflows-with-local-gemma-4-27a1</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-gemma-2026-05-06"&gt;Gemma 4 Challenge: Write About Gemma 4&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;h2&gt;
  
  
  AI can recommend. Governance decides. ⚖️
&lt;/h2&gt;

&lt;p&gt;A governance-first institutional workflow platform powered by localized Gemma 4 reasoning and privacy-preserving verification.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🚀 What I Built
&lt;/h2&gt;

&lt;p&gt;I built &lt;strong&gt;GotiHub AGL&lt;/strong&gt;, a governance-first AI workflow platform designed for high-trust institutional operations like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;alumni verification&lt;/li&gt;
&lt;li&gt;compliance approvals&lt;/li&gt;
&lt;li&gt;governance reviews&lt;/li&gt;
&lt;li&gt;sensitive administrative workflows&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of giving AI autonomous authority, the platform keeps humans inside the decision loop while allowing &lt;strong&gt;Gemma 4&lt;/strong&gt; to perform localized reasoning, risk analysis, and workflow orchestration.&lt;/p&gt;

&lt;p&gt;The system runs fully local using &lt;strong&gt;Gemma 4 via Ollama&lt;/strong&gt;, ensuring sensitive institutional data never leaves the organization's infrastructure.&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 Inspiration
&lt;/h2&gt;

&lt;p&gt;Many institutions still rely on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;spreadsheets&lt;/li&gt;
&lt;li&gt;fragmented approval chains&lt;/li&gt;
&lt;li&gt;manual phone verification&lt;/li&gt;
&lt;li&gt;disconnected audit systems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At the same time, organizations want to adopt AI — but they are uncomfortable sending confidential internal records to external cloud providers.&lt;/p&gt;

&lt;p&gt;That inspired one central question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What if AI reasoning could stay local, governance could remain human-controlled, and institutional verification could become cryptographically auditable?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That became the foundation of GotiHub AGL.&lt;/p&gt;




&lt;h2&gt;
  
  
  🏛️ How Gemma 4 Helps Trusted Communities
&lt;/h2&gt;

&lt;p&gt;Many long-standing institutions — schools, alumni associations, NGOs, cooperatives, and local governance groups — still depend heavily on manual trust systems built over decades.&lt;/p&gt;

&lt;p&gt;These communities often face intense, everyday operational challenges:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Verifying historical member records
&lt;/li&gt;
&lt;li&gt;Approving sensitive financial requests
&lt;/li&gt;
&lt;li&gt;Validating multi-decade alumni credential rolls
&lt;/li&gt;
&lt;li&gt;Handling community donation approvals
&lt;/li&gt;
&lt;li&gt;Preventing duplicate claims or suspicious submissions
&lt;/li&gt;
&lt;li&gt;Preserving member privacy while maintaining absolute accountability
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Traditional cloud AI solutions create an immediate trust roadblock for these organizations because sensitive institutional records must leave their physical control and pass through external commercial APIs.&lt;/p&gt;

&lt;p&gt;For true institutional compliance, data leakage is a non-negotiable risk.&lt;/p&gt;

&lt;p&gt;Google's Gemma 4 completely changed that for us.&lt;/p&gt;

&lt;p&gt;By running Gemma 4 locally inside a containerized workspace, GotiHub AGL allows community organizations to introduce frontier-level AI-assisted governance while keeping institutional data fully inside their own self-hosted infrastructure.&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 The Local Institutional Workflow
&lt;/h2&gt;

&lt;p&gt;👉 An alumni secretary submits a verification request.&lt;br&gt;&lt;br&gt;
👉 Gemma 4 locally reviews historical inconsistencies and checks policy parameters.&lt;br&gt;&lt;br&gt;
👉 Low-risk files auto-route to immediate micro-payment or clearance hooks.&lt;br&gt;&lt;br&gt;
👉 High-risk anomalies escalate automatically to senior committee members via a Filament UI.&lt;br&gt;&lt;br&gt;
👉 Approved workflows generate cryptographically sealed, auditable records.&lt;br&gt;&lt;br&gt;
👉 Sensitive community records NEVER leave the organization's server.  &lt;/p&gt;

&lt;p&gt;This creates a governance model where local intelligence strengthens trusted communities instead of attempting to replace human accountability.&lt;/p&gt;


&lt;h2&gt;
  
  
  🧠 Why Gemma 4 Worked So Well for This Project
&lt;/h2&gt;

&lt;p&gt;Several deep architectural improvements inside the Gemma 4 family directly enabled us to build GotiHub AGL with enterprise reliability on limited-budget infrastructure.&lt;/p&gt;


&lt;h3&gt;
  
  
  1️⃣ Interleaved Hybrid Attention for Massive Records
&lt;/h3&gt;

&lt;p&gt;Institutional workflows often involve processing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;long historical registries&lt;/li&gt;
&lt;li&gt;multi-step approval documents&lt;/li&gt;
&lt;li&gt;large verification chains&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Traditionally, long-context evaluation destroys server RAM because the Key-Value (KV) cache grows aggressively.&lt;/p&gt;

&lt;p&gt;Gemma 4 completely solves this by introducing a hybrid interleaved attention mechanism, which alternates between:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local Sliding Window layers&lt;/li&gt;
&lt;li&gt;Global Attention layers&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Combined with Proportional RoPE (p-RoPE), it drastically compresses the memory footprint.&lt;/p&gt;

&lt;p&gt;This architectural breakthrough allowed our lightweight VPS nodes (running a standard 4GB swap space on Contabo infrastructure) to process extensive context windows without triggering Linux Out-Of-Memory (OOM) freezes.&lt;/p&gt;


&lt;h3&gt;
  
  
  2️⃣ Native System Prompt Support &amp;amp; Rigid JSON Constraints
&lt;/h3&gt;

&lt;p&gt;Our orchestration backend depends entirely on structured, predictable machine outputs.&lt;/p&gt;

&lt;p&gt;Brittle regular expression parsing quickly becomes unstable if a model changes formatting slightly.&lt;/p&gt;

&lt;p&gt;Gemma 4 solved this elegantly.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"risk_score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"decision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ESCALATE"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"explanation"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Context reveals a missing historical graduation timestamp."&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Google DeepMind built native system role support directly into the core layers of Gemma 4.&lt;/p&gt;

&lt;p&gt;This unlocked highly reliable schema constraint matching.&lt;/p&gt;

&lt;p&gt;By invoking Ollama's native JSON mode with Gemma 4, our Laravel architecture can enforce direct contract compliance, guaranteeing stable payload extraction for machine-readable governance metrics like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;risk_score&lt;/li&gt;
&lt;li&gt;decision&lt;/li&gt;
&lt;li&gt;escalation_state&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  3️⃣ Mixture-of-Experts (MoE) &amp;amp; Multi-Token Prediction (MTP)
&lt;/h3&gt;

&lt;p&gt;One of our core goals was proving that community-scale AI does not require massive cloud infrastructure.&lt;/p&gt;

&lt;p&gt;Gemma 4 enables this through several major architectural innovations.&lt;/p&gt;

&lt;h4&gt;
  
  
  ⚡ Mixture-of-Experts (MoE)
&lt;/h4&gt;

&lt;p&gt;The 26B Gemma 4 architecture uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;128 total experts&lt;/li&gt;
&lt;li&gt;only 8 active experts per token route&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This means the model behaves with the intelligence of a large server-grade network while maintaining the efficiency of a lightweight edge deployment.&lt;/p&gt;

&lt;p&gt;For institutional governance systems, this creates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;lower latency&lt;/li&gt;
&lt;li&gt;lower infrastructure cost&lt;/li&gt;
&lt;li&gt;faster local inference&lt;/li&gt;
&lt;li&gt;scalable community deployment&lt;/li&gt;
&lt;/ul&gt;




&lt;h4&gt;
  
  
  ⚡ Multi-Token Prediction (MTP)
&lt;/h4&gt;

&lt;p&gt;Gemma 4 also introduces speculative decoding through Multi-Token Prediction (MTP).&lt;/p&gt;

&lt;p&gt;This allows background workers to predict future token sequences in parallel, dramatically improving reasoning throughput and reducing latency bottlenecks.&lt;/p&gt;

&lt;p&gt;In practice, this gave our governance workflows noticeably faster response times even on affordable VPS infrastructure.&lt;/p&gt;




&lt;h3&gt;
  
  
  4️⃣ True Open-Source Sovereignty (Apache 2.0)
&lt;/h3&gt;

&lt;p&gt;Because Google released Gemma 4 under the fully open Apache 2.0 license, it becomes a massive win for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;community ownership&lt;/li&gt;
&lt;li&gt;institutional sovereignty&lt;/li&gt;
&lt;li&gt;long-term governance stability&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Schools, NGOs, and developing regions no longer need to rely entirely on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;volatile API pricing&lt;/li&gt;
&lt;li&gt;external commercial dependencies&lt;/li&gt;
&lt;li&gt;closed proprietary AI systems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Organizations can safely deploy permanent, localized AI governance infrastructure fully under their own control.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Technical Architecture
&lt;/h2&gt;

&lt;p&gt;GotiHub AGL operates across three isolated but connected services:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌──────────────────────────────────────────┐
│      GotiHub AGL (Laravel Platform)      │
│ Laravel 13 • Filament • MySQL • Nginx    │
└──────────────────────────────────────────┘
                    │
                    ▼
┌──────────────────────────────────────────┐
│      Laravel AGL Intelligence Layer      │
│      Local Gemma 4 via Ollama            │
└──────────────────────────────────────────┘
                    │
                    ▼
┌──────────────────────────────────────────┐
│     Midnight Verification Sidecar        │
│      Bun / Node.js ZK Verification       │
└──────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ⚡ Infrastructure Challenges We Solved
&lt;/h2&gt;

&lt;p&gt;Running local LLMs alongside traditional web infrastructure introduced several real-world engineering problems:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Linux OOM crashes&lt;/li&gt;
&lt;li&gt;inference spikes&lt;/li&gt;
&lt;li&gt;Docker memory contention&lt;/li&gt;
&lt;li&gt;container orchestration instability&lt;/li&gt;
&lt;li&gt;VPS resource exhaustion&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To stabilize the platform, we implemented:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;swap partition tuning&lt;/li&gt;
&lt;li&gt;Docker memory isolation&lt;/li&gt;
&lt;li&gt;internal network segmentation&lt;/li&gt;
&lt;li&gt;controlled inference boundaries&lt;/li&gt;
&lt;li&gt;optimized container orchestration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This became one of the most valuable engineering lessons of the project.&lt;/p&gt;




&lt;h2&gt;
  
  
  ❤️ The Bigger Vision
&lt;/h2&gt;

&lt;p&gt;The future of AI is not about autonomous systems running unchecked.&lt;/p&gt;

&lt;p&gt;It is about governed collaboration between:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;humans&lt;/li&gt;
&lt;li&gt;institutions&lt;/li&gt;
&lt;li&gt;localized intelligence&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;GotiHub AGL explores an architecture where:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI assists governance&lt;/li&gt;
&lt;li&gt;humans remain accountable&lt;/li&gt;
&lt;li&gt;privacy stays protected&lt;/li&gt;
&lt;li&gt;communities retain sovereignty over their own data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gemma 4 made that future possible on accessible infrastructure.&lt;/p&gt;

&lt;blockquote&gt;
&lt;h2&gt;
  
  
  AI can recommend. Governance decides. ⚖️
&lt;/h2&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🛠️ Production Verification Details
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Core Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Laravel 13&lt;/li&gt;
&lt;li&gt;Filament Panels&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;Nginx&lt;/li&gt;
&lt;li&gt;MySQL&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  AI Orchestration Layer
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Laravel AGL&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;li&gt;Gemma 4 (E4B / MoE Variants)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Cryptographic Verification
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Midnight Bridge&lt;/li&gt;
&lt;li&gt;Node.js / Bun Sidecar&lt;/li&gt;
&lt;li&gt;Zero-Knowledge Verification Isolation&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Infrastructure Hardening
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;UFW Firewall Protection&lt;/li&gt;
&lt;li&gt;Fail2Ban Brute-Force Protection&lt;/li&gt;
&lt;li&gt;Internal Docker Network Isolation&lt;/li&gt;
&lt;li&gt;Localized AI Inference Boundaries&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔗 Project Links
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🚀 Live Demo
&lt;/h3&gt;

&lt;p&gt;&lt;a href="http://109.199.123.230/" rel="noopener noreferrer"&gt;http://109.199.123.230/&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  🏆 Devpost Submission
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://devpost.com/software/gotihub-agl-governance-first-ai-workflows" rel="noopener noreferrer"&gt;https://devpost.com/software/gotihub-agl-governance-first-ai-workflows&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 GitHub Repository
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/apurba-labs/gotihub-agl" rel="noopener noreferrer"&gt;https://github.com/apurba-labs/gotihub-agl&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>gemmachallenge</category>
      <category>gemma</category>
      <category>ai</category>
    </item>
    <item>
      <title>🚀 The End of the Memory Wall — And the Beginning of the Coordination Problem</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Mon, 27 Apr 2026 19:10:52 +0000</pubDate>
      <link>https://dev.to/apurbalabs/the-end-of-the-memory-wall-and-the-beginning-of-the-coordination-problem-3dj3</link>
      <guid>https://dev.to/apurbalabs/the-end-of-the-memory-wall-and-the-beginning-of-the-coordination-problem-3dj3</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-cloud-next-2026-04-22"&gt;Google Cloud NEXT Writing Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;At Google Cloud NEXT ’26, we didn’t just get faster AI. We removed one of the oldest limits in computing: &lt;strong&gt;The Memory Wall.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now agents can think faster than ever.&lt;/p&gt;

&lt;p&gt;But as a Senior Solution Architect, I see a new bottleneck emerging:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Agents can now act faster than we can coordinate them.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  From Compute Bottlenecks to Coordination Bottlenecks
&lt;/h2&gt;

&lt;p&gt;For 15 years, building distributed systems meant fighting infrastructure limits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;High-latency networks
&lt;/li&gt;
&lt;li&gt;Expensive, scarce compute
&lt;/li&gt;
&lt;li&gt;Drastic memory constraints
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At Google Cloud NEXT ’26, the paradigm shifted. With infrastructure like the &lt;strong&gt;TPU 8i&lt;/strong&gt;, we are no longer blocked by raw compute.&lt;/p&gt;

&lt;p&gt;We are entering a new phase:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Systems can think fast enough. Now they need to work together reliably.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The Breakthrough Isn’t Just Models; It’s Silicon
&lt;/h2&gt;

&lt;p&gt;While most attention went to models, the real shift for system builders is underneath:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Boardfly topology&lt;/strong&gt; reduces communication distance to ~7 hops
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On-chip memory&lt;/strong&gt; keeps reasoning context close to compute
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Collective acceleration&lt;/strong&gt; reduces coordination overhead
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These changes remove the &lt;strong&gt;memory wall&lt;/strong&gt;—the hidden cost where reasoning slows down because data has to move.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why the Memory Wall Matters for Agents
&lt;/h2&gt;

&lt;p&gt;AI agents don’t just compute—they &lt;strong&gt;reason in loops&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Each step depends on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;context
&lt;/li&gt;
&lt;li&gt;memory
&lt;/li&gt;
&lt;li&gt;previous decisions
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Previously:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;every step incurred a latency penalty
&lt;/li&gt;
&lt;li&gt;agents spent more time waiting than thinking
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reasoning becomes fast
&lt;/li&gt;
&lt;li&gt;concurrency becomes cheap
&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;And once thinking becomes cheap, coordination becomes expensive.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  We’ve Seen This Before
&lt;/h2&gt;

&lt;p&gt;In the microservices era, we had:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;service-to-service chatter
&lt;/li&gt;
&lt;li&gt;race conditions
&lt;/li&gt;
&lt;li&gt;distributed state conflicts
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We introduced:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;queues
&lt;/li&gt;
&lt;li&gt;locks
&lt;/li&gt;
&lt;li&gt;orchestration
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now we face the same problem again—just with higher stakes.&lt;/p&gt;

&lt;p&gt;Because agents don’t just respond…&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;They reason over time.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The New Failure Mode: Reasoning Race Conditions
&lt;/h2&gt;

&lt;p&gt;If you run hundreds of agents without coordination:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;they read stale state
&lt;/li&gt;
&lt;li&gt;they overwrite each other
&lt;/li&gt;
&lt;li&gt;they make decisions based on outdated reality
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You don’t get scale.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;You get reasoning race conditions.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  A Practical Direction: Agent Governance Layer (AGL)
&lt;/h2&gt;

&lt;p&gt;From building production systems, one thing becomes clear quickly:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Coordination cannot be optional.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This leads to what I think of as an &lt;strong&gt;Agent Governance Layer (AGL)&lt;/strong&gt;—a control plane for agent behavior.&lt;/p&gt;




&lt;h3&gt;
  
  
  1. Identity → Semantic Scoping
&lt;/h3&gt;

&lt;p&gt;Agents need more than roles.&lt;/p&gt;

&lt;p&gt;They need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;scoped context
&lt;/li&gt;
&lt;li&gt;bounded permissions
&lt;/li&gt;
&lt;li&gt;intent-aware access
&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;What is this agent allowed to do &lt;em&gt;right now&lt;/em&gt;?&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h3&gt;
  
  
  2. Synchronization → Reasoning Mutex
&lt;/h3&gt;

&lt;p&gt;Agents must not blindly write to shared state.&lt;/p&gt;

&lt;p&gt;They need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;controlled execution
&lt;/li&gt;
&lt;li&gt;conflict awareness
&lt;/li&gt;
&lt;li&gt;coordination across time
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Especially when:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;a “transaction” includes human latency&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h3&gt;
  
  
  3. State Awareness → Versioned Systems
&lt;/h3&gt;

&lt;p&gt;Shared memory must be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;versioned
&lt;/li&gt;
&lt;li&gt;validated before commit
&lt;/li&gt;
&lt;li&gt;conflict-aware
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Otherwise:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;stale reasoning
&lt;/li&gt;
&lt;li&gt;silent corruption
&lt;/li&gt;
&lt;li&gt;unpredictable outcomes
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  4. Intent Logging → The “Why” Layer
&lt;/h3&gt;

&lt;p&gt;In agent systems, debugging changes:&lt;/p&gt;

&lt;p&gt;Not:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;what happened?&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;blockquote&gt;
&lt;p&gt;why did the agent decide this?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Intent becomes the new observability.&lt;/p&gt;




&lt;h2&gt;
  
  
  A New Metric: Reasoning Health
&lt;/h2&gt;

&lt;p&gt;We used to monitor:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPU
&lt;/li&gt;
&lt;li&gt;memory
&lt;/li&gt;
&lt;li&gt;latency
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now we must also monitor:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;conflict frequency
&lt;/li&gt;
&lt;li&gt;stale reasoning
&lt;/li&gt;
&lt;li&gt;retry loops
&lt;/li&gt;
&lt;li&gt;failed commits
&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Reasoning Health will define system reliability in the agentic era.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Closing Thought
&lt;/h2&gt;

&lt;p&gt;We are moving from systems that &lt;strong&gt;execute&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
to systems that &lt;strong&gt;reason&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Google solved the infrastructure problem.&lt;/p&gt;

&lt;p&gt;Now we have to solve the coordination problem.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Running 1,000 agents is easy.&lt;br&gt;&lt;br&gt;
Making them behave like a system is not.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Discussion
&lt;/h2&gt;

&lt;p&gt;If you’re building with agents today:&lt;/p&gt;

&lt;p&gt;How are you handling shared state?&lt;/p&gt;

&lt;p&gt;Are you trusting the system—or actively governing it?&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>cloudnextchallenge</category>
      <category>googlecloud</category>
      <category>architecture</category>
    </item>
    <item>
      <title>🚀 The Architect’s Blueprint: Securing Local Agentic Workflows with OpenClaw</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Fri, 24 Apr 2026 22:59:07 +0000</pubDate>
      <link>https://dev.to/apurbalabs/the-architects-blueprint-securing-local-agentic-workflows-with-openclaw-2lnl</link>
      <guid>https://dev.to/apurbalabs/the-architects-blueprint-securing-local-agentic-workflows-with-openclaw-2lnl</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/openclaw-2026-04-16"&gt;OpenClaw Writing Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Real Question Behind Agentic AI
&lt;/h2&gt;

&lt;p&gt;Most discussions around agentic AI focus on capability—what agents can do, how autonomous they are, how “smart” they feel.&lt;/p&gt;

&lt;p&gt;But in production systems, that’s not the real question.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The real question is governance.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Who is allowed to act?&lt;br&gt;&lt;br&gt;
When are they allowed to act?&lt;br&gt;&lt;br&gt;
And what happens when multiple agents act at the same time?&lt;/p&gt;

&lt;p&gt;As someone building high-compliance, scalable systems, these are the constraints that define whether a system survives in production—or fails silently.&lt;/p&gt;


&lt;h2&gt;
  
  
  Context: From Microservices to Agentic Systems
&lt;/h2&gt;

&lt;p&gt;Over the past several years, I’ve worked on regulated, high-volume architectures where automated responders interact with critical systems.&lt;/p&gt;

&lt;p&gt;A consistent pattern emerged:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Intelligence without control becomes a liability.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In my current work on platforms like GotiHub, I separate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Workflow orchestration&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AI processing layers&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This separation is not optional—it’s what allows systems to scale safely.&lt;/p&gt;

&lt;p&gt;When I explored OpenClaw, I saw an opportunity to apply the same discipline to agentic workflows.&lt;/p&gt;


&lt;h2&gt;
  
  
  The Local-First Advantage (Done Right)
&lt;/h2&gt;

&lt;p&gt;OpenClaw’s local-first model isn’t just about privacy—it’s about &lt;strong&gt;reducing the attack surface&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When implemented properly, it enables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Zero-Trust Data Sovereignty&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Vector data (e.g., Weaviate) stays within controlled environments (local or VPC).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Secure Secret Handling&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Skills rely on local environment variables, avoiding exposure through external LLM logging layers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Deterministic Execution Boundaries&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Agent capabilities can be tightly scoped and enforced.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are not just features—they are &lt;strong&gt;architectural primitives for secure systems&lt;/strong&gt;.&lt;/p&gt;


&lt;h2&gt;
  
  
  The Concurrency Problem No One Talks About
&lt;/h2&gt;

&lt;p&gt;Here’s the gap I don’t see discussed enough:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What happens when multiple agents share state?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Imagine:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;50 OpenClaw instances&lt;/li&gt;
&lt;li&gt;All reading and writing to shared Markdown memory files&lt;/li&gt;
&lt;li&gt;No coordination mechanism&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is not just a performance issue.&lt;/p&gt;

&lt;p&gt;It’s a &lt;strong&gt;data integrity problem&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;race conditions
&lt;/li&gt;
&lt;li&gt;inconsistent memory state
&lt;/li&gt;
&lt;li&gt;unpredictable behavior
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In traditional microservices, we solve this with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Redis locks
&lt;/li&gt;
&lt;li&gt;message queues
&lt;/li&gt;
&lt;li&gt;transactional boundaries
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But in many agentic setups, this layer is missing.&lt;/p&gt;


&lt;h2&gt;
  
  
  A Practical Approach: Governance Over Intelligence
&lt;/h2&gt;

&lt;p&gt;From my experience, scaling agentic systems requires two distinct control layers:&lt;/p&gt;
&lt;h3&gt;
  
  
  1. Identity Layer (Scope Control)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Question:&lt;/strong&gt; &lt;em&gt;Should this agent be allowed to act?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Using something like &lt;code&gt;laravel-iam&lt;/code&gt;, each agent operates within a defined permission scope:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;access to specific memory regions&lt;/li&gt;
&lt;li&gt;allowed actions&lt;/li&gt;
&lt;li&gt;role-based constraints&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This ensures agents never operate with a “master key.”&lt;/p&gt;


&lt;h3&gt;
  
  
  2. Synchronization Layer (State Control)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Question:&lt;/strong&gt; &lt;em&gt;When is this agent allowed to act?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is where a centralized control mechanism—like a &lt;code&gt;Laravel Approval Engine&lt;/code&gt;—becomes critical.&lt;/p&gt;

&lt;p&gt;Before an agent writes to shared memory:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It must request a &lt;strong&gt;state lock&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;If another agent holds the lock → request is queued&lt;/li&gt;
&lt;li&gt;Once approved → action proceeds&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This transforms:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;uncontrolled concurrency → &lt;strong&gt;audited, deterministic workflows&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2&gt;
  
  
  Example: An Enterprise Approval Skill
&lt;/h2&gt;

&lt;p&gt;Here’s a simplified example of how a governed skill might look:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# Skill: Enterprise Approval Check&lt;/span&gt;

&lt;span class="gh"&gt;# Description:&lt;/span&gt;
Checks if an agent has permission to trigger a deploy.

&lt;span class="gu"&gt;## Constraints:&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Validate role via &lt;span class="sb"&gt;`laravel-iam`&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Return 403 if unauthorized

&lt;span class="gu"&gt;## Execution:&lt;/span&gt;
POST {{APP_URL}}/api/v1/approvals/check

Headers:
  Authorization: Bearer {{AGENT_IAM_TOKEN}}

Body:
{
  "action": "deploy",
  "actor": "{{user_id}}"
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This isn’t about limiting agents—it’s about making their behavior &lt;strong&gt;predictable, auditable, and safe&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Lessons from Production Systems
&lt;/h2&gt;

&lt;p&gt;A few principles that consistently hold:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scoped Skills Over Global Access&lt;/strong&gt;
Narrow permissions reduce risk dramatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audit Logs Are Non-Negotiable&lt;/strong&gt;
Observability is essential to detect reasoning drift and unintended behavior.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Performance Beats “Over-Intelligence”&lt;/strong&gt;
Smaller local models (e.g., LLaMA, Mistral) are often faster, cheaper, and more reliable for most workloads.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Closing Thought
&lt;/h2&gt;

&lt;p&gt;If agentic systems are going to operate in real production environments, they must evolve:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;From autonomous scripts → to governed systems.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;OpenClaw provides a powerful foundation for local-first experimentation.&lt;br&gt;
The next step is layering &lt;strong&gt;identity, synchronization, and control&lt;/strong&gt; on top of that foundation.&lt;/p&gt;




&lt;h2&gt;
  
  
  Discussion
&lt;/h2&gt;

&lt;p&gt;I’m curious how others are approaching this:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How are you managing shared state and concurrency in local agent workflows?&lt;/strong&gt;&lt;br&gt;
Are you relying on implicit behavior—or introducing explicit control layers?&lt;/p&gt;

&lt;p&gt;Let’s discuss.&lt;/p&gt;

</description>
      <category>openclawchallenge</category>
      <category>devchallenge</category>
      <category>architecture</category>
      <category>ai</category>
    </item>
    <item>
      <title>Laravel Is Growing Up — So I Built a Workflow Engine That Matches It (Clean Architecture + IAM + Token Approval)</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Mon, 20 Apr 2026 00:43:04 +0000</pubDate>
      <link>https://dev.to/apurbalabs/laravel-is-growing-up-so-i-built-a-workflow-engine-that-matches-it-clean-architecture-iam--1060</link>
      <guid>https://dev.to/apurbalabs/laravel-is-growing-up-so-i-built-a-workflow-engine-that-matches-it-clean-architecture-iam--1060</guid>
      <description>&lt;h1&gt;
  
  
  This week’s DEV Community digest highlighted something interesting:
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;Laravel developers are moving beyond “fat controllers” toward clean architecture and enterprise-grade systems.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That’s exactly what I’ve been working on.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚠️ The Problem (We All Faced)
&lt;/h2&gt;

&lt;p&gt;If you've built any of these:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Leave approval&lt;/li&gt;
&lt;li&gt;Expense approval&lt;/li&gt;
&lt;li&gt;Purchase workflows&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You already know the reality:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Business logic inside controllers&lt;/li&gt;
&lt;li&gt;Role checks everywhere&lt;/li&gt;
&lt;li&gt;Email spam for approvals&lt;/li&gt;
&lt;li&gt;Hard to scale, harder to maintain&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And every project?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You rebuild the same workflow logic again.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  💸 Why Most Teams Get It Wrong
&lt;/h2&gt;

&lt;p&gt;Typical solutions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SaaS tools&lt;/li&gt;
&lt;li&gt;Zapier automation&lt;/li&gt;
&lt;li&gt;Email-based approvals&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Which leads to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Recurring cost&lt;/li&gt;
&lt;li&gt;Limited customization&lt;/li&gt;
&lt;li&gt;Poor visibility&lt;/li&gt;
&lt;li&gt;No real control&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧠 What I Built Instead
&lt;/h2&gt;

&lt;p&gt;I didn’t build another feature.&lt;/p&gt;

&lt;p&gt;I built a &lt;strong&gt;reusable approval workflow engine&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Multi-level approval pipelines&lt;/li&gt;
&lt;li&gt;Role-based access (IAM-ready)&lt;/li&gt;
&lt;li&gt;Event-driven lifecycle&lt;/li&gt;
&lt;li&gt;Token-based approvals (no login required)&lt;/li&gt;
&lt;li&gt;Smart notification batching&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧩 The Architecture (This Is the Key)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Adapters (API / CLI / Queue)
        ↓
Workflow Manager
        ↓
Workflow Engine (Pure Logic)
        ↓
Domain Models (State)
        ↓
Events → Listeners → Notifications
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Key Idea:
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;The engine knows nothing about HTTP, UI, or SaaS.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🔥 What Makes It Different
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Headless Workflow Engine
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$manager&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;start&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'requisition'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$payload&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nv"&gt;$manager&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;approve&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$workflowId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$userId&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No controller dependency. Works anywhere.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. IAM-Ready (But Decoupled)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Engine does NOT handle auth&lt;/li&gt;
&lt;li&gt;It only receives &lt;code&gt;user_id&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;IAM handles permissions externally&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 Clean separation = scalable system&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Token-Based Approval (Game Changer)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;POST /api/v1/approvals/token/approve
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Secure&lt;/li&gt;
&lt;li&gt;Expiring&lt;/li&gt;
&lt;li&gt;Single-use&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 Approve directly from email / Slack&lt;br&gt;
👉 No login required&lt;/p&gt;


&lt;h3&gt;
  
  
  4. Smart Notification Batching
&lt;/h3&gt;

&lt;p&gt;Instead of:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;10 approvals → 10 emails ❌&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You get:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;10 approvals → 1 email ✅&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h3&gt;
  
  
  5. Idempotent Workflow Execution
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nb"&gt;hash&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'sha256'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;payload&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Prevents duplicate workflows on retries.&lt;/p&gt;


&lt;h3&gt;
  
  
  6. Extensible Plugin System (One of My Favorite Parts)
&lt;/h3&gt;

&lt;p&gt;One thing I really wanted was flexibility.&lt;/p&gt;

&lt;p&gt;So I added a plugin system:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hook into workflow events
&lt;/li&gt;
&lt;li&gt;Add integrations (Slack, email, APIs)
&lt;/li&gt;
&lt;li&gt;Extend behavior without touching core
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;SlackPlugin&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="nc"&gt;BasePlugin&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;public&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="n"&gt;boot&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nv"&gt;$this&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&lt;/span&gt;&lt;span class="nf"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;WorkflowCompleted&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="n"&gt;class&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$event&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="c1"&gt;// send slack notification&lt;/span&gt;
        &lt;span class="p"&gt;});&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  🧪 Built Like a Real System
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Full lifecycle testing&lt;/li&gt;
&lt;li&gt;Authorization validation&lt;/li&gt;
&lt;li&gt;Event-driven consistency&lt;/li&gt;
&lt;li&gt;Duplicate protection&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  💼 Real-World Direction
&lt;/h2&gt;

&lt;p&gt;This system is designed for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SaaS platforms&lt;/li&gt;
&lt;li&gt;Banking workflows&lt;/li&gt;
&lt;li&gt;Enterprise approval pipelines&lt;/li&gt;
&lt;li&gt;Internal automation systems&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔗 Open Source
&lt;/h2&gt;

&lt;p&gt;👉 &lt;a href="https://github.com/apurba-labs/laravel-approval-engine" rel="noopener noreferrer"&gt;https://github.com/apurba-labs/laravel-approval-engine&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🤝 Let’s Talk
&lt;/h2&gt;

&lt;p&gt;If you're building:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Workflow systems&lt;/li&gt;
&lt;li&gt;Approval pipelines&lt;/li&gt;
&lt;li&gt;RBAC / IAM architectures&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📩 LinkedIn: &lt;a href="https://www.linkedin.com/in/apurba-narayan-singh/" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/apurba-narayan-singh/&lt;/a&gt;&lt;br&gt;
📧 &lt;a href="mailto:apurbansinghdev@gmail.com"&gt;apurbansinghdev@gmail.com&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  💬 I’d Love Your Feedback
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;How are you handling approvals today?&lt;/li&gt;
&lt;li&gt;Are you using SaaS tools or building in-house?&lt;/li&gt;
&lt;li&gt;What’s the biggest pain in your workflow systems?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let’s discuss 👇&lt;/p&gt;

</description>
      <category>laravel</category>
      <category>architecture</category>
      <category>saas</category>
      <category>opensource</category>
    </item>
    <item>
      <title>From Python to Laravel: Why I Built My Own IAM System Instead of Using Existing Packages</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Sat, 04 Apr 2026 05:30:57 +0000</pubDate>
      <link>https://dev.to/apurbalabs/from-python-to-laravel-why-i-built-my-own-iam-system-instead-of-using-existing-packages-3a81</link>
      <guid>https://dev.to/apurbalabs/from-python-to-laravel-why-i-built-my-own-iam-system-instead-of-using-existing-packages-3a81</guid>
      <description>&lt;p&gt;As a backend developer, I’ve spent most of my career working with Python — FastAPI, Django, Flask.&lt;br&gt;
I’ve always cared about one thing deeply:&lt;br&gt;
👉 building systems that scale without becoming messy&lt;br&gt;
But there was one problem I kept running into… no matter the stack.&lt;/p&gt;

&lt;p&gt;🧠 &lt;strong&gt;The Problem: The “Global Role” Trap&lt;/strong&gt;&lt;br&gt;
At first, everything looks simple:&lt;br&gt;
• Users&lt;br&gt;
• Roles&lt;br&gt;
• Permissions&lt;br&gt;
But as systems grow, things start breaking.&lt;br&gt;
Most RBAC (Role-Based Access Control) packages assume:&lt;br&gt;
👉 a user is either an Admin… or they aren’t.&lt;br&gt;
But real-world systems are never that simple.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A real scenario:&lt;/strong&gt;&lt;br&gt;
• A user is a &lt;strong&gt;Manager in Branch A&lt;/strong&gt;&lt;br&gt;
• The same user is a &lt;strong&gt;Viewer in Branch B&lt;/strong&gt;&lt;br&gt;
Now ask yourself:&lt;br&gt;
👉 How do you model this cleanly?&lt;/p&gt;

&lt;p&gt;Most of the time, we don’t.&lt;br&gt;
We write conditions like:&lt;br&gt;
if ($user-&amp;gt;role === 'manager' &amp;amp;&amp;amp; $branch_id === 1) { ... }&lt;br&gt;
And slowly…&lt;br&gt;
• logic spreads everywhere&lt;br&gt;
• dependencies grow&lt;br&gt;
• and one small change breaks multiple parts of the system&lt;/p&gt;

&lt;p&gt;😵 &lt;strong&gt;When It Became a Problem&lt;/strong&gt;&lt;br&gt;
Across multiple projects, I saw the same pattern:&lt;br&gt;
• Roles started multiplying&lt;br&gt;
• Permissions became unclear&lt;br&gt;
• Debugging access issues became painful&lt;br&gt;
It didn’t matter if I was using Python or Laravel.&lt;br&gt;
👉 The problem wasn’t the framework.&lt;br&gt;
👉 The problem was the model.&lt;/p&gt;

&lt;p&gt;🔄 &lt;strong&gt;The Turning Point&lt;/strong&gt;&lt;br&gt;
While working on Laravel-based systems, I explored existing solutions like Spatie.&lt;br&gt;
They are great — clean, simple, and widely used 👏&lt;br&gt;
But for complex systems, I kept hitting limitations:&lt;br&gt;
• No real support for contextual authority&lt;br&gt;
• Difficult to manage multi-tenant permissions&lt;br&gt;
• Hard to model relationships between roles and scopes&lt;br&gt;
At some point, I stopped trying to “work around” the problem.&lt;br&gt;
👉 I decided to rethink it.&lt;/p&gt;

&lt;p&gt;🚀 &lt;strong&gt;Building Laravel IAM&lt;/strong&gt;&lt;br&gt;
Instead of focusing only on roles, I started thinking in terms of:&lt;br&gt;
👉 &lt;strong&gt;relationships + context + resolution&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This led me to build:&lt;br&gt;
&lt;strong&gt;Laravel IAM (v0.2.0)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;⚙️ &lt;strong&gt;The Core Idea: The Four Levels of Truth&lt;/strong&gt;&lt;br&gt;
Instead of hardcoding logic, the system resolves permissions through layered specificity:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;*&lt;em&gt;Global *&lt;/em&gt;→ &lt;em&gt;.&lt;/em&gt; (Super Admin)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resource Wildcard&lt;/strong&gt; → invoice.*&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Action Wildcard&lt;/strong&gt; → *.approve&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Atomic Permission&lt;/strong&gt; → invoice.approve
This makes permission checks:
• predictable
• scalable
• easy to reason about&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;🧩 &lt;strong&gt;Context Matters&lt;/strong&gt;&lt;br&gt;
The same role doesn’t mean the same thing everywhere.&lt;br&gt;
So the system supports:&lt;br&gt;
• Tenant-based roles&lt;br&gt;
• Team-based roles&lt;br&gt;
• Branch-level permissions&lt;br&gt;
👉 Without turning your code into a mess&lt;/p&gt;

&lt;p&gt;💡 &lt;strong&gt;What I Learned&lt;/strong&gt;&lt;br&gt;
This journey taught me something important:&lt;br&gt;
👉 &lt;strong&gt;Authorization is not about roles — it’s about context&lt;/strong&gt;&lt;br&gt;
And even more importantly:&lt;br&gt;
👉 &lt;strong&gt;Architecture matters more than framework&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;⚙️ &lt;strong&gt;Under the Hood&lt;/strong&gt;&lt;br&gt;
Some design decisions behind the system:&lt;br&gt;
• &lt;strong&gt;Registry Pattern&lt;/strong&gt; → decoupled resources &amp;amp; actions&lt;br&gt;
• &lt;strong&gt;Flexible Role Assignment&lt;/strong&gt; → supports IDs, slugs, or models&lt;br&gt;
• &lt;strong&gt;Scoped Middleware&lt;/strong&gt; → supports contextual authorization&lt;br&gt;
• &lt;strong&gt;Blade Directives&lt;/strong&gt; → clean UI permission checks&lt;br&gt;
And yes — everything is backed by a test suite simulating real workflows ✅&lt;/p&gt;

&lt;p&gt;🛠️ &lt;strong&gt;Open Source&lt;/strong&gt;&lt;br&gt;
I’ve open-sourced the project and would genuinely love feedback:&lt;br&gt;
📦 &lt;a href="https://packagist.org/packages/apurba-labs/laravel-iam" rel="noopener noreferrer"&gt;https://packagist.org/packages/apurba-labs/laravel-iam&lt;/a&gt;&lt;br&gt;
💻 &lt;a href="https://github.com/apurba-labs/laravel-iam" rel="noopener noreferrer"&gt;https://github.com/apurba-labs/laravel-iam&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💬 &lt;strong&gt;Let’s Talk&lt;/strong&gt;&lt;br&gt;
How do you handle complex permissions in your systems?&lt;br&gt;
Have you faced similar challenges with RBAC?&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This is a submission for the 2026 WeCoded Challenge (&lt;a href="https://dev.to/challenges/wecoded-2026):"&gt;https://dev.to/challenges/wecoded-2026):&lt;/a&gt; Echoes of Experience&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Built with ☕ and logic by Apurba Labs.&lt;/p&gt;

&lt;h1&gt;
  
  
  Laravel #PHP #Python #IAM #RBAC #SaaS #Backend #OpenSource #WeCoded #wecoded2026
&lt;/h1&gt;

</description>
      <category>laravel</category>
      <category>saas</category>
      <category>opensource</category>
      <category>wecoded</category>
    </item>
    <item>
      <title>I’m a Python Developer — So I Built a Better IAM System for Laravel</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Fri, 03 Apr 2026 19:16:58 +0000</pubDate>
      <link>https://dev.to/apurbalabs/im-a-python-developer-so-i-built-a-better-iam-system-for-laravel-gah</link>
      <guid>https://dev.to/apurbalabs/im-a-python-developer-so-i-built-a-better-iam-system-for-laravel-gah</guid>
      <description>&lt;p&gt;I’m a Python/FastAPI Developer — So I Built an IAM System in Laravel&lt;br&gt;
As a backend developer working with FastAPI, Django, and Flask, I’ve always cared deeply about clean architecture and scalable authorization systems.&lt;br&gt;
But every time I built a SaaS product, I ran into the same problem:&lt;br&gt;
👉 Permissions become messy… very quickly.&lt;/p&gt;




&lt;p&gt;🧠 The Real Problem: Contextual Authority&lt;br&gt;
Let’s say:&lt;br&gt;
• A user is a Manager in Branch A&lt;br&gt;
• The same user is a Viewer in Branch B&lt;br&gt;
Most RBAC systems struggle here.&lt;br&gt;
You either:&lt;br&gt;
• add tons of conditional logic ❌&lt;br&gt;
• or end up with tightly coupled, hard-to-maintain permission rules ❌&lt;/p&gt;




&lt;p&gt;😵 The Breaking Point&lt;br&gt;
When systems grow, you start seeing:&lt;br&gt;
• Role explosions (too many roles)&lt;br&gt;
• Nested dependencies&lt;br&gt;
• Hardcoded permission checks&lt;br&gt;
• “Who can do what?” becomes unclear&lt;br&gt;
I faced this repeatedly in Python projects…&lt;br&gt;
and surprisingly, the same issue exists in Laravel.&lt;/p&gt;

&lt;p&gt;🚀 So I Built: Laravel IAM (v0.2.0)&lt;br&gt;
Instead of patching the problem, I designed a system that handles:&lt;br&gt;
✔ Contextual permissions (per scope: tenant, team, branch)&lt;br&gt;
✔ Wildcard permissions (expense.&lt;em&gt;, *.&lt;/em&gt;)&lt;br&gt;
✔ Hierarchical access (manage → all actions)&lt;br&gt;
✔ Dynamic resolution (no hardcoded roles)&lt;/p&gt;

&lt;p&gt;⚙️ The Core Idea: “Four Levels of Truth”&lt;br&gt;
The engine resolves permissions using a layered approach:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Direct Permission → exact match&lt;/li&gt;
&lt;li&gt;Wildcard Match → resource.*&lt;/li&gt;
&lt;li&gt;Hierarchy Rule → resource.manage&lt;/li&gt;
&lt;li&gt;Global Access → &lt;em&gt;.&lt;/em&gt;
This allows instant and predictable permission resolution — even in complex SaaS environments.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;🔥 Why Not Just Use Existing Packages?&lt;br&gt;
Packages like Spatie are great for basic RBAC 👏&lt;br&gt;
But they don’t fully solve:&lt;br&gt;
• Context-based access control&lt;br&gt;
• Dynamic multi-tenant systems&lt;br&gt;
• Workflow-aware permission resolution&lt;/p&gt;

&lt;p&gt;💡 Example&lt;br&gt;
IAM::can($user, 'expense.approve');&lt;br&gt;
No complex conditionals.&lt;br&gt;
No hardcoded roles.&lt;br&gt;
Just clean, predictable logic.&lt;/p&gt;

&lt;p&gt;🛠️ Open Source — Try It&lt;br&gt;
I’ve open-sourced the project and would love feedback from the community:&lt;br&gt;
📦 Packagist: &lt;a href="https://packagist.org/packages/apurba-labs/laravel-iam" rel="noopener noreferrer"&gt;https://packagist.org/packages/apurba-labs/laravel-iam&lt;/a&gt;&lt;br&gt;
💻 GitHub: &lt;a href="https://github.com/apurba-labs/laravel-iam" rel="noopener noreferrer"&gt;https://github.com/apurba-labs/laravel-iam&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💬 Let’s Discuss&lt;br&gt;
How do you handle contextual permissions in your projects?&lt;br&gt;
Have you faced similar issues with RBAC systems?&lt;/p&gt;

&lt;h1&gt;
  
  
  Laravel #PHP #FastAPI #RBAC #IAM #SaaS #Backend #OpenSource
&lt;/h1&gt;

</description>
      <category>backend</category>
      <category>laravel</category>
      <category>showdev</category>
      <category>wecoded</category>
    </item>
    <item>
      <title>I Built a Laravel Approval Engine to Stop Email Spam 🚀</title>
      <dc:creator>Apurba Singh</dc:creator>
      <pubDate>Wed, 25 Mar 2026 23:33:15 +0000</pubDate>
      <link>https://dev.to/apurbalabs/i-built-a-laravel-approval-engine-to-stop-email-spam-3okd</link>
      <guid>https://dev.to/apurbalabs/i-built-a-laravel-approval-engine-to-stop-email-spam-3okd</guid>
      <description>&lt;p&gt;Over the last few months, while working on enterprise Laravel projects, I noticed a recurring "Notification Nightmare." &lt;/p&gt;

&lt;p&gt;Every company needs an approval workflow (requisitions, invoices, PTO), but most systems flood managers with separate notifications for every single item. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I decided to build a solution: &lt;a href="https://github.com/apurba-labs/laravel-approval-engine" rel="noopener noreferrer"&gt;Laravel Approval Engine&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🔥 The "Smart Batching" Concept
&lt;/h2&gt;

&lt;p&gt;The core problem with enterprise workflows isn't the approval logic; it's &lt;strong&gt;notification fatigue.&lt;/strong&gt; Instead of sending 50 separate emails for 50 pending approvals, my engine buffers them into &lt;strong&gt;1 smart batch&lt;/strong&gt;. The manager receives a single, clean digest with secure, token-based links to approve everything at once.&lt;/p&gt;

&lt;h2&gt;
  
  
  🏗️ How it Works
&lt;/h2&gt;

&lt;p&gt;The architecture is designed to be modular and plug-and-play.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Define a Module:&lt;/strong&gt; Use &lt;code&gt;php artisan make:workflow-module&lt;/code&gt; to create a logic class.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Queue Records:&lt;/strong&gt; Your business models enter a "pending" state.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;The Processor:&lt;/strong&gt; A scheduled artisan command bundles pending records into a &lt;code&gt;Batch&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Action:&lt;/strong&gt; The approver receives a single email. They can &lt;strong&gt;Approve All&lt;/strong&gt;, &lt;strong&gt;Reject&lt;/strong&gt;, or &lt;strong&gt;View Details&lt;/strong&gt; via a secure Next.js dashboard.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  🧠 Technical Highlights
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Multi-stage Workflows:&lt;/strong&gt; Easily route from &lt;code&gt;Manager -&amp;gt; Finance -&amp;gt; CEO&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Token-based Security:&lt;/strong&gt; Approvers don't even need to log in to take action.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Event-Driven:&lt;/strong&gt; Hooks for every stage (Created, Approved, Escalated).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Next.js Dashboard:&lt;/strong&gt; A sleek frontend for managing the workflow status.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Laravel 12 Ready:&lt;/strong&gt; Built to work with the latest PHP 8.2+ features.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📊 The Workflow Flow
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;graph TD
    A[Pending Records] --&amp;gt; B[Smart Batch Created]
    B --&amp;gt; C[Email Digest Sent]
    C --&amp;gt; D[Approver Clicks Link]
    D --&amp;gt; E[Stage Resolver]
    E --&amp;gt; F{Next Stage?}
    F -- Yes --&amp;gt; G[Create Next Batch]
    F -- No --&amp;gt; H[Workflow Completed]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🚀 Try the Demo
&lt;/h2&gt;

&lt;p&gt;I've included a demo inside the repo so you can see it in action in under 2 minutes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/apurba-labs/laravel-approval-engine
&lt;span class="nb"&gt;cd &lt;/span&gt;laravel-approval-engine/example/laravel-demo
composer &lt;span class="nb"&gt;install
&lt;/span&gt;php artisan approval:demo
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🔗 GitHub
&lt;/h2&gt;

&lt;p&gt;I’d love for the community to check it out, give it a star, or suggest new features!&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://github.com/apurba-labs/laravel-approval-engine" rel="noopener noreferrer"&gt;Get the Code on GitHub&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Would love to hear your feedback! How do you handle complex approval routing in your own Laravel apps?&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>laravel</category>
      <category>php</category>
      <category>opensource</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
