T4 (Time & Task Tracker)
Overview¶
T4 (Time & Task Tracker) is a vision-stage project focused on understanding and improving developer productivity within CSED projects.
The concept is to build a GitHub-integrated tool that can:
- Track tasks across repositories and projects
- Analyze how developer time is spent across issues, pull requests, and discussions
- Provide dashboards and metrics to inform sprint planning and workload balancing
By leveraging GitHub metadata and lightweight time signals, T4 aims to help both researchers and practitioners study software development workflows and team dynamics.
Position in the Ecosystem¶
flowchart LR
Teams[Student Teams & Developers] --> Repos[Project Repositories]
Repos --> T4[T4<br/>Time & Task Tracking]
T4 --> Insights[Productivity & Workflow Insights]
UMACS[UMACS<br/>Auth Service] --> T4
GitHub Integration Architecture¶
T4 is designed with GitHub as a primary backend, minimizing the need for custom server-side state:
- Authentication: OAuth-based login through GitHub, restricted to specific organizations for secure access control
- Task Synchronization: Tasks sync bidirectionally with GitHub Projects and optionally Issues/PRs — changes made in GitHub are reflected in T4 and vice versa
- Minimal State: The backend stores only time entries and user preferences; task definitions and metadata live in GitHub, reducing data duplication
- Stateless Backend: Facilitates easy deployment as serverless functions or containerized services
Core Features¶
Task Management¶
- Create, update, delete tasks with statuses (Planned, In Progress, Completed)
- Direct synchronization with GitHub Projects and Issues/PRs
- Markdown-formatted notes and optional file attachments linked to tasks
Time Tracking¶
- Log time spent per task in an intuitive interface
- Generate weekly/monthly summaries and reports
- Data stored in minimal custom backend services
Real-Time Updates¶
- WebSockets push UI updates immediately upon task or time entry changes
Flexible Storage¶
- Markdown notes and small attachments optionally stored in private GitHub repositories, or in MongoDB/GridFS for performance
Tech Stack¶
| Layer | Technology |
|---|---|
| Backend | FastAPI, Uvicorn |
| Database | MongoDB (Beanie ODM) |
| Auth | GitHub OAuth via fastapi-sso |
| GitHub API | PyGithub |
| Real-time | WebSockets |
| Frontend (proposed) | React/Chakra, Vue/Naive UI, or SvelteKit/Skeleton |
Status¶
T4 is currently in Active Development, transitioning from the vision stage to an implementation phase.
Fall 2026 Pilot¶
A pilot deployment of T4 is planned for Fall 2026 in CSE120, integrated directly into the capstone lab workflow. The pilot will focus on:
- Automated time signal collection — lightweight event tracking from GitHub activity (issue assignments, PR openings/closings, comment timestamps, commit cadence) that produces effort estimates without requiring students to manually log anything
- Team health dashboards — visualizing workload distribution (Gini coefficient across team members), procrastination patterns (commit concentration before deadlines), and PR-to-push ratios as early indicators of dysfunction
- Cross-repository aggregation — T4 will track activity across all team repositories in a single semester, giving instructors a bird's-eye view of 20+ teams without digging through individual repos
- Integration with the existing Canvas grading pipeline — time-tracking data will feed into the Lab 4.0 autograder as evidence signals for effort and balance metrics, replacing or augmenting the current git-based extraction
The pilot scope is intentionally narrow: prove that GitHub-native time signals correlate with instructor-assessed team health scores before expanding into the broader vision.
TA Copilot Integration¶
T4 will integrate with TA Copilot, the lab's AI assistant for teaching teams. The integration allows TAs to query team health metrics and time-tracking insights through a natural language interface:
- "Which teams haven't pushed anything this week?"
- "Show me teams with high procrastination scores"
- "Compare workload balance across sections"
Rather than building a standalone dashboard UI, T4 surfaces its insights through TA Copilot as the primary interface, making team analytics accessible to TAs without specialized training.
title: "Git Task Server" short_description: "A backend service for managing Git-based tasks and assignments." status: "Early Development" growth_stage: "Seed" # 🌰 stack: - "Python" - "FastAPI" - "Dockerfile" links: - type: "github" url: "https://github.com/csed-ucm/git-task-server" tags: - "Backend" - "Education" - "Dev Productivity"
Overview¶
The Git Task Server is a backend service designed for Git-centric coursework:
- Manage programming tasks and assignments backed by Git repositories
- Automate cloning, branch creation, and basic validation workflows
- Provide a structured API that other tools (e.g., dashboards, LMS plugins) can call
This project can support:
- Intro programming courses that use GitHub/GitLab
- Capstone or project-based courses with repository-per-team setups
- Research on student development workflows and productivity
Example Use Case¶
Assignment Lifecycle
- Instructor defines an assignment template repository
- Git Task Server provisions per-student or per-team repositories
- Students commit and push their work
- CI pipelines or custom scripts run tests / static analysis
- Results are pulled back into dashboards or grading tools
Role in the CSED Platform¶
Git Task Server can integrate with:
- UMACS for identity and access control
- Student Team Formation / OptiTeam to map teams to repositories
- Org-level CI workflows in
.githubfor automated grading or analytics
flowchart LR
Instructor --> API[Git Task Server API]
API --> Git[Git Hosting<br/>(e.g., GitHub)]
Teams[Student Teams<br/>(OptiTeam)] --> API
API --> CI[CI / Testing Pipelines]
Status¶
- Status: Early development / design
- Next steps:
- Define core domain models (Task, Assignment, Submission, RepoLink)
- Implement basic provisioning workflows for repositories
- Integrate with UMACS for authentication/authorization
Related Research¶
- CSE120 Capstone — The capstone course ecosystem where this tool is deployed.