Skip to content

Code commit - #1

Merged
SamuelMcAravey merged 9 commits into
mainfrom
features/init
Sep 28, 2025
Merged

Code commit#1
SamuelMcAravey merged 9 commits into
mainfrom
features/init

Conversation

@SamuelMcAravey

Copy link
Copy Markdown
Member

No description provided.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR implements a SQL-based scheduler system for the Bravellian Platform, providing durable timer scheduling, recurring job management, and transactional outbox pattern functionality. The system supports distributed deployment with SQL Server application locks for coordination.

  • Complete scheduler infrastructure with timer and job management
  • Transactional outbox pattern for reliable message delivery
  • Distributed locking mechanism using SQL Server application locks

Reviewed Changes

Copilot reviewed 36 out of 37 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
stylecop.json Adds StyleCop configuration for code style enforcement
SqlSchedulerService.cs Core scheduler service implementing timer and job processing logic
SqlSchedulerOptions.cs Configuration options for scheduler behavior
SqlSchedulerClient.cs Public API for scheduling operations
SqlOutboxService.cs Transactional outbox implementation
SqlDistributedLock.cs SQL Server-based distributed locking
SchedulerServiceCollectionExtensions.cs Dependency injection configuration
SchedulerMetrics.cs Metrics and monitoring support
SchedulerHealthCheck.cs Health check implementation
OutboxProcessor.cs Background service for processing outbox messages
OutboxMessage.cs Entity representing outbox messages
Interface files Public contracts for the scheduler system
Database schema files SQL DDL for tables and indexes
Project and solution files Build configuration and references

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread src/Bravellian.Platform/OutboxMessage.cs Outdated
Comment thread src/Bravellian.Platform/OutboxProcessor.cs
Comment thread src/Bravellian.Platform/SqlSchedulerOptions.cs Outdated
Comment thread src/Bravellian.Platform/SchedulerServiceCollectionExtensions.cs Outdated
Comment thread src/Bravellian.Platform/ISchedulerClient.cs Outdated
Comment thread src/Bravellian.Platform/SchedulerHealthCheck.cs Outdated
Comment thread src/Bravellian.Platform/SchedulerMetrics.cs Outdated
Changed OutboxMessage from a mutable class to an immutable record. All properties now utilize 'internal init' for setting values only during initialization, enhancing code robustness and promoting immutability.
@SamuelMcAravey
SamuelMcAravey added this pull request to the merge queue Sep 28, 2025
Merged via the queue into main with commit 330758f Sep 28, 2025
2 checks passed
@SamuelMcAravey
SamuelMcAravey deleted the features/init branch September 28, 2025 02:49
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.

2 participants