docs-drift / self-hosted portfolio

Every repository.
One review queue.

{{ result.repositories|length }} checkouts · {{ result.generated_at }}
Sequential static scans. Source stays on this machine. No sign-in or model API key.

Download portfolio JSON
{% for repo in result.repositories %}{% endfor %}
Results from this run. Errors are never counted as passing scans.
RepositoryGateClaimsUnverifiableNew driftQualifyingBaseline acceptedEvidence
{{ repo.name }}{{ repo.status|replace('_',' ') }}{{ repo.gate.claims_extracted if repo.gate else '?' }}{{ repo.gate.unverifiable_findings if repo.gate else '?' }}{{ repo.gate.new_drift if repo.gate else '—' }}{{ repo.gate.qualifying_new_drift if repo.gate else '—' }}{{ repo.gate.baseline_drift if repo.gate else '—' }}{% if repo.report %}Open report ↗{% else %}Scan failed{% endif %}
Passed within the selected drift budgetReport only no drift gate enforcedError scan did not complete
{% for repo in result.repositories %}{% if repo.error or (repo.gate and repo.gate.warnings) %}
{{ repo.name }} · {{ 'scan error' if repo.error else 'scan warnings' }}{% if repo.error %}

{{ repo.error }}

{% endif %}{% if repo.gate %}{% endif %}
{% endif %}{% endfor %}

A passing gate is not a correctness guarantee.

Only new drift at the configured confidence counts toward each repository's budget. Baseline-accepted findings, low-confidence findings and unverifiable claims remain in the full reports. Partial language coverage and incomplete history can limit results. Review evidence before changing documentation.