CascadingDev/architecture/index.html

39 lines
31 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-architecture" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.9.2">
<title data-rh="true">CascadingDev Architecture | CascadingDev</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pages.brrd.tech/rob/CascadingDev/architecture"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="CascadingDev Architecture | CascadingDev"><meta data-rh="true" name="description" content="System Overview"><meta data-rh="true" property="og:description" content="System Overview"><link data-rh="true" rel="icon" href="/rob/CascadingDev/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pages.brrd.tech/rob/CascadingDev/architecture"><link data-rh="true" rel="alternate" href="https://pages.brrd.tech/rob/CascadingDev/architecture" hreflang="en"><link data-rh="true" rel="alternate" href="https://pages.brrd.tech/rob/CascadingDev/architecture" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"CascadingDev Architecture","item":"https://pages.brrd.tech/rob/CascadingDev/architecture"}]}</script><link rel="stylesheet" href="/rob/CascadingDev/assets/css/styles.6095798e.css">
<script src="/rob/CascadingDev/assets/js/runtime~main.3a71fb5d.js" defer="defer"></script>
<script src="/rob/CascadingDev/assets/js/main.d50b0546.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")),document.documentElement.setAttribute("data-theme-choice",t||"system")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="theme-layout-navbar navbar navbar--fixed-top"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/rob/CascadingDev/"><b class="navbar__title text--truncate">CascadingDev</b></a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><a href="https://gitea.brrd.tech/rob/CascadingDev" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Source Code<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="system mode" aria-label="Switch between dark and light mode (currently system mode)"><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP systemToggleIcon_QzmC"><path fill="currentColor" d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"></path></svg></button></div><div class="navbarSearchContainer_Bca1"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside class="theme-doc-sidebar-container docSidebarContainer_YfHR"><div class="sidebarViewport_aRkj"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/rob/CascadingDev/"><span title="CascadingDev Overview" class="linkLabel_WmDU">CascadingDev Overview</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" href="/rob/CascadingDev/architecture"><span title="CascadingDev Architecture" class="linkLabel_WmDU">CascadingDev Architecture</span></a></li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/rob/CascadingDev/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">CascadingDev Architecture</span></li></ul></nav><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>CascadingDev Architecture</h1></header>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="system-overview">System Overview<a href="#system-overview" class="hash-link" aria-label="Direct link to System Overview" title="Direct link to System Overview" translate="no"></a></h2>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token plain">┌─────────────────────────────────────────────────────────────────────────┐</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ Git Repository │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌─────────────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ .ai-rules.yml │ ◄── Cascading configuration │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ src/ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ .ai-rules.yml │ ◄── Folder-specific overrides │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ feature.py │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ discussions/ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ FEAT-001.md │ ◄── Structured discussion files │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └─────────────────┘ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ▼ git commit │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌─────────────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Pre-commit Hook │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ ┌─────────────┐ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │ Safety │ │ ◄── Secret scanning, validation │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │ Checks │ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ └─────────────┘ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ ▼ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ ┌─────────────┐ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │ Rules │ │ ◄── Load cascading .ai-rules.yml │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │ Resolution │ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ └─────────────┘ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └────────┼────────┘ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">└───────────┼─────────────────────────────────────────────────────────────┘</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">┌───────────────────────────────────────────────────────────────────────┐</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ CmdForge Tool Engine │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌────────────────────────────────────────────────────────────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Provider Abstraction (Claude, Codex, Gemini, DeepSeek, Ollama) │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └────────────────────────────────────────────────────────────────┘ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌───────────────┼───────────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ▼ ▼ ▼ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Agent 1 │ │ Agent 2 │ │ Agent N │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Tools │ │ Tools │ │ Tools │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └──────────┘ └──────────┘ └──────────┘ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">└───────────────────────────────────────────────────────────────────────┘</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">┌───────────────────────────────────────────────────────────────────────┐</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ Orchestrated Discussions │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Parse │ │ Route │ │ Vote │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Discussion │──▶│ Mentions │──▶│ Counter │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └─────────────┘ └─────────────┘ └─────────────┘ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ▼ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ ┌─────────────┐ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Status │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ │ Promoter │ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">│ └─────────────┘ │</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">└───────────────────────────────────────────────────────────────────────┘</span><br></span></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="rules-resolution">Rules Resolution<a href="#rules-resolution" class="hash-link" aria-label="Direct link to Rules Resolution" title="Direct link to Rules Resolution" translate="no"></a></h2>
<p>The <code>.ai-rules.yml</code> system uses cascading inheritance:</p>
<div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># Root .ai-rules.yml</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">agents</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> moderator</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> architect</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> security</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">stages</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> feature</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> design</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> implementation</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> testing</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> review</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">providers</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token key atrule">primary</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> claude</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token key atrule">fallback</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> codex</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> gemini</span><br></span></code></pre></div></div>
<div class="language-yaml codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-yaml codeBlock_bY9V thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># src/.ai-rules.yml (inherits and overrides)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">agents</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> pragmatist </span><span class="token comment" style="color:rgb(98, 114, 164)"># Add pragmatist for implementation code</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">-</span><span class="token plain"> perfectionist </span><span class="token comment" style="color:rgb(98, 114, 164)"># Add perfectionist for code quality</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># Inherits stages and providers from parent</span><br></span></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="key-modules">Key Modules<a href="#key-modules" class="hash-link" aria-label="Direct link to Key Modules" title="Direct link to Key Modules" translate="no"></a></h2>
<table><thead><tr><th>Module</th><th>Location</th><th>Purpose</th></tr></thead><tbody><tr><td><code>cascading.rules</code></td><td><code>src/rules/</code></td><td>YAML parsing, inheritance resolution</td></tr><tr><td><code>cascading.hooks</code></td><td><code>src/hooks/</code></td><td>Pre-commit hook logic</td></tr><tr><td><code>cascading.agents</code></td><td><code>src/agents/</code></td><td>Agent definitions and prompts</td></tr><tr><td><code>cascading.safety</code></td><td><code>src/safety/</code></td><td>Secret scanning, validation</td></tr><tr><td><code>cascading.installer</code></td><td><code>src/installer/</code></td><td>Bundle generation</td></tr></tbody></table>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="data-flow">Data Flow<a href="#data-flow" class="hash-link" aria-label="Direct link to Data Flow" title="Direct link to Data Flow" translate="no"></a></h2>
<ol>
<li class=""><strong>Commit Trigger</strong>: User runs <code>git commit</code></li>
<li class=""><strong>Hook Execution</strong>: Pre-commit hook starts</li>
<li class=""><strong>Safety Checks</strong>: Scan for secrets, validate files</li>
<li class=""><strong>Rules Load</strong>: Resolve cascading <code>.ai-rules.yml</code></li>
<li class=""><strong>Agent Dispatch</strong>: Send files to configured agents via CmdForge</li>
<li class=""><strong>Discussion Update</strong>: Append agent responses to discussion files</li>
<li class=""><strong>Vote Count</strong>: Calculate consensus from voting</li>
<li class=""><strong>Status Promotion</strong>: Update status if threshold met</li>
<li class=""><strong>Summary Generation</strong>: Create/update summary files</li>
<li class=""><strong>Commit Proceeds</strong>: If all checks pass</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="configuration-files">Configuration Files<a href="#configuration-files" class="hash-link" aria-label="Direct link to Configuration Files" title="Direct link to Configuration Files" translate="no"></a></h2>
<table><thead><tr><th>File</th><th>Purpose</th></tr></thead><tbody><tr><td><code>.ai-rules.yml</code></td><td>Agent selection, stages, providers</td></tr><tr><td><code>.ai-ignore</code></td><td>Files to exclude from AI processing</td></tr><tr><td><code>.ai-secrets</code></td><td>Patterns for secret detection</td></tr></tbody></table></div></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/rob/CascadingDev/"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">CascadingDev Overview</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#system-overview" class="table-of-contents__link toc-highlight">System Overview</a></li><li><a href="#rules-resolution" class="table-of-contents__link toc-highlight">Rules Resolution</a></li><li><a href="#key-modules" class="table-of-contents__link toc-highlight">Key Modules</a></li><li><a href="#data-flow" class="table-of-contents__link toc-highlight">Data Flow</a></li><li><a href="#configuration-files" class="table-of-contents__link toc-highlight">Configuration Files</a></li></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/rob/CascadingDev/">Overview</a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitea.brrd.tech/rob/CascadingDev" target="_blank" rel="noopener noreferrer" class="footer__link-item">Gitea<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">CascadingDev Documentation</div></div></div></footer></div>
</body>
</html>