<!-- CANARY: REQ=REQ-DOCS-001; FEATURE="Docs"; ASPECT=Documentation; STATUS=TESTED; OWNER=docs; UPDATED=2026-01-15 --> <p>Contributing to Geode means joining a vibrant open-source community dedicated to building a production-ready, ISO/IEC 39075:2024-compliant graph database. Whether you&rsquo;re fixing bugs, adding features, improving documentation, or helping other users, your contributions help make Geode better for everyone. This category provides comprehensive guidance for contributing effectively, understanding the codebase, following project conventions, and participating in the community.</p> <p>Geode is written primarily in Zig, with polyglot client libraries in Go, Python, Rust, Node.js, and Zig. The project maintains rigorous quality standards including 97.4% test coverage, evidence-based development with CANARY governance markers tracking 2,190+ requirements, and comprehensive documentation. Understanding these standards and the contribution workflow ensures your contributions can be reviewed, merged, and maintained effectively.</p> <p>This guide covers everything from setting up your development environment through submitting pull requests, writing tests, maintaining documentation, and participating in design discussions. Whether you&rsquo;re making your first open-source contribution or you&rsquo;re an experienced contributor, this guide provides the information you need.</p> <h3 id="getting-started" class="position-relative d-flex align-items-center group"> <span>Getting Started</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="getting-started" aria-haspopup="dialog" aria-label="Share link: Getting Started"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3><div id="headingShareModal" class="heading-share-modal" role="dialog" aria-modal="true" aria-labelledby="headingShareTitle" hidden> <div class="hsm-dialog" role="document"> <div class="hsm-header"> <h2 id="headingShareTitle" class="h6 mb-0 fw-bold">Share this section</h2> <button type="button" class="hsm-close" aria-label="Close"> <i class="fa-solid fa-xmark"></i> </button> </div> <div class="hsm-body"> <label for="headingShareInput" class="form-label small text-muted mb-1 text-uppercase fw-bold" style="font-size: 0.7rem; letter-spacing: 0.5px;">Permalink</label> <div class="input-group mb-4 hsm-url-group"> <input id="headingShareInput" type="text" class="form-control font-monospace" readonly aria-readonly="true" style="font-size: 0.85rem;" /> <button class="btn btn-primary hsm-copy" type="button" aria-label="Copy" title="Copy"> <i class="fa-duotone fa-clipboard" aria-hidden="true"></i> </button> </div> <div class="small fw-bold mb-2 text-muted text-uppercase" style="font-size: 0.7rem; letter-spacing: 0.5px;">Share via</div> <div class="hsm-share-grid"> <a id="share-twitter" class="btn btn-outline-secondary w-100" target="_blank" rel="noopener noreferrer"> <i class="fa-brands fa-twitter me-2"></i>Twitter </a> <a id="share-linkedin" class="btn btn-outline-secondary w-100" target="_blank" rel="noopener noreferrer"> <i class="fa-brands fa-linkedin me-2"></i>LinkedIn </a> <a id="share-facebook" class="btn btn-outline-secondary w-100" target="_blank" rel="noopener noreferrer"> <i class="fa-brands fa-facebook me-2"></i>Facebook </a> </div> </div> </div> </div> <style> .heading-share-modal { position: fixed; inset: 0; display: flex; justify-content: center; align-items: center; background: rgba(0, 0, 0, 0.6); z-index: 1050; padding: 1rem; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); } .heading-share-modal[hidden] { display: none !important; } .hsm-dialog { max-width: 420px; width: 100%; background: var(--bs-body-bg, #fff); color: var(--bs-body-color, #212529); border: 1px solid var(--bs-border-color, rgba(0,0,0,0.1)); border-radius: 1rem; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); overflow: hidden; animation: hsm-fade-in 0.2s ease-out; } @keyframes hsm-fade-in { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } } [data-bs-theme="dark"] .hsm-dialog { background: #1e293b; border-color: rgba(255,255,255,0.1); color: #f8f9fa; } .hsm-header { display: flex; justify-content: space-between; align-items: center; padding: 1rem 1.5rem; border-bottom: 1px solid var(--bs-border-color, rgba(0,0,0,0.1)); background: rgba(0,0,0,0.02); } [data-bs-theme="dark"] .hsm-header { background: rgba(255,255,255,0.02); border-color: rgba(255,255,255,0.1); } .hsm-close { background: transparent; border: none; color: inherit; opacity: 0.5; padding: 0.25rem 0.5rem; border-radius: 0.25rem; font-size: 1.2rem; line-height: 1; transition: opacity 0.2s; } .hsm-close:hover { opacity: 1; } .hsm-body { padding: 1.5rem; } .hsm-url-group { display: flex !important; align-items: stretch; } .hsm-url-group .form-control { flex: 1; min-width: 0; margin: 0; background: var(--bs-secondary-bg, #f8f9fa); border-color: var(--bs-border-color, #dee2e6); border-top-right-radius: 0; border-bottom-right-radius: 0; height: 42px; } .hsm-url-group .btn { flex: 0 0 auto; margin: 0; margin-left: -1px; border-top-left-radius: 0; border-bottom-left-radius: 0; height: 42px; display: flex; align-items: center; justify-content: center; padding: 0 1.25rem; z-index: 2; } [data-bs-theme="dark"] .hsm-url-group .form-control { background: #0f172a; border-color: #334155; color: #e2e8f0; } .hsm-share-grid { display: flex; flex-direction: column; gap: 0.5rem; } .hsm-share-grid .btn { display: flex; align-items: center; justify-content: center; font-size: 0.9rem; padding: 0.6rem; border-color: var(--bs-border-color); width: 100%; } [data-bs-theme="dark"] .hsm-share-grid .btn { color: #e2e8f0; border-color: #475569; } [data-bs-theme="dark"] .hsm-share-grid .btn:hover { background: #334155; border-color: #cbd5e1; } </style> <script> (function(){ const modal = document.getElementById('headingShareModal'); if(!modal) return; const input = modal.querySelector('#headingShareInput'); const copyBtn = modal.querySelector('.hsm-copy'); const twitter = modal.querySelector('#share-twitter'); const linkedin = modal.querySelector('#share-linkedin'); const facebook = modal.querySelector('#share-facebook'); const closeBtn = modal.querySelector('.hsm-close'); let lastFocus=null; let trapBound=false; function buildUrl(id){ return window.location.origin + window.location.pathname + '#' + id; } function isOpen(){ return !modal.hasAttribute('hidden'); } function hydrate(id){ const url=buildUrl(id); input.value=url; const enc=encodeURIComponent(url); const text=encodeURIComponent(document.title); if(twitter) twitter.href=`https://twitter.com/intent/tweet?url=${enc}&text=${text}`; if(linkedin) linkedin.href=`https://www.linkedin.com/sharing/share-offsite/?url=${enc}`; if(facebook) facebook.href=`https://www.facebook.com/sharer/sharer.php?u=${enc}`; } function openModal(id){ lastFocus=document.activeElement; hydrate(id); if(!isOpen()){ modal.removeAttribute('hidden'); } requestAnimationFrame(()=>{ input.focus(); }); trapFocus(); } function closeModal(){ if(!isOpen()) return; modal.setAttribute('hidden',''); if(lastFocus && typeof lastFocus.focus==='function') lastFocus.focus(); } function copyCurrent(){ try{ navigator.clipboard.writeText(input.value).then(()=>feedback(true),()=>fallback()); } catch(e){ fallback(); } } function fallback(){ input.select(); try{ document.execCommand('copy'); feedback(true);}catch(e){ feedback(false);} } function feedback(ok){ if(!copyBtn) return; const icon=copyBtn.querySelector('i'); if(!icon) return; const prev=copyBtn.getAttribute('data-prev')||icon.className; if(!copyBtn.getAttribute('data-prev')) copyBtn.setAttribute('data-prev',prev); icon.className= ok ? 'fa-duotone fa-clipboard-check':'fa-duotone fa-circle-exclamation'; setTimeout(()=>{ icon.className=prev; },1800); } function handleShareClick(e){ e.preventDefault(); const btn=e.currentTarget; const id=btn.getAttribute('data-share-target'); if(id) openModal(id); } function bindShareButtons(){ document.querySelectorAll('.h-share').forEach(btn=>{ if(!btn.dataset.hShareBound){ btn.addEventListener('click', handleShareClick); btn.dataset.hShareBound='1'; } }); } bindShareButtons(); if(document.readyState==='loading'){ document.addEventListener('DOMContentLoaded', bindShareButtons); } else { requestAnimationFrame(bindShareButtons); } document.addEventListener('click', function(e){ const shareBtn=e.target.closest && e.target.closest('.h-share'); if(shareBtn && !shareBtn.dataset.hShareBound){ handleShareClick.call(shareBtn, e); } }, true); document.addEventListener('click', e=>{ if(e.target===modal) closeModal(); if(e.target.closest && e.target.closest('.hsm-close')){ e.preventDefault(); closeModal(); } if(copyBtn && (e.target===copyBtn || (e.target.closest && e.target.closest('.hsm-copy')))) { e.preventDefault(); copyCurrent(); } }); document.addEventListener('keydown', e=>{ if(e.key==='Escape' && isOpen()) closeModal(); }); function trapFocus(){ if(trapBound) return; trapBound=true; modal.addEventListener('keydown', f=>{ if(f.key==='Tab' && isOpen()){ const focusable=[...modal.querySelectorAll('a[href],button,input,textarea,select,[tabindex]:not([tabindex="-1"])')].filter(el=>!el.hasAttribute('disabled')); if(!focusable.length) return; const first=focusable[0]; const last=focusable[focusable.length-1]; if(f.shiftKey && document.activeElement===first){ f.preventDefault(); last.focus(); } else if(!f.shiftKey && document.activeElement===last){ f.preventDefault(); first.focus(); } } }); } if(closeBtn) closeBtn.addEventListener('click', e=>{ e.preventDefault(); closeModal(); }); })(); </script> <h4 id="development-environment-setup" class="position-relative d-flex align-items-center group"> <span>Development Environment Setup</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="development-environment-setup" aria-haspopup="dialog" aria-label="Share link: Development Environment Setup"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4> <h5 id="prerequisites" class="position-relative d-flex align-items-center group"> <span>Prerequisites</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="prerequisites" aria-haspopup="dialog" aria-label="Share link: Prerequisites"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h5><ul> <li><strong>Zig 0.1.0+</strong>: For server and Zig client development</li> <li><strong>Go 1.24.0+</strong>: For Go client development</li> <li><strong>Python 3.9+</strong>: For Python client development</li> <li><strong>Rust 1.70+</strong>: For Rust client development</li> <li><strong>Git</strong>: For version control</li> </ul> <h5 id="clone-the-repository" class="position-relative d-flex align-items-center group"> <span>Clone the Repository</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="clone-the-repository" aria-haspopup="dialog" aria-label="Share link: Clone the Repository"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h5><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Clone the monorepo</span> </span></span><span class="line"><span class="cl">git clone https://github.com/codeprosorg/geode </span></span><span class="line"><span class="cl"><span class="nb">cd</span> geode </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># The monorepo contains:</span> </span></span><span class="line"><span class="cl"><span class="c1"># - geode/ Main database server</span> </span></span><span class="line"><span class="cl"><span class="c1"># - geode-client-go/ Go client library</span> </span></span><span class="line"><span class="cl"><span class="c1"># - geode-client-python/ Python client library</span> </span></span><span class="line"><span class="cl"><span class="c1"># - geode-client-rust/ Rust client library</span> </span></span><span class="line"><span class="cl"><span class="c1"># - geode-client-zig/ Zig client library</span> </span></span><span class="line"><span class="cl"><span class="c1"># - geode-test-harness/ Cross-client testing</span> </span></span><span class="line"><span class="cl"><span class="c1"># - gql/ GQL reference implementation</span> </span></span></code></pre></div> <h5 id="server-development-setup" class="position-relative d-flex align-items-center group"> <span>Server Development Setup</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="server-development-setup" aria-haspopup="dialog" aria-label="Share link: Server Development Setup"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h5><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nb">cd</span> geode </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Build the server</span> </span></span><span class="line"><span class="cl">make build </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Run tests</span> </span></span><span class="line"><span class="cl">make <span class="nb">test</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Run comprehensive test suite (97.4% pass rate)</span> </span></span><span class="line"><span class="cl">make geodetestlab-comprehensive </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Start development server</span> </span></span><span class="line"><span class="cl">./zig-out/bin/geode serve --listen 127.0.0.1:3141 </span></span></code></pre></div> <h5 id="client-development-setup" class="position-relative d-flex align-items-center group"> <span>Client Development Setup</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="client-development-setup" aria-haspopup="dialog" aria-label="Share link: Client Development Setup"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h5><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Go client</span> </span></span><span class="line"><span class="cl"><span class="nb">cd</span> geode-client-go </span></span><span class="line"><span class="cl">go <span class="nb">test</span> -v </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Python client</span> </span></span><span class="line"><span class="cl"><span class="nb">cd</span> geode-client-python </span></span><span class="line"><span class="cl">pip install -r requirements.txt </span></span><span class="line"><span class="cl">pytest </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Rust client</span> </span></span><span class="line"><span class="cl"><span class="nb">cd</span> geode-client-rust </span></span><span class="line"><span class="cl">cargo build </span></span><span class="line"><span class="cl">cargo <span class="nb">test</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Zig client</span> </span></span><span class="line"><span class="cl"><span class="nb">cd</span> geode-client-zig </span></span><span class="line"><span class="cl">zig build </span></span><span class="line"><span class="cl">zig build <span class="nb">test</span> </span></span></code></pre></div> <h3 id="contribution-workflow" class="position-relative d-flex align-items-center group"> <span>Contribution Workflow</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="contribution-workflow" aria-haspopup="dialog" aria-label="Share link: Contribution Workflow"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="1-find-or-create-an-issue" class="position-relative d-flex align-items-center group"> <span>1. Find or Create an Issue</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="1-find-or-create-an-issue" aria-haspopup="dialog" aria-label="Share link: 1. Find or Create an Issue"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>Before starting work, check if an issue exists:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Search existing issues</span> </span></span><span class="line"><span class="cl"><span class="c1"># Visit: https://gitlab.com/devnw/codepros/geode/-/issues</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Create a new issue if needed</span> </span></span><span class="line"><span class="cl"><span class="c1"># Describe the problem or feature request clearly</span> </span></span><span class="line"><span class="cl"><span class="c1"># Include reproduction steps for bugs</span> </span></span><span class="line"><span class="cl"><span class="c1"># Provide use cases for feature requests</span> </span></span></code></pre></div> <h4 id="2-create-a-feature-branch" class="position-relative d-flex align-items-center group"> <span>2. Create a Feature Branch</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="2-create-a-feature-branch" aria-haspopup="dialog" aria-label="Share link: 2. Create a Feature Branch"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Create a branch from main</span> </span></span><span class="line"><span class="cl">git checkout -b feature/your-feature-name </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Or for bug fixes</span> </span></span><span class="line"><span class="cl">git checkout -b fix/issue-description </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Branch naming conventions:</span> </span></span><span class="line"><span class="cl"><span class="c1"># - feature/feature-name</span> </span></span><span class="line"><span class="cl"><span class="c1"># - fix/bug-description</span> </span></span><span class="line"><span class="cl"><span class="c1"># - docs/documentation-update</span> </span></span><span class="line"><span class="cl"><span class="c1"># - refactor/refactoring-description</span> </span></span></code></pre></div> <h4 id="3-make-your-changes" class="position-relative d-flex align-items-center group"> <span>3. Make Your Changes</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="3-make-your-changes" aria-haspopup="dialog" aria-label="Share link: 3. Make Your Changes"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>Follow the project&rsquo;s coding standards and architecture:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// Zig code style </span></span></span><span class="line"><span class="cl"><span class="c1">// - Use 4 spaces for indentation </span></span></span><span class="line"><span class="cl"><span class="c1">// - Follow Zig naming conventions </span></span></span><span class="line"><span class="cl"><span class="c1">// - Add doc comments for public APIs </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="c1">/// Executes a GQL query and returns results. </span></span></span><span class="line"><span class="cl"><span class="c1">/// </span></span></span><span class="line"><span class="cl"><span class="c1">/// # Arguments </span></span></span><span class="line"><span class="cl"><span class="c1">/// * `query` - The GQL query string </span></span></span><span class="line"><span class="cl"><span class="c1">/// * `params` - Optional query parameters </span></span></span><span class="line"><span class="cl"><span class="c1">/// </span></span></span><span class="line"><span class="cl"><span class="c1">/// # Returns </span></span></span><span class="line"><span class="cl"><span class="c1">/// A result iterator over query results </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="kr">pub</span><span class="w"> </span><span class="k">fn</span><span class="w"> </span><span class="n">execute</span><span class="p">(</span><span class="n">self</span><span class="o">:</span><span class="w"> </span><span class="o">*</span><span class="n">Client</span><span class="p">,</span><span class="w"> </span><span class="n">query</span><span class="o">:</span><span class="w"> </span><span class="p">[]</span><span class="kr">const</span><span class="w"> </span><span class="kt">u8</span><span class="p">,</span><span class="w"> </span><span class="n">params</span><span class="o">:</span><span class="w"> </span><span class="o">?</span><span class="n">Params</span><span class="p">)</span><span class="w"> </span><span class="o">!</span><span class="n">ResultIterator</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Implementation </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="p">}</span><span class="w"> </span></span></span></code></pre></div> <h4 id="4-write-tests" class="position-relative d-flex align-items-center group"> <span>4. Write Tests</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="4-write-tests" aria-haspopup="dialog" aria-label="Share link: 4. Write Tests"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>All code changes must include tests:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// geode/src/tests/query_test.zig </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="k">test</span><span class="w"> </span><span class="s">&#34;query with parameters&#34;</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">allocator</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="p">.</span><span class="n">testing</span><span class="p">.</span><span class="n">allocator</span><span class="p">;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">var</span><span class="w"> </span><span class="n">client</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">Client</span><span class="p">.</span><span class="n">connect</span><span class="p">(</span><span class="n">allocator</span><span class="p">,</span><span class="w"> </span><span class="s">&#34;localhost&#34;</span><span class="p">,</span><span class="w"> </span><span class="mi">3141</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">defer</span><span class="w"> </span><span class="n">client</span><span class="p">.</span><span class="n">deinit</span><span class="p">();</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">query</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&#34;MATCH (u:User {id: $id}) RETURN u.name&#34;</span><span class="p">;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">params</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">.{</span><span class="w"> </span><span class="p">.</span><span class="n">id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">123</span><span class="w"> </span><span class="p">};</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">var</span><span class="w"> </span><span class="n">result</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">client</span><span class="p">.</span><span class="n">execute</span><span class="p">(</span><span class="n">query</span><span class="p">,</span><span class="w"> </span><span class="n">params</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">defer</span><span class="w"> </span><span class="n">result</span><span class="p">.</span><span class="n">deinit</span><span class="p">();</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">row</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">result</span><span class="p">.</span><span class="n">next</span><span class="p">();</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">std</span><span class="p">.</span><span class="n">testing</span><span class="p">.</span><span class="n">expectEqualStrings</span><span class="p">(</span><span class="s">&#34;Alice&#34;</span><span class="p">,</span><span class="w"> </span><span class="n">row</span><span class="p">.</span><span class="o">?</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="s">&#34;u.name&#34;</span><span class="p">).</span><span class="o">?</span><span class="p">.</span><span class="n">string</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="p">}</span><span class="w"> </span></span></span></code></pre></div><p>Test coverage requirements:</p> <ul> <li>All new features must have tests</li> <li>Bug fixes must include regression tests</li> <li>Maintain or improve overall coverage (currently 97.4%)</li> <li>Use <code>make geodetestlab-comprehensive</code> to run full suite</li> </ul> <h4 id="5-update-documentation" class="position-relative d-flex align-items-center group"> <span>5. Update Documentation</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="5-update-documentation" aria-haspopup="dialog" aria-label="Share link: 5. Update Documentation"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>Documentation updates are required for:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-markdown" data-lang="markdown"><span class="line"><span class="cl"><span class="gh"># API changes - Update API_REFERENCE.md </span></span></span><span class="line"><span class="cl"><span class="gh"># New features - Update FEATURES_OVERVIEW.md </span></span></span><span class="line"><span class="cl"><span class="gh"># User-facing changes - Update relevant guides </span></span></span><span class="line"><span class="cl"><span class="gh"># Breaking changes - Update CHANGELOG.md and migration guides </span></span></span></code></pre></div> <h4 id="6-add-canary-markers" class="position-relative d-flex align-items-center group"> <span>6. Add CANARY Markers</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="6-add-canary-markers" aria-haspopup="dialog" aria-label="Share link: 6. Add CANARY Markers"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>Geode uses CANARY governance markers to track requirements:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// CANARY-START:FEATURE:GQL-COMPLIANCE:MATCH-CLAUSE </span></span></span><span class="line"><span class="cl"><span class="c1">// Implementation of ISO/IEC 39075:2024 MATCH clause </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="kr">pub</span><span class="w"> </span><span class="k">fn</span><span class="w"> </span><span class="n">executeMatch</span><span class="p">(</span><span class="n">self</span><span class="o">:</span><span class="w"> </span><span class="o">*</span><span class="n">QueryEngine</span><span class="p">,</span><span class="w"> </span><span class="n">pattern</span><span class="o">:</span><span class="w"> </span><span class="n">Pattern</span><span class="p">)</span><span class="w"> </span><span class="o">!</span><span class="n">ResultSet</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Implementation that satisfies GQL spec </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="p">}</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="c1">// CANARY-END:FEATURE:GQL-COMPLIANCE:MATCH-CLAUSE </span></span></span></code></pre></div><p>CANARY markers track:</p> <ul> <li>Feature implementations</li> <li>Compliance requirements</li> <li>Security measures</li> <li>Performance guarantees</li> <li>Test coverage</li> </ul> <h4 id="7-commit-your-changes" class="position-relative d-flex align-items-center group"> <span>7. Commit Your Changes</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="7-commit-your-changes" aria-haspopup="dialog" aria-label="Share link: 7. Commit Your Changes"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>Follow conventional commit format:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Commit message format</span> </span></span><span class="line"><span class="cl">git commit -m <span class="s2">&#34;type(scope): description </span></span></span><span class="line"><span class="cl"><span class="s2"> </span></span></span><span class="line"><span class="cl"><span class="s2">Longer description of the change, why it was needed, </span></span></span><span class="line"><span class="cl"><span class="s2">and any relevant context. </span></span></span><span class="line"><span class="cl"><span class="s2"> </span></span></span><span class="line"><span class="cl"><span class="s2">Closes #issue-number&#34;</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Types:</span> </span></span><span class="line"><span class="cl"><span class="c1"># - feat: New feature</span> </span></span><span class="line"><span class="cl"><span class="c1"># - fix: Bug fix</span> </span></span><span class="line"><span class="cl"><span class="c1"># - docs: Documentation only</span> </span></span><span class="line"><span class="cl"><span class="c1"># - style: Formatting, no code change</span> </span></span><span class="line"><span class="cl"><span class="c1"># - refactor: Code restructuring</span> </span></span><span class="line"><span class="cl"><span class="c1"># - perf: Performance improvement</span> </span></span><span class="line"><span class="cl"><span class="c1"># - test: Adding tests</span> </span></span><span class="line"><span class="cl"><span class="c1"># - chore: Build process, dependencies</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Examples:</span> </span></span><span class="line"><span class="cl">git commit -m <span class="s2">&#34;feat(query): add support for OPTIONAL MATCH </span></span></span><span class="line"><span class="cl"><span class="s2"> </span></span></span><span class="line"><span class="cl"><span class="s2">Implements optional pattern matching per ISO/IEC 39075:2024 </span></span></span><span class="line"><span class="cl"><span class="s2">section 7.3. Includes comprehensive tests and updates to </span></span></span><span class="line"><span class="cl"><span class="s2">query planner. </span></span></span><span class="line"><span class="cl"><span class="s2"> </span></span></span><span class="line"><span class="cl"><span class="s2">Closes #234&#34;</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl">git commit -m <span class="s2">&#34;fix(mvcc): prevent snapshot leak in long transactions </span></span></span><span class="line"><span class="cl"><span class="s2"> </span></span></span><span class="line"><span class="cl"><span class="s2">Fixes memory leak when transactions are held open for &gt;1 hour. </span></span></span><span class="line"><span class="cl"><span class="s2">Adds test case to verify cleanup. </span></span></span><span class="line"><span class="cl"><span class="s2"> </span></span></span><span class="line"><span class="cl"><span class="s2">Closes #456&#34;</span> </span></span></code></pre></div> <h4 id="8-push-and-create-merge-request" class="position-relative d-flex align-items-center group"> <span>8. Push and Create Merge Request</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="8-push-and-create-merge-request" aria-haspopup="dialog" aria-label="Share link: 8. Push and Create Merge Request"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Push your branch</span> </span></span><span class="line"><span class="cl">git push -u origin feature/your-feature-name </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Create merge request on GitLab</span> </span></span><span class="line"><span class="cl"><span class="c1"># Fill in the MR template:</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Description of changes</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Testing performed</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Documentation updates</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Breaking changes (if any)</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Related issues</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># MR title format:</span> </span></span><span class="line"><span class="cl"><span class="c1"># &#34;feat: Add vector search support&#34;</span> </span></span><span class="line"><span class="cl"><span class="c1"># &#34;fix: Resolve deadlock in transaction manager&#34;</span> </span></span><span class="line"><span class="cl"><span class="c1"># &#34;docs: Update client library examples&#34;</span> </span></span></code></pre></div> <h3 id="code-review-process" class="position-relative d-flex align-items-center group"> <span>Code Review Process</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="code-review-process" aria-haspopup="dialog" aria-label="Share link: Code Review Process"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="what-reviewers-look-for" class="position-relative d-flex align-items-center group"> <span>What Reviewers Look For</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="what-reviewers-look-for" aria-haspopup="dialog" aria-label="Share link: What Reviewers Look For"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ol> <li><strong>Correctness</strong>: Does the code work as intended?</li> <li><strong>Tests</strong>: Are there comprehensive tests?</li> <li><strong>Performance</strong>: Are there performance regressions?</li> <li><strong>Standards</strong>: Does it follow ISO/IEC 39075:2024?</li> <li><strong>Documentation</strong>: Are user-facing changes documented?</li> <li><strong>Code quality</strong>: Is the code maintainable?</li> <li><strong>CANARY markers</strong>: Are requirements tracked?</li> </ol> <h4 id="addressing-review-feedback" class="position-relative d-flex align-items-center group"> <span>Addressing Review Feedback</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="addressing-review-feedback" aria-haspopup="dialog" aria-label="Share link: Addressing Review Feedback"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Make changes based on feedback</span> </span></span><span class="line"><span class="cl">git add . </span></span><span class="line"><span class="cl">git commit -m <span class="s2">&#34;Address review feedback: improve error handling&#34;</span> </span></span><span class="line"><span class="cl">git push </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Merge requests are updated automatically</span> </span></span><span class="line"><span class="cl"><span class="c1"># Continue discussion in MR comments</span> </span></span><span class="line"><span class="cl"><span class="c1"># Resolve conversations as addressed</span> </span></span></code></pre></div> <h3 id="testing-guidelines" class="position-relative d-flex align-items-center group"> <span>Testing Guidelines</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="testing-guidelines" aria-haspopup="dialog" aria-label="Share link: Testing Guidelines"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="unit-tests" class="position-relative d-flex align-items-center group"> <span>Unit Tests</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="unit-tests" aria-haspopup="dialog" aria-label="Share link: Unit Tests"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// Test individual functions </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="k">test</span><span class="w"> </span><span class="s">&#34;transaction rollback releases locks&#34;</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">var</span><span class="w"> </span><span class="n">tx</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">Transaction</span><span class="p">.</span><span class="n">begin</span><span class="p">(</span><span class="n">allocator</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">defer</span><span class="w"> </span><span class="n">tx</span><span class="p">.</span><span class="n">deinit</span><span class="p">();</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">tx</span><span class="p">.</span><span class="n">acquireLock</span><span class="p">(.</span><span class="n">exclusive</span><span class="p">,</span><span class="w"> </span><span class="n">node_id</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">tx</span><span class="p">.</span><span class="n">rollback</span><span class="p">();</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Verify lock is released </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">std</span><span class="p">.</span><span class="n">testing</span><span class="p">.</span><span class="n">expect</span><span class="p">(</span><span class="o">!</span><span class="n">lock_manager</span><span class="p">.</span><span class="n">isLocked</span><span class="p">(</span><span class="n">node_id</span><span class="p">));</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="p">}</span><span class="w"> </span></span></span></code></pre></div> <h4 id="integration-tests" class="position-relative d-flex align-items-center group"> <span>Integration Tests</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="integration-tests" aria-haspopup="dialog" aria-label="Share link: Integration Tests"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-gql" data-lang="gql"><span class="line"><span class="cl"><span class="err">--</span><span class="w"> </span><span class="py">Test</span><span class="w"> </span><span class="py">full</span><span class="w"> </span><span class="kd">query</span><span class="w"> </span><span class="nc">execution</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="err">--</span><span class="w"> </span><span class="py">tests</span><span class="err">/</span><span class="py">integration</span><span class="err">/</span><span class="kd">query</span><span class="nc">_test</span><span class="err">.</span><span class="py">gql</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="py">CREATE</span><span class="w"> </span><span class="p">(:</span><span class="nc">User</span><span class="w"> </span><span class="p">{</span><span class="py">name</span><span class="p">:</span><span class="w"> </span><span class="err">&#39;</span><span class="nc">Alice</span><span class="err">&#39;</span><span class="p">,</span><span class="w"> </span><span class="py">email</span><span class="p">:</span><span class="w"> </span><span class="err">&#39;</span><span class="nc">alice</span><span class="nd">@example</span><span class="err">.</span><span class="py">com</span><span class="err">&#39;</span><span class="p">})</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="py">CREATE</span><span class="w"> </span><span class="p">(:</span><span class="nc">User</span><span class="w"> </span><span class="p">{</span><span class="py">name</span><span class="p">:</span><span class="w"> </span><span class="err">&#39;</span><span class="nc">Bob</span><span class="err">&#39;</span><span class="p">,</span><span class="w"> </span><span class="py">email</span><span class="p">:</span><span class="w"> </span><span class="err">&#39;</span><span class="nc">bob</span><span class="nd">@example</span><span class="err">.</span><span class="py">com</span><span class="err">&#39;</span><span class="p">})</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="py">MATCH</span><span class="w"> </span><span class="p">(</span><span class="py">u</span><span class="p">:</span><span class="nc">User</span><span class="p">)</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="py">WHERE</span><span class="w"> </span><span class="py">u</span><span class="err">.</span><span class="py">name</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="err">&#39;</span><span class="py">Alice</span><span class="err">&#39;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="py">RETURN</span><span class="w"> </span><span class="py">u</span><span class="err">.</span><span class="py">email</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="err">--</span><span class="w"> </span><span class="py">EXPECT</span><span class="p">:</span><span class="w"> </span><span class="nc">alice</span><span class="nd">@example</span><span class="err">.</span><span class="py">com</span><span class="w"> </span></span></span></code></pre></div> <h4 id="compliance-tests" class="position-relative d-flex align-items-center group"> <span>Compliance Tests</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="compliance-tests" aria-haspopup="dialog" aria-label="Share link: Compliance Tests"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// Test ISO/IEC 39075:2024 compliance </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="k">test</span><span class="w"> </span><span class="s">&#34;GQL compliance: MATCH with WHERE&#34;</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Test implementation against GQL spec section X.Y.Z </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">query</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&#34;MATCH (n:Node) WHERE n.prop &gt; 10 RETURN n&#34;</span><span class="p">;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Verify behavior matches spec </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="p">}</span><span class="w"> </span></span></span></code></pre></div> <h4 id="performance-tests" class="position-relative d-flex align-items-center group"> <span>Performance Tests</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="performance-tests" aria-haspopup="dialog" aria-label="Share link: Performance Tests"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// Benchmark critical paths </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="k">test</span><span class="w"> </span><span class="s">&#34;query execution performance&#34;</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">iterations</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">10000</span><span class="p">;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">start</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="p">.</span><span class="n">time</span><span class="p">.</span><span class="n">nanoTimestamp</span><span class="p">();</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="mi">0</span><span class="p">..</span><span class="n">iterations</span><span class="p">)</span><span class="w"> </span><span class="o">|</span><span class="n">_</span><span class="o">|</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="n">_</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">client</span><span class="p">.</span><span class="n">execute</span><span class="p">(</span><span class="n">query</span><span class="p">,</span><span class="w"> </span><span class="n">params</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="p">}</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">elapsed</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="p">.</span><span class="n">time</span><span class="p">.</span><span class="n">nanoTimestamp</span><span class="p">()</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">start</span><span class="p">;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="kr">const</span><span class="w"> </span><span class="n">avg_ns</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">elapsed</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">iterations</span><span class="p">;</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Verify performance target (e.g., &lt; 1ms average) </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="w"> </span><span class="k">try</span><span class="w"> </span><span class="n">std</span><span class="p">.</span><span class="n">testing</span><span class="p">.</span><span class="n">expect</span><span class="p">(</span><span class="n">avg_ns</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="mi">1_000_000</span><span class="p">);</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="p">}</span><span class="w"> </span></span></span></code></pre></div> <h3 id="documentation-guidelines" class="position-relative d-flex align-items-center group"> <span>Documentation Guidelines</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="documentation-guidelines" aria-haspopup="dialog" aria-label="Share link: Documentation Guidelines"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="code-documentation" class="position-relative d-flex align-items-center group"> <span>Code Documentation</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="code-documentation" aria-haspopup="dialog" aria-label="Share link: Code Documentation"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">/// Executes a GQL query with parameters. </span></span></span><span class="line"><span class="cl"><span class="c1">/// </span></span></span><span class="line"><span class="cl"><span class="c1">/// This function parses the query, creates an execution plan, </span></span></span><span class="line"><span class="cl"><span class="c1">/// and returns an iterator over results. The query is executed </span></span></span><span class="line"><span class="cl"><span class="c1">/// within the current transaction context if one exists. </span></span></span><span class="line"><span class="cl"><span class="c1">/// </span></span></span><span class="line"><span class="cl"><span class="c1">/// # Arguments </span></span></span><span class="line"><span class="cl"><span class="c1">/// * `query` - GQL query string (must be valid per ISO/IEC 39075:2024) </span></span></span><span class="line"><span class="cl"><span class="c1">/// * `params` - Optional map of query parameters </span></span></span><span class="line"><span class="cl"><span class="c1">/// </span></span></span><span class="line"><span class="cl"><span class="c1">/// # Returns </span></span></span><span class="line"><span class="cl"><span class="c1">/// * `ResultIterator` - Iterator over query results </span></span></span><span class="line"><span class="cl"><span class="c1">/// * `QueryError` - If query is invalid or execution fails </span></span></span><span class="line"><span class="cl"><span class="c1">/// </span></span></span><span class="line"><span class="cl"><span class="c1">/// # Example </span></span></span><span class="line"><span class="cl"><span class="c1">/// ```zig </span></span></span><span class="line"><span class="cl"><span class="c1">/// var result = try client.execute( </span></span></span><span class="line"><span class="cl"><span class="c1">/// &#34;MATCH (u:User {id: $id}) RETURN u.name&#34;, </span></span></span><span class="line"><span class="cl"><span class="c1">/// .{ .id = 123 } </span></span></span><span class="line"><span class="cl"><span class="c1">/// ); </span></span></span><span class="line"><span class="cl"><span class="c1">/// while (try result.next()) |row| { </span></span></span><span class="line"><span class="cl"><span class="c1">/// std.debug.print(&#34;{s}\n&#34;, .{row.get(&#34;u.name&#34;)}); </span></span></span><span class="line"><span class="cl"><span class="c1">/// } </span></span></span><span class="line"><span class="cl"><span class="c1">/// ``` </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="kr">pub</span><span class="w"> </span><span class="k">fn</span><span class="w"> </span><span class="n">execute</span><span class="p">(</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="n">self</span><span class="o">:</span><span class="w"> </span><span class="o">*</span><span class="n">Client</span><span class="p">,</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="n">query</span><span class="o">:</span><span class="w"> </span><span class="p">[]</span><span class="kr">const</span><span class="w"> </span><span class="kt">u8</span><span class="p">,</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="n">params</span><span class="o">:</span><span class="w"> </span><span class="o">?</span><span class="n">Params</span><span class="p">,</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="p">)</span><span class="w"> </span><span class="o">!</span><span class="n">ResultIterator</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Implementation </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="p">}</span><span class="w"> </span></span></span></code></pre></div> <h4 id="user-documentation" class="position-relative d-flex align-items-center group"> <span>User Documentation</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="user-documentation" aria-haspopup="dialog" aria-label="Share link: User Documentation"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-markdown" data-lang="markdown"><span class="line"><span class="cl"><span class="gh"># Update relevant documentation files: </span></span></span><span class="line"><span class="cl"><span class="gh"># - README.md for overview changes </span></span></span><span class="line"><span class="cl"><span class="gh"># - docs/FEATURES_OVERVIEW.md for features </span></span></span><span class="line"><span class="cl"><span class="gh"># - docs/API_REFERENCE.md for API changes </span></span></span><span class="line"><span class="cl"><span class="gh"># - docs/QUICK_REFERENCE.md for syntax </span></span></span><span class="line"><span class="cl"><span class="gh"># - CHANGELOG.md for all user-visible changes </span></span></span><span class="line"><span class="cl"><span class="gh"></span> </span></span><span class="line"><span class="cl"><span class="gh"># Example CHANGELOG.md entry: </span></span></span><span class="line"><span class="cl"><span class="gh"></span> </span></span><span class="line"><span class="cl"><span class="gu">## [Unreleased] </span></span></span><span class="line"><span class="cl"><span class="gu"></span> </span></span><span class="line"><span class="cl"><span class="gu">### Added </span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> Vector search with HNSW indexing (#234) </span></span><span class="line"><span class="cl"><span class="k">-</span> Support for OPTIONAL MATCH clause (#245) </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="gu">### Fixed </span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> Deadlock in concurrent transactions (#256) </span></span><span class="line"><span class="cl"><span class="k">-</span> Memory leak in long-running queries (#267) </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="gu">### Changed </span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> Improved query planner performance by 30% (#278) </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="gu">### Breaking Changes </span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> Configuration file format changed (see migration guide) </span></span></code></pre></div> <h3 id="architecture-and-design" class="position-relative d-flex align-items-center group"> <span>Architecture and Design</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="architecture-and-design" aria-haspopup="dialog" aria-label="Share link: Architecture and Design"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="read-claudemd-first" class="position-relative d-flex align-items-center group"> <span>Read CLAUDE.md First</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="read-claudemd-first" aria-haspopup="dialog" aria-label="Share link: Read CLAUDE.md First"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>Before making architectural changes:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Read the project guide</span> </span></span><span class="line"><span class="cl">cat geode/CLAUDE.md </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Key sections:</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Implementation Methodology (evidence-based development)</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Architecture Overview (system design)</span> </span></span><span class="line"><span class="cl"><span class="c1"># - CANARY governance system</span> </span></span><span class="line"><span class="cl"><span class="c1"># - Development guidelines</span> </span></span></code></pre></div> <h4 id="consult-for-major-changes" class="position-relative d-flex align-items-center group"> <span>Consult for Major Changes</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="consult-for-major-changes" aria-haspopup="dialog" aria-label="Share link: Consult for Major Changes"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>For significant architectural changes:</p> <ol> <li>Create a design document</li> <li>Open a discussion issue</li> <li>Get feedback before implementation</li> <li>Update architecture docs after approval</li> </ol> <h4 id="isoiec-390752024-compliance" class="position-relative d-flex align-items-center group"> <span>ISO/IEC 39075:2024 Compliance</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="isoiec-390752024-compliance" aria-haspopup="dialog" aria-label="Share link: ISO/IEC 39075:2024 Compliance"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>All GQL features must comply with the standard:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-zig" data-lang="zig"><span class="line"><span class="cl"><span class="c1">// Before implementing a GQL feature: </span></span></span><span class="line"><span class="cl"><span class="c1">// 1. Read relevant section of ISO/IEC 39075:2024 </span></span></span><span class="line"><span class="cl"><span class="c1">// 2. Understand spec requirements </span></span></span><span class="line"><span class="cl"><span class="c1">// 3. Implement per spec </span></span></span><span class="line"><span class="cl"><span class="c1">// 4. Add compliance tests </span></span></span><span class="line"><span class="cl"><span class="c1">// 5. Add CANARY markers </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="c1">// Example: Implementing EXISTS predicate per spec section 8.4 </span></span></span><span class="line"><span class="cl"><span class="c1">// CANARY-START:COMPLIANCE:GQL:EXISTS-PREDICATE </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="kr">pub</span><span class="w"> </span><span class="k">fn</span><span class="w"> </span><span class="n">evaluateExists</span><span class="p">(</span><span class="n">self</span><span class="o">:</span><span class="w"> </span><span class="o">*</span><span class="n">Evaluator</span><span class="p">,</span><span class="w"> </span><span class="n">pattern</span><span class="o">:</span><span class="w"> </span><span class="n">Pattern</span><span class="p">)</span><span class="w"> </span><span class="o">!</span><span class="kt">bool</span><span class="w"> </span><span class="p">{</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"> </span><span class="c1">// Implementation must match spec behavior exactly </span></span></span><span class="line"><span class="cl"><span class="c1"></span><span class="p">}</span><span class="w"> </span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="c1">// CANARY-END:COMPLIANCE:GQL:EXISTS-PREDICATE </span></span></span></code></pre></div> <h3 id="community-participation" class="position-relative d-flex align-items-center group"> <span>Community Participation</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="community-participation" aria-haspopup="dialog" aria-label="Share link: Community Participation"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="communication-channels" class="position-relative d-flex align-items-center group"> <span>Communication Channels</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="communication-channels" aria-haspopup="dialog" aria-label="Share link: Communication Channels"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ul> <li><strong>GitLab Issues</strong>: Bug reports and feature requests</li> <li><strong>Merge Requests</strong>: Code review and discussion</li> <li><strong>Documentation</strong>: Improvements and corrections</li> </ul> <h4 id="code-of-conduct" class="position-relative d-flex align-items-center group"> <span>Code of Conduct</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="code-of-conduct" aria-haspopup="dialog" aria-label="Share link: Code of Conduct"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ul> <li>Be respectful and professional</li> <li>Focus on technical merit</li> <li>Welcome newcomers</li> <li>Assume good intentions</li> <li>Give constructive feedback</li> </ul> <h4 id="helping-others" class="position-relative d-flex align-items-center group"> <span>Helping Others</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="helping-others" aria-haspopup="dialog" aria-label="Share link: Helping Others"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ul> <li>Answer questions in issues</li> <li>Review merge requests</li> <li>Improve documentation</li> <li>Write tutorials and examples</li> <li>Report bugs clearly</li> </ul> <h3 id="best-practices" class="position-relative d-flex align-items-center group"> <span>Best Practices</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="best-practices" aria-haspopup="dialog" aria-label="Share link: Best Practices"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="development-workflow" class="position-relative d-flex align-items-center group"> <span>Development Workflow</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="development-workflow" aria-haspopup="dialog" aria-label="Share link: Development Workflow"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ol> <li><strong>Pull latest changes</strong> before starting work</li> <li><strong>Work in small increments</strong> (easier to review)</li> <li><strong>Run tests frequently</strong> during development</li> <li><strong>Write tests first</strong> (TDD when appropriate)</li> <li><strong>Update docs</strong> as you go</li> <li><strong>Commit often</strong> with clear messages</li> <li><strong>Request review early</strong> for large changes</li> </ol> <h4 id="code-quality" class="position-relative d-flex align-items-center group"> <span>Code Quality</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="code-quality" aria-haspopup="dialog" aria-label="Share link: Code Quality"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ul> <li>Follow existing code style</li> <li>Keep functions small and focused</li> <li>Avoid premature optimization</li> <li>Write self-documenting code</li> <li>Add comments for non-obvious logic</li> <li>Handle errors properly</li> </ul> <h4 id="performance-considerations" class="position-relative d-flex align-items-center group"> <span>Performance Considerations</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="performance-considerations" aria-haspopup="dialog" aria-label="Share link: Performance Considerations"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ul> <li>Profile before optimizing</li> <li>Add benchmarks for hot paths</li> <li>Document performance characteristics</li> <li>Test with production-scale data</li> <li>Monitor memory usage</li> <li>Avoid blocking operations</li> </ul> <h3 id="getting-help" class="position-relative d-flex align-items-center group"> <span>Getting Help</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="getting-help" aria-haspopup="dialog" aria-label="Share link: Getting Help"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3> <h4 id="documentation-resources" class="position-relative d-flex align-items-center group"> <span>Documentation Resources</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="documentation-resources" aria-haspopup="dialog" aria-label="Share link: Documentation Resources"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><ul> <li><code>geode/CLAUDE.md</code> - Project overview and guidelines</li> <li><code>geode/docs/</code> - Comprehensive documentation</li> <li><code>README.md</code> files - Component-specific guides</li> <li>Code comments - Implementation details</li> </ul> <h4 id="asking-questions" class="position-relative d-flex align-items-center group"> <span>Asking Questions</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="asking-questions" aria-haspopup="dialog" aria-label="Share link: Asking Questions"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h4><p>When asking for help:</p> <ol> <li>Search existing issues first</li> <li>Provide clear reproduction steps</li> <li>Include relevant code/configuration</li> <li>Specify your environment</li> <li>Show what you&rsquo;ve tried</li> </ol> <h3 id="further-reading" class="position-relative d-flex align-items-center group"> <span>Further Reading</span> <button type="button" class="h-share btn btn-link p-0 text-decoration-none link-secondary opacity-50 hover-opacity-100 transition-all ms-1" data-share-target="further-reading" aria-haspopup="dialog" aria-label="Share link: Further Reading"> <i class="fa-sharp-duotone fa-solid fa-share-nodes" aria-hidden="true" style="font-size: 0.8em;"></i> <span class="visually-hidden">Share link</span> </button> </h3><ul> <li><a href="/tags/development/" >Development Guide</a> - Detailed development workflows</li> <li><a href="/categories/architecture/" >Architecture</a> - System architecture</li> <li><a href="/tags/gql-compliance/" >GQL Compliance</a> - ISO standard compliance</li> <li><a href="/tags/debugging/" >Testing Guide</a> - Testing strategies</li> <li><a href="/categories/performance/" >Performance</a> - Optimization guide</li> </ul>

Related Articles