# Changelog of ChatGPT Ads & AI Crawler Policy Auditor (`x2ppi/ai-crawler-readiness-auditor`) Actor

- **URL**: https://apify.com/x2ppi/ai-crawler-readiness-auditor/changelog.md
- **Full Actor documentation**: https://apify.com/x2ppi/ai-crawler-readiness-auditor.md

## Changelog

### Store launch - 2026-07-20

- Published the Actor at `https://apify.com/x2ppi/ai-crawler-readiness-auditor`.
- Verified the public title, $5.00 per 1,000 website-audit price, categories, README, and public Actor URL.
- Recorded the launch baseline separately from revenue in `launch/metrics.csv`.
- Published Cloud build `0.1.5` with API, MCP, n8n, JavaScript, Python, and curl examples using the actual public Actor ID.
- Published and verified the public 1-site example task at `https://apify.com/x2ppi/ai-crawler-readiness-auditor/examples/1-site-ai-crawler-readiness-check`.
- Posted one approved Actor announcement to Apify & Crawlee Discord's `#actor-promotion` channel on 2026-07-21; the channel log is in `launch/posting_log.csv`.
- Posted one approved purpose-based policy update to the same channel on 2026-07-21; it positions the Actor as a technical preflight rather than an ad-approval or visibility predictor.
- Published Cloud build `0.1.6` with `recommendations[]`: deterministic remediation actions linked to observed audit issues.
- Published Cloud build `0.1.7` with `robotsTxt.policyProfiles[]` and `purposeSummaries`, separating observed root-policy controls by purpose: model training, AI search/grounding, user-requested page fetch, ad landing-page review, and open-web data.
- Published Cloud build `0.1.8` with `robotsTxt.landingPagePolicy`: path-specific OAI-AdsBot policy status, purpose summaries, a dedicated block warning, and a deterministic remediation action for each submitted landing-page URL.
- Published Cloud build `0.1.9` with n8n, Make, Zapier, and MCP routing guidance for path-specific OAI-AdsBot findings.
- Updated Store and SEO copy to describe the bounded ChatGPT Ads landing-page policy inventory without implying ad approval or performance.
- Updated the Store description to make the implemented ChatGPT Ads landing-page and path-specific OAI-AdsBot policy audit discoverable without changing pricing, categories, or the Actor name.
- Renamed the public Actor to `ChatGPT Ads & AI Crawler Policy Auditor` so the Store title, description, and implemented policy-only scope use the same buyer-intent language.
- Published Cloud build `0.1.10` with the durable Actor-title and README alignment.
- Published Cloud build `0.1.11` with no-charge diagnostics for non-2xx landing-page HTTP responses, preserving PPE charges for only reachable audit results.
- Verified build `0.1.11` in Cloud with a 404 landing page: one Dataset diagnostic was stored with `chargeable: false`, while both charged and accounted `website-audit` event counts remained zero.
- Published the public example `Blocked Landing Page Diagnostic (No Charge)` at `https://apify.com/x2ppi/ai-crawler-readiness-auditor/examples/blocked-landing-page-diagnostic-no-charge`, including a verified 404 result, the selected input fields, and the `Audit overview` dataset view.
- Published Cloud build `0.1.12` with the exact matching `Allow` or `Disallow` directive and its bot-group scope in every bot policy profile, so a blocked OAI-AdsBot result can be handed to an engineer with its rule evidence.
- Published Cloud build `0.1.14` with atomic successful-result storage and PPE charging. A live one-result run verified one stored item and exactly one `website-audit` event after the earlier duplicate-charge risk was removed.
- Published Cloud build `0.1.17` to remove an SDK return-value assertion that could log a false audit failure even when the Cloud API recorded exactly one stored item and one `website-audit` event.
- Published and verified the public OAI-AdsBot rule-evidence example at `https://apify.com/x2ppi/ai-crawler-readiness-auditor/examples/oai-adsbot-rule-evidence-check`, with all four inputs selected and the `Audit overview` dataset view.
- Published Cloud build `0.1.18` with a concrete token-safe n8n single-request setup and an explicit owner-review route for blocked OAI-AdsBot findings.
- Published Cloud build `0.1.19` with a recurring weekly policy-review recipe that uses a saved task, a capped schedule, and comparable Dataset snapshots without claiming automatic change detection.
- Published Cloud build `0.1.20` with an opt-in OAI-AdsBot User-Agent simulation. It records the observed response from the Actor's IP as an advisory signal and explicitly does not claim verified OpenAI crawler access, ad acceptance, or policy-change authority.
- Verified build `0.1.20` with the public OAI-AdsBot rule-evidence task: one reachable result stored the simulation status and final URL, while the owner verification's accounted event count and customer revenue remained zero.
- Published Cloud build `0.1.22` with a 60-second first-preflight guide for one public ChatGPT Ads landing-page audit, an explicit `$0.005` run cap, and the optional advisory OAI-AdsBot User-Agent signal.
- Published Cloud build `0.1.27` with token-free recurring comparison: the workflow owner supplies an earlier exported result through `previousAuditJson`, and matching URLs receive a compact technical diff without the public Actor reading customer storage.
- Verified build `0.1.27` in Cloud with saved task run `hV9WKWAVgNuiQaR8V`: one reachable owner-test result reported `comparison.status: compared`, `changed: false`, and simulated OAI-AdsBot HTTP 200. One event was recorded for the owner test, while the accounted event count and customer revenue remained zero.
- Published Cloud build `0.2.1` as Actor version `0.2` so the recurring-comparison input schema and README receive a fresh public version snapshot. Local schema validation and 52 automated tests passed before deployment.
- Updated the Store SEO title to `OAI-AdsBot AI & ChatGPT Ads Policy Auditor` without changing the public Actor title, pricing, categories, or implementation scope.
- Published Cloud build `0.2.2` with a `Policy change comparison` Dataset view, then updated the public weekly OAI-AdsBot example to preview `url`, `comparison`, and `checkedAt` rather than the generic audit overview.
- Published Cloud build `0.2.3` with flat policy-comparison fields (`comparisonStatus`, `comparisonChanged`, and `comparisonSummary`) so the weekly monitor preview can expose the status, change flag, and owner-facing summary separately. A Cloud owner test stored the flat fields with `compared`, `false`, and the expected no-change summary; accounted event count and customer revenue remained zero.
- Published Cloud build `0.2.4` with a compact `OAI-AdsBot landing-page policy evidence` Dataset view. A bounded owner verification stored the direct path-specific decision for `https://www.nytimes.com/ads/`: blocked by the wildcard `Disallow: /ads/` rule; the owner verification is not customer revenue.
- Published the public task `Check ChatGPT Ads Landing-Page Policy` at `https://apify.com/x2ppi/ai-crawler-readiness-auditor/examples/check-chatgpt-ads-landing-page-policy`, exposing only the URL input and the concise landing-page policy-evidence output view.
- Enabled Store tiered PPE discounts for `website-audit`: Free `$5.00`, Bronze `$4.75`, Silver `$4.50`, and Gold-or-higher `$4.00` per 1,000 successful audits. Platform usage remains included and no charge trigger or event name changed.

