Skip to content

Docs/v3 integrated#38

Merged
IceDarold merged 65 commits intodevelopfrom
docs/v3-integrated
Feb 10, 2026
Merged

Docs/v3 integrated#38
IceDarold merged 65 commits intodevelopfrom
docs/v3-integrated

Conversation

@IceDarold
Copy link
Owner

No description provided.

IceDarold and others added 30 commits January 27, 2026 12:42
…nd loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal
- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization
Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules
- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/
- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion
- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions
- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment
- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR
- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section
- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass
- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation
- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation
- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation
IceDarold and others added 28 commits February 6, 2026 20:47
…d reminders, and enhanced Telegram bot user management.
…ng conflicts in favor of latest features and revamped docs
* Feature/groupprice spider (#8)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/nashi podarki spider (#9)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

* feat: implement nashi podarki spider

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/analytics (#16)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* docs: expand parsing guide with discovery strategy and advanced tips

* feat: implement GroupPrice and NashiPodarki spiders with discovery support

* docs: finalize analytics and documentation structure

* feat: complete posthog analytics integration with caching, correct query api and documentation

* Develop (#17)

* feat: Implement a web parsing system with generic and site-specific product data extraction capabilities.

* feat: implement scalable catalog parsing system with MrGeek support

* Feature/groupprice spider (#8)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/nashi podarki spider (#9)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

* feat: implement nashi podarki spider

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/analytics (#16)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* docs: expand parsing guide with discovery strategy and advanced tips

* feat: implement GroupPrice and NashiPodarki spiders with discovery support

* docs: finalize analytics and documentation structure

* feat: complete posthog analytics integration with caching, correct query api and documentation

---------

Co-authored-by: TaronSeynyan <158126563+TaronAi@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/analytics (#18)

* feat: Implement a web parsing system with generic and site-specific product data extraction capabilities.

* feat: implement scalable catalog parsing system with MrGeek support

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* docs: expand parsing guide with discovery strategy and advanced tips

* feat: implement GroupPrice and NashiPodarki spiders with discovery support

* docs: finalize analytics and documentation structure

* Feature/groupprice spider (#8)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarol…
* Feature/groupprice spider (#8)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/nashi podarki spider (#9)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

* feat: implement nashi podarki spider

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/analytics (#16)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* docs: expand parsing guide with discovery strategy and advanced tips

* feat: implement GroupPrice and NashiPodarki spiders with discovery support

* docs: finalize analytics and documentation structure

* feat: complete posthog analytics integration with caching, correct query api and documentation

* Develop (#17)

* feat: Implement a web parsing system with generic and site-specific product data extraction capabilities.

* feat: implement scalable catalog parsing system with MrGeek support

* Feature/groupprice spider (#8)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/nashi podarki spider (#9)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

* feat: implement nashi podarki spider

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarold@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/analytics (#16)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* docs: expand parsing guide with discovery strategy and advanced tips

* feat: implement GroupPrice and NashiPodarki spiders with discovery support

* docs: finalize analytics and documentation structure

* feat: complete posthog analytics integration with caching, correct query api and documentation

---------

Co-authored-by: TaronSeynyan <158126563+TaronAi@users.noreply.github.com>
Co-authored-by: Your Name <your_email@isl.cy>

* Feature/analytics (#18)

* feat: Implement a web parsing system with generic and site-specific product data extraction capabilities.

* feat: implement scalable catalog parsing system with MrGeek support

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* docs: expand parsing guide with discovery strategy and advanced tips

* feat: implement GroupPrice and NashiPodarki spiders with discovery support

* docs: finalize analytics and documentation structure

* Feature/groupprice spider (#8)

* feat: enhance Weeek widget UI with card layout, modal improvements, and loading state

- Redesigned task display with card-based grid layout
- Improved modal window: narrower, taller design with cleaner header
- Added loading spinner during data fetch
- Removed 'All' tab, default to first column
- Fixed HTML rendering issues and ID handling
- Reorganized mkdocs navigation structure
- Enhanced visual hierarchy in task cards and modal

* docs: comprehensive documentation restructure and bilingual support

- Reorganized documentation into clear sections: Architecture, API, Guides
- Added bilingual support (English and Russian) for all major docs
- Created detailed architecture documentation:
  - Parsing system architecture and implementation plan
  - Recommendation system overview
  - Gift query rules and intelligence API
- Added API reference documentation for models, repositories, and services
- Created deployment and development guides
- Added Weeek API integration reference
- Improved navigation structure in mkdocs
- Moved and renamed legacy docs for better organization

* feat: implement parsing infrastructure and Weeek integration

Parsing Infrastructure:
- Add RabbitMQ integration for async task processing
- Implement Scrapy-based parsing service with mrgeek spider
- Create parsing scheduler for automated data collection
- Add ingestion service for processing parsed data
- Create parsing repository and database models
- Add Alembic migration for parsing tables

Weeek Integration:
- Implement Weeek API service for task management
- Add integration routes for Weeek tasks endpoint
- Create setup and cleanup scripts for Weeek data

Infrastructure & Configuration:
- Add RabbitMQ to docker-compose
- Update dependencies in requirements.txt
- Configure new environment variables
- Add GitHub Actions deployment workflow
- Create documentation build script
- Update main app with new routes and services
- Add __init__.py files for new modules

* ci: add GitHub Pages deployment for documentation

- Add GitHub Actions workflow for automatic docs deployment
- Configure MkDocs for GitHub Pages with proper site_url
- Create requirements-docs.txt for documentation dependencies
- Add comprehensive setup guide in docs/README.md

Documentation will be available at:
https://icedarold.github.io/gifty-backend/

* ci: configure custom domain dev.giftyai.ru for documentation

* feat: implement Intelligence API and AI product classification

- Add IntelligenceService for AI-powered gift analysis
- Implement AIClassifier job for automatic product categorization
- Add schemas for intelligence requests and parsing ingestion

* refactor: update routes and final infrastructure cleanup

- Update authentication and recommendation routes
- Sync database models with latest schema changes
- Update README with project status and documentation links
- Include Gemini experiments and debug utilities
- Finalize schema transitions

* cleanup: remove deprecated app/schemas.py in favor of app/schemas/ directory

* ci: implement zero-downtime blue-green deployment

- Add healthchecks to API service in docker-compose.yml
- Use dynamic APP_PORT for parallel service execution
- Add scripts/deploy.sh for seamless switching between ports 8000 and 8001
- Create GitHub Actions workflow for automated production deployment via SSH
- Update Nginx upstream configuration dynamically during deployment

* ci: implement configurable tests and CI pipeline

- Create tests_config.yaml for toggling test groups
- Add tests/conftest.py for dynamic test skipping logic
- Fix Python 3.9 compatibility in test_ranker_v1.py
- Refactor test_recommendations_generate.py for new architecture
- Add pytest.ini to limit test discovery
- Create GitHub Actions workflow for automated testing on push and PR

* docs: add CI/CD and testing guides

- Document Blue-Green deployment strategy and server setup
- Add instructions for GitHub Secrets and CI/CD monitoring
- Document Pytest usage and tests_config.yaml management
- Update architecture overview with Infrastructure & CI/CD section

* ci: unify tests and deployment into a single production workflow

- Updated deploy-prod.yml to include a test job that blocks deployment
- Modified tests.yml to run only on PRs and develop branch
- Ensured zero-downtime deployment is only triggered if all tests pass

* docs: optimize documentation workflow and fix translations

- Restrict automated deployment to 'docs' branch only
- Add pull request build checks for documentation
- Update 'Edit this page' links to point to 'docs' branch
- Complete translations for development guide (RU/EN)
- Fix formatting and missing variables in documentation

* fix: resolve mkdocs-i18n configuration error by switching to mkdocs-static-i18n and dictionary syntax

* chore: rename docs branch to documentation and update CI/CD triggers

* chore: use documentation-main as base branch for docs to avoid git folder conflict

* docs: add pip install to docs.sh helper script

* chore: set documentation as primary branch and docs/* as working branches

* docs: test final branch structure

* fix: use python3 -m pip instead of pip in docs.sh for better compatibility

* fix: revert i18n languages to list format as required by mkdocs-static-i18n

* fix: resolve mkdocs build warnings hindering strict mode

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* fix: resolve mkdocs build warnings hindering strict mode (#4)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* feat: implement AI parsing infrastructure and Kaggle workers

- Added internal API endpoints for category mapping and scoring
- Implemented batch ingestion in Scrapy pipeline
- Created GiftyBaseSpider for standardized parser development
- Added AI worker templates and Kaggle notebooks
- Created local spider testing utility
- Updated parsing architecture documentation

* docs: add guide for creating new parsers

* docs: restructure navigation to group architecture and guides by module

* docs: fix YAML syntax error in mkdocs.yml navigation

* docs: move all navigation sections to the left sidebar (disabled tabs)

* chore: remove legacy parsing prototype and legacy docs

* docs: remove roadmap from parsing documentation

* docs: link Quick Start to dedicated Parsing Guide in architecture docs

* docs: add Grand Unified Theory of Gifting (GUTG) as core recommendation philosophy

* docs: expand GUTG with complete taxonomy (5 dimensions, 30 subtypes, AI cues)

* docs: define Gift Query & Feedback Strategy aligned with GUTG

* docs: expand Gift Query Rules with detailed quiz modules and feedback logic

* docs: finalized Gift Query Rules with full 44-question branching architecture and active learning logic

* fix: resolve mkdocs build warnings hindering strict mode (#5)

- Removed conflicting docs/README.md
- Added weeek_api_reference.md to navigation

* docs: satisfy user request to clarify Aesthetic as both a driver and a filter

* chore: remove parsing_plan.md leftovers

* docs: humanize GUTG descriptions with empathetic explanations and real-world examples

* docs: use storytelling format for The Fanatic description in GUTG

* docs: use narrative style for The Aesthetic in GUTG covering dual role and dark academia

* docs: fix list formatting in GUTG by adding empty lines

* docs: improve navigation by promoting subtypes to H4 headers

* docs: fix markdown rendering by removing indentation from Fanatic and Aesthetic text blocks

* docs: remove numerical prefixes from subtypes in GUTG

* feat: add GroupPrice spider, test script, and Weeek static documentation integration

* chore: update requirements.txt with pika and other installed dependencies

* fix: cleanup requirements.txt to remove local packages and fix install

* feat: implement group price spider and common scraper infrastructure

---------

Co-authored-by: Artyom Konukhov <artemkonuhov008@gmail.com>
Co-authored-by: Artyom Konukhov <93391108+IceDarol…
@IceDarold IceDarold merged commit 89c904f into develop Feb 10, 2026
1 check failed
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e50d305c5a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +190 to +193
async with message.process():
try:
task = json.loads(message.body.decode())
asyncio.create_task(self.run_spider(task))

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep RabbitMQ message unacked until crawl completes

process_message acknowledges each queue message as soon as the callback returns because it exits message.process() immediately after launching asyncio.create_task(self.run_spider(task)). If the worker crashes, is redeployed, or run_spider fails after this point, the task is already ACKed and is permanently lost, leaving sources stuck without retry; this breaks delivery guarantees for parsing jobs.

Useful? React with 👍 / 👎.

Comment on lines +1679 to +1680
@dp.callback_query(lambda c: c.data.startswith("spider:config:"))
async def handle_spider_config(callback_query: CallbackQuery):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Restore FSM handler for reschedule reason input

This change replaces the RescheduleTask.waiting_for_reason message handler with spider-config callbacks, but process_reschedule_date still transitions users into waiting_for_reason. In practice, after the bot asks for a reason, the next user message is no longer handled and task rescheduling cannot complete, so the reminder reschedule flow is effectively broken.

Useful? React with 👍 / 👎.

Comment on lines +451 to +453
workers.append(json.loads(data))
except Exception as e:
logger.error(f"Error fetching workers from Redis: {e}")

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Import JSON/logging before decoding worker heartbeats

get_active_workers uses json.loads and logger.error, but this module does not define json or logger. As soon as Redis returns any heartbeat payload, json.loads raises NameError, and the exception path then raises another NameError on logger, causing /internal/workers to fail instead of returning worker status.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant