Freshness and Corroboration Audit
When to use
Execute this skill when the audit orchestrator requests an evaluation of a domain's content freshness, claim corroboration, and entity clarity for AI discoverability.
Inputs
- target_url: The full URL or domain name to be audited.
Procedure
- Fetch the raw HTML content of the target_url homepage.
- Execute
python scripts/scan_signals.py <url>passing the full HTML via stdin. The script strips<script>and<style>blocks, then runs deterministic regex-based checks to extract boolean flags and evidence snippets. - Read the Tool Output Data. You are strictly forbidden from hallucinating evidence. You must only evaluate the flags and snippets explicitly provided by the script.
- Ignore all Semantic Structure signals. Do not report on JSON-LD, Schema.org, or
/llms.txt. - Map the extracted evidence to the Deterministic Grading Rubric below. If a flag is
falsein the tool output, do not generate that finding. - For each finding, use the corresponding snippet field from the script output as the basis for the
evidencestring. Do not fabricate evidence beyond what the script provides. - Sort all generated findings alphabetically by their
id. - Format all detected issues strictly into the JSON structure defined in
references/finding_schema.json.
Deterministic Grading Rubric
You must assign severities and generate findings strictly according to this matrix.
Evaluation Rubric
Map the output flags EXACTLY to the following Finding IDs. If html_fetch_failed is true, you MUST emit ONLY FC-000 and omit all other findings.
Note: For FC-000, phrase the evidence and suggested_action as an informative warning. Inform the user that the audit was inconclusive due to a firewall, and gently recommend verifying that official AI crawlers (like GPTBot) are whitelisted.
| Python Output Flag | Finding ID | Title | Severity | Default Priority |
|---|---|---|---|---|
html_fetch_failed: true |
FC-000 | Audit Inconclusive: Bot Protection Active | medium | medium |
outdated_copyright_found: true |
FC-001 | Outdated Copyright Year Signals Stale Content | high | high |
uncorroborated_claims_found: true |
FC-002 | Uncorroborated Performance Claims Without Source Links | medium | medium |
unattributed_quotes_found: true |
FC-003 | Unattributed Testimonials Lacking Entity Attribution | medium | medium |
stale_dates_found: true |
FC-004 | Stale Content Dates Exceeding 5-Year Freshness Threshold | high | high |
no_freshness_signals: true |
FC-005 | No Temporal Freshness Signals Detected on Page | medium | medium |
social_proof_unlinked_found: true |
FC-006 | Unlinked Social Proof Claims Lacking Verifiable Source | medium | medium |
stale_cdn_cache_found: true |
FC-007 | Stale CDN Cache Detected via HTTP Age Header | low | low |
Output
Emit only a valid JSON array matching the exact structure dictated in references/finding_schema.json.