Skip to content

Commit e2d7125

Browse files
Claude Code Agentclaude
andcommitted
Add Team and Bandwidth feature (Issue #30)
- Added TeamMember type with capacity tracking fields - Created TeamPage.tsx for team management with stats overview - Added team members table to database (schema v3) - Updated CreateIssueModal and IssueDetailPanel to show team members in assignee dropdown - Added Team link to sidebar under Project section - Added translations for team feature (English and Japanese) Features: - View team capacity stats (Team Size, Total Available Weeks, Total Capacity Hours) - Add/Edit/Delete team members with name, email, available weeks, hours per week - Avatar color picker with preview - Assign team members to issues from Create Issue modal and Issue Detail panel - Track assigned tasks count and progress per team member Tests: - test-244: Team page displays with stats overview - test-245: Team link appears in sidebar - test-246: User can add a team member with available weeks - test-247: Team member can be assigned to tasks from Create Issue modal Ref: #30 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 1541e42 commit e2d7125

33 files changed

+1624
-41
lines changed

FEATURE_REQUEST.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
1-
# Feature Request: Issue #27
1+
# Feature Request: Issue #30
22

33
## Title
4-
[FEATURE] Add an Epics feature
4+
[FEATURE] Add team and bandwidth
55

66
## Description
77
### Feature Name
88

9-
Epics
9+
Team capacitiy
1010

1111
### Feature Specification
1212

13-
Add a feature for Epics and make it so theres a clear ticket hierachy
13+
* Ability to add team members
14+
* Add each member available number of weeks
15+
* Assign task to member
1416

1517
### Acceptance Criteria
1618

@@ -23,7 +25,7 @@ Small (< 1 hour)
2325

2426
## Branch
2527
All work should be committed to the `agent-runtime` branch.
26-
Commits should reference this issue: `Ref: #27`
28+
Commits should reference this issue: `Ref: #30`
2729

2830
## Mode
2931
Enhancement - Modify existing app in generated-app/

agent_state.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
2-
"session_id": "gh-issue-27-20251202-195244-19871578006",
3-
"current_issue": 27,
2+
"session_id": "gh-issue-30-20251202-224744-19876032712",
3+
"current_issue": 30,
44
"backlog_item_id": null,
55
"status": "running",
6-
"last_heartbeat": "2025-12-02T19:52:53.102888+00:00",
6+
"last_heartbeat": "2025-12-02T22:47:54.348970+00:00",
77
"restart_count": 0,
88
"working_directory": "/app/workspace/agent-runtime",
9-
"last_commit": "f1f5e790939d8bec9142f2abd16390b56ab76af8"
9+
"last_commit": "1541e421d62da75b4f4b994c1c974ea910b2f2b7"
1010
}

generated-app/agent_state.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"desired_state": "continuous",
33
"current_state": "continuous",
4-
"timestamp": "2025-12-02T20:47:18.689Z",
4+
"timestamp": "2025-12-02T22:47:56.712Z",
55
"setBy": "agent",
66
"note": "Running in continuous mode"
77
}

generated-app/claude-progress.txt

Lines changed: 80 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,71 @@
11
# Canopy - JIRA-like Project Management App
22

3-
## Project Status: ✅ COMPLETE AND VERIFIED (Issue #29 - Japanese Language Toggle)
3+
## Project Status: ✅ COMPLETE AND VERIFIED (Issue #30 - Team and Bandwidth)
44

