Files
veripath/docs/templates/gbp-snapshot-intake.md

91 lines
3.7 KiB
Markdown

# GBP Snapshot Intake v1.2
**Purpose:** Capture raw Google Business Profile / Maps observations with zero analysis.
**Who fills this:** Human (cold audit) or Places API export (when available).
**Who consumes this:** Leonard / agents — map fields into Data Inventory only. Do not invent.
**Status vocabulary (required):**
- `NOT_PRESENT` — looked; confirmed absent (evidence of absence)
- `NOT_OBSERVED` — did not look or could not see (absence of evidence)
- `Unknown` — only when signal is ambiguous after looking
- Observed values: Yes / No / concrete text / numbers
Do **not** use “Not visible” as a synonym; map to NOT_PRESENT or NOT_OBSERVED.
---
## Snapshot Metadata (required)
- **Client name:**
- **Snapshot datetime (ISO 8601 + timezone):** e.g. `2026-08-03T14:30:00-07:00`
- **Source:** Human eye on Maps / Places API / Owner dashboard
- **Observation surface:** desktop_maps / mobile_maps / knowledge_panel / other
- **Maps or Place URL:**
- **Place ID:** (if known; else leave blank — agent **computes from URL** when possible)
## Core Fields
- **Business name shown:**
- **Address shown (exact string):**
- **Address canonical (optional normalize):** Suite not #; full street type
- **Phone shown (full digits only; no masking):**
- **Website shown:**
- **Primary category (ONE canonical GBP category only):**
- **Additional categories (list; separate from primary):**
## Reputation
- **Star rating:**
- **Review count:**
- **Review responses observed:** Yes / No / NOT_OBSERVED
- **If Yes — how many of N have owner replies:**
- **If Yes — most recent owner response age/date (approx):**
## Ownership / Claim Signals
- **“Own this business?” prompt visible:** Yes / No / NOT_OBSERVED
- **Claimed status (observed or inferred):** Claimed / Unclaimed / Likely Claimed — inferred / Unknown
- **If inferred — list signals used:**
- **Verified badge observed:** Yes / No / NOT_OBSERVED
## Operations
- **Hours listed:** Yes / No
- **Hours text:**
- **Open now indicator:** Yes / No / NOT_OBSERVED (only valid with snapshot datetime+TZ)
## Conversion (complete the whole action-button row if any button is observed)
- **Booking button present on the GBP (not the website):** Yes / No / NOT_OBSERVED
- **Booking button label (if any):**
- **Messaging button present:** Yes / No / NOT_OBSERVED
- **Other action buttons observed:**
## Content Surface
- **Photos present:** Yes / No
- **Approx photo count:**
- **Services listed (exact labels):**
- **Posts section present:** Yes / No / NOT_OBSERVED
- **Post count (0 if empty section):**
- **Most recent post date (approx, optional):**
- **Q&A status:** answers present / empty / NOT_PRESENT / NOT_OBSERVED
- **Attributes / highlights visible (optional):**
## Related Listings
- **Second related listing nearby:** Yes / No / Unknown
- **Related listing name(s):**
- **Related listing notes (factual only):**
- **Secondary feature IDs from MAPS_URL (if parsed):**
## Raw notes (optional, factual only)
-
---
## Agent mapping rules (do not reason beyond this)
1. Copy each filled field into the **GBP row** of the client Data Inventory.
2. Blank → `NOT_OBSERVED` (not “Unknown” unless truly ambiguous after looking).
3. If MAPS_URL present and PLACE_ID blank → **compute** place/feature IDs from URL; never leave PLACE_ID blank when derivable.
4. PRIMARY_CATEGORY must be a single value; if intake has multiple tokens → mark **INVALID_CAPTURE** and do not invent a primary.
5. Verification Tier: Tier 1 only if Source = Owner dashboard or owner-confirmed; else Tier 2.
6. Snapshot Date/time from intake datetime.
7. Do not create threats unless a Threat Trigger Rule fires (execution card).
8. Do not add severity upgrades, recommendations, or competitor claims.