- Add next_steps TEXT column to sessions table via migration 034 - Add include_outcome_notes, include_next_steps, max_step_index to SessionExport - Add next_steps to SessionUpdate, SessionResponse, SessionComplete Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
13 KiB
13 KiB
GitHub Issues Migration Instructions
For Claude Code: Use these instructions to set up GitHub Issues for Patherly Repository: github.com/patherly/patherly Date: February 2, 2026
Status Snapshot (Updated February 12, 2026)
Live GitHub status (patherly/patherly):
- Total issues: 54
- Closed: 38
- Open: 16
Completed So Far (Closed Issues)
- Foundation and initial Phase 2.5 set:
#2to#14closed#15to#19closed
- Historical bug backlog:
#20to#23closed
- Additional cleanup and UX/quality work:
#25,#28,#29,#30,#31,#33,#34,#35,#36,#37,#38closed
- Recent quick wins delivered:
#51Session timer#52Keyboard-first navigation#53Repeat last session#54Session draft auto-recovery#55Copy individual step to clipboard
Current Open Feature Queue
#56to#71remain open (newer strategic feature set, created February 10, 2026)
Note: This file remains the original migration/setup checklist; the section above is the current progress snapshot.
Step 1: Create Labels
Create the following labels in the repository:
| Label | Color (hex) | Description |
|---|---|---|
bug |
d73a4a |
Something isn't working |
feature |
0e8a16 |
New functionality |
enhancement |
a2eeef |
Improvement to existing feature |
documentation |
0075ca |
Documentation updates |
backend |
7057ff |
FastAPI/Python work |
frontend |
fbca04 |
React work |
database |
b60205 |
PostgreSQL/schema changes |
priority: high |
d93f0b |
Do this soon |
priority: medium |
fbca04 |
Important but not urgent |
priority: low |
c5def5 |
Nice to have |
Step 2: Create Milestones
| Milestone | Description | Due Date |
|---|---|---|
| Phase 2 Completion | Tree editor polish, deployment | (leave open) |
| Phase 2.5 | Personal branching, step library | (leave open) |
| Backlog | Ideas not yet scheduled | (no due date) |
Step 3: Create Issues
Phase 2 Remaining (3 issues)
Issue 1:
- Title: Tree Editor Validation - required fields and orphan detection
- Labels:
feature,frontend,priority: high - Milestone: Phase 2 Completion
- Body:
Add validation to the tree editor:
- [ ] Required fields validation (name, at least one node)
- [ ] Orphan node detection (nodes not reachable from root)
- [ ] Circular reference detection
- [ ] Show validation errors before save
- [ ] Prevent save if validation fails
Issue 2:
- Title: User Preferences - export format default setting
- Labels:
feature,frontend,priority: medium - Milestone: Phase 2 Completion
- Body:
Add export format preference to user settings:
- [ ] Add "Default Export Format" dropdown in settings (Markdown/Text/HTML)
- [ ] Persist preference in localStorage
- [ ] Use preference as default in export dialog
- [ ] Dark mode toggle already complete ✅
Issue 3:
- Title: Deploy to Railway - CI/CD pipeline setup
- Labels:
feature,priority: high - Milestone: Phase 2 Completion
- Body:
Set up production deployment on Railway Pro:
- [ ] Configure Railway project with 3 services (PostgreSQL, backend, frontend)
- [ ] Set up environment variables
- [ ] Configure custom domains (patherly.com, api.patherly.com)
- [ ] Set up PR environments for testing
- [ ] Document deployment process
Phase 2.5 Features (15 issues)
Issue 4:
- Title: Step Categories - database table and seed data
- Labels:
feature,backend,database,priority: high - Milestone: Phase 2.5
- Body:
Create step_categories table for organizing the step library:
- [ ] Create Alembic migration for step_categories table
- [ ] Add SQLAlchemy model
- [ ] Seed default categories (Citrix/VDI, Active Directory, Microsoft 365, Networking, etc.)
- [ ] Create API endpoints for category CRUD (admin only)
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 5:
- Title: Step Library - database schema and migrations
- Labels:
feature,backend,database,priority: high - Milestone: Phase 2.5
- Body:
Create step_library table for reusable troubleshooting steps:
- [ ] Create Alembic migration
- [ ] Add SQLAlchemy model with fields: title, step_type, content (JSONB), visibility, category_id, tags, ratings aggregates
- [ ] Add indexes for search and filtering
- [ ] Add step_ratings table for user ratings/reviews
- [ ] Add step_usage_log table for "Verified Use" tracking
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 6:
- Title: Step Library - CRUD API endpoints
- Labels:
feature,backend,priority: high - Milestone: Phase 2.5
- Body:
Create API endpoints for step library:
- [ ] GET /api/v1/steps - List steps with filters (visibility, category, tags, rating)
- [ ] GET /api/v1/steps/{id} - Get step details
- [ ] POST /api/v1/steps - Create new step
- [ ] PUT /api/v1/steps/{id} - Update step
- [ ] DELETE /api/v1/steps/{id} - Soft delete
- [ ] GET /api/v1/steps/search - Full-text search
- [ ] GET /api/v1/steps/tags/popular - Popular tags
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 7:
- Title: Step Library - rating and review system
- Labels:
feature,backend,priority: medium - Milestone: Phase 2.5
- Body:
Implement step rating and review system:
- [ ] POST /api/v1/steps/{id}/rate - Rate a step (1-5 stars + optional review)
- [ ] PUT /api/v1/steps/{id}/rate - Update rating
- [ ] DELETE /api/v1/steps/{id}/rate - Remove rating
- [ ] POST /api/v1/steps/{id}/helpful - Vote helpful (yes/no)
- [ ] GET /api/v1/steps/{id}/reviews - Get reviews
- [ ] Track "Verified Use" when step is actually used in a session
- [ ] Calculate and update aggregated ratings on step_library table
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 8:
- Title: Add Custom Step button in tree navigation
- Labels:
feature,frontend,priority: high - Milestone: Phase 2.5
- Body:
Add ability to insert custom steps during active troubleshooting:
- [ ] Add "+ Add Custom Step" button at each decision node
- [ ] Button opens modal with two tabs: "Type My Own" and "Browse Library"
- [ ] Custom steps inserted into session only (not original tree)
- [ ] Visual indicator showing step is custom/user-added
- [ ] Custom steps included in session export
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 9:
- Title: Custom step creation modal
- Labels:
feature,frontend,priority: high - Milestone: Phase 2.5
- Body:
Create modal for adding custom steps:
- [ ] Tab 1: "Type My Own" - form to create step (type, title, description, commands)
- [ ] Tab 2: "Browse Library" - search and select from step library
- [ ] Option to save custom step to personal library
- [ ] Validate step before insertion
- [ ] Insert step into current session
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 10:
- Title: Step library browser component
- Labels:
feature,frontend,priority: medium - Milestone: Phase 2.5
- Body:
Create UI component for browsing step library:
- [ ] Search input with full-text search
- [ ] Category filter dropdown
- [ ] Tag filter (show popular tags as chips)
- [ ] Minimum rating filter
- [ ] Sort options (recent, popular, rating)
- [ ] Step cards showing title, type, rating, usage count
- [ ] Step preview/detail modal
- [ ] Insert button to add to session
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 11:
- Title: User Trees - database schema
- Labels:
feature,backend,database,priority: medium - Milestone: Phase 2.5
- Body:
Create user_trees table for personal/forked trees:
- [ ] Create Alembic migration
- [ ] Fields: user_id, forked_from_tree_id, name, tree_content (JSONB), visibility, share_token
- [ ] Add session_custom_steps table to track custom steps per session
- [ ] Add indexes for user lookup and share token
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 12:
- Title: Tree forking API endpoint
- Labels:
feature,backend,priority: medium - Milestone: Phase 2.5
- Body:
Create API for forking trees:
- [ ] POST /api/v1/user-trees/fork/{tree_id} - Fork an official tree
- [ ] Deep copy tree structure to user_trees
- [ ] Track lineage (forked_from_tree_id, forked_at_version)
- [ ] Increment fork_count on original tree
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 13:
- Title: User Trees - CRUD endpoints
- Labels:
feature,backend,priority: medium - Milestone: Phase 2.5
- Body:
Create API endpoints for user tree management:
- [ ] GET /api/v1/user-trees - List user's custom trees
- [ ] GET /api/v1/user-trees/{id} - Get custom tree
- [ ] POST /api/v1/user-trees - Create new custom tree
- [ ] PUT /api/v1/user-trees/{id} - Update custom tree
- [ ] DELETE /api/v1/user-trees/{id} - Soft delete
- [ ] PUT /api/v1/user-trees/{id}/share - Update sharing settings
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 14:
- Title: My Trees dashboard page
- Labels:
feature,frontend,priority: medium - Milestone: Phase 2.5
- Body:
Create "My Trees" page for managing personal trees:
- [ ] List user's forked/custom trees
- [ ] Show original tree reference (if forked)
- [ ] Last used date, usage count
- [ ] Quick actions: start session, edit, share, delete
- [ ] Fork button on tree detail view
- [ ] Notification when original tree updated (basic)
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 15:
- Title: Tree sharing via link
- Labels:
feature,frontend,backend,priority: medium - Milestone: Phase 2.5
- Body:
Allow sharing trees via link:
- [ ] Generate unique share token for tree
- [ ] GET /api/v1/shared/{share_token} - Access shared tree (no auth required)
- [ ] Share modal with visibility options (private, link, team, public)
- [ ] Copy link button
- [ ] Option to allow/disallow forking
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 16:
- Title: Save session as custom tree
- Labels:
feature,frontend,backend,priority: low - Milestone: Phase 2.5
- Body:
After completing a session with custom steps, offer to save as tree:
- [ ] POST /api/v1/sessions/{id}/save-as-tree endpoint
- [ ] Prompt user after session completion (if custom steps were added)
- [ ] Create user_tree from session path + custom steps
- [ ] Allow user to name and edit before saving
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 17:
- Title: Admin - category management UI
- Labels:
feature,frontend,priority: low - Milestone: Phase 2.5
- Body:
Admin interface for managing step categories:
- [ ] List categories with step counts
- [ ] Create new category
- [ ] Edit category name/description
- [ ] Archive category (soft delete)
- [ ] Reorder categories (display_order)
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Issue 18:
- Title: Rate/review modal after using a step
- Labels:
feature,frontend,priority: low - Milestone: Phase 2.5
- Body:
Prompt users to rate steps after using them:
- [ ] After session completion, show steps used from library
- [ ] Rating modal with 1-5 stars
- [ ] Optional written review (max 500 chars)
- [ ] "Was this helpful?" quick vote
- [ ] Mark rating as "Verified Use"
Reference: PHASE-2.5-PERSONAL-BRANCHING.md
Known Bugs (create as closed issues for history)
Issue 19:
- Title: [FIXED] DateTime timezone handling causing Internal Server Errors
- Labels:
bug,backend - State: CLOSED
- Body:
**Problem:** Mixing timezone-aware and timezone-naive datetime objects caused errors in session completion.
**Solution:**
- Updated all SQLAlchemy models to use `DateTime(timezone=True)`
- Changed all default datetime factories to `lambda: datetime.now(timezone.utc)`
**Files affected:** All models with timestamp fields
Fixed: January 28, 2026
Issue 20:
- Title: [FIXED] bcrypt/passlib version compatibility
- Labels:
bug,backend - State: CLOSED
- Body:
**Problem:** Password hashing failed with newer bcrypt versions.
**Solution:** Pin bcrypt version in requirements.txt:
- bcrypt==4.0.1
- passlib[bcrypt]==1.7.4
Fixed: January 2026
Issue 21:
- Title: [FIXED] Email validation rejecting .local domains
- Labels:
bug,backend - State: CLOSED
- Body:
**Problem:** Seed script failed with email validation error when using `.local` TLD.
**Cause:** email-validator library correctly rejects `.local` as reserved per RFC 6761.
**Solution:** Use standard domains like `example.com` for seed/test users.
Fixed: January 29, 2026
Issue 22:
- Title: [FIXED] httpx not installed for seed scripts
- Labels:
bug,backend - State: CLOSED
- Body:
**Problem:** Running seed_trees.py failed with ModuleNotFoundError for httpx.
**Solution:** Install httpx before running seed scripts:
pip install httpx
Fixed: January 29, 2026
Step 4: Verify
After creating all issues:
- Check that labels appear correctly
- Check that milestones have correct issues assigned
- Verify closed issues show in closed state
Notes
- Issues 4-18 are Phase 2.5 features from PHASE-2.5-PERSONAL-BRANCHING.md
- Issues 19-22 are historical bugs documented in LESSONS-LEARNED.md (create as closed)
- Long-term feature ideas are in BACKLOG.md (not GitHub Issues yet)