YachtMemory Phase 1C.1e-c - Enrichment Due Selection

Adds READ-ONLY StayProcessingSelector.

Rules:
- PENDING: due immediately.
- RETRY: due only when enrichment_next_attempt_at <= now.
- PROCESSING, COMPLETE, FAILED: not selected.
- PENDING first (oldest stay end_time), then RETRY (earliest due time).
- Selector does not claim work. Claiming remains with the validated
  StayProcessingTransitionService::beginEnrichmentAttempt().

Run:
php -l src/services/StayProcessingSelector.php
php -l shared_dashboard/scripts/verify_stay_processing_selector_c.php
php -l shared_dashboard/scripts/test_stay_processing_selector_c.php

Then READ-ONLY:
php shared_dashboard/scripts/verify_stay_processing_selector_c.php
Expected current baseline: due_enrichment_jobs: 0, RESULT: OK.

Only then:
php shared_dashboard/scripts/test_stay_processing_selector_c.php
Expected: 6 PASS, ROLLBACK OK, POST-ROLLBACK OK, REAL DATA CHANGED NO, RESULT OK.

No SQL migration.
