-
13bc513dea
Fix Dockerfile port to 8001 and healthcheck endpoint
main
Alejandro Gutiérrez
2026-02-02 21:25:24 +00:00
-
e54a7eeaa9
Add missing dependencies (asyncpg, pyyaml, httpx, aiohttp)
Alejandro Gutiérrez
2026-02-02 19:10:52 +00:00
-
2206ddeff2
Initial commit - WhyRating Engine (Google Reviews Scraper)
Alejandro Gutiérrez
2026-02-02 18:19:00 +00:00
-
0543a08242
docs: Add Classification System & Primitives Taxonomy documentation
Alejandro Gutiérrez
2026-01-31 23:50:01 +00:00
-
ee596c7969
docs(reputation-report): Add comprehensive pipeline documentation
Alejandro Gutiérrez
2026-01-31 23:24:57 +00:00
-
5324542e72
feat(reputation-report): Add production-grade reputation report generator v8
Alejandro Gutiérrez
2026-01-31 23:10:25 +00:00
-
c797470421
fix(synthesis): Calculate analysis_period from actual data range
Alejandro Gutiérrez
2026-01-30 15:49:51 +00:00
-
479f1ee94a
fix(api): Use list[Any] for strengths to preserve V2 fields
Alejandro Gutiérrez
2026-01-30 15:33:08 +00:00
-
2a292e0754
fix(synthesis): Select most common business_id to handle data leakage
Alejandro Gutiérrez
2026-01-30 15:28:02 +00:00
-
69d617ca38
feat(api): Add support for V2 synthesis format in analytics endpoint
Alejandro Gutiérrez
2026-01-30 15:12:41 +00:00
-
0a53e98bf9
fix(pipeline): Update stage result to use new synthesis fields
Alejandro Gutiérrez
2026-01-30 14:50:21 +00:00
-
d5ef13b58e
feat(frontend): Add BusinessReport component for 6-section €60 report
Alejandro Gutiérrez
2026-01-30 14:36:05 +00:00
-
b4bef004e8
feat(synthesis): Redesign report to 6-section €60 business value format
Alejandro Gutiérrez
2026-01-30 14:27:40 +00:00
-
2f92735548
fix(ui): Replace nested button with div for accessibility
Alejandro Gutiérrez
2026-01-29 03:24:57 +00:00
-
157b76040f
fix(synthesis): Use correct column name 'id' instead of 'execution_id'
Alejandro Gutiérrez
2026-01-29 03:19:09 +00:00
-
9b667e69a7
feat(pipeline): Add Stage 5 Synthesis for AI-generated narratives
Alejandro Gutiérrez
2026-01-29 03:12:53 +00:00
-
c8ecb4b98f
feat(reviewiq): Add AI synthesis support to dashboard components
Alejandro Gutiérrez
2026-01-29 02:59:47 +00:00
-
8f9dd136cd
feat(reviewiq): Redesign dashboard with user-friendly UX
Alejandro Gutiérrez
2026-01-29 02:52:13 +00:00
-
c6beeaa3dc
feat: Add Opportunity Matrix with coordinate-based positioning
Alejandro Gutiérrez
2026-01-25 12:29:01 +00:00
-
af82467595
fix: Link Analytics button to job analytics page
Alejandro Gutiérrez
2026-01-24 22:00:13 +00:00
-
194e6e0fbf
feat: Add view toggle between table and card views on pipeline page
Alejandro Gutiérrez
2026-01-24 21:19:30 +00:00
-
4d48437b21
feat: Add TanStack table for pipeline executions with debug modal
Alejandro Gutiérrez
2026-01-24 21:16:58 +00:00
-
796f587c57
feat: Add pipeline execution UI, stage metrics, and API proxy routes
Alejandro Gutiérrez
2026-01-24 21:13:19 +00:00
-
acdfed8044
fix: Improve version dropdown text contrast
Alejandro Gutiérrez
2026-01-24 20:22:05 +00:00
-
9f714913db
feat: Add scraper version selector to frontend
Alejandro Gutiérrez
2026-01-24 19:13:52 +00:00
-
824634aa76
feat: Add extensible multi-pipeline integration system
Alejandro Gutiérrez
2026-01-24 19:05:38 +00:00
-
d64f06ba9e
feat: Add scraper version routing with v1.1.0 as default
Alejandro Gutiérrez
2026-01-24 19:04:06 +00:00
-
7771c734c6
fix: Remove undefined get_dom_reviews call in multi-sort passes
Alejandro Gutiérrez
2026-01-24 18:58:04 +00:00
-
fbd61ff7f7
feat: Add multi-sort scraper v1.1.0 and improve v1.0.0 reliability
Alejandro Gutiérrez
2026-01-24 18:47:30 +00:00
-
e2d7f6f118
feat: Add ScraperV1Adapter and real data pipeline test
Alejandro Gutiérrez
2026-01-24 18:35:09 +00:00
-
3e57c887e9
test: Add E2E pipeline test with real database
Alejandro Gutiérrez
2026-01-24 18:28:53 +00:00
-
03ed7029e2
feat: Add decoupled pipeline schema with separate PostgreSQL namespace
Alejandro Gutiérrez
2026-01-24 18:17:20 +00:00
-
7d720f5378
feat: Add reviewiq-pipeline package for LLM-powered review classification
Alejandro Gutiérrez
2026-01-24 18:07:11 +00:00
-
b780a23b66
fix: Correct imports in test_scraper CLI tool
Alejandro Gutiérrez
2026-01-24 17:24:07 +00:00
-
84f5efb5c7
feat: Add CLI tool for quick scraper testing
Alejandro Gutiérrez
2026-01-24 17:20:12 +00:00
-
6b3f055760
fix: Prevent Chrome tab crash by removing processed DOM cards
Alejandro Gutiérrez
2026-01-24 17:17:21 +00:00
-
65eb979c12
feat: Add "Copy Crash Report" button for failed/partial jobs
Alejandro Gutiérrez
2026-01-24 17:09:48 +00:00
-
acd3b22e88
docs: Add pipeline development artifacts for parallel implementation
Alejandro Gutiérrez
2026-01-24 17:08:40 +00:00
-
c2996bef1e
fix: Calculate job speed using last successful data retrieval timestamp
Alejandro Gutiérrez
2026-01-24 17:04:35 +00:00
-
5165d65152
fix: Center confirmation modal using transform
Alejandro Gutiérrez
2026-01-24 16:50:08 +00:00
-
83b245bbfc
fix: Show blue background with spinner during validation
Alejandro Gutiérrez
2026-01-24 16:49:35 +00:00
-
e0e86d2830
feat: Persist jobs to localStorage and reset search after launch
Alejandro Gutiérrez
2026-01-24 16:47:01 +00:00
-
0c8da54045
fix: Center confirmation modal properly
Alejandro Gutiérrez
2026-01-24 16:40:54 +00:00
-
ccfe00cebe
fix: Properly center map click modal
Alejandro Gutiérrez
2026-01-24 16:40:12 +00:00
-
956d5dacda
fix: Center map click modal with proper padding
Alejandro Gutiérrez
2026-01-24 16:38:49 +00:00
-
d4c3018429
refactor: Change search fields to horizontal layout
Alejandro Gutiérrez
2026-01-24 16:37:08 +00:00
-
82b2c51e4e
feat: Split search into Business Name + Location fields
Alejandro Gutiérrez
2026-01-24 16:35:15 +00:00
-
afab5127b3
Restore Google Maps iframe preview
Alejandro Gutiérrez
2026-01-24 16:29:33 +00:00
-
43fd1515d2
Align artifacts with canonical URT v5.1 specification
Alejandro Gutiérrez
2026-01-24 16:21:21 +00:00
-
7666b7aea2
Fix: Replace broken Google Maps iframe with interactive preview + add scraper type selection
Alejandro Gutiérrez
2026-01-24 16:15:58 +00:00
-
46cd54e275
Add LLM Classification Contract v1.0
Alejandro Gutiérrez
2026-01-24 16:07:31 +00:00
-
3317553658
Wire frontend to real API endpoints
Alejandro Gutiérrez
2026-01-24 16:05:29 +00:00
-
39c80fc8be
Phases 5-7: Dashboard UI, Admin API, and Auth middleware
Alejandro Gutiérrez
2026-01-24 15:43:00 +00:00
-
788ef84756
Phases 2-4: Requester support, batches, webhooks, scraper registry
Alejandro Gutiérrez
2026-01-24 15:35:58 +00:00
-
2412996c54
Phase 1: Database migrations for platform features
Alejandro Gutiérrez
2026-01-24 15:24:28 +00:00
-
544e028c3f
Phase 0: Project restructure to ReviewIQ platform architecture
Alejandro Gutiérrez
2026-01-24 15:22:08 +00:00
-
bb0291f265
Add CONTEXT-KEEPER.md for conversation continuity
Alejandro Gutiérrez
2026-01-24 15:14:01 +00:00
-
12d37e350b
Fix JobDevTools contrast + log normalization, add Platform Spec
Alejandro Gutiérrez
2026-01-24 15:13:19 +00:00
-
1e5401a9d1
Fix: Handle undefined rating_snapshot in job detail page
Alejandro Gutiérrez
2026-01-24 13:15:14 +00:00
-
eab0b4a7e9
Fix: Maximum update depth exceeded in NewScrapePage
Alejandro Gutiérrez
2026-01-24 13:14:23 +00:00
-
cd9639f3b1
Wave 7: Integrate JobDevTools into job detail page (FINAL)
Alejandro Gutiérrez
2026-01-24 13:11:19 +00:00
-
f99827717f
Final polish: v3.1.2 operational safety constraints
Alejandro Gutiérrez
2026-01-24 12:55:31 +00:00
-
c6443166b2
Wave 6: CopyToolbar utilities and LogEntry row component
Alejandro Gutiérrez
2026-01-24 12:51:48 +00:00
-
3987a9ab4e
Document v3.1.2 conventions: dedup scoping and sentinel values
Alejandro Gutiérrez
2026-01-24 12:50:29 +00:00
-
5ce3248efd
Wave 5: LogViewer virtualized list and CrashReport component
Alejandro Gutiérrez
2026-01-24 12:44:35 +00:00
-
2637d982e0
Wave 4: JobDevTools UI components and crash report API
Alejandro Gutiérrez
2026-01-24 12:37:56 +00:00
-
9515dd2d42
Polish ReviewIQ v3.1.2: tenant-scoping and FK integrity
Alejandro Gutiérrez
2026-01-24 12:34:35 +00:00
-
f4ca60349e
Wave 3: SSE structured logs, crash analyzer, session fingerprint
Alejandro Gutiérrez
2026-01-24 12:34:17 +00:00
-
44d017b3f7
Finalize ReviewIQ Architecture v3.1.2 (production-ready)
Alejandro Gutiérrez
2026-01-24 12:31:16 +00:00
-
d43c574b0c
Add ReviewIQ Architecture v3.1.1 specification
Alejandro Gutiérrez
2026-01-24 12:25:46 +00:00
-
9e1bcde981
Wave 2: Migrate scraper to StructuredLogger, add crash detection & topic tags
Alejandro Gutiérrez
2026-01-24 12:17:23 +00:00
-
313e32f358
Wave 1: Add StructuredLogger and review topics inference
Alejandro Gutiérrez
2026-01-24 11:27:32 +00:00
-
3da243be79
Add ReviewIQ pipeline spec and metadata extraction test
Alejandro Gutiérrez
2026-01-24 11:21:33 +00:00
-
59368a5bd5
Add Job DevTools implementation task breakdown
Alejandro Gutiérrez
2026-01-24 11:14:02 +00:00
-
65fcaf43e8
Add Job DevTools specification document
Alejandro Gutiérrez
2026-01-24 11:10:34 +00:00
-
b1296059a9
Add URL-based routing with sidebar navigation
Alejandro Gutiérrez
2026-01-24 10:58:48 +00:00
-
3eda9bdbfa
Add complete URT v5.1 taxonomy framework (11 artifacts)
Alejandro Gutiérrez
2026-01-24 10:51:41 +00:00
-
a540ab97b1
Add browser fingerprint support and analytics metadata display
Alejandro Gutiérrez
2026-01-24 10:36:06 +00:00
-
1bd30c0789
Fix get_business_card_info for pooled workers
Alejandro Gutiérrez
2026-01-23 18:09:51 +00:00
-
e3136281b8
Remove fast_scraper.py - consolidated into scraper_clean
Alejandro Gutiérrez
2026-01-23 17:59:09 +00:00
-
0682c0ec61
Add get_business_card_info to scraper_clean with multilingual support
Alejandro Gutiérrez
2026-01-23 17:52:06 +00:00
-
47bb032011
Clean up project root - remove 51 obsolete files
Alejandro Gutiérrez
2026-01-23 17:31:53 +00:00
-
8ccf72a489
Remove old scraper files - consolidate to scraper_clean
Alejandro Gutiérrez
2026-01-23 17:25:00 +00:00
-
80e7771c00
Fix DOM cleanup: hide cards from API interception too
Alejandro Gutiérrez
2026-01-23 17:23:51 +00:00
-
01ea18d91d
Add test URL quick-select buttons to frontend
Alejandro Gutiérrez
2026-01-22 14:20:54 +00:00
-
8b36850838
Switch Docker production API to use scraper_clean
Alejandro Gutiérrez
2026-01-22 14:19:40 +00:00
-
a6d6531543
Switch production to scraper_clean with hard refresh recovery
Alejandro Gutiérrez
2026-01-22 14:18:10 +00:00
-
ff03a4a1b7
Add hard refresh recovery for stuck scraper
Alejandro Gutiérrez
2026-01-22 13:42:54 +00:00
-
b55a7a0fb1
Refresh scroll container after sorting to prevent stale reference
Alejandro Gutiérrez
2026-01-22 13:37:19 +00:00
-
5db277ad2f
Stop immediately when all reviews collected
Alejandro Gutiérrez
2026-01-22 13:19:45 +00:00
-
f1f1aa0785
Sort output by DOM visual order + fix browser issue
Alejandro Gutiérrez
2026-01-22 13:17:11 +00:00
-
7abff25dc6
Full text + deduplication: API parser + More button expansion
Alejandro Gutiérrez
2026-01-22 13:09:40 +00:00
-
b4fae38027
Add polling for total count detection on page load
Alejandro Gutiérrez
2026-01-22 12:30:17 +00:00
-
94240ef2cc
Fix total review count detection - use robust selector on Overview tab
Alejandro Gutiérrez
2026-01-22 12:23:00 +00:00
-
10b32244d7
Add delayed separator removal to keep DOM light
Alejandro Gutiérrez
2026-01-22 12:18:50 +00:00
-
cbc2e9c617
Robust selectors: Replace CSS class names with data/aria attributes
Alejandro Gutiérrez
2026-01-22 10:20:51 +00:00
-
d989178119
7x faster scraping with JS parsing + batch flushing
Alejandro Gutiérrez
2026-01-22 10:01:22 +00:00
-
0778b2e07d
Fix total review count detection - sum star ratings
Alejandro Gutiérrez
2026-01-21 22:50:06 +00:00
-
6934838a69
Real-time parsing + image blocking for large datasets
Alejandro Gutiérrez
2026-01-21 22:25:26 +00:00
-
6a75159ebe
Use immediate element detection with 10ms polling
Alejandro Gutiérrez
2026-01-21 20:52:18 +00:00