5-
## Latest Session (Issue #29 - Japanese Language Toggle - COMPLETE)
5+
## Latest Session (Issue #30 - Team and Bandwidth - COMPLETE)
6+
Added team capacity management feature that allows users to add team members, set available weeks per member, and assign tasks to team members.
7+
8+
### Feature Description:
9+
Users can now:
10+
1. Navigate to a dedicated Team page at /project/{key}/team
11+
2. View team capacity stats (Team Size, Total Available Weeks, Total Capacity Hours)
12+
3. Add team members with name, email, available weeks, hours per week, and avatar color
13+
4. Edit and delete team members
14+
5. See assigned task counts and progress per team member
15+
6. Assign team members to issues from Create Issue modal and Issue Detail panel
16+
17+
### New Files Created:
18+
- src/pages/TeamPage.tsx - Full team management page with capacity tracking
19+
20+
### Files Modified:
21+
- src/types/index.ts - Added TeamMember and TeamMemberWithStats types
22+
- src/lib/db.ts - Added teamMembers table (v3 schema), helper functions (createTeamMember, updateTeamMember, deleteTeamMember, getTeamMembersForProject), updated deleteProject and clearAllData to include teamMembers
23+
- src/lib/translations.ts - Added 'team' translation for English and Japanese
24+
- src/App.tsx - Added route for /project/:projectKey/team and TeamPage import
25+
- src/components/layout/Sidebar.tsx - Added Team link with Users icon under PROJECT section
26+
- src/components/modals/CreateIssueModal.tsx - Added team members to assignee dropdown with "Team Members" section header
27+
- src/components/board/IssueDetailPanel.tsx - Added team members to assignee dropdown in issue detail sidebar
28+
29+
### Team Page Features:
30+
- Header with "Team" title, Users icon, and "Add Team Member" button (coral accent)
31+
- Stats overview cards: Team Size, Total Available Weeks, Total Capacity (Hours)
32+
- Team members table with columns: Member (avatar + name + email), Available Weeks, Hours/Week, Assigned Tasks (with progress bar), Actions
33+
- Add/Edit team member dialog with fields: Name, Email, Available Weeks dropdown (1-52), Hours per Week dropdown, Avatar Color picker with preview
34+
- Empty state with "No team members yet" message and "Add your first team member" CTA
35+
- Capacity Planning Tip info box explaining how available weeks help with sprint planning
36+
- Team member deletion with automatic unassignment from issues
37+
38+
### Assignee Dropdown Updates:
39+
- Both CreateIssueModal and IssueDetailPanel now show team members grouped under "Team Members" section
40+
- System users shown under "System Users" section
41+
- Team members display with colored avatar showing initials
42+
43+
### New Tests Added (test-244 through test-247):
44+
- test-244: Team page displays with stats overview when navigating to a project's team page ✅
45+
- test-245: Team link appears in sidebar under Project section ✅
46+
- test-246: User can add a team member with name and available weeks ✅
47+
- test-247: Team member can be assigned to tasks from Create Issue modal ✅
48+
49+
### E2E Tests:
50+
- e2e-tests/team-setup.spec.ts - Project creation and team page navigation
51+
- e2e-tests/team-all-tests.spec.ts - Comprehensive tests for all team features (4/4 passing)
52+
53+
### Build Status:
54+
- `npm run build` succeeds without errors ✅
55+
- All new tests pass (4/4) ✅
56+
- All console logs show NO_CONSOLE_ERRORS ✅
57+
- Application loads correctly ✅
58+
59+
### Screenshots Captured:
60+
- test-244-final.png: Team page with stats overview and empty state
61+
- test-245-final.png: Sidebar with Team link under PROJECT section
62+
- test-246-final.png: Team member "John Doe" added with "4 weeks" badge
63+
- test-247-final.png: Create Issue modal showing Team Members dropdown with "Jane Smith"
64+
- final-a1b2c3.png: Final app state
65+
66+
---
67+
68+
## Previous Session (Issue #29 - Japanese Language Toggle - COMPLETE)
669
Added a Japanese language toggle feature that allows users to switch the app UI between English and Japanese.
770

871
### Feature Description:
@@ -322,14 +385,24 @@ Built a complete JIRA-like project management application called "Canopy" with:
322385
- [x] Timeline view with epics
323386
- [x] Month view with date columns
324387

325-
### Epics (NEW)
388+
### Epics
326389
- [x] Dedicated Epics page with hierarchy view
327390
- [x] Stats overview (Total, Open, In Progress, Done)
328391
- [x] Child issues grouped under epics
329392
- [x] Progress tracking with bars and percentages
330393
- [x] Filter and search functionality
331394
- [x] Issue hierarchy legend
332395

396+
### Team & Capacity (NEW - Issue #30)
397+
- [x] Dedicated Team page at /project/{key}/team
398+
- [x] Team capacity stats (Team Size, Total Available Weeks, Total Capacity Hours)
399+
- [x] Add/Edit/Delete team members with name, email, available weeks, hours per week
400+
- [x] Avatar color picker with preview
401+
- [x] Assigned tasks count and progress tracking per team member
402+
- [x] Team members selectable in Create Issue modal assignee dropdown
403+
- [x] Team members selectable in Issue Detail panel assignee dropdown
404+
- [x] "Team Members" and "System Users" sections in assignee dropdowns
405+
333406
### Calendar
334407
- [x] Monthly calendar view
335408
- [x] Due date visualization
@@ -364,15 +437,16 @@ Built a complete JIRA-like project management application called "Canopy" with:
364437
- [x] Contribution guidelines
365438

366439
## Tests
367-
- tests.json: 239 comprehensive tests (test-001 through test-239)
440+
- tests.json: 247 comprehensive tests (test-001 through test-247)
368441
- e2e-tests/: Playwright test suite
369-
- All Epics tests (test-236 through test-239) passing
442+
- All Team tests (test-244 through test-247) passing
370443

371444
## Key Files
372445
- src/lib/db.ts - Dexie database schema
373446
- src/context/AppContext.tsx - Global state
374447
- src/pages/*.tsx - All page components
375-
- src/pages/EpicsPage.tsx - NEW Epics page
448+
- src/pages/EpicsPage.tsx - Epics page
449+
- src/pages/TeamPage.tsx - NEW Team page (Issue #30)
376450
- src/components/board/* - Board components
377451
- src/components/modals/* - Modal dialogs
378452
- src/styles/globals.css - Theme variables

0 commit comments

Comments
 (0)