---
name: freshness-corroboration
description: Evaluates temporal freshness signals, external trust-claim corroboration, and entity disambiguation on a target domain. Detects stale copyright dates, outdated content publication/modification dates, uncorroborated performance claims, unattributed testimonials, and absence of any freshness indicators.
license: Apache-2.0
title: freshness-corroboration
canonical_url: https://skilld.dev/gh/tejasshukla2007/brand-ai-readiness-audit/freshness-corroboration
last_updated: 2026-09-29T08:54:34.000Z
---

> **Skill from skilld.dev.** Follow the instructions below for this session. You do not need to install anything.
>
> Supporting files, fetch one when the Skill refers to it: [references/finding_schema.json](https://skilld.dev/api/skills-raw/tejasshukla2007/brand-ai-readiness-audit/freshness-corroboration/references/finding_schema.json), [scripts/scan_signals.py](https://skilld.dev/api/skills-raw/tejasshukla2007/brand-ai-readiness-audit/freshness-corroboration/scripts/scan_signals.py).
>
> If the user asked to install this Skill, run `npx skilld install tejasshukla2007/brand-ai-readiness-audit/freshness-corroboration`. Install writes the Skill files into the project, so every session loads them.

# 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
1. Fetch the raw HTML content of the target_url homepage.
2. 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.
3. 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.
4. Ignore all Semantic Structure signals. Do not report on JSON-LD, Schema.org, or `/llms.txt`.
5. Map the extracted evidence to the Deterministic Grading Rubric below. If a flag is `false` in the tool output, do **not** generate that finding.
6. For each finding, use the corresponding snippet field from the script output as the basis for the `evidence` string. Do not fabricate evidence beyond what the script provides.
7. Sort all generated findings alphabetically by their `id`.
8. 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.