Aggregate upcoming coursework deadlines separately from lab presentation slots

Open
#43 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
javascript, node.js
Domain
api, backend

Research direction

Read AGENTS.md and docs/PROJECT_CONTEXT.md, then inspect src/assignments.js, the quiz adapter, and src/index.js alongside dependency issue #42. Discuss the design with the maintainer before implementation; the issue asks for bounded deadline lookup with explicit date ranges and course selection, while distinguishing date types, unknown timezones, unavailable fields, and extension scope. Done means synthetic fixtures cover the listed date and read-limit cases, aggregation preserves sources and last-check data without replacing presentation times, and the required checks are reported.

Written by the indexing model from the issue text.

Description

area:backend area:docs priority:medium status:blocked type:feature

Part of #28 · Target: Coursework / v0.5

Goal and scope

Provide bounded cross-course deadline lookup for explicit date range/course selection using supported assignment/quiz dates. Distinguish published due/cutoff/opening, unknown timezone, unavailable fields and personal-extension scope.

Implementation starting points

src/assignments.js, quiz adapter, new deadline tool, src/index.js. Follow AGENTS.md and docs/PROJECT_CONTEXT.md; reuse existing authorization, safe-error and synthetic-fixture patterns. New runtime dependencies need a documented reason.

Dependencies and readiness

Depends on #42. Discuss the design before starting implementation; dependent contracts must land first.

Out of scope

No completed-work inference, reminder creation, presentation-date inference or hidden older assignments.

Acceptance criteria and test plan

Fixtures cover deadlines inside/outside range, unknown offsets, missing/conflicting dates, partial courses and read limits. Due time never overwrites selected presentation time; sources and last check survive aggregation. Dependency #26/PR #27 is already merged.

Run the relevant offline tests, npm run check and git diff --check; runtime changes also require npm test and npm audit. Report checks not run. No faculty credentials or private course material are required for a contribution.

Contributing

Comment here before starting so the maintainer can coordinate the approach and avoid duplicate work. Fork the repository, branch from master, and open a focused PR referencing this issue. No assignee or delivery deadline is set; required checks and review apply.

Dominant language
JavaScript
Stars
0
Forks
0
Avg merge
1h 20m
Merged PRs (30d)
14

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from mahmutmft/courses-mcp

All issues in mahmutmft/courses-mcp

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.