0xironclad / 0xironclad/Task-Scheduler-API

GET /tasks/upcoming

Aberta Para iniciantes
#31 0 comentários 0 reações 1 responsável Reivindicada por @0xironclad Ver no GitHub
api good first issue
Linguagem predominante
TypeScript
Estrelas
0
Forks
2
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

Expose an endpoint that returns tasks scheduled to run soon, based on a future time window.

What to implement:

New route: GET /tasks/upcoming

Query params:

window (minutes, default 60)

limit, offset (optional)

Return tasks where:

status = 'pending' & run_at is between NOW() and NOW() + interval 'window minutes'

Order results by run_at ascending.

About the window parameter
window defines how far into the future to look.
Example:
GET /tasks/upcoming?window=30 , This returns pending tasks scheduled in the next 30 minutes.

DB logic:

Select tasks where:

status = 'pending'

run_at is between NOW() and NOW() + interval 'window minutes'

Order by run_at ascending

Expected result

A filtered, chronological array of upcoming tasks.

Empty array if nothing is scheduled in the window.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Procure por rotas de tarefas existentes na base de código, provavelmente em um diretório routes/ ou controllers/. O novo endpoint GET /tasks/upcoming precisa ser adicionado lá, consultando a tabela tasks com os filtros descritos (status='pending', run_at dentro da janela). Verifique como outros endpoints lidam com parâmetros de consulta e consultas ao banco de dados para seguir os padrões do projeto. Teste executando o servidor e chamando o endpoint com diferentes valores de window.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
express, nodejs, postgresql, typescript
Domínio
api, backend
Tipo de issue
Funcionalidade
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Estagnada
Clareza
Claramente especificada
Facilidade para iniciantes
70/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.