2.5 KiB
2.5 KiB
TIP Verification Truth Model And Evidence Ledger — 2026-05-09
Scope
- Make TIP verification explainable instead of simply green/red.
- Preserve the difference between:
- a true 1:1 competitor match
- verified absence of a valid public match
- ambiguous candidates
- unresolved research
- Start an append-only evidence ledger for source-backed verification decisions.
Implemented
- Added migration
sql/103-verification-evidence-and-competitor-status.sql. - Added product-level competitor status:
matchedno_valid_matchneeds_researchambiguousunknown
- Added no-match fields:
no_match_verified_atno_match_reason
- Added
transceiver_verification_evidence.priceimagedetailscompetitor_matchcompetitor_no_matchartifact_quarantine
- Scraper DB helper now records evidence for newly verified price/image/details.
- Quarantine robot now records artifact evidence.
- Matcher records competitor-match evidence for auto-approved matches.
- Review API now supports protected no-valid-match marking:
POST /api/review/transceivers/:id/no-valid-match
- Health API exposes active competitor-status counts.
- Review stats expose global product competitor-status counts.
Live Deployment
- Scraper build on Erik: passed.
- API build on Erik: passed after TypeScript route param cast.
- Migration applied successfully.
tip-apirestarted and healthy.tip-scraper-daemonwas not restarted becausescrape:pricing:naddodandscrape:pricing:qsfptekwere active.
Live Backfill
- Product status after migration:
matched=11198needs_research=6575
- Evidence ledger seeded:
price=10633image=12189details=16782competitor_match=316
Live API Check
/api/health: healthy.- Active-product competitor status:
matched=11158needs_research=6256no_valid_match=0ambiguous=0
- Protected Review stats with Dashboard token returned:
matched=11198needs_research_products=6575no_valid_match=0ambiguous=0
Operational Next Step
- When
scrape:pricing:naddodandscrape:pricing:qsfptekfinish, restarttip-scraper-daemonto load the new scheduler matcher/reconcile logic. - Then run:
- reconcile
- matcher
- Review no-valid-match workflow for products that truly have no valid public 1:1 competitor.
Training Pool
- Added TIPLLM lessons for:
- competitor state machine
- evidence ledger semantics
training-data/tip-llm-capabilities-v1.jsonlvalidated successfully.