RFC-NNNN — </h1> <p><strong>Status:</strong> Draft | Active | Accepted | Rejected | Withdrawn | Superseded <strong>Authors:</strong> @github-handle, @github-handle <strong>Reviewers:</strong> @github-handle (maintainer), @github-handle (sponsor) <strong>Comment window:</strong> YYYY-MM-DD → YYYY-MM-DD (2 weeks minimum) <strong>Related:</strong> RFC-XXXX, ADR-YYYY</p> <h2 id="summary">Summary</h2> <p>One paragraph. The 30-second pitch. If you cannot write the summary in one paragraph, the RFC is not ready for review.</p> <h2 id="motivation">Motivation</h2> <p>What problem does this solve? Who has it? Why now?</p> <p>Cite evidence: a user request, user research, performance data, a security finding, an upstream standard change. Motivation with no evidence behind it is a flag for reviewers.</p> <h2 id="detailed-design">Detailed design</h2> <p>The actual proposal — schemas, code signatures, command-line surface, diagrams. This is the section the RFC stands or falls on.</p> <h2 id="drawbacks">Drawbacks</h2> <p>An honest list of downsides. If you cannot list any, you have not thought hard enough.</p> <h2 id="alternatives-considered">Alternatives considered</h2> <p>What else was on the table? Why was each rejected?</p> <h2 id="prior-art">Prior art</h2> <p>Has another project solved this? How? What did they get right, and wrong?</p> <h2 id="unresolved-questions">Unresolved questions</h2> <p>What does this RFC deliberately leave open for a future RFC?</p> <h2 id="adoption-migration-plan">Adoption / migration plan</h2> <p>If this changes a public surface: how do existing users move? What is the deprecation timeline? Is a tool needed to migrate existing capsules?</p> <h2 id="security-and-threat-model-impact">Security and threat-model impact</h2> <p>Does this change the threat model? Cite the specific items it touches.</p> <h2 id="decision-log">Decision log</h2> <p>A running log of what changed during review — date, author, one-line summary. This is how reviewers track changes without re-reading the full diff.</p> <table> <thead> <tr> <th>Date</th> <th>Author</th> <th>Note</th> </tr> </thead> <tbody><tr> <td>YYYY-MM-DD</td> <td>@handle</td> <td>Initial draft</td> </tr> </tbody></table> </div><footer class="mt-16 border-t border-edge pt-6 text-sm text-muted"><p>Found a mistake in this page?<!-- --> <a class="underline" href="https://github.com/MSKazemi/novafabric/blob/main/docs/rfcs/_template.md">Edit it on GitHub</a> <!-- -->or<!-- --> <a class="underline" href="https://github.com/MSKazemi/novafabric/issues/new?template=documentation.yml">open a documentation issue</a>. Documentation bugs are real bugs.</p></footer></article><footer id="contact" style="background-color:var(--color-canvas);border-top:1px solid var(--color-edge);padding:72px 0 40px"><div style="max-width:1200px;margin:0 auto;padding:0 24px"><div style="display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:64px" class="footer-grid"><div><div class="font-code" style="font-size:18px;color:var(--color-ink);margin-bottom:16px;letter-spacing:-0.02em">nova<span style="color:var(--color-amber)">fabric</span><span style="color:var(--color-amber);opacity:0.5">.</span></div><p style="font-size:14px;color:var(--color-muted);line-height:1.7;max-width:280px;margin-bottom:24px">Evidence infrastructure for AI-agent systems. Local-first capture, replay, lineage, and audit. Apache-2.0.</p><div style="display:flex;gap:12px"><a href="https://github.com/MSKazemi/novafabric" target="_blank" rel="noopener noreferrer" style="font-family:var(--font-code), monospace;font-size:11px;color:var(--color-canvas);background-color:var(--color-amber);padding:6px 12px;border-radius:3px;text-decoration:none;letter-spacing:0.04em">github ↗</a><a href="/contact" style="font-family:var(--font-code), monospace;font-size:11px;color:var(--color-muted);border:1px solid var(--color-edge-2);padding:6px 12px;border-radius:3px;text-decoration:none;letter-spacing:0.04em">contact</a></div></div><div><div class="font-code" style="font-size:10px;color:var(--color-faint);letter-spacing:0.1em;margin-bottom:16px;text-transform:uppercase">lab</div><div style="display:flex;flex-direction:column;gap:10px"><a href="/novafabric" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">novafabric</a><a href="/research" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">research</a><a href="/primitives" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">primitives</a><a href="/architecture" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">architecture</a><a href="/changelog" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">changelog</a><a href="/capsules" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">capsules</a></div></div><div><div class="font-code" style="font-size:10px;color:var(--color-faint);letter-spacing:0.1em;margin-bottom:16px;text-transform:uppercase">primitives</div><div style="display:flex;flex-direction:column;gap:10px"><a href="/primitives#asset-registry" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">asset registry</a><a href="/primitives#run-capsule" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">run capsule</a><a href="/primitives#replay-engine" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">replay engine</a><a href="/primitives#lineage-graph" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">lineage graph</a><a href="/primitives#evidence-bundle" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">evidence bundle</a></div></div><div><div class="font-code" style="font-size:10px;color:var(--color-faint);letter-spacing:0.1em;margin-bottom:16px;text-transform:uppercase">project</div><div style="display:flex;flex-direction:column;gap:10px"><a href="https://github.com/MSKazemi/novafabric" target="_blank" rel="noopener noreferrer" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">GitHub</a><a href="/docs/" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">Documentation</a><a href="/docs/getting-started/" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">Getting Started</a><a href="/docs/cli-reference/" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">CLI Reference</a><a href="https://github.com/MSKazemi/novafabric/blob/main/CONTRIBUTING.md" target="_blank" rel="noopener noreferrer" style="font-size:13px;color:var(--color-muted);text-decoration:none;transition:color 0.2s">Contributing</a></div></div></div><div style="border-top:1px solid var(--color-edge);margin-bottom:24px"></div><div style="display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px"><span class="font-code" style="font-size:11px;color:var(--color-faint)">© <!-- -->2026<!-- --> NovaFabric Lab · Apache-2.0</span><div style="display:flex;gap:20px"><a href="/changelog" target="_blank" rel="noopener noreferrer" class="font-code" style="font-size:10px;color:var(--color-faint);text-decoration:none;letter-spacing:0.06em;transition:color 0.2s">v0.96.0</a><a href="/novafabric" target="_blank" rel="noopener noreferrer" class="font-code" style="font-size:10px;color:var(--color-faint);text-decoration:none;letter-spacing:0.06em;transition:color 0.2s">experimental</a></div></div></div><style> @media (max-width: 900px) { .footer-grid { grid-template-columns: 1fr 1fr !important; } } @media (max-width: 600px) { .footer-grid { grid-template-columns: 1fr !important; } } </style></footer><!--$--><!--/$--><script src="/_next/static/chunks/0xz98d27da61b.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\nb:I[68027,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/14dhcoeynl61q.css\",\"style\"]\n:HL[\"/_next/static/media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/7ebf22b5a21034f8-s.p.3j3877k49yy0l.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e41d5df559864f9e-s.p.1g73gv09-xcb6.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n2:T443,{\"@context\":\"https://schema.org\",\"@type\":\"SoftwareApplication\",\"@id\":\"https://novafabric.ai/#software\",\"name\":\"NovaFabric\",\"applicationCategory\":\"DeveloperApplication\",\"applicationSubCategory\":\"AI-agent execution capture, replay and audit\",\"description\":\"NovaFabric captures, replays and audits any AI-agent or HPC run as a portable, signed evidence capsule you own. Self-hosted and open source, from laptop to cluster. Core pipeline: Capture — Seal — Replay — Diff — Audit.\",\"url\":\"https://novafabric.ai/novafabric/\",\"downloadUrl\":\"https://pypi.org/project/novafabric/\",\"codeRepository\":\"https://github.com/MSKazemi/novafabric\",\"softwareVersion\":\"0.101.0\",\"runtimePlatform\":\"Python 3.12+\",\"license\":\"https://www.apache.org/licenses/LICENSE-2.0\",\"isAccessibleForFree\":true,\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"USD\"},\"author\":{\"@id\":\"https://orcid.org/0000-0002-1166-6559\"},\"publisher\":{\"@id\":\"https://novafabric.ai/#organization\"},\"sameAs\":[\"https://github.com/MSKazemi/novafabric\",\"https://pypi.org/project/novafabric/\",\"https://www.wikidata.org/wiki/Q140800195\"]}"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"docs\",\"rfcs\",\"_template\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"docs\",{\"children\":[[\"slug\",\"rfcs/_template\",\"c\",[]],{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",512]},\"$undefined\",\"$undefined\",512]},\"$undefined\",\"$undefined\",512]},\"$undefined\",\"$undefined\",528],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/14dhcoeynl61q.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/01lgi-w9cn47d.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/0a3hao-jj665o.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"className\":\"instrument_serif_b28fa36a-module__CqVP2a__variable jetbrains_mono_b07c0c3c-module__ELYjaG__variable dm_sans_6bc0bf77-module__SC5Eza__variable\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var t=localStorage.getItem('nova-theme');document.documentElement.setAttribute('data-theme',(t==='dark'||t==='light')?t:'light');}catch(e){document.documentElement.setAttribute('data-theme','light');}})();\"}}]}],[\"$\",\"body\",null,{\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Organization\\\",\\\"@id\\\":\\\"https://novafabric.ai/#organization\\\",\\\"name\\\":\\\"NovaFabric Lab\\\",\\\"alternateName\\\":[\\\"NovaFabric\\\",\\\"NovaFabric Lab\\\"],\\\"slogan\\\":\\\"The time machine for AI systems\\\",\\\"url\\\":\\\"https://novafabric.ai\\\",\\\"logo\\\":\\\"https://novafabric.ai/favicon.svg\\\",\\\"description\\\":\\\"Open-source research lab building local-first evidence infrastructure for AI agents and agentic applications: capture, replay, lineage, and audit of past executions.\\\",\\\"disambiguatingDescription\\\":\\\"An independent open-source research project for recording, replaying and auditing AI-agent executions. Unrelated to data-analytics or network-fabric products that share the word \\\\\\\"fabric\\\\\\\".\\\",\\\"founder\\\":{\\\"@id\\\":\\\"https://orcid.org/0000-0002-1166-6559\\\"},\\\"sameAs\\\":[\\\"https://github.com/novafabric\\\",\\\"https://github.com/MSKazemi/novafabric\\\",\\\"https://pypi.org/project/novafabric/\\\",\\\"https://www.wikidata.org/wiki/Q140800195\\\"]}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"@id\\\":\\\"https://orcid.org/0000-0002-1166-6559\\\",\\\"name\\\":\\\"Mohsen Seyedkazemi Ardebili\\\",\\\"url\\\":\\\"https://mskazemi.com/\\\",\\\"identifier\\\":{\\\"@type\\\":\\\"PropertyValue\\\",\\\"propertyID\\\":\\\"ORCID\\\",\\\"value\\\":\\\"0000-0002-1166-6559\\\"},\\\"sameAs\\\":[\\\"https://orcid.org/0000-0002-1166-6559\\\",\\\"https://github.com/MSKazemi\\\",\\\"https://www.linkedin.com/in/mskazemi/\\\"]}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$2\"}}],\"$L3\",\"$L4\",\"$L5\"]}]]}]]}],{\"children\":[\"$L6\",{\"children\":[\"$L7\",{\"children\":[\"$L8\",{},null,false,null]},null,false,\"$@9\"]},null,false,\"$@9\"]},null,false,null],\"$La\",false]],\"m\":\"$undefined\",\"G\":[\"$b\",[\"$Lc\"]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"9-8fZHsT8QrpzMir4s9ik\"}\n"])</script><script>self.__next_f.push([1,"d:I[90425,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\"]\ne:I[71655,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\"]\nf:I[6584,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\"]\n10:I[69192,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\"]\n11:I[61678,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"CommandPalette\"]\n12:I[39756,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\"]\n13:I[37457,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"default\"]\n14:I[22016,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\",\"/_next/static/chunks/06of8rsc44xye.js\"],\"\"]\n16:I[97367,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"OutletBoundary\"]\n17:\"$Sreact.suspense\"\n1a:I[97367,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"ViewportBoundary\"]\n1c:I[97367,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"MetadataBoundary\"]\n3:[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"WebSite\\\",\\\"@id\\\":\\\"https://novafabric.ai/#website\\\",\\\"name\\\":\\\"NovaFabric Lab\\\",\\\"url\\\":\\\"https://novafabric.ai\\\",\\\"description\\\":\\\"Local-first capture, replay, lineage, and audit for AI-agent and agentic application executions.\\\",\\\"publisher\\\":{\\\"@id\\\":\\\"https://novafabric.ai/#organization\\\"},\\\"about\\\":{\\\"@id\\\":\\\"https://novafabric.ai/#software\\\"}}\"}}]\n4:null\n"])</script><script>self.__next_f.push([1,"5:[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$Le\",null,{\"children\":[[\"$\",\"$Lf\",null,{}],[\"$\",\"$L10\",null,{}],[\"$\",\"$L11\",null,{}],[\"$\",\"$L12\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"div\",null,{\"style\":{\"minHeight\":\"100vh\",\"backgroundColor\":\"var(--color-canvas)\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"padding\":\"40px 24px\",\"position\":\"relative\",\"overflow\":\"hidden\"},\"children\":[[\"$\",\"div\",null,{\"className\":\"dot-grid\",\"style\":{\"position\":\"absolute\",\"inset\":0,\"maskImage\":\"radial-gradient(ellipse 60% 60% at 50% 50%, black 40%, transparent 100%)\",\"WebkitMaskImage\":\"radial-gradient(ellipse 60% 60% at 50% 50%, black 40%, transparent 100%)\"}}],[\"$\",\"div\",null,{\"style\":{\"position\":\"relative\",\"textAlign\":\"center\",\"maxWidth\":\"480px\"},\"children\":[[\"$\",\"div\",null,{\"className\":\"font-code\",\"style\":{\"fontSize\":\"clamp(80px, 15vw, 140px)\",\"color\":\"var(--color-edge-2)\",\"lineHeight\":1,\"letterSpacing\":\"-0.04em\",\"marginBottom\":\"8px\",\"userSelect\":\"none\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"width\":\"48px\",\"height\":\"2px\",\"backgroundColor\":\"var(--color-amber)\",\"margin\":\"0 auto 32px\",\"opacity\":0.7}}],[\"$\",\"p\",null,{\"className\":\"font-code\",\"style\":{\"fontSize\":\"13px\",\"color\":\"var(--color-muted)\",\"lineHeight\":\"1.8\",\"marginBottom\":\"8px\",\"letterSpacing\":\"0.01em\"},\"children\":\"This capsule doesn't exist.\"}],[\"$\",\"p\",null,{\"className\":\"font-code\",\"style\":{\"fontSize\":\"13px\",\"color\":\"var(--color-faint)\",\"lineHeight\":\"1.8\",\"marginBottom\":\"40px\",\"letterSpacing\":\"0.01em\"},\"children\":\"The page was moved, deleted, or never captured.\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"flex\",\"gap\":\"12px\",\"justifyContent\":\"center\",\"flexWrap\":\"wrap\"},\"children\":[[\"$\",\"$L14\",null,{\"href\":\"/\",\"style\":{\"fontFamily\":\"var(--font-code), monospace\",\"fontSize\":\"13px\",\"color\":\"var(--color-canvas)\",\"backgroundColor\":\"var(--color-amber)\",\"padding\":\"10px 20px\",\"borderRadius\":\"4px\",\"textDecoration\":\"none\",\"fontWeight\":500,\"letterSpacing\":\"0.02em\"},\"children\":\"← back to lab\"}],[\"$\",\"a\",null,{\"href\":\"https://github.com/MSKazemi/novafabric\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"style\":{\"fontFamily\":\"var(--font-code), monospace\",\"fontSize\":\"13px\",\"color\":\"var(--color-muted)\",\"border\":\"1px solid var(--color-edge-2)\",\"padding\":\"10px 20px\",\"borderRadius\":\"4px\",\"textDecoration\":\"none\"},\"children\":\"github ↗\"}]]}]]}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]\n"])</script><script>self.__next_f.push([1,"6:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L12\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n7:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L12\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L13\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n8:[\"$\",\"$1\",\"c\",{\"children\":[\"$L15\",[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/06of8rsc44xye.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L16\",null,{\"children\":[\"$\",\"$17\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@18\"}]}]]}]\n19:[]\n9:\"$W19\"\na:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L1a\",null,{\"children\":\"$L1b\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1c\",null,{\"children\":[\"$\",\"$17\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1d\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\nc:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/14dhcoeynl61q.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n"])</script><script>self.__next_f.push([1,"1e:I[42724,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\",\"/_next/static/chunks/06of8rsc44xye.js\"],\"default\"]\n1f:T8c6,"])</script><script>self.__next_f.push([1,"\u003ch1 id=\"rfc-nnnn\"\u003eRFC-NNNN — \u003cTitle\u003e\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eStatus:\u003c/strong\u003e Draft | Active | Accepted | Rejected | Withdrawn | Superseded\n\u003cstrong\u003eAuthors:\u003c/strong\u003e @github-handle, @github-handle\n\u003cstrong\u003eReviewers:\u003c/strong\u003e @github-handle (maintainer), @github-handle (sponsor)\n\u003cstrong\u003eComment window:\u003c/strong\u003e YYYY-MM-DD → YYYY-MM-DD (2 weeks minimum)\n\u003cstrong\u003eRelated:\u003c/strong\u003e RFC-XXXX, ADR-YYYY\u003c/p\u003e\n\u003ch2 id=\"summary\"\u003eSummary\u003c/h2\u003e\n\u003cp\u003eOne paragraph. The 30-second pitch. If you cannot write the summary in one\nparagraph, the RFC is not ready for review.\u003c/p\u003e\n\u003ch2 id=\"motivation\"\u003eMotivation\u003c/h2\u003e\n\u003cp\u003eWhat problem does this solve? Who has it? Why now?\u003c/p\u003e\n\u003cp\u003eCite evidence: a user request, user research, performance data, a security\nfinding, an upstream standard change. Motivation with no evidence behind it is a\nflag for reviewers.\u003c/p\u003e\n\u003ch2 id=\"detailed-design\"\u003eDetailed design\u003c/h2\u003e\n\u003cp\u003eThe actual proposal — schemas, code signatures, command-line surface, diagrams.\nThis is the section the RFC stands or falls on.\u003c/p\u003e\n\u003ch2 id=\"drawbacks\"\u003eDrawbacks\u003c/h2\u003e\n\u003cp\u003eAn honest list of downsides. If you cannot list any, you have not thought hard\nenough.\u003c/p\u003e\n\u003ch2 id=\"alternatives-considered\"\u003eAlternatives considered\u003c/h2\u003e\n\u003cp\u003eWhat else was on the table? Why was each rejected?\u003c/p\u003e\n\u003ch2 id=\"prior-art\"\u003ePrior art\u003c/h2\u003e\n\u003cp\u003eHas another project solved this? How? What did they get right, and wrong?\u003c/p\u003e\n\u003ch2 id=\"unresolved-questions\"\u003eUnresolved questions\u003c/h2\u003e\n\u003cp\u003eWhat does this RFC deliberately leave open for a future RFC?\u003c/p\u003e\n\u003ch2 id=\"adoption-migration-plan\"\u003eAdoption / migration plan\u003c/h2\u003e\n\u003cp\u003eIf this changes a public surface: how do existing users move? What is the\ndeprecation timeline? Is a tool needed to migrate existing capsules?\u003c/p\u003e\n\u003ch2 id=\"security-and-threat-model-impact\"\u003eSecurity and threat-model impact\u003c/h2\u003e\n\u003cp\u003eDoes this change the threat model? Cite the specific items it touches.\u003c/p\u003e\n\u003ch2 id=\"decision-log\"\u003eDecision log\u003c/h2\u003e\n\u003cp\u003eA running log of what changed during review — date, author, one-line summary.\nThis is how reviewers track changes without re-reading the full diff.\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eDate\u003c/th\u003e\n\u003cth\u003eAuthor\u003c/th\u003e\n\u003cth\u003eNote\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\u003ctr\u003e\n\u003ctd\u003eYYYY-MM-DD\u003c/td\u003e\n\u003ctd\u003e@handle\u003c/td\u003e\n\u003ctd\u003eInitial draft\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\u003c/table\u003e\n"])</script><script>self.__next_f.push([1,"15:[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"TechArticle\\\",\\\"headline\\\":\\\"RFC-NNNN — \u003cTitle\u003e\\\",\\\"description\\\":\\\"Status: Draft | Active | Accepted | Rejected | Withdrawn | Superseded Authors: @github-handle, @github-handle Reviewers: @github-handle (maintainer), @g…\\\",\\\"url\\\":\\\"https://novafabric.ai/docs/rfcs/_template/\\\",\\\"isPartOf\\\":{\\\"@type\\\":\\\"SoftwareSourceCode\\\",\\\"name\\\":\\\"NovaFabric\\\",\\\"codeRepository\\\":\\\"https://github.com/MSKazemi/novafabric\\\",\\\"programmingLanguage\\\":\\\"Python\\\",\\\"license\\\":\\\"https://www.apache.org/licenses/LICENSE-2.0\\\"},\\\"publisher\\\":{\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"NovaFabric\\\"}}\"}}],[\"$\",\"$L1e\",null,{}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"BreadcrumbList\\\",\\\"itemListElement\\\":[{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":1,\\\"name\\\":\\\"Home\\\",\\\"item\\\":\\\"https://novafabric.ai/\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":2,\\\"name\\\":\\\"Docs\\\",\\\"item\\\":\\\"https://novafabric.ai/docs/\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":3,\\\"name\\\":\\\"RFC-NNNN — \u003cTitle\u003e\\\",\\\"item\\\":\\\"https://novafabric.ai/docs/rfcs/_template/\\\"}]}\"}}],[\"$\",\"article\",null,{\"className\":\"page-max-w py-16 md:py-24\",\"children\":[[\"$\",\"nav\",null,{\"className\":\"text-sm text-muted\",\"aria-label\":\"Breadcrumb\",\"children\":[[\"$\",\"$L14\",null,{\"className\":\"hover:underline\",\"href\":\"/\",\"children\":\"Home\"}],[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"children\":\" / \"}],[\"$\",\"$L14\",null,{\"className\":\"hover:underline\",\"href\":\"/docs/\",\"children\":\"Docs\"}],[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"children\":\" / \"}],[\"$\",\"span\",null,{\"children\":\"RFC-NNNN — \u003cTitle\u003e\"}]]}],[\"$\",\"div\",null,{\"className\":\"docs-prose mt-8 text-muted leading-relaxed\",\"dangerouslySetInnerHTML\":{\"__html\":\"$1f\"}}],\"$L20\"]}],\"$L21\"]\n"])</script><script>self.__next_f.push([1,"22:I[56691,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\",\"/_next/static/chunks/06of8rsc44xye.js\"],\"default\"]\n20:[\"$\",\"footer\",null,{\"className\":\"mt-16 border-t border-edge pt-6 text-sm text-muted\",\"children\":[\"$\",\"p\",null,{\"children\":[\"Found a mistake in this page?\",\" \",[\"$\",\"a\",null,{\"className\":\"underline\",\"href\":\"https://github.com/MSKazemi/novafabric/blob/main/docs/rfcs/_template.md\",\"children\":\"Edit it on GitHub\"}],\" \",\"or\",\" \",[\"$\",\"a\",null,{\"className\":\"underline\",\"href\":\"https://github.com/MSKazemi/novafabric/issues/new?template=documentation.yml\",\"children\":\"open a documentation issue\"}],\". Documentation bugs are real bugs.\"]}]}]\n21:[\"$\",\"$L22\",null,{}]\n"])</script><script>self.__next_f.push([1,"1b:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#fbfbf9\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#07070a\",\"media\":\"(prefers-color-scheme: dark)\"}],[\"$\",\"meta\",\"4\",{\"name\":\"color-scheme\",\"content\":\"light dark\"}]]\n"])</script><script>self.__next_f.push([1,"23:I[27201,[\"/_next/static/chunks/01lgi-w9cn47d.js\",\"/_next/static/chunks/09d6ndyz-p1n0.js\",\"/_next/static/chunks/0l1_0__bxoqkq.js\",\"/_next/static/chunks/0a3hao-jj665o.js\"],\"IconMark\"]\n18:null\n"])</script><script>self.__next_f.push([1,"1d:[[\"$\",\"title\",\"0\",{\"children\":\"RFC-NNNN — \u003cTitle\u003e — NovaFabric docs\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Status: Draft | Active | Accepted | Rejected | Withdrawn | Superseded Authors: @github-handle, @github-handle Reviewers: @github-handle (maintainer), @g…\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"AI agent monitoring,AI agent observability,agentic application monitoring,agentic workflow observability,AI agent debugging,LLM execution tracing,AI agent audit trail,AI agent reproducibility,monitoring agentic applications,capture AI agent runs,replay AI agent execution,LangChain observability,LlamaIndex monitoring,MCP observability,Model Context Protocol monitoring,OpenAI agent monitoring,Anthropic agent tracing,OpenTelemetry GenAI,AI agent compliance,LLM audit trail,EU AI Act compliance,AI governance,tamper-evident AI execution,evidence infrastructure,run capsule,AI agent lineage,local-first AI agent capture,AI execution forensics,novafabric\"}],[\"$\",\"meta\",\"4\",{\"name\":\"category\",\"content\":\"technology\"}],[\"$\",\"link\",\"5\",{\"rel\":\"canonical\",\"href\":\"https://novafabric.ai/docs/rfcs/_template/\"}],[\"$\",\"meta\",\"6\",{\"name\":\"google-site-verification\",\"content\":\"google2a87e4dc9c54dc74\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:title\",\"content\":\"RFC-NNNN — \u003cTitle\u003e — NovaFabric docs\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:description\",\"content\":\"Status: Draft | Active | Accepted | Rejected | Withdrawn | Superseded Authors: @github-handle, @github-handle Reviewers: @github-handle (maintainer), @g…\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:url\",\"content\":\"https://novafabric.ai/docs/rfcs/_template/\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image\",\"content\":\"https://novafabric.ai/og.png\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"article\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:title\",\"content\":\"NovaFabric Lab — evidence infrastructure for AI agents\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:description\",\"content\":\"Capture any AI-agent or HPC run as a portable signed evidence capsule you own, then replay, diff and prove it. Self-hosted, laptop to cluster. For reproducibility and audit, not live dashboards.\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:image\",\"content\":\"https://novafabric.ai/og.png\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"19\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"sizes\":\"any\"}],[\"$\",\"link\",\"20\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-touch-icon.png\"}],[\"$\",\"$L23\",\"21\",{}]]\n"])</script></body></html>