# Observation lag review worksheet

Track when a fixed prompt first preserves a current product fact after an accepted deployment. Register checkpoints, keep actual capture times and missing attempts, and report the observed timing within that schedule.

Worksheet version 1.0 · 25 September 2026. Complete and repeat records as needed. Blank fields request your evidence; these manual files do not collect answers, publish changes or calculate RankEcho product metrics.

Complete guide: https://rankecho.io/resources/prove/expected-observation-lag

## 1 Freeze the facts and deployment

Start the elapsed clock from accepted deployment evidence. A notification, recrawl request or presumed provider event is not the start time for this method.

**Accepted deployment** — Record change ID, exact page and version, acceptance evidence, approver and actual UTC deploy time. Keep the record pending until delivery is verified; retain concurrent changes.

[Enter your response]

**Current and prior fact rules** — For each fact ID, record the current and declared prior values, effective time, authority and source evidence. Freeze the normalization rule and treatment of incomplete, conflicting or unclassifiable answers.

[Enter your response]

**Fixed prompt cells** — Record cell IDs, exact prompts, associated fact IDs, service, surface, locale, session, model label and collection procedure. Preserve the same coordinates and rule throughout the schedule.

[Enter your response]

## 2 Register and capture every checkpoint

The fictional plan schedules six cells once at D1, D3 and D7 after the August 24 deployment. These are example checkpoints, not recommended or guaranteed provider refresh times.

**Prospective schedule and endpoint** — Record every checkpoint ID, elapsed offset, scheduled UTC time, required cells and administrative cutoff before collection. Complete the schedule without extending it selectively after a favorable or missing answer.

[Enter your response]

**Actual attempt and evidence** — For each cell and checkpoint, record the actual UTC attempt or capture time, raw answer or failure pointer and collection state. Keep scheduled time separate from actual capture time; the example's captures are 5–30 minutes later.

[Enter your response]

**Fact classification** — For an eligible answer, preserve its exact passage and current, stale or indeterminate decision under the frozen rule. Unavailable and failed attempts receive no fact label. Retain ambiguity separately rather than guessing current or stale.

[Enter your response]

## 3 Reconcile timing and coverage

The fictional ledger has 18 planned attempts: 15 observed, two unavailable and one failed. The 15 eligible answers contain nine current facts and six stale facts.

**First preserved current observation** — For each fixed cell, identify the earliest eligible current-fact record. Report its scheduled checkpoint and actual capture time, with elapsed time from accepted deployment. This is detection timing, not the provider's exact update time.

[Enter your response]

**Complete attempt accounting** — Reconcile planned attempts to observed, unavailable and failed attempts; retain indeterminate answers separately in real records. Keep all observations after a first current answer. With no eligible observations, display N/A and no outcome percentage.

[Enter your response]

**Cutoff and collection gaps** — Record cells with no preserved current fact by the fixed cutoff. X06 is stale at D1, unavailable at D3 and failed at D7. Its censored label does not prove that it stayed stale or event-free through day 7.

[Enter your response]

| Fictional timing group | Cells | Recorded meaning |
| --- | --- | --- |
| D1 checkpoint | 1 | First current at D1 |
| D3 checkpoint | 2 | First current at D3 |
| D7 checkpoint | 2 | First current at D7 |
| No current by cutoff | 1 | No preserved current fact |

## 4 Review the bounded timing record

A later current answer does not show when a page was crawled, indexed, retrieved or used. Missing follow-ups also prevent a claim that a cell stayed unchanged throughout the window.

**Independent reconstruction** — Ask a reviewer to reproduce all attempt states, first-current records, checkpoint labels and elapsed capture times. Verify the six-cell, three-checkpoint example without dropping any of its 18 attempts.

[Enter your response]

**Descriptive conclusion and limits** — Report counts, observed elapsed intervals, missingness and the fixed endpoint. Do not estimate a universal wait time, service commitment, success probability or causal effect from this record.

[Enter your response]

**Next schedule and owner** — Choose continue, repair collection or stop for the same business question, with owner and date. Preserve this completed schedule; any additional monitoring needs a new prospective version and endpoint.

[Enter your response]

## Complete guide

There is no universal expected interval for an AI answer to reflect a changed product fact. Define observation lag operationally as the elapsed time from an accepted deploy to the first eligible fixed-cell observation containing the frozen current value. Retest the same prompts and surfaces at predeclared checkpoints, preserve stale, unavailable, failed, and right-censored records, and report counts plus elapsed intervals only. A later current-fact observation does not identify why it changed. Site traffic is a separate outcome and is not required.

