up
This commit is contained in:
91
docs/assets/authority/authority-plugin-lifecycle.svg
Normal file
91
docs/assets/authority/authority-plugin-lifecycle.svg
Normal file
@@ -0,0 +1,91 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 320" role="img">
|
||||
<title>Authority plug-in lifecycle: manifest to runtime</title>
|
||||
<defs>
|
||||
<style>
|
||||
.node { fill: #0f172a; stroke: #1e293b; stroke-width: 2; rx: 14; ry: 14; }
|
||||
.node text { fill: #f1f5f9; font: 16px/1.4 "Segoe UI", sans-serif; }
|
||||
.accent { fill: #1e3a8a; stroke: #1d4ed8; }
|
||||
.accent text { fill: #e2e8f0; }
|
||||
.note { fill: #0f766e; stroke: #134e4a; }
|
||||
.note text { fill: #ecfeff; }
|
||||
.caption { fill: #111827; font: bold 18px "Segoe UI", sans-serif; }
|
||||
.annotation { fill: #475569; font: 14px "Segoe UI", sans-serif; }
|
||||
</style>
|
||||
<marker id="arrow" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto">
|
||||
<path d="M0,0 L12,6 L0,12 z" fill="#1d4ed8" />
|
||||
</marker>
|
||||
</defs>
|
||||
|
||||
<text class="caption" x="40" y="36">Authority plug-in lifecycle</text>
|
||||
|
||||
<!-- Nodes -->
|
||||
<g transform="translate(40,70)">
|
||||
<rect class="node" width="200" height="110" />
|
||||
<text x="20" y="32">Manifest YAML</text>
|
||||
<text x="20" y="58">etc/authority.plugins/*.yaml</text>
|
||||
<text x="20" y="84">Deterministic hashes</text>
|
||||
</g>
|
||||
|
||||
<g transform="translate(280,70)">
|
||||
<rect class="node accent" width="220" height="110" />
|
||||
<text x="20" y="32">AuthorityPluginConfigurationLoader</text>
|
||||
<text x="20" y="58">binds + validates options</text>
|
||||
<text x="20" y="84">logs config fingerprints</text>
|
||||
</g>
|
||||
|
||||
<g transform="translate(540,70)">
|
||||
<rect class="node" width="220" height="110" />
|
||||
<text x="20" y="32">PluginHost assembly scan</text>
|
||||
<text x="20" y="58">StellaOps.Authority.Plugin.*</text>
|
||||
<text x="20" y="84">loads IAuthorityPluginRegistrar</text>
|
||||
</g>
|
||||
|
||||
<g transform="translate(800,70)">
|
||||
<rect class="node accent" width="220" height="110" />
|
||||
<text x="20" y="32">IAuthorityPluginRegistrar</text>
|
||||
<text x="20" y="58">register services & health checks</text>
|
||||
<text x="20" y="84">publish capability metadata</text>
|
||||
</g>
|
||||
|
||||
<g transform="translate(1060,70)">
|
||||
<rect class="node" width="220" height="110" />
|
||||
<text x="20" y="32">Identity Provider plug-in</text>
|
||||
<text x="20" y="58">IIdentityProviderPlugin</text>
|
||||
<text x="20" y="84">ready/readiness probes</text>
|
||||
</g>
|
||||
|
||||
<!-- Supporting nodes -->
|
||||
<g transform="translate(420,210)">
|
||||
<rect class="node note" width="240" height="96" />
|
||||
<text x="20" y="32">Capability metadata broadcast</text>
|
||||
<text x="20" y="58">password / mfa / bootstrap / clientProvisioning</text>
|
||||
</g>
|
||||
|
||||
<g transform="translate(760,210)">
|
||||
<rect class="node note" width="240" height="96" />
|
||||
<text x="20" y="32">Credential & audit storage</text>
|
||||
<text x="20" y="58">Mongo collections or custom backend</text>
|
||||
<text x="20" y="84">queried in readiness probes</text>
|
||||
</g>
|
||||
|
||||
<g transform="translate(1040,210)">
|
||||
<rect class="node note" width="180" height="96" />
|
||||
<text x="20" y="32">Telemetry output</text>
|
||||
<text x="20" y="58">logs + metrics with correlation IDs</text>
|
||||
</g>
|
||||
|
||||
<!-- Arrows -->
|
||||
<path d="M240,125 H280" stroke="#1d4ed8" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
<path d="M500,125 H540" stroke="#1d4ed8" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
<path d="M760,125 H800" stroke="#1d4ed8" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
<path d="M1020,125 H1060" stroke="#1d4ed8" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
|
||||
<path d="M650,180 V210" stroke="#22d3ee" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
<path d="M920,180 V210" stroke="#22d3ee" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
<path d="M1180,180 V210" stroke="#22d3ee" stroke-width="3" fill="none" marker-end="url(#arrow)" />
|
||||
|
||||
<text class="annotation" x="320" y="56">1. Configuration</text>
|
||||
<text class="annotation" x="600" y="56">2. Assembly discovery</text>
|
||||
<text class="annotation" x="860" y="56">3. Registrar execution</text>
|
||||
<text class="annotation" x="1120" y="56">4. Runtime surface</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.0 KiB |
Reference in New Issue
Block a user