This documentation is also published as Markdown for efficient machine reading: the whole site is indexed at /llms.txt, and every page has a clean Markdown copy under /_llms/. These are generated from the same source and cost far fewer tokens to read than this rendered HTML.

Skip to main content Skip to navigation

IRenderedAuditor Pennington.Generation

A build-time auditor that needs the post-pipeline rendered HTML for each page. Runs after every IBuildAuditor in AuditRunner and writes into the same IAuditCache, so consumers (the dev overlay, the build report) don't need to know which interface produced a given diagnostic.

Prefer IBuildAuditor when a structural check on Pages is enough — this seam is for checks (broken links, accessibility passes, etc.) that genuinely need rendered markup. Each rendered audit costs an HTTP self-dispatch per page.

Properties

Code string
Stable identifier for the auditor (e.g. content.links).

Methods

AuditAsync

#
public Task<IReadOnlyList<BuildDiagnostic>> AuditAsync(RenderedAuditContext context, CancellationToken cancellationToken)

Runs the auditor against context and returns its diagnostics.

Parameters

context RenderedAuditContext
cancellationToken CancellationToken

Returns

Task<IReadOnlyList<BuildDiagnostic>>

Pennington.Generation.IRenderedAuditor

namespace Pennington.Generation;

/// A build-time auditor that needs the post-pipeline rendered HTML for each page. Runs after every IBuildAuditor in AuditRunner and writes into the same IAuditCache, so consumers (the dev overlay, the build report) don't need to know which interface produced a given diagnostic. Prefer IBuildAuditor when a structural check on Pages is enough — this seam is for checks (broken links, accessibility passes, etc.) that genuinely need rendered markup. Each rendered audit costs an HTTP self-dispatch per page.
public interface IRenderedAuditor
{
    /// Runs the auditor against context and returns its diagnostics.
    
public Task<IReadOnlyList<BuildDiagnostic>> AuditAsync(RenderedAuditContext context, CancellationToken cancellationToken)
; /// Stable identifier for the auditor (e.g. content.links).
public string Code { get; }
}