Assessor_2.0/docs/images/onboarding/06-ai-workflows.svg

98 lines
10 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="640" viewBox="0 0 1200 640" font-family="Inter, 'Segoe UI', Arial, sans-serif">
<defs>
<marker id="arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0 L10 5 L0 10 z" fill="#4A4A50"/></marker>
<marker id="arrow-start" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0 L10 5 L0 10 z" fill="#4A4A50"/></marker>
</defs>
<rect x="0" y="0" width="1200" height="640" fill="#FAFAFB"/>
<text x="40" y="46" font-size="22" font-weight="600" fill="#1D1D1F" text-anchor="start">AI workflows (Compliance Engine)</text>
<text x="40" y="72" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">Both AI features run in the backend only, start from Result DB rows and are advisory: they never change findings, verdicts or scores.</text>
<text x="40" y="116" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">A · AI Overview (Client Info › AI Overview)</text>
<rect x="40" y="132" width="200" height="120" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="54" y="158" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">Result DB rows</text>
<text x="54" y="182" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">All rows of the</text>
<text x="54" y="201" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">selected timeslot.</text>
<rect x="270" y="132" width="200" height="120" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="284" y="158" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">Privacy-safe input</text>
<text x="284" y="182" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">aiOverviewInputJson in</text>
<text x="284" y="201" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">deterministic order.</text>
<rect x="500" y="132" width="200" height="120" rx="0" fill="#FFFFFF" stroke="#2F6FEB" stroke-width="2"/>
<text x="514" y="158" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">LiteLLM gateway</text>
<text x="514" y="182" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">HTTPS, approved model</text>
<text x="514" y="201" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">alias, no automatic</text>
<text x="514" y="220" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">retries.</text>
<rect x="730" y="132" width="200" height="120" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="744" y="158" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">Validate output</text>
<text x="744" y="182" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">JSON schema, known</text>
<text x="744" y="201" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">rule IDs only, length</text>
<text x="744" y="220" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">limits.</text>
<rect x="960" y="132" width="200" height="120" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="974" y="158" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">AI Overview tab</text>
<text x="974" y="182" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">Rendered as plain</text>
<text x="974" y="201" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">text. Marked stale</text>
<text x="974" y="220" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">when input changes.</text>
<path d="M240 192 H268" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M470 192 H498" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M700 192 H728" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M930 192 H958" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<text x="40" y="300" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">B · ISO control mapping (Finding Reader › Map ISO controls, Result DB › Map all)</text>
<rect x="40" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="54" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Result DB row</text>
<text x="54" y="363" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">One finding or</text>
<text x="54" y="381" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">a filtered</text>
<text x="54" y="399" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">batch.</text>
<rect x="202" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="216" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Query builder</text>
<text x="216" y="363" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">Rule-level</text>
<text x="216" y="381" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">check text. No</text>
<text x="216" y="399" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">assets or</text>
<text x="216" y="417" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">values.</text>
<rect x="364" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="378" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Embedding</text>
<text x="378" y="363" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">Approved</text>
<text x="378" y="381" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">embedding</text>
<text x="378" y="399" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">model.</text>
<rect x="526" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="540" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Qdrant index</text>
<text x="540" y="363" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">ISO 27001/27002</text>
<text x="540" y="381" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">corpus. Top 32</text>
<text x="540" y="399" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">chunks to 8</text>
<text x="540" y="417" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">controls.</text>
<rect x="688" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#2F6FEB" stroke-width="2"/>
<text x="702" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">LiteLLM mapper</text>
<text x="702" y="363" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">Grounded</text>
<text x="702" y="381" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">proposals from</text>
<text x="702" y="399" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">retrieved</text>
<text x="702" y="417" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">controls only.</text>
<rect x="850" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="864" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Accept /</text>
<text x="864" y="361" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Reject</text>
<text x="864" y="382" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">Human decision</text>
<text x="864" y="400" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">per control.</text>
<text x="864" y="418" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">First two</text>
<text x="864" y="436" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">proposals</text>
<text x="864" y="454" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">auto-accepted.</text>
<rect x="1012" y="316" width="140" height="170" rx="0" fill="#FFFFFF" stroke="#DCDDE3" stroke-width="1"/>
<text x="1026" y="342" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">Compliance</text>
<text x="1026" y="361" font-size="14" font-weight="600" fill="#1D1D1F" text-anchor="start">tables</text>
<text x="1026" y="382" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">Finding Reader,</text>
<text x="1026" y="400" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">Client Info</text>
<text x="1026" y="418" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">tile, Work ISO</text>
<text x="1026" y="436" font-size="13" font-weight="400" fill="#5F6068" text-anchor="start">facets.</text>
<path d="M180 400 H200" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M342 400 H362" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M504 400 H524" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M666 400 H686" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M828 400 H848" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<path d="M990 400 H1010" fill="none" stroke="#4A4A50" stroke-width="2" marker-end="url(#arrow)"/>
<rect x="40" y="520" width="540" height="92" rx="0" fill="#F5F5F7" stroke="#DCDDE3" stroke-width="1"/>
<rect x="40" y="520" width="4" height="92" fill="#2E9E5B"/>
<text x="56" y="546" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">Sent to AI services</text>
<text x="56" y="570" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">Result DB rows through the privacy-safe export; rule-level check</text>
<text x="56" y="589" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">text; retrieved ISO corpus excerpts.</text>
<rect x="620" y="520" width="540" height="92" rx="0" fill="#F5F5F7" stroke="#DCDDE3" stroke-width="1"/>
<rect x="620" y="520" width="4" height="92" fill="#D64545"/>
<text x="636" y="546" font-size="16" font-weight="600" fill="#1D1D1F" text-anchor="start">Never sent</text>
<text x="636" y="570" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">Original files, GPO customer values, host, account and tenant</text>
<text x="636" y="589" font-size="14" font-weight="400" fill="#5F6068" text-anchor="start">names, reviews, evidence, file paths.</text>
</svg>