orchestrix-yuri 4.7.5 → 4.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -705,17 +705,26 @@ class PhaseOrchestrator {
|
|
|
705
705
|
|
|
706
706
|
if (output && output !== 'NO_STORIES_DIR') {
|
|
707
707
|
for (const line of output.split('\n')) {
|
|
708
|
-
|
|
709
|
-
const
|
|
710
|
-
|
|
711
|
-
|
|
708
|
+
if (!line.includes(':')) continue;
|
|
709
|
+
const colonIdx = line.indexOf(':');
|
|
710
|
+
const key = line.slice(0, colonIdx);
|
|
711
|
+
const value = line.slice(colonIdx + 1);
|
|
712
|
+
|
|
713
|
+
if (key === 'Total') {
|
|
714
|
+
result.totalStories = parseInt(value, 10) || 0;
|
|
715
|
+
} else if (key === 'Epics') {
|
|
716
|
+
result.totalEpics = parseInt(value, 10) || 0;
|
|
712
717
|
} else if (key === 'CurrentEpic') {
|
|
713
|
-
result.currentEpic =
|
|
714
|
-
} else if (key
|
|
715
|
-
result.
|
|
716
|
-
|
|
717
|
-
|
|
718
|
+
result.currentEpic = parseInt(value, 10) || 0;
|
|
719
|
+
} else if (key === 'CurrentStory') {
|
|
720
|
+
if (!result.currentStory) result.currentStory = value;
|
|
721
|
+
} else if (key.startsWith('Status')) {
|
|
722
|
+
// Per-file status: StatusDone:1.1-name → count as 'Done'
|
|
723
|
+
const statusName = key.slice(6); // strip 'Status' prefix
|
|
724
|
+
result.byStatus[statusName] = (result.byStatus[statusName] || 0) + 1;
|
|
725
|
+
if (statusName === 'Done') result.doneStories++;
|
|
718
726
|
}
|
|
727
|
+
// 'Created' is metadata — skip (Total is the authoritative count)
|
|
719
728
|
}
|
|
720
729
|
}
|
|
721
730
|
} catch { /* fallback to phase3.yaml */ }
|
|
@@ -798,7 +807,8 @@ class PhaseOrchestrator {
|
|
|
798
807
|
if (statusEntries.length > 0) {
|
|
799
808
|
const statusIcons = {
|
|
800
809
|
Done: '✅', InProgress: '🔄', Review: '👀', Blocked: '🚫',
|
|
801
|
-
Approved: '
|
|
810
|
+
Approved: '📋', Draft: '📝', NoStatus: '❓',
|
|
811
|
+
AwaitingArchReview: '🏛️', RequiresRevision: '🔧', Escalated: '⚠️',
|
|
802
812
|
};
|
|
803
813
|
for (const [status, count] of statusEntries) {
|
|
804
814
|
lines.push(`${statusIcons[status] || '·'} ${status}: ${count}`);
|