Skip to main content

monolith-job-development

Use when creating or extending asynchronous background jobs, including generator usage, queue registration, payload handling, and worker lifecycle.

Datos de origen

Repositorio
cggonzal/monolith
Última actividad en el origen
14 de febrero de 2026 a las 03:11
Idioma detectado de SKILL.md
inglés
Estrellas
0
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
monolith-job-development
description
Use when creating or extending asynchronous background jobs, including generator usage, queue registration, payload handling, and worker lifecycle.
# Monolith Job Development ## Use this skill when - Adding new async work to `app/jobs/`. - Updating queue handlers or job scheduling behavior. ## Fast path Run: `make generator job <Name>` This typically: - creates `app/jobs/<name>_job.go` - creates matching test file - adds job type constant in `app/models/job.go` - registers handler in `app/jobs/job_queue.go` ## Runtime architecture - Queue initialized via `jobs.InitJobQueue()` in `main.go`. - Worker count controlled by `config.JOB_QUEUE_NUM_WORKERS`. - Jobs are typed via `models.JobType*` enums and payload bytes. ## Implementation workflow 1. Define payload struct and marshal/unmarshal strategy. 2. Implement generated job handler body. 3. Register handler (generator usually does this). 4. Enqueue from controller/service as needed. 5. Add focused tests for decoding + handler behavior. ## Reliability tips - Keep handlers idempotent where possible. - Log failures with useful context. - Treat malformed payloads as explicit errors.
Ver en GitHub