- FastAPI backend with JWT auth - PostgreSQL database schema - Trees and Sessions CRUD APIs - Export functionality (Markdown, Text, HTML) - Docker setup for local development - Alembic migrations
343 lines
9.9 KiB
Markdown
343 lines
9.9 KiB
Markdown
# Questions & Action Items
|
|
|
|
## Questions for Michael
|
|
|
|
### Timeline & Resources
|
|
|
|
**1. Timeline Pressure**
|
|
- Do you need something usable in 2 weeks, or can we take 4-6 weeks to build something more polished?
|
|
- What's driving the timeline? (Personal productivity? Team need? Demonstration?)
|
|
> 50% personal and 50% I see a need in the market
|
|
|
|
**2. Your Involvement**
|
|
- Can you commit ~2 hours per week for feedback/testing during development?
|
|
- Or do you need this to be more hands-off until it's ready?
|
|
- Preferred communication: Slack/email/scheduled calls?
|
|
> I can commit likely more than 2 hours a week. I'm willing to spend most of my evenings working on this if needed.
|
|
|
|
**3. Hosting Budget**
|
|
- Start with free tier on Render/Railway (with limitations)?
|
|
- Willing to spend $10-20/month for better performance/storage?
|
|
- Company paying or personal expense?
|
|
> I'm definitely willing to spend $20/month
|
|
**4. Team Size**
|
|
- How many engineers would be using this in the first 3 months?
|
|
- 1-3 people? (affects database/hosting decisions)
|
|
- 5-10 people?
|
|
- 10+ people?
|
|
- Are they all at the same skill level as you, or mix of junior/senior?
|
|
> In the first 3 months, I could see maybe 3 people other than myself at maximum. Depending upon how quickly a working model is out, it could potentially be more based upon adoption rate and how easy it is to build out the trees.
|
|
|
|
**5. Branding**
|
|
- Personal project with your name on it? ("ChihlasTree" or similar)
|
|
- MSP company tool? (Company branding)
|
|
- Intentionally generic for broader appeal? (TroubleTree, DiagPath, etc.)
|
|
> This started as a personal project idea, however, making money from this idea is the goal. So generic may not be bad.
|
|
---
|
|
|
|
## Action Items for Michael
|
|
|
|
### High Priority (Before Development Starts)
|
|
|
|
**1. Document Your Top 5 Troubleshooting Scenarios**
|
|
|
|
For each scenario, I need:
|
|
- Issue name/category
|
|
- First thing you check
|
|
- What the possible outcomes are
|
|
- What you do for each outcome
|
|
- How you know when you've solved it
|
|
- Common pitfalls or edge cases
|
|
|
|
**Example Template:**
|
|
```
|
|
Issue: FSLogix Profile Not Loading
|
|
Category: Citrix/Virtual Desktop
|
|
|
|
Step 1: Can user log into server?
|
|
├─ YES → Step 2: Check FSLogix service
|
|
└─ NO → Different tree (AD/Licensing issue)
|
|
|
|
Step 2: Is FSLogix service running?
|
|
├─ RUNNING → Step 3: Check frxtray.exe in task manager
|
|
├─ STOPPED → Step 4: Start service, check event log
|
|
└─ STUCK → Step 5: Kill and restart, check file locks
|
|
|
|
Step 3: Does user have profile VHD in share?
|
|
├─ YES → Step 6: Check permissions on VHD
|
|
└─ NO → Step 7: Check FSLogix registry settings
|
|
|
|
... (continue until resolution)
|
|
|
|
Common Pitfalls:
|
|
- VHD file locked by another server
|
|
- Profile path in registry has typo
|
|
- Antivirus blocking VHD access
|
|
|
|
Resolution Indicators:
|
|
- User can log in successfully
|
|
- Profile loads within 30 seconds
|
|
- No FSLogix errors in Event Viewer
|
|
```
|
|
> For the above section, please see a document called TS-EXAMPLES.md in this project folder.
|
|
|
|
**Your Top 5 to Document:**
|
|
1. [ ] Citrix VDA Not Registering
|
|
2. [ ] FSLogix Profile Issues
|
|
3. [ ] Active Directory Replication Failure
|
|
4. [ ] SonicWall VPN Tunnel Down
|
|
5. [ ] User Unable to Access File Share (permissions vs. connectivity)
|
|
|
|
**2. Export Format Sample**
|
|
|
|
Create a sample ticket note from a recent ticket that shows:
|
|
- How you currently document troubleshooting steps
|
|
> Typically this is done with bullet points with short concise sentences. At times there will be screenshots and if I think a specific command that is run is important, I will put that in too.
|
|
- The level of detail your ticketing system needs
|
|
> As detailed as possible without being bloated
|
|
- Any specific formatting requirements
|
|
> Nothing specific, I'm open to what works best
|
|
- Whether you include timestamps, commands run, etc.
|
|
> Timestamps are sometimes included, commands are also included unless it becomes an entire script in which case that is added as an attachment.
|
|
|
|
This will help me design exports that match your existing workflow.
|
|
|
|
**3. Team Feedback (Optional but Valuable)**
|
|
|
|
If possible, ask 1-2 colleagues:
|
|
- "If there was a tool that guided you through troubleshooting and automatically wrote your ticket notes, what would make it actually useful vs. just another tool to learn?"
|
|
- What's their biggest pain point in documenting work?
|
|
- Do they follow consistent troubleshooting paths, or is it different every time?
|
|
|
|
---
|
|
|
|
### Medium Priority (Can Be Done During Development)
|
|
|
|
**4. Documentation Link Collection**
|
|
|
|
Start collecting useful documentation links you reference frequently:
|
|
- Microsoft Learn articles
|
|
- Citrix documentation
|
|
- Internal wiki pages
|
|
- YouTube tutorials
|
|
- Blog posts that have saved you
|
|
|
|
We'll integrate these into the trees as we build them.
|
|
|
|
**5. Client Context Template**
|
|
|
|
For 1-2 of your main clients (like City of Warner Robins), document:
|
|
- Domain controller names
|
|
- Key server hostnames
|
|
- Network information (subnets, VPN gateway)
|
|
- Common issues specific to that client
|
|
- Primary contacts
|
|
|
|
This will help us design the client context feature properly.
|
|
|
|
**6. Script Inventory**
|
|
|
|
List your PowerShell scripts/tools that you'd eventually want to integrate:
|
|
- ChihlasChecker scripts
|
|
- Service restart scripts
|
|
- Common diagnostic commands
|
|
- Any automation you do repeatedly
|
|
|
|
We won't integrate these in MVP, but good to know what exists for Phase 4.
|
|
|
|
---
|
|
|
|
### Low Priority (Nice to Have)
|
|
|
|
**7. Naming Ideas**
|
|
|
|
Brainstorm some names for the tool:
|
|
- Should it have "Chihlas" in the name? (personal branding)
|
|
- Should it sound MSP-specific or generic?
|
|
- Should it be playful or professional?
|
|
|
|
Some ideas to react to:
|
|
- TroubleTree
|
|
- DecisionPath
|
|
- FlowDoc
|
|
- DiagnosticFlow
|
|
- PathFinder
|
|
- TicketFlow
|
|
- ChihlasTree
|
|
- MSP Navigator
|
|
|
|
**8. Long-term Vision**
|
|
|
|
Think about:
|
|
- Would you want to eventually sell this to other MSPs?
|
|
- Keep it as internal tool for your company?
|
|
- Open-source it to build reputation?
|
|
- Use it as consulting/training material?
|
|
> I would like to profit off this to other MSPs, internal IT teams, and I can see applications for this in many other markets outside of IT. This could end up being used in call centers, or telemarketing even. This could also be used on a consulting basis for other MSPs and private clients.
|
|
|
|
|
|
This affects architectural decisions (multi-tenancy, white-labeling, etc.)
|
|
|
|
---
|
|
|
|
## Decision Log
|
|
|
|
*This section will be updated as we make key decisions*
|
|
|
|
| Date | Decision | Rationale |
|
|
|------|----------|-----------|
|
|
| TBD | Tech stack: React + FastAPI + PostgreSQL | Michael learning Python, modern stack, flexible |
|
|
| TBD | Hosting: [To be decided] | Based on budget and team size |
|
|
| TBD | Name: [To be decided] | Based on branding goals |
|
|
| TBD | Timeline: [To be decided] | Based on urgency and availability |
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
### Immediate (This Week)
|
|
1. [ ] Michael answers the 5 key questions above
|
|
2. [ ] Michael documents 2-3 troubleshooting scenarios in detail
|
|
3. [ ] Michael provides sample export format
|
|
4. [ ] Decision on timeline and hosting budget
|
|
5. [ ] Confirm tech stack choices
|
|
|
|
### Week 1 (When Development Starts)
|
|
1. [ ] Set up development environment
|
|
2. [ ] Create project repository (GitHub)
|
|
3. [ ] Initial database schema
|
|
4. [ ] Basic authentication working
|
|
5. [ ] First tree manually created in database
|
|
|
|
### Week 2
|
|
1. [ ] Basic tree navigation UI functional
|
|
2. [ ] Michael tests with real scenario
|
|
3. [ ] Iterate based on feedback
|
|
4. [ ] Add export functionality
|
|
5. [ ] Create 2-3 more trees
|
|
|
|
### Week 3
|
|
1. [ ] Polish UI based on usage
|
|
2. [ ] Fix critical bugs
|
|
3. [ ] Deploy to production (staging environment)
|
|
4. [ ] Michael uses on real tickets
|
|
5. [ ] Collect usage data and feedback
|
|
|
|
---
|
|
|
|
## Open Questions & Parking Lot
|
|
|
|
*Questions that arise during development but don't need immediate answers*
|
|
|
|
### Technical Questions
|
|
- Should we support tree branching (go to Tree B from Tree A)?
|
|
- How deep should tree history go? (unlimited or limited?)
|
|
- Should users be able to fork/duplicate trees?
|
|
- Real-time collaboration on trees? (Google Docs style)
|
|
|
|
### Product Questions
|
|
- Gamification? (badges for completing troubleshooting, streaks?)
|
|
- AI suggestions based on past sessions?
|
|
- Integration with time tracking tools?
|
|
- Mobile app vs. responsive web?
|
|
|
|
### Business Questions
|
|
- Pricing model if commercialized?
|
|
- Target market research needed?
|
|
- Patent/trademark considerations?
|
|
- Partnership opportunities with PSA vendors?
|
|
|
|
---
|
|
|
|
## Meeting Notes Template
|
|
|
|
*For regular check-ins during development*
|
|
|
|
### Meeting [Date]
|
|
|
|
**Attendees:**
|
|
|
|
**Agenda:**
|
|
1. Review progress since last meeting
|
|
2. Demo new features
|
|
3. Gather feedback
|
|
4. Discuss blockers
|
|
5. Plan next sprint
|
|
|
|
**Progress:**
|
|
- [ ] Item 1
|
|
- [ ] Item 2
|
|
|
|
**Feedback:**
|
|
-
|
|
|
|
**Blockers:**
|
|
-
|
|
|
|
**Next Sprint Goals:**
|
|
1.
|
|
2.
|
|
3.
|
|
|
|
**Action Items:**
|
|
- [ ] Michael: [task]
|
|
- [ ] Development: [task]
|
|
|
|
**Next Meeting:** [Date/Time]
|
|
|
|
---
|
|
|
|
## Resources & References
|
|
|
|
### Documentation
|
|
- React: https://react.dev/
|
|
- FastAPI: https://fastapi.tiangolo.com/
|
|
- PostgreSQL: https://www.postgresql.org/docs/
|
|
- Tailwind CSS: https://tailwindcss.com/docs
|
|
|
|
### Design Inspiration
|
|
- Linear (project management): https://linear.app/
|
|
- Notion (documentation): https://notion.so/
|
|
- Flowchart tools: Lucidchart, Miro, Whimsical
|
|
|
|
### Similar Tools (Competitors/Inspiration)
|
|
- ServiceNow Knowledge Base
|
|
- IT Glue
|
|
- Atlassian Confluence Decision Trees
|
|
- Custom runbook platforms
|
|
|
|
### Learning Resources
|
|
- "Don't Make Me Think" (UX book)
|
|
- "The Mom Test" (customer development)
|
|
- MSP Reddit communities
|
|
- Spiceworks forums
|
|
|
|
---
|
|
|
|
## Contact & Communication
|
|
|
|
**Primary Communication Channel:** [To be decided]
|
|
- Slack?
|
|
- Email?
|
|
- Discord?
|
|
- GitHub Issues?
|
|
|
|
**Preferred Meeting Schedule:** [To be decided]
|
|
- Weekly check-ins?
|
|
- Bi-weekly reviews?
|
|
- Ad-hoc as needed?
|
|
|
|
**Response Time Expectations:**
|
|
- Urgent issues (blocking development): [X hours]
|
|
- Feature feedback: [X days]
|
|
- General questions: [X days]
|
|
|
|
---
|
|
|
|
## Version History
|
|
|
|
| Version | Date | Changes | Author |
|
|
|---------|------|---------|--------|
|
|
| 0.1 | 2026-01-22 | Initial draft | Claude |
|
|
| | | | |
|