Opening the page…

Sulayman Bowles

Building Atlas

How I built a website audit console that carries captured evidence into review and export.

· · Updated

Monochrome generative point study “Lorenz Lantern,” a mathematical form rendered in black and white.
Lorenz Lantern · @yuruyurau ↗
Find your answer

How do I tell whether an audit finding is backed by captured evidence?

Follow the finding back to its captured artifact, retrieval conditions, interpretation, and review decision. Keep missing measurements visible: saved JavaScript data is not proof that a browser rendered it. Atlas illustrates that workflow with a bounded source sample and a pinned code revision. Its tests establish behavior at that revision; the retained two-page capture establishes only what those requests returned. Neither establishes coverage or outcomes for an entire site.

Evidence: Atlas at the audited revision · Retained capture manifest · Rendering and provenance tests

I built Atlas through VOID to make website audits easier to act on. A warning should let its reviewer inspect the evidence, understand what it establishes, and decide whether to change the site.

Atlas carries a captured page through interpretation, review, and export. Following one finding through that workflow explains the product decisions behind the console.

Scope and assumptions

The July demonstration below is a retained two-page source capture. The implementation references are pinned to the repository revision reviewed on October 1, 2026. Neither establishes client outcomes, search rankings, production coverage, or measured performance gains.

Make the finding useful

A missing heading, a conflicting canonical, and an unavailable performance measurement require different responses. A warning count cannot tell a reviewer which deserves attention.

My work covers Atlas’s product architecture, crawler, evidence policy, review workflow, and interface. The console captures pages, connects them, and retains the context behind its findings. The public repository documents a local audit console rather than a hosted commercial service. Repository scope.

A recommendation should lead back to its URL, captured state, and rule. The reviewer needs that connection at the point of decision.

Retain the conditions of capture

Collection choices affect the findings. Duplicate addresses inflate counts; partial runs can make reachable pages appear absent; a failed fetch can resemble an empty page. The record must distinguish these states.

Atlas retains measurement conditions alongside results. Crawl policy and collection limits define the sample; SQLite preserves the local run for inspection and export. A bounded crawl cannot describe the whole site.

The incremental-crawl tests check reuse after a 304 response and an unchanged 200 response, then require re-parsing when the artifact version changes. The content can stay the same while its interpretation changes. These are code-level checks, not a throughput benchmark. Incremental-crawl tests.

Separate the response from the rendered page

In the retained July 16 sample, both Quotes to Scrape pages returned HTTP 200. The ordinary page’s source contained ten quote cards. The JavaScript page contained zero quote-card elements but ten runtime data records. The capture also retained next-page addresses. Capture manifest.

A successful response does not establish content completeness. This sample contains no measured browser render and establishes nothing about indexing or a broken corpus. Assessing the JavaScript page’s visible coverage requires a browser render.

The render-pipeline tests carry that distinction into issue generation. A fixture lacks a heading in raw HTML but includes it in effective rendered facts. The expected result retains the raw-only observation without flagging a missing heading on the effective page. It also separates a raw canonical mismatch from the effective canonical state. Render-pipeline tests.

The interface should show which state produced the finding and why the raw response and effective page disagree.

Retained source factOrdinary pageJavaScript page
HTTP response200200
Quote-card elements100
Runtime data recordsNot counted in this capture10

Source capture, July 16, 2026. This table reports retained observations; it does not report browser-rendered quote counts.

Distinguish a finding from missing evidence

The public sample records an absent canonical tag without assigning severity. Page purpose, duplication, redirects, and other signals determine whether that absence warrants a change. The report needs to show how it reached that judgment.

An unavailable provider measurement is an evidence gap. The provider-reconciliation tests include a skipped-missing-key state; missing data should never become a bad website score. Provider tests.

Link graphs, canonicals, structured data, and derived findings ask related questions: do the addresses agree, can the page be reached, does visible content support the structured claim, and can the finding be traced to an observation? The pinned implementation and retained artifacts determine which answers Atlas can support.

Use an unexplained finding to improve the system

I want the improvement cycle to start with a finding that cannot be explained, or a run that hides a missing measurement. The change should address that case and retain enough context to evaluate the result.

Keep a small example. Locate the error in capture, interpretation, or presentation. Write a regression check, rerun the example, and compare the finding with its record. Presentation cannot repair an unsupported interpretation.

The cache-version and rendered-facts tests encode parts of this method. Open questions remain: which artifacts need reinterpretation after a rule changes? What can an incomplete browser measurement establish? Where does a bounded run disclose its limits?

These tests document development practices. An autonomous improvement service, reduced audit time, and a completed validation program remain unestablished.

Compare the causes of a changed finding

The next iteration should help reviewers compare runs. A changed finding may reflect a changed page, a revised rule, a different collection limit, or a newly available provider. These causes must be separated before crediting a fix.

I would judge that work by the quality of its explanations, visible uncertainty, comparisons, and traceable exports. More information earns its place when it improves a decision.

The repository excludes rank tracking, GA4 integration, hosted dashboard delivery, and distributed crawling. These remain limits of the reviewed implementation. Repository scope.

Open the Atlas case study to inspect the retained pages and source facts.

Sources

  1. Atlas repository and documented scope

    Reviewed Oct 1, 2026

    Pinned revision ef3bad25ea0f43f7b4a854fa56c74af5a50fc8db. Scope and limits; not independent verification of operational results.

  2. Retained Quotes to Scrape source-capture manifest

    Jul 16, 2026

    Two source captures; this does not include a measured browser render.

  3. Incremental crawl regression tests

    304 reuse, unchanged-body reuse, and artifact-version invalidation.

  4. JavaScript rendering and issue-provenance tests

    Raw-only observations and effective rendered facts remain distinct.

  5. Provider-reconciliation tests

    Includes skipped-missing-key behavior. Test inspection is not a fresh execution of the Atlas test suite.

Read next