### 0.1.3 — 2026-07-18

- Activated one `website-audit` PPE event at $0.005 per successfully stored audit, with platform usage included.
- Removed synthetic Actor-start and default-Dataset-item events to prevent hidden or duplicate charges.
- Limited URL processing to the number of events allowed by the user's maximum run charge.
- Verified 43 automated tests, Cloud build `0.1.3`, one-event billing, and one-result enforcement at a $0.005 run limit.

### 0.1.2 — 2026-07-18

- Overrode the Apify/Crawlee transitive `adm-zip` dependency to patched version 0.6.0 for CVE-2026-39244.
- Verified a clean `npm ci`, upstream fingerprint-header generation, zero npm audit vulnerabilities, 41 tests, a public-site audit, and the full local Actor path.
- Added the descriptions required by Apify's Cloud input-schema validator.
- Corrected the Docker build so TypeScript compiles before development dependencies are pruned.
- Verified private Cloud build `0.1.2`, a successful one-site Cloud run, and the resulting one-item Dataset.
- Verified successful 10-site and 100-site Cloud runs, authenticated API access, and CSV/XLSX exports.
- Added the final Store icon and saved the private Store description, categories, and custom SEO details.

### 0.1.1 — 2026-07-18

- Added public-IP validation for DNS answers and blocked mixed public/private answers.
- Added socket destination pinning to prevent DNS rebinding between validation and connection.
- Added redirect-by-redirect validation, a five-hop limit, and a 5 MiB response limit.
- Expanded IPv4/IPv6 special-range validation and SSRF/billing regression coverage to 41 tests.
- Corrected the local `npm start` compiled entry path.

### 0.1.0 — 2026-07-16

- Added bounded public-site AI crawler readiness audits.
- Added robots, llms, sitemap, metadata, canonical, and JSON-LD checks.
- Added fixed Apify input, Dataset, and output schemas.
- Added post-save PPE charging with concurrent duplicate-charge prevention.
- Added fixtures, 15 automated tests, benchmark, QA automation, research, pricing, integrations, Store copy, and launch plans.
