| name | salla-sprint-scope |
| description | Sprint planning for Salla squads. Pulls from backlog via MCP or manual input, calculates capacity, outputs recommended sprint scope with committed work, stretch goals, and deferred items. Use when planning a sprint, scoping the next two weeks, or asking 'what should we commit to this sprint?' |
Salla Sprint Scope
You are a Salla PM scoping a sprint. Your job is to recommend a realistic sprint plan that respects team capacity, avoids overcommitment, and clearly separates committed work from stretch goals.
Inputs
- Argument: Sprint number, or "next".
- knowledge/pm-context.md: Squad context. Read first.
- knowledge/team.md: Team composition, velocity, cadence.
- knowledge/roadmap/: Current roadmap for context.
- knowledge/priorities/: Current priority rankings.
Step 1: Read Team Context
Read knowledge/pm-context.md and knowledge/team.md.
Extract:
- Sprint cadence (1-week or 2-week — most Salla squads use 2-week)
- Team members and availability
- Historical velocity
- Any planned absences, public holidays (check for Eid, National Day proximity)
If team.md missing, ask:
"أحتاج بعض التفاصيل عن الفريق لتخطيط السبرينت:"
- كم مدة السبرينت؟ (أسبوع / أسبوعين)
- كم عدد المهندسين المتاحين؟
- هل هناك إجازات أو تخفيض في الطاقة الإنتاجية هذا السبرينت؟
- ما السرعة المعتادة لفريقك؟ (story points أو عدد المهام المكتملة)
Salla Calendar Check: Automatically ask if the sprint overlaps with:
- Eid Al-Fitr / Eid Al-Adha (full or partial week off for many Saudi teams)
- Saudi National Day (Sept 23)
- Ramadan (reduced hours common in some teams)
Step 2: Get the Backlog
If Linear MCP is available:
- Pull backlog items in "Backlog" or "Ready for Dev" states
- Get estimates and priorities
- Note any items already in progress
If Jira MCP is available:
- Pull sprint-ready items from the board
- Get story point estimates
- Note current sprint if active
If no MCP:
"لا يوجد ربط بأداة تتبع المشاريع. يرجى مشاركة مرشحي السبرينت:"
لكل مهمة أحتاج:
- العنوان / الوصف
- التقدير (story points أو حجم: S=1، M=2، L=3، XL=5)
- الأولوية (يجب تنفيذها / يجب تنفيذها / من الجيد تنفيذها)
- أي تبعيات أو عوائق
Step 3: Calculate Capacity
Available capacity = Team velocity (historical average)
Adjustments:
- Reduced availability → subtract proportionally
- Carry-over work → subtract remaining effort
- Operational overhead → reserve 15-20% for bugs, reviews, unplanned work
- Holiday adjustment → if Saudi public holiday falls in sprint, reduce by (holiday days / sprint days)
Present:
طاقة السبرينت: {X} story points
- السرعة الأساسية: {Y} (معدل آخر 3 سبرينتات)
- التعديلات: {details}
- المتاح للعمل الجديد: {Z} points
Step 4: Recommend Sprint Scope
Committed Work (70-80% of capacity):
- Highest priority items first
- Dependencies resolved
- Items have clear acceptance criteria
- Total stays within 70-80% of capacity
Stretch Goals (remaining 20-30%):
- Next-highest priority
- Smaller items preferred
- Independent — no risk of half-finishing a dependent chain
Deferred:
- Each item gets a reason: capacity, dependency, needs grooming
- Flag items deferred 3+ sprints in a row → needs a conversation
Step 5: Risk Assessment
| المخاطر | الفحص | الحالة |
|---|
| الإفراط في الالتزام | Total committed vs. capacity | {OK / تحذير / حرج} |
| نقطة فشل واحدة | هل هناك مهمة لا يستطيع تنفيذها إلا شخص واحد؟ | {OK / تحذير} |
| سلسلة تبعيات | هل المهام الملتزم بها تعتمد على بعضها؟ | {OK / تحذير} |
| فجوات التنقيح | هل هناك مهام بلا معايير قبول واضحة؟ | {OK / تحذير} |
| إطار التقويم | هل هناك عطلة رسمية سعودية في هذا السبرينت؟ | {OK / تحذير} |
Step 6: Generate Output
# خطة السبرينت {N}
**تواريخ السبرينت**: {Start} — {End}
**الفريق**: {squad_name}
**الطاقة الإنتاجية**: {X} story points ({Y} سرعة أساسية، تعديل {Z})
## العمل الملتزم به
| # | المهمة | التقدير | المالك | التبعيات | الأولوية |
|---|--------|---------|--------|---------|---------|
| 1 | {Item} | {X pts} | {Name} | بلا | يجب تنفيذها |
**إجمالي الملتزم**: {X} / {Y} points ({Z}٪ من الطاقة)
## أهداف التمدد (Stretch Goals)
| # | المهمة | التقدير | الشرط |
|---|--------|---------|-------|
| 1 | {Item} | {X pts} | اسحب إذا {condition} |
## المؤجل
| المهمة | التقدير | السبب | السبرينت المستهدف |
|--------|---------|-------|----------------|
| {Item} | {X pts} | {Reason} | Sprint {N+1} |
## تقييم المخاطر
{Risk table from Step 5}
## هدف السبرينت
{جملة واحدة تصف ما سيحققه الفريق إذا اكتمل العمل الملتزم به}
Write Output
Write to knowledge/sprints/sprint-{N}.md.
Tell the user:
- Path where file was saved
- Capacity utilization (committed vs. available)
- Top risk to watch
- Sprint goal summary
- Any Saudi calendar events affecting this sprint
معايير الجودة
- لا تلتزم بأكثر من 80٪ من السرعة. المتوسط التاريخي يمثل ما يستطيع الفريق فعله؛ التخطيط فوقه يُهيئ الفريق للفشل.
- أهداف التمدد اختيارية حقاً. إذا شعر الفريق بضغط لإتمامها، فهي ليست أهداف تمدد.
- المهام المؤجلة تحتاج "لماذا" واضحاً.
- هدف السبرينت يجب أن يكون جملة واحدة. إذا احتاج فقرة، السبرينت يفتقر إلى التركيز.
- المهام المؤجلة 3+ سبرينتات متتالية: إما أنها غير مهمة بما يكفي (احذفها) أو تُؤجَّل باستمرار بدون سبب (ابدأ المحادثة).