Original guide update: 2026-09-07. Worksheet prepared 25 September 2026. The original guide and its evidence records retain their dates. This manual review record complements the original guide and retains its separate method and product boundaries.

## Is there an expected AI search observation lag?

No primary source used here publishes one waiting interval that applies across pages, engines, answer surfaces, queries, and dates. Google documents recrawl requests without guaranteeing crawl timing, and OpenAI describes current-information search and source interfaces without promising per-page refresh timing.

Use expected only to mean the checkpoints specified in advance for this measurement plan. It does not mean an average, service commitment, provider forecast, or general performance benchmark.


## What remains fixed after deployment?

SYNTHETIC EXAMPLE — Lumenfold Supply Co., Lumenfold TraceDesk, every .example URL, fact, surface, assertion, change, prompt, answer, and observation below are fictional; this is not RankEcho data, customer data, provider evidence, or a benchmark.

The panel contains six exact prompt-surface cells, one for each frozen product fact. Locale, signed-out session state, prompt text, surface label, fact ID, and classification rule remain fixed across all three checkpoints.

| Cell | Prompt | Surface | Fact |
| --- | --- | --- | --- |
| X01 | What is the current name of Lumenfold's trace workspace? | Surface A | F01 |
| X02 | What does one Lumenfold TraceDesk workspace cost each month? | Surface A | F02 |
| X03 | How long is the Lumenfold TraceDesk trial? | Surface B | F03 |
| X04 | Which import formats does Lumenfold TraceDesk support? | Surface A | F04 |
| X05 | In which countries is Lumenfold TraceDesk available? | Surface B | F05 |
| X06 | What are Lumenfold TraceDesk support hours? | Surface B | F06 |


## Which elapsed checkpoints are scheduled?

The synthetic deploy time is 2026-08-24 at 12:00 UTC. Each of the six cells is scheduled once at 1, 3, and 7 elapsed days, yielding eighteen planned attempts without adapting the schedule after an early result.

The interval is computed from the accepted deploy time, not from a notification response, a presumed crawl, an index timestamp, or an answer-system event that was not observed.

| Checkpoint | Elapsed days | Scheduled time |
| --- | --- | --- |
| D1 | 1 | 2026-08-25T12:00:00Z |
| D3 | 3 | 2026-08-27T12:00:00Z |
| D7 | 7 | 2026-08-31T12:00:00Z |


## How are current, stale, unavailable, and failed classified?

Current-fact means the preserved answer expresses the frozen value under the fact-specific normalization rule. Stale-fact means it expresses the declared prior value. An unavailable surface and a collection failure receive no fact label and never enter either observed count.

An answer that is incomplete, conflicting, or outside the declared normalization rule should receive an explicit indeterminate state in a real implementation. This fixed synthetic fixture contains no such observed case and must not be generalized.


## What does the worked synthetic observation ledger show?

The eighteen scheduled attempts contain 15 eligible observations, two unavailable attempts, and one failed attempt. Among eligible observations, nine contain the current fact and six retain the stale fact.

| Attempt | Prompt-surface cell | Checkpoint | Collection | Fact label |
| --- | --- | --- | --- | --- |
| O01 | X01 | D1 | eligible-observed | current-fact |
| O02 | X01 | D3 | eligible-observed | current-fact |
| O03 | X01 | D7 | eligible-observed | current-fact |
| O04 | X02 | D1 | eligible-observed | stale-fact |
| O05 | X02 | D3 | eligible-observed | current-fact |
| O06 | X02 | D7 | eligible-observed | current-fact |
| O07 | X03 | D1 | eligible-observed | stale-fact |
| O08 | X03 | D3 | eligible-observed | current-fact |
| O09 | X03 | D7 | eligible-observed | current-fact |
| O10 | X04 | D1 | eligible-observed | stale-fact |
| O11 | X04 | D3 | eligible-observed | stale-fact |
| O12 | X04 | D7 | eligible-observed | current-fact |
| O13 | X05 | D1 | unavailable | Not eligible |
| O14 | X05 | D3 | eligible-observed | stale-fact |
| O15 | X05 | D7 | eligible-observed | current-fact |
| O16 | X06 | D1 | eligible-observed | stale-fact |
| O17 | X06 | D3 | unavailable | Not eligible |
| O18 | X06 | D7 | failed | Not eligible |


## How does first-current timing reconcile?

Across the six fixed cells, first-current is observed at day 1 for one cell, day 3 for two cells, and day 7 for two cells. One cell has no preserved current-fact observation and remains right-censored through the seven-day window.

Right-censored does not mean the answer never changes. It means the declared window did not preserve a current-fact observation for that cell; its unavailable and failed attempts remain visible.

