Skip to content

Conversation

@BadgerHobbs
Copy link
Owner

Summary

This PR adds a new bin collection data collector for The Moray Council.

  • Implements ICollector interface
  • Adds integration tests
  • Successfully tested with example postcode from issue

Closes #87

Test Summary

 ==================== Test Summary ====================
 
 --------------------- Collector ----------------------
 
 The Moray Council
 
 ------------------- Addresses (26) -------------------
 
 - 1 Dove Court Elgin IV30 6LH, IV30 6LH, 00065018
 - 2 Dove Court Elgin IV30 6LH, IV30 6LH, 00065019
 - 3 Dove Court Elgin IV30 6LH, IV30 6LH, 00065020
 - 4 Dove Court Elgin IV30 6LH, IV30 6LH, 00065021
 - 5 Dove Court Elgin IV30 6LH, IV30 6LH, 00065022
 - ...
 
 ------------------- Bin Days (33) --------------------
 
 - 16/01/2026 (1 bins):
   - Garden Waste
 
 - 23/01/2026 (4 bins):
   - General Waste
   - Paper and Card
   - Plastics and Cans
   - Glass
 
 - 30/01/2026 (1 bins):
   - Garden Waste
 
 - 13/02/2026 (5 bins):
   - General Waste
   - Garden Waste
   - Paper and Card
   - Plastics and Cans
   - Glass
 
 - 27/02/2026 (1 bins):
   - Garden Waste
 
 - 06/03/2026 (4 bins):
   - General Waste
   - Paper and Card
   - Plastics and Cans
   - Glass
 
 - 13/03/2026 (1 bins):
   - Garden Waste
 
 - 27/03/2026 (5 bins):
   - General Waste
   - Garden Waste
   - Paper and Card
   - Plastics and Cans
   - Glass
 
 - 10/04/2026 (1 bins):
   - Garden Waste
 
 - 17/04/2026 (4 bins):
   - General Waste
   - Paper and Card
   - Plastics and Cans
   - Glass
 - ...
 
 ======================================================

Generated automatically by Codex CLI

@BadgerHobbs BadgerHobbs mentioned this pull request Jan 3, 2026
gemini-code-assist[bot]

This comment was marked as outdated.

Repository owner deleted a comment from github-actions bot Jan 3, 2026
@BadgerHobbs BadgerHobbs force-pushed the collector/TheMorayCouncil-issue-87-1767479256 branch from 48620e0 to 6ac2082 Compare January 10, 2026 00:42
@BadgerHobbs BadgerHobbs force-pushed the collector/TheMorayCouncil-issue-87-1767479256 branch from 6ac2082 to ced1a32 Compare January 10, 2026 00:58
Repository owner deleted a comment from gemini-code-assist bot Jan 10, 2026
@BadgerHobbs
Copy link
Owner Author

/gemini review

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new collector for The Moray Council. The implementation is quite complex, involving a multi-step process to fetch calendar data for multiple years and passing state between requests using metadata. The code is well-structured and generally follows the project's design patterns for stateless collectors. I've identified a critical compilation issue related to member ordering, along with several opportunities to improve adherence to the repository's style guide, enhance code clarity, and fix minor inefficiencies. My review comments provide specific suggestions to address these points.

BadgerHobbs and others added 2 commits January 18, 2026 15:03
- Simplified bin Keys to single-letter codes only
- Removed GetBinsForCode method in favor of inline matching
- Removed URL normalization logic
- Removed defensive conditionals for metadata
- Limited calendar processing to 3 months
- Improved code readability by breaking long lines
- Extracted bins LINQ query to separate variable

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@BadgerHobbs BadgerHobbs added ready for deployment Implementation ready for deployment new collector Request for a new collector to be supported labels Jan 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new collector Request for a new collector to be supported ready for deployment Implementation ready for deployment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The Moray Council

2 participants