425c299359
v1: discover → migrate → expiry tracking → sealed export/import. - vault: memguard mlock/DONTDUMP arena, handle indirection, zeroize-on-drop - discover: registry + 8 read-only scanners (aws, env, netrc, ssh, docker, kube, git) and a file/dir harvester (--path) - sink: gopass streaming insert; length-prefixed bundle framing; Sealer interface with three impls — age (default, authenticated), hmac (authenticated, openssl-only encrypt-then-MAC), openssl (CBC fallback, unauthenticated; OpenSSL 3.x enc refuses AEAD) - policy: local expiry engine, 60d/8w threshold parser - audit: redacted append-only JSONL, injectable clock - export/import: passphrase from no-echo prompt or $INCREDIGO_PASSPHRASE into locked memory; secrets stream gopass<->Sealer as bytes, never Go strings - tests: scanner leak-checks, vault zeroize, bundle round-trip via fake gopass; go test ./... green, -race clean Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
92 lines
5.1 KiB
HTML
92 lines
5.1 KiB
HTML
<!doctype html><html><head><meta charset="utf-8"><style>
|
|
html,body{margin:0;background:#060504;font-family:'JetBrainsMono Nerd Font','JetBrains Mono',monospace}
|
|
.grid{display:flex;gap:0}
|
|
.card{width:300px;height:360px;display:flex;flex-direction:column;align-items:center;
|
|
justify-content:center;gap:24px;border-right:1px solid #1c1714}
|
|
.card:last-child{border:none}
|
|
.lbl{color:#F7B968;font-size:15px;font-weight:700;letter-spacing:1px}
|
|
.sub{color:#8a7c72;font-size:11px;margin-top:-16px}
|
|
/* shared font for the in-svg wordmarks */
|
|
.mono{font-family:'JetBrainsMono Nerd Font','JetBrainsMonoNL Nerd Font','JetBrains Mono','Fira Code',monospace;font-weight:700}
|
|
</style></head><body>
|
|
<div class="grid">
|
|
|
|
<!-- ===== A: dark tile, igo, diamond i-dot (hero) ===== -->
|
|
<div class="card">
|
|
<svg width="180" height="180" viewBox="0 0 200 200">
|
|
<defs>
|
|
<linearGradient id="ta" x1="0" y1="0" x2="200" y2="200" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#1A1410"/><stop offset="1" stop-color="#0B0806"/></linearGradient>
|
|
<linearGradient id="la" x1="40" y1="80" x2="160" y2="150" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#F7B968"/><stop offset="0.6" stop-color="#E8772E"/><stop offset="1" stop-color="#C2531A"/></linearGradient>
|
|
</defs>
|
|
<rect width="200" height="200" rx="44" fill="url(#ta)" stroke="#2a201a" stroke-width="2"/>
|
|
<!-- custom i stem -->
|
|
<rect x="44" y="92" width="15" height="54" rx="6" fill="url(#la)"/>
|
|
<!-- diamond i-dot (nested strata) -->
|
|
<path d="M51.5 60 L66 74 L51.5 88 L37 74 Z" fill="none" stroke="url(#la)" stroke-width="4"/>
|
|
<path d="M51.5 68 L58 74 L51.5 80 L45 74 Z" fill="#F7B968"/>
|
|
<!-- g o -->
|
|
<text x="128" y="146" text-anchor="middle" class="mono" font-size="96" fill="url(#la)">go</text>
|
|
</svg>
|
|
<div class="lbl">A · DIAMOND-DOT</div><div class="sub">dark tile · i-dot = Strata core</div>
|
|
</div>
|
|
|
|
<!-- ===== B: orange tile, knockout igo ===== -->
|
|
<div class="card">
|
|
<svg width="180" height="180" viewBox="0 0 200 200">
|
|
<defs>
|
|
<linearGradient id="tb" x1="0" y1="0" x2="200" y2="200" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#F8A23E"/><stop offset="1" stop-color="#C2531A"/></linearGradient>
|
|
</defs>
|
|
<rect width="200" height="200" rx="44" fill="url(#tb)"/>
|
|
<rect x="44" y="92" width="15" height="54" rx="6" fill="#1A0E06"/>
|
|
<path d="M51.5 60 L66 74 L51.5 88 L37 74 Z" fill="#1A0E06"/>
|
|
<text x="128" y="146" text-anchor="middle" class="mono" font-size="96" fill="#1A0E06">go</text>
|
|
</svg>
|
|
<div class="lbl">B · KNOCKOUT</div><div class="sub">orange tile · bold solid</div>
|
|
</div>
|
|
|
|
<!-- ===== C: Strata mark + igo lockup ===== -->
|
|
<div class="card">
|
|
<svg width="180" height="180" viewBox="0 0 200 200">
|
|
<defs>
|
|
<linearGradient id="tc" x1="0" y1="0" x2="200" y2="200" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#1A1410"/><stop offset="1" stop-color="#0B0806"/></linearGradient>
|
|
<linearGradient id="lc" x1="40" y1="20" x2="160" y2="170" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#F7B968"/><stop offset="0.6" stop-color="#E8772E"/><stop offset="1" stop-color="#C2531A"/></linearGradient>
|
|
</defs>
|
|
<rect width="200" height="200" rx="44" fill="url(#tc)" stroke="#2a201a" stroke-width="2"/>
|
|
<g fill="none" stroke="url(#lc)" stroke-linejoin="round" transform="translate(100,78)">
|
|
<path d="M0 -46 L46 0 L0 46 L-46 0 Z" stroke-width="8" opacity="0.45"/>
|
|
<path d="M0 -26 L26 0 L0 26 L-26 0 Z" stroke-width="8"/>
|
|
</g>
|
|
<path d="M100 70 L108 78 L100 86 L92 78 Z" fill="#F7B968" transform="translate(0,0)"/>
|
|
<text x="100" y="168" text-anchor="middle" class="mono" font-size="46" letter-spacing="4" fill="url(#lc)">igo</text>
|
|
</svg>
|
|
<div class="lbl">C · STACK</div><div class="sub">Strata mark over igo</div>
|
|
</div>
|
|
|
|
<!-- ===== D: ig + diamond-o (o = vault) ===== -->
|
|
<div class="card">
|
|
<svg width="180" height="180" viewBox="0 0 200 200">
|
|
<defs>
|
|
<linearGradient id="td" x1="0" y1="0" x2="200" y2="200" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#1A1410"/><stop offset="1" stop-color="#0B0806"/></linearGradient>
|
|
<linearGradient id="ld" x1="30" y1="80" x2="170" y2="150" gradientUnits="userSpaceOnUse">
|
|
<stop offset="0" stop-color="#F7B968"/><stop offset="0.6" stop-color="#E8772E"/><stop offset="1" stop-color="#C2531A"/></linearGradient>
|
|
</defs>
|
|
<rect width="200" height="200" rx="44" fill="url(#td)" stroke="#2a201a" stroke-width="2"/>
|
|
<text x="62" y="146" text-anchor="middle" class="mono" font-size="96" fill="url(#ld)">ig</text>
|
|
<!-- diamond-o -->
|
|
<g fill="none" stroke="url(#ld)" stroke-linejoin="round" transform="translate(146,116)">
|
|
<path d="M0 -30 L30 0 L0 30 L-30 0 Z" stroke-width="9"/>
|
|
<path d="M0 -13 L13 0 L0 13 L-13 0 Z" stroke-width="7"/>
|
|
</g>
|
|
</svg>
|
|
<div class="lbl">D · DIAMOND-O</div><div class="sub">the 'o' becomes the vault</div>
|
|
</div>
|
|
|
|
</div>
|
|
</body></html>
|