Zeni Kim zeni
  • Joined on 2024-09-12
zeni pushed to develop at goffee/core 2026-06-23 20:21:45 -04:00
86ab226024 update golang packages
zeni pushed to develop at goffee/goffee 2026-06-23 19:56:12 -04:00
99a9f9d7d1 Merge pull request 'command scheduler' (#4) from jacs/goffee:scheduler into develop
b47dbcce70 command scheduler
Compare 2 commits »
zeni merged pull request goffee/goffee#4 2026-06-23 19:56:10 -04:00
command scheduler
zeni merged pull request goffee/core#34 2026-06-23 19:55:58 -04:00
scheduler
zeni pushed to develop at goffee/core 2026-06-23 19:55:58 -04:00
fc33756897 Merge pull request 'scheduler' (#34) from jacs/core:scheduler into develop
987e8b98d0 scheduler updates
d156e3785d add maxruns and option for loop forever
Compare 3 commits »
zeni pushed to develop at goffee/cup 2026-06-23 19:55:43 -04:00
d9c956546d Merge pull request 'scheduler' (#19) from jacs/cup:scheduler into develop
1a7fc564ff scheduler
a5a9f4ba50 add maxruns and option for loop forever
Compare 3 commits »
zeni merged pull request goffee/cup#19 2026-06-23 19:55:42 -04:00
scheduler
zeni pushed to main at goffee/core 2026-06-21 22:41:27 -04:00
6bc768ba77 Merge pull request 'develop' (#33) from develop into main
7ec601ca10 Merge pull request 'Scheduler as a first-class core module feature, following the same pattern used for the Asynq queue system' (#32) from jacs/core:scheduler into develop
3710fbe343 Create a scheduler as a first-class core module feature, following the same pattern used for the Asynq queue system. The new core/scheduler/ subpackage contains QueueItem and ProcessedItem GORM models (tables queue_items and processed_items), a Store for database operations (enqueue, claim batch with SELECT FOR UPDATE SKIP LOCKED, result recording, stuck recovery), a Semaphore kill switch, and the polling Scheduler loop with configurable interval and rate limit. The core/scheduler.go wrapper exposes a Schedulermux struct (analogous to Queuemux) with SchedulerInit(), AddWork(), SetStore(), and RunScheduler() methods, plus global accessors ResolveSchedulerStore() and SchedulerSemaphoreSetGreen/Red/IsGreen() so controllers can enqueue work and control the semaphore without importing the subpackage directly.
Compare 3 commits »
zeni merged pull request goffee/core#33 2026-06-21 22:41:25 -04:00
develop
zeni created pull request goffee/core#33 2026-06-21 22:41:07 -04:00
develop
zeni merged pull request goffee/cup#18 2026-06-21 22:15:47 -04:00
Wires the scheduler into the cup application following the exact conventions of the Asynq queue integration
zeni pushed to develop at goffee/cup 2026-06-21 22:15:47 -04:00
37a491c6b9 Merge pull request 'Wires the scheduler into the cup application following the exact conventions of the Asynq queue integration' (#18) from jacs/cup:scheduler into develop
3d051e9617 Wires the scheduler into the cup application following the exact conventions of the Asynq queue integration. A new testmac/config/scheduler.go file provides GetSchedulerConfig() with enable flag, polling interval, and rate limit. A new testmac/register-scheduler.go file registers task handlers (send_email and flaky_task as samples) on the Schedulermux, creates the DB-backed store via core.ResolveGorm(), and launches the scheduler in a goroutine — only when EnableScheduler: true. The scheduler tables are migrated alongside other models in run-auto-migrations.go via db.AutoMigrate(&scheduler.QueueItem{}, &scheduler.ProcessedItem{}).
Compare 2 commits »
zeni merged pull request goffee/core#32 2026-06-21 22:09:24 -04:00
Scheduler as a first-class core module feature, following the same pattern used for the Asynq queue system
zeni pushed to develop at goffee/core 2026-06-21 22:09:24 -04:00
7ec601ca10 Merge pull request 'Scheduler as a first-class core module feature, following the same pattern used for the Asynq queue system' (#32) from jacs/core:scheduler into develop
3710fbe343 Create a scheduler as a first-class core module feature, following the same pattern used for the Asynq queue system. The new core/scheduler/ subpackage contains QueueItem and ProcessedItem GORM models (tables queue_items and processed_items), a Store for database operations (enqueue, claim batch with SELECT FOR UPDATE SKIP LOCKED, result recording, stuck recovery), a Semaphore kill switch, and the polling Scheduler loop with configurable interval and rate limit. The core/scheduler.go wrapper exposes a Schedulermux struct (analogous to Queuemux) with SchedulerInit(), AddWork(), SetStore(), and RunScheduler() methods, plus global accessors ResolveSchedulerStore() and SchedulerSemaphoreSetGreen/Red/IsGreen() so controllers can enqueue work and control the semaphore without importing the subpackage directly.
Compare 2 commits »
zeni pushed to develop at goffee/goffee 2026-05-26 11:13:47 -04:00
06778a5357 New goffee command, set the password for the user account with the specified name.
zeni pushed tag v1.7.3 to goffee/goffee 2026-05-19 01:35:37 -04:00
zeni released v1.7.3 at goffee/goffee 2026-05-19 01:35:37 -04:00
zeni created pull request goffee/goffee#3 2026-05-19 01:34:46 -04:00
create new version to avoid checksum problems in v1.7.2
zeni pushed to develop at goffee/goffee 2026-05-19 01:34:04 -04:00
807875da43 create new version to avoid checksum problems in v1.7.2
zeni pushed tag v1.7.2 to goffee/goffee 2026-05-19 01:20:34 -04:00