| First-current interval | Prompt-surface cells | Interpretation |
| --- | --- | --- |
| 1 elapsed day | 1 | First current-fact observation occurred at D1 |
| 3 elapsed days | 2 | First current-fact observation occurred at D3 |
| 7 elapsed days | 2 | First current-fact observation occurred at D7 |
| Right-censored through day 7 | 1 | No current-fact observation was preserved in the scheduled window |


## How does the complete arithmetic reconcile?

6 cells × 3 checkpoints = 18 scheduled attempts. The ledger contains 15 observed, 2 unavailable, and 1 failed attempts; 9 current-fact plus 6 stale-fact observations equal the 15 eligible observations.

If no scheduled attempt yields an eligible observation, the display is N/A. Zero eligible evidence must not be rendered as zero stale facts, zero current facts, or a favorable outcome.


## What can discovery records establish?

A truthful sitemap modification date, a Google recrawl request, or an IndexNow notification can establish that a publisher supplied the documented signal or request. It cannot establish when a provider crawled, indexed, retrieved, or used a page.

Google's AI-feature guidance and OpenAI's Search help are product-specific. Neither source supplies a cross-provider causal pathway or a fixed update interval for this synthetic panel.


## Why is a later current fact not causal proof?

The panel has no randomized control, does not observe provider internals, and cannot isolate the owned-page patch from other web changes or answer variation. Temporal order is necessary for a post-deploy observation but is insufficient for causal attribution.

Report only what the preserved answer contained, its surface and prompt, the elapsed checkpoint, and collection state. Do not claim that notification, markup, recrawl, or the correction caused the answer.


## How should the elapsed counts be used?

Use them to decide whether another predeclared observation is worth collecting for the same business question. Do not extrapolate six fictional cells to another provider, site, category, query, locale, or period.

The counts do not estimate a universal expectation, probability, service level, ranking effect, citation effect, recommendation effect, or traffic effect.


## How does Prove connect to RankEcho?

Use Proof Loop to preserve fixed prompts and later observations under its supported product scope. The three-checkpoint schedule, current-versus-stale classifier, first-current intervals, and censoring table are a companion method; RankEcho does not currently present this synthetic ledger as a supported universal timing metric.

- [Open the proof workflow](https://rankecho.io/product/proof-loop)
- [Review the original fact inventory](https://rankecho.io/resources/find/issues/stale-product-facts)
- [Review the bounded fact patch](https://rankecho.io/resources/fix/refresh-stale-product-facts)

## Who maintains this guide?

Written and maintained by Abiot Y. Derbie. Published 2026-09-07; sources checked 2026-09-07; last updated 2026-09-07. The observations are synthetic.

Recheck the documented product surfaces and preserve the complete observation window before applying the method. Send material corrections through the contact page.

- [Send a correction](https://rankecho.io/contact)
- [Review measurement definitions](https://rankecho.io/methodology)

## How long does AI search take to show an updated product fact?

There is no universal documented interval. Measure a declared prompt and surface at fixed elapsed checkpoints, and report observed, unavailable, failed, and censored records without extrapolation.

## What is first-current observation lag?

In this method it is the elapsed time from the accepted deploy to the first eligible fixed-cell observation containing the frozen current fact. It is a descriptive interval, not a provider processing time.

## Does a stale answer prove the page was not crawled?

No. The answer does not reveal whether or when the page was crawled, indexed, retrieved, or used. It records only the displayed fact under the declared cell.

## How are unavailable and failed attempts counted?

They remain separate scheduled attempts with no current or stale label. They are excluded from observed fact counts and never converted into negative outcomes.

## What happens when there are no eligible observations?

Display N/A. Do not show zero current facts or zero stale facts as if either were observed, and do not calculate an outcome percentage.

## Preserved dated evidence

- [Google Search: ask Google to recrawl URLs](https://developers.google.com/search/docs/crawling-indexing/ask-google-to-recrawl) — checked 2026-09-07. Google's recrawl guidance provides URL Inspection and sitemap routes for requesting recrawling after page changes and notes that crawling can take time and is not guaranteed. Current Google Search recrawl guidance The documentation concerns Google Search recrawl requests only; it does not specify when any AI answer will change or support a universal observation-lag expectation. Confidence: High

- [Google Search: AI features and your website](https://developers.google.com/search/docs/appearance/ai-features) — checked 2026-09-07. Google says AI Overviews and AI Mode use normal Search eligibility, need no special AI markup, and do not guarantee crawling, indexing, serving, or appearance even when requirements are met. Current Google Search AI-features documentation This is Google Search-specific guidance; it does not publish a deterministic page-update-to-answer-update interval or attribute a later answer to one site change. Confidence: High

- [IndexNow: FAQ](https://www.indexnow.org/faq) — checked 2026-09-07. IndexNow's FAQ covers setup, URL submission, automation, and troubleshooting for notifying participating search engines about changed content. Current IndexNow FAQ The FAQ supports an operational notification check, not a guaranteed indexing time, cross-provider observation interval, causal attribution, or search-traffic outcome. Confidence: High

- [Bing: get started with IndexNow](https://www.bing.com/indexnow/getstarted) — checked 2026-09-07. Bing's IndexNow get-started documentation describes notifying participating search engines when a site's URL content is added, updated, or deleted. Current Bing IndexNow get-started documentation This supports recording a Bing-documented notification workflow; it does not guarantee a Bing crawl, index update, AI-answer refresh, citation, recommendation, or elapsed interval. Confidence: High

- [OpenAI Help: searching the web with ChatGPT](https://help.openai.com/en/articles/9237897-searching-the-web-with-chatgpt) — checked 2026-09-07. OpenAI's ChatGPT Search help says web search can answer with current information and relevant source links, and that responses may include citations and a Sources view when available. Current consumer ChatGPT Search guidance The help page describes consumer-interface behavior; it does not promise that a changed publisher page will be retrieved or state a fixed refresh, citation, or recommendation interval. Confidence: High

## Complete fictional source records

These are the original fictional Lumenfold Supply Co and Lumenfold TraceDesk records, not real captures, customer observations or deployment receipts. Evidence pointers label the teaching records; replace them with your retained evidence before use. The export preserves supplied feature marks and timestamps without inventing raw answers, coding rules or collection times.

```json
{
  "facts": [
    {
      "id": "F01",
      "key": "product-name",
      "currentValue": "Lumenfold TraceDesk",
      "effectiveAt": "2026-08-20T12:00:00Z",
      "authority": "Fictional signed product register",
      "evidencePointer": "synthetic-evidence/fact-freshness/register/F01"
    },
    {
      "id": "F02",
      "key": "monthly-price",
      "currentValue": "$89 per workspace per month",
      "effectiveAt": "2026-08-20T12:00:00Z",
      "authority": "Fictional signed commercial terms",
      "evidencePointer": "synthetic-evidence/fact-freshness/register/F02"
    },
    {
      "id": "F03",
      "key": "trial-length",
      "currentValue": "14-day trial",
      "effectiveAt": "2026-08-20T12:00:00Z",
      "authority": "Fictional signed commercial terms",
      "evidencePointer": "synthetic-evidence/fact-freshness/register/F03"
    },
    {
      "id": "F04",
      "key": "import-formats",
      "currentValue": "CSV and JSON imports",
      "effectiveAt": "2026-08-20T12:00:00Z",
      "authority": "Fictional product capability register",
      "evidencePointer": "synthetic-evidence/fact-freshness/register/F04"
    },
    {
      "id": "F05",
      "key": "service-region",
      "currentValue": "United States and Canada",
      "effectiveAt": "2026-08-20T12:00:00Z",
      "authority": "Fictional service-availability register",
      "evidencePointer": "synthetic-evidence/fact-freshness/register/F05"
    },
    {
      "id": "F06",
      "key": "support-hours",
      "currentValue": "Monday\u2013Friday, 09:00\u201317:00 UTC",
      "effectiveAt": "2026-08-20T12:00:00Z",
      "authority": "Fictional support-policy register",
      "evidencePointer": "synthetic-evidence/fact-freshness/register/F06"
    }
  ],
  "surfaces": [
    {
      "id": "S01",
      "kind": "homepage",
      "url": "https://lumenfold.example/",
      "version": "synthetic-home-v11",
      "capturedAt": "2026-08-22T13:00:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/surfaces/S01"
    },
    {
      "id": "S02",
      "kind": "pricing-page",
      "url": "https://lumenfold.example/pricing",
      "version": "synthetic-pricing-v8",
      "capturedAt": "2026-08-22T13:02:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/surfaces/S02"
    },
    {
      "id": "S03",
      "kind": "product-page",
      "url": "https://lumenfold.example/tracedesk",
      "version": "synthetic-product-v14",
      "capturedAt": "2026-08-22T13:04:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/surfaces/S03"
    },
    {
      "id": "S04",
      "kind": "help-page",
      "url": "https://lumenfold.example/help/support",
      "version": "synthetic-help-v6",
      "capturedAt": "2026-08-22T13:06:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/surfaces/S04"
    }
  ],
  "assertions": [
    {
      "id": "I01",
      "factId": "F01",
      "surfaceId": "S01",
      "channel": "visible-copy",
      "locator": "main h1",
      "observedValue": "Lumenfold TraceDesk",
      "state": "current",
      "finding": "The homepage product name matches F01.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I01"
    },
    {
      "id": "I02",
      "factId": "F01",
      "surfaceId": "S03",
      "channel": "visible-copy",
      "locator": "main h1",
      "observedValue": "Lumenfold Desk",
      "state": "stale",
      "finding": "The product heading retains the prior product name.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I02"
    },
    {
      "id": "I03",
      "factId": "F01",
      "surfaceId": "S03",
      "channel": "metadata",
      "locator": "title",
      "observedValue": "Lumenfold TraceDesk",
      "state": "current",
      "finding": "The title matches F01.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I03"
    },
    {
      "id": "I04",
      "factId": "F02",
      "surfaceId": "S02",
      "channel": "visible-copy",
      "locator": "main [data-plan-price]",
      "observedValue": "$69 per workspace per month",
      "state": "stale",
      "finding": "Visible pricing predates the effective commercial terms.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I04"
    },
    {
      "id": "I05",
      "factId": "F02",
      "surfaceId": "S02",
      "channel": "json-ld",
      "locator": "Product.offers.price",
      "observedValue": "89",
      "state": "current",
      "finding": "The offer amount matches F02 under the declared currency and billing unit.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I05"
    },
    {
      "id": "I06",
      "factId": "F03",
      "surfaceId": "S03",
      "channel": "visible-copy",
      "locator": "main [data-trial]",
      "observedValue": null,
      "state": "missing",
      "finding": "The current trial term is absent from the declared visible locator.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I06"
    },
    {
      "id": "I07",
      "factId": "F03",
      "surfaceId": "S02",
      "channel": "metadata",
      "locator": "meta[name='description']",
      "observedValue": "14-day trial",
      "state": "current",
      "finding": "The pricing description matches F03.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I07"
    },
    {
      "id": "I08",
      "factId": "F04",
      "surfaceId": "S01",
      "channel": "metadata",
      "locator": "meta[name='description']",
      "observedValue": "CSV imports",
      "state": "stale",
      "finding": "The description omits the now-supported JSON import format.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I08"
    },
    {
      "id": "I09",
      "factId": "F04",
      "surfaceId": "S03",
      "channel": "visible-copy",
      "locator": "main [data-imports]",
      "observedValue": "CSV and JSON imports",
      "state": "current",
      "finding": "Visible import formats match F04.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I09"
    },
    {
      "id": "I10",
      "factId": "F05",
      "surfaceId": "S04",
      "channel": "visible-copy",
      "locator": "embedded region-status widget",
      "observedValue": null,
      "state": "unverifiable",
      "finding": "The captured HTML cannot establish the widget value, so it is not classified as stale or missing.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I10"
    },
    {
      "id": "I11",
      "factId": "F05",
      "surfaceId": "S03",
      "channel": "metadata",
      "locator": "meta[name='service-region']",
      "observedValue": "United States and Canada",
      "state": "current",
      "finding": "The declared region metadata matches F05.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I11"
    },
    {
      "id": "I12",
      "factId": "F05",
      "surfaceId": "S01",
      "channel": "metadata",
      "locator": "meta[property='og:description']",
      "observedValue": "Available in the United States",
      "state": "stale",
      "finding": "The social description predates Canadian availability.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I12"
    },
    {
      "id": "I13",
      "factId": "F06",
      "surfaceId": "S04",
      "channel": "visible-copy",
      "locator": "main [data-support-hours]",
      "observedValue": "Monday\u2013Friday, 09:00\u201317:00 UTC",
      "state": "current",
      "finding": "Visible support hours match F06.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I13"
    },
    {
      "id": "I14",
      "factId": "F06",
      "surfaceId": "S03",
      "channel": "json-ld",
      "locator": "Product.subjectOf.Service.hoursAvailable",
      "observedValue": "Monday\u2013Friday, 08:00\u201316:00 UTC",
      "state": "stale",
      "finding": "The represented support interval predates F06.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I14"
    },
    {
      "id": "I15",
      "factId": "F06",
      "surfaceId": "S04",
      "channel": "metadata",
      "locator": "meta[name='description']",
      "observedValue": "Monday\u2013Friday, 09:00\u201317:00 UTC",
      "state": "current",
      "finding": "The help-page description matches F06.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I15"
    },
    {
      "id": "I16",
      "factId": "F02",
      "surfaceId": "S02",
      "channel": "metadata",
      "locator": "meta[property='product:price:amount']",
      "observedValue": "89",
      "state": "current",
      "finding": "The price metadata matches F02 under the declared currency and billing unit.",
      "evidencePointer": "synthetic-evidence/fact-freshness/assertions/I16"
    }
  ],
  "changes": [
    {
      "id": "C01",
      "assertionId": "I02",
      "surfaceId": "S03",
      "layer": "visible-copy",
      "locator": "main h1",
      "beforeValue": "Lumenfold Desk",
      "afterValue": "Lumenfold TraceDesk",
      "state": "accepted",
      "rollbackReady": true,
      "beforeEvidencePointer": "synthetic-evidence/fact-freshness/assertions/I02",
      "afterEvidencePointer": "synthetic-evidence/fact-freshness/changes/C01-after",
      "rollbackPointer": "synthetic-evidence/fact-freshness/rollback/C01"
    },
    {
      "id": "C02",
      "assertionId": "I04",
      "surfaceId": "S02",
      "layer": "visible-copy",
      "locator": "main [data-plan-price]",
      "beforeValue": "$69 per workspace per month",
      "afterValue": "$89 per workspace per month",
      "state": "accepted",
      "rollbackReady": true,
      "beforeEvidencePointer": "synthetic-evidence/fact-freshness/assertions/I04",
      "afterEvidencePointer": "synthetic-evidence/fact-freshness/changes/C02-after",
      "rollbackPointer": "synthetic-evidence/fact-freshness/rollback/C02"
    },
    {
      "id": "C03",
      "assertionId": "I06",
      "surfaceId": "S03",
      "layer": "visible-copy",
      "locator": "main [data-trial]",
      "beforeValue": null,
      "afterValue": "14-day trial",
      "state": "accepted",
      "rollbackReady": true,
      "beforeEvidencePointer": "synthetic-evidence/fact-freshness/assertions/I06",
      "afterEvidencePointer": "synthetic-evidence/fact-freshness/changes/C03-after",
      "rollbackPointer": "synthetic-evidence/fact-freshness/rollback/C03"
    },
    {
      "id": "C04",
      "assertionId": "I08",
      "surfaceId": "S01",
      "layer": "metadata",
      "locator": "meta[name='description']",
      "beforeValue": "CSV imports",
      "afterValue": "CSV and JSON imports",
      "state": "accepted",
      "rollbackReady": true,
      "beforeEvidencePointer": "synthetic-evidence/fact-freshness/assertions/I08",
      "afterEvidencePointer": "synthetic-evidence/fact-freshness/changes/C04-after",
      "rollbackPointer": "synthetic-evidence/fact-freshness/rollback/C04"
    },
    {
      "id": "C05",
      "assertionId": "I12",
      "surfaceId": "S01",
      "layer": "metadata",
      "locator": "meta[property='og:description']",
      "beforeValue": "Available in the United States",
      "afterValue": "Available in the United States and Canada",
      "state": "accepted",
      "rollbackReady": true,
      "beforeEvidencePointer": "synthetic-evidence/fact-freshness/assertions/I12",
      "afterEvidencePointer": "synthetic-evidence/fact-freshness/changes/C05-after",
      "rollbackPointer": "synthetic-evidence/fact-freshness/rollback/C05"
    },
    {
      "id": "C06",
      "assertionId": "I14",
      "surfaceId": "S03",
      "layer": "json-ld",
      "locator": "Product.subjectOf.Service.hoursAvailable",
      "beforeValue": "Monday\u2013Friday, 08:00\u201316:00 UTC",
      "afterValue": "Monday\u2013Friday, 09:00\u201317:00 UTC",
      "state": "accepted",
      "rollbackReady": true,
      "beforeEvidencePointer": "synthetic-evidence/fact-freshness/assertions/I14",
      "afterEvidencePointer": "synthetic-evidence/fact-freshness/changes/C06-after",
      "rollbackPointer": "synthetic-evidence/fact-freshness/rollback/C06"
    }
  ],
  "acceptanceChecks": [
    {
      "id": "P01",
      "check": "Visible-copy parity",
      "passCondition": "The three visible changes match the effective fact register without altering adjacent claims.",
      "state": "passed",
      "evidencePointer": "synthetic-evidence/fact-freshness/acceptance/P01"
    },
    {
      "id": "P02",
      "check": "Metadata parity",
      "passCondition": "The two metadata changes match visible copy and the effective fact values.",
      "state": "passed",
      "evidencePointer": "synthetic-evidence/fact-freshness/acceptance/P02"
    },
    {
      "id": "P03",
      "check": "JSON-LD parse and parity",
      "passCondition": "The changed JSON-LD parses and the support interval matches visible content.",
      "state": "passed",
      "evidencePointer": "synthetic-evidence/fact-freshness/acceptance/P03"
    },
    {
      "id": "P04",
      "check": "Freshness metadata",
      "passCondition": "Only materially changed URLs receive the truthful modification date and change notification record.",
      "state": "passed",
      "evidencePointer": "synthetic-evidence/fact-freshness/acceptance/P04"
    },
    {
      "id": "P05",
      "check": "Scope and rollback",
      "passCondition": "Only C01\u2013C06 changed; every saved before value can be restored and I10 remains unverifiable.",
      "state": "passed",
      "evidencePointer": "synthetic-evidence/fact-freshness/acceptance/P05"
    }
  ],
  "deliveryChecks": [
    {
      "surfaceId": "S01",
      "statusCode": 200,
      "initialHtml": true,
      "selfCanonical": true,
      "changedValuesPresent": true,
      "evidencePointer": "synthetic-evidence/fact-freshness/delivery/S01-after"
    },
    {
      "surfaceId": "S02",
      "statusCode": 200,
      "initialHtml": true,
      "selfCanonical": true,
      "changedValuesPresent": true,
      "evidencePointer": "synthetic-evidence/fact-freshness/delivery/S02-after"
    },
    {
      "surfaceId": "S03",
      "statusCode": 200,
      "initialHtml": true,
      "selfCanonical": true,
      "changedValuesPresent": true,
      "evidencePointer": "synthetic-evidence/fact-freshness/delivery/S03-after"
    },
    {
      "surfaceId": "S04",
      "statusCode": 200,
      "initialHtml": true,
      "selfCanonical": true,
      "changedValuesPresent": true,
      "evidencePointer": "synthetic-evidence/fact-freshness/delivery/S04-after"
    }
  ],
  "deployedAt": "2026-08-24T12:00:00Z",
  "cells": [
    {
      "id": "X01",
      "prompt": "What is the current name of Lumenfold's trace workspace?",
      "surface": "Surface A",
      "factId": "F01",
      "locale": "en-US",
      "accountState": "signed-out synthetic session",
      "evidencePointer": "synthetic-evidence/fact-freshness/panel/X01"
    },
    {
      "id": "X02",
      "prompt": "What does one Lumenfold TraceDesk workspace cost each month?",
      "surface": "Surface A",
      "factId": "F02",
      "locale": "en-US",
      "accountState": "signed-out synthetic session",
      "evidencePointer": "synthetic-evidence/fact-freshness/panel/X02"
    },
    {
      "id": "X03",
      "prompt": "How long is the Lumenfold TraceDesk trial?",
      "surface": "Surface B",
      "factId": "F03",
      "locale": "en-US",
      "accountState": "signed-out synthetic session",
      "evidencePointer": "synthetic-evidence/fact-freshness/panel/X03"
    },
    {
      "id": "X04",
      "prompt": "Which import formats does Lumenfold TraceDesk support?",
      "surface": "Surface A",
      "factId": "F04",
      "locale": "en-US",
      "accountState": "signed-out synthetic session",
      "evidencePointer": "synthetic-evidence/fact-freshness/panel/X04"
    },
    {
      "id": "X05",
      "prompt": "In which countries is Lumenfold TraceDesk available?",
      "surface": "Surface B",
      "factId": "F05",
      "locale": "en-US",
      "accountState": "signed-out synthetic session",
      "evidencePointer": "synthetic-evidence/fact-freshness/panel/X05"
    },
    {
      "id": "X06",
      "prompt": "What are Lumenfold TraceDesk support hours?",
      "surface": "Surface B",
      "factId": "F06",
      "locale": "en-US",
      "accountState": "signed-out synthetic session",
      "evidencePointer": "synthetic-evidence/fact-freshness/panel/X06"
    }
  ],
  "checkpoints": [
    {
      "id": "D1",
      "elapsedDays": 1,
      "scheduledAt": "2026-08-25T12:00:00Z"
    },
    {
      "id": "D3",
      "elapsedDays": 3,
      "scheduledAt": "2026-08-27T12:00:00Z"
    },
    {
      "id": "D7",
      "elapsedDays": 7,
      "scheduledAt": "2026-08-31T12:00:00Z"
    }
  ],
  "observations": [
    {
      "id": "O01",
      "cellId": "X01",
      "checkpointId": "D1",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-25T12:05:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O01",
      "classificationNote": "The answer states the frozen F01 value."
    },
    {
      "id": "O02",
      "cellId": "X01",
      "checkpointId": "D3",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-27T12:05:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O02",
      "classificationNote": "The answer states the frozen F01 value."
    },
    {
      "id": "O03",
      "cellId": "X01",
      "checkpointId": "D7",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-31T12:05:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O03",
      "classificationNote": "The answer states the frozen F01 value."
    },
    {
      "id": "O04",
      "cellId": "X02",
      "checkpointId": "D1",
      "state": "eligible-observed",
      "value": "stale-fact",
      "observedAt": "2026-08-25T12:10:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O04",
      "classificationNote": "The answer retains the prior synthetic price."
    },
    {
      "id": "O05",
      "cellId": "X02",
      "checkpointId": "D3",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-27T12:10:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O05",
      "classificationNote": "The answer states the frozen F02 value."
    },
    {
      "id": "O06",
      "cellId": "X02",
      "checkpointId": "D7",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-31T12:10:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O06",
      "classificationNote": "The answer states the frozen F02 value."
    },
    {
      "id": "O07",
      "cellId": "X03",
      "checkpointId": "D1",
      "state": "eligible-observed",
      "value": "stale-fact",
      "observedAt": "2026-08-25T12:15:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O07",
      "classificationNote": "The answer retains the prior synthetic trial term."
    },
    {
      "id": "O08",
      "cellId": "X03",
      "checkpointId": "D3",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-27T12:15:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O08",
      "classificationNote": "The answer states the frozen F03 value."
    },
    {
      "id": "O09",
      "cellId": "X03",
      "checkpointId": "D7",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-31T12:15:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O09",
      "classificationNote": "The answer states the frozen F03 value."
    },
    {
      "id": "O10",
      "cellId": "X04",
      "checkpointId": "D1",
      "state": "eligible-observed",
      "value": "stale-fact",
      "observedAt": "2026-08-25T12:20:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O10",
      "classificationNote": "The answer names only the prior import format."
    },
    {
      "id": "O11",
      "cellId": "X04",
      "checkpointId": "D3",
      "state": "eligible-observed",
      "value": "stale-fact",
      "observedAt": "2026-08-27T12:20:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O11",
      "classificationNote": "The answer still names only the prior import format."
    },
    {
      "id": "O12",
      "cellId": "X04",
      "checkpointId": "D7",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-31T12:20:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O12",
      "classificationNote": "The answer states the frozen F04 value."
    },
    {
      "id": "O13",
      "cellId": "X05",
      "checkpointId": "D1",
      "state": "unavailable",
      "value": null,
      "observedAt": null,
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O13-unavailable",
      "classificationNote": "The declared surface was unavailable; no fact label was assigned."
    },
    {
      "id": "O14",
      "cellId": "X05",
      "checkpointId": "D3",
      "state": "eligible-observed",
      "value": "stale-fact",
      "observedAt": "2026-08-27T12:25:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O14",
      "classificationNote": "The answer names only the prior service region."
    },
    {
      "id": "O15",
      "cellId": "X05",
      "checkpointId": "D7",
      "state": "eligible-observed",
      "value": "current-fact",
      "observedAt": "2026-08-31T12:25:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O15",
      "classificationNote": "The answer states the frozen F05 value."
    },
    {
      "id": "O16",
      "cellId": "X06",
      "checkpointId": "D1",
      "state": "eligible-observed",
      "value": "stale-fact",
      "observedAt": "2026-08-25T12:30:00Z",
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O16",
      "classificationNote": "The answer retains the prior support interval."
    },
    {
      "id": "O17",
      "cellId": "X06",
      "checkpointId": "D3",
      "state": "unavailable",
      "value": null,
      "observedAt": null,
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O17-unavailable",
      "classificationNote": "The declared surface was unavailable; no fact label was assigned."
    },
    {
      "id": "O18",
      "cellId": "X06",
      "checkpointId": "D7",
      "state": "failed",
      "value": null,
      "observedAt": null,
      "evidencePointer": "synthetic-evidence/fact-freshness/observations/O18-failed",
      "classificationNote": "Collection failed before a complete answer could be preserved; no fact label was assigned."
    }
  ]
}
```

## Related reading

- [Prove resource selector](https://rankecho.io/resources/prove)
- [Stale product facts](https://rankecho.io/resources/find/issues/stale-product-facts)
- [Refresh stale product facts](https://rankecho.io/resources/fix/refresh-stale-product-facts)
- [Attach the manual record to the proof report](https://rankecho.io/templates/proof-report)

## Product next step

Attach this manual checkpoint record to the proof report at https://rankecho.io/templates/proof-report. Use Proof Loop for its supported observations; it does not provide this first-current classifier or a universal answer refresh forecast. https://rankecho.io/product/proof-loop
