File size: 11,190 Bytes
6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 1176350 3219e2a 1176350 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b 3219e2a 6f5367b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 | <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>CROVIA · Start Here</title>
<style>
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:#05060a;color:#e5e7eb;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6;min-height:100vh}
a{color:#818cf8;text-decoration:none;transition:color .15s}
a:hover{color:#a78bfa}
.page{max-width:860px;margin:0 auto;padding:32px 20px}
/* Hero */
.hero{text-align:center;padding:48px 0 36px}
.hero h1{font-size:36px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;background:linear-gradient(135deg,#818cf8,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero .tagline{color:#94a3b8;font-size:17px;margin-top:10px;font-weight:400}
.hero .thesis{color:#cbd5e1;font-size:14px;margin-top:16px;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.7}
/* Live stats bar */
.stats-bar{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;padding:20px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin:12px 0 32px}
.stat{text-align:center}
.stat .num{font-size:26px;font-weight:800;color:#818cf8}
.stat .lbl{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.1em;margin-top:2px}
/* Section */
.section{margin-bottom:28px}
.section-title{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#a78bfa;margin-bottom:14px;padding-bottom:6px;border-bottom:1px solid rgba(167,139,250,.15)}
/* Cards grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.card{padding:16px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);transition:border-color .2s,background .2s}
.card:hover{border-color:rgba(129,140,248,.25);background:rgba(129,140,248,.04)}
.card .card-title{font-size:14px;font-weight:700;color:#e5e7eb;margin-bottom:4px}
.card .card-desc{font-size:12px;color:#94a3b8;line-height:1.5}
.card .card-tag{display:inline-block;font-size:9px;padding:2px 8px;border-radius:4px;margin-top:8px;font-weight:700;letter-spacing:.06em}
.tag-space{background:rgba(56,189,248,.12);color:#38bdf8}
.tag-dataset{background:rgba(34,197,94,.12);color:#22c55e}
.tag-web{background:rgba(251,191,36,.12);color:#fbbf24}
.tag-registry{background:rgba(167,139,250,.12);color:#a78bfa}
/* Principles */
.principles{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
@media(max-width:600px){.principles{grid-template-columns:1fr}}
.principle{padding:16px;border-radius:10px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02)}
.principle h4{font-size:13px;font-weight:700;margin-bottom:6px}
.principle p{font-size:12px;color:#94a3b8;line-height:1.6}
.principle-open h4{color:#22c55e}
.principle-pro h4{color:#f59e0b}
/* Footer */
.foot{text-align:center;padding:28px 0 12px;border-top:1px solid rgba(255,255,255,.06);margin-top:32px}
.foot p{font-size:11px;color:#475569}
.foot a{color:#818cf8}
/* Disclaimer */
.disclaimer{text-align:center;margin-top:16px;font-size:10px;color:#475569;font-style:italic}
</style>
</head>
<body>
<div class="page">
<!-- Hero -->
<div class="hero">
<h1>CROVIA</h1>
<div class="tagline">If AI is trained on data, there must be evidence.</div>
<div class="thesis">
Crovia operates the first continuous, cryptographically verifiable registry
of AI training data documentation. We observe. We record. We do not judge.
</div>
</div>
<!-- Live stats (defaults from registry, updated dynamically if CORS allows) -->
<div class="stats-bar">
<div class="stat"><div class="num" id="s-models">141</div><div class="lbl">Models Tracked</div></div>
<div class="stat"><div class="num" id="s-orgs">70</div><div class="lbl">Organizations</div></div>
<div class="stat"><div class="num" id="s-tpa">200</div><div class="lbl">Temporal Proofs</div></div>
<div class="stat"><div class="num" id="s-doc">85.8%</div><div class="lbl">Documentation Rate</div></div>
</div>
<!-- Surfaces -->
<div class="section">
<div class="section-title">Public Evidence Surfaces</div>
<div class="grid">
<a href="https://huggingface.co/spaces/Crovia/omission-oracle" target="_blank" class="card">
<div class="card-title">Registry Observer</div>
<div class="card-desc">Full interactive dashboard. Model lookup, TPA explorer, DDF drift, lineage graph, compliance mapping, and regulatory context.</div>
<span class="card-tag tag-space">HF SPACE</span>
</a>
<a href="https://huggingface.co/spaces/Crovia/cep-terminal" target="_blank" class="card">
<div class="card-title">CEP Terminal</div>
<div class="card-desc">Crovia Evidence Protocol terminal. Inspect, verify, and reproduce cryptographic evidence capsules.</div>
<span class="card-tag tag-space">HF SPACE</span>
</a>
<a href="https://huggingface.co/datasets/Crovia/global-ai-training-omissions" target="_blank" class="card">
<div class="card-title">Global AI Training Omissions</div>
<div class="card-desc">Append-only observation ledger. Every scan, every hash, every absence receipt — timestamped and immutable.</div>
<span class="card-tag tag-dataset">DATASET</span>
</a>
<a href="https://huggingface.co/datasets/Crovia/cep-capsules" target="_blank" class="card">
<div class="card-title">CEP Reference Capsules</div>
<div class="card-desc">CEP.v1 cryptographic evidence capsules. Reproducible provenance proofs for AI training data.</div>
<span class="card-tag tag-dataset">DATASET</span>
</a>
</div>
</div>
<!-- Registry pages -->
<div class="section">
<div class="section-title">CROVIA Registry</div>
<div class="grid">
<a href="https://registry.croviatrust.com/registry" target="_blank" class="card">
<div class="card-title">Registry Home</div>
<div class="card-desc">Central hub. Live target index, aggregate statistics, observation status.</div>
<span class="card-tag tag-registry">REGISTRY</span>
</a>
<a href="https://registry.croviatrust.com/registry/compliance" target="_blank" class="card">
<div class="card-title">Compliance Mapping</div>
<div class="card-desc">Per-model regulatory gap analysis across 20 NEC# elements and 11 jurisdictions. Includes regulatory context with EU AI Act and GDPR citations.</div>
<span class="card-tag tag-registry">REGISTRY</span>
</a>
<a href="https://registry.croviatrust.com/registry/tpa" target="_blank" class="card">
<div class="card-title">Temporal Proof of Absence</div>
<div class="card-desc">Cryptographic evidence chain. SHA-256 hashes, Merkle roots, append-only temporal proofs of documentation gaps.</div>
<span class="card-tag tag-registry">REGISTRY</span>
</a>
<a href="https://registry.croviatrust.com/registry/lineage" target="_blank" class="card">
<div class="card-title">Lineage Graph</div>
<div class="card-desc">Interactive D3.js visualization of model-organization-dataset relationships. Reveals shared training data dependencies.</div>
<span class="card-tag tag-registry">REGISTRY</span>
</a>
<a href="https://registry.croviatrust.com/registry/omissions" target="_blank" class="card">
<div class="card-title">Omission Ledger</div>
<div class="card-desc">Searchable ledger of documented training data omissions across monitored models.</div>
<span class="card-tag tag-registry">REGISTRY</span>
</a>
<a href="https://registry.croviatrust.com/registry/outreach" target="_blank" class="card">
<div class="card-title">Outreach & Impact</div>
<div class="card-desc">Transparency engagement tracker. Documents communications with model publishers about documentation gaps.</div>
<span class="card-tag tag-registry">REGISTRY</span>
</a>
</div>
</div>
<!-- Principles -->
<div class="section">
<div class="section-title">Architecture</div>
<div class="principles">
<div class="principle principle-open">
<h4>Open Plane</h4>
<p>Everything you see here. Continuous observation of AI model documentation. Cryptographic proof of evidence presence and absence. Verifiable surfaces: timestamps, hashes, Merkle roots, append-only artifacts. No judgment. No accusations.</p>
</div>
<div class="principle principle-pro">
<h4>PRO Plane</h4>
<p>Quantitative regulatory exposure analysis. Per-model, per-jurisdiction financial impact assessment. Evidence-backed compliance intelligence. Settlement infrastructure. Available to qualified organizations.</p>
<p style="margin-top:8px"><a href="mailto:info@croviatrust.com" style="color:#f59e0b;font-weight:700;font-size:11px">Contact: info@croviatrust.com</a></p>
</div>
</div>
</div>
<!-- Footer -->
<div class="foot">
<p><a href="https://croviatrust.com" target="_blank">croviatrust.com</a> · <a href="https://github.com/croviatrust" target="_blank">github.com/croviatrust</a></p>
</div>
<div class="disclaimer">Observation, not judgment. All data derived from public sources. No claim of violation is made or implied.</div>
</div>
<script>
// Populate live stats from registry API
fetch('https://registry.croviatrust.com/registry/data/lineage_graph.json')
.then(r => r.json())
.then(d => {
const nodes = d.nodes || [];
const models = nodes.filter(n => n.type === 'model');
const shadows = nodes.filter(n => n.type === 'shadow');
const orgs = nodes.filter(n => n.type === 'org');
const total = models.length + shadows.length;
const docRate = total > 0 ? (models.length / total * 100).toFixed(1) : '0';
document.getElementById('s-models').textContent = total;
document.getElementById('s-orgs').textContent = orgs.length;
document.getElementById('s-doc').textContent = docRate + '%';
})
.catch(() => {
document.getElementById('s-models').textContent = '141';
document.getElementById('s-orgs').textContent = '70';
document.getElementById('s-doc').textContent = '83.5%';
});
fetch('https://registry.croviatrust.com/registry/data/tpa_latest.json')
.then(r => r.json())
.then(d => {
document.getElementById('s-tpa').textContent = d.total_tpas || d.tpas?.length || '200+';
})
.catch(() => {
document.getElementById('s-tpa').textContent = '200+';
});
</script>
</body>
</html>
|