spectoflow 0.14.1 → 0.14.2

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spectoflow",
3
- "version": "0.14.1",
3
+ "version": "0.14.2",
4
4
  "description": "Agent-agnostic spec-driven development framework + real-time local control plane. Markdown artifacts, intent router, workflow-by-scope.",
5
5
  "keywords": [
6
6
  "spec-driven-development",
@@ -287,9 +287,15 @@ function renderOverview(){
287
287
  if(!steps.length) strip.append(el('div','empty','No workflow defined.'));
288
288
  box.append(ocard('Workflow at a glance', strip));
289
289
 
290
- // Per-phase progress bars
291
- const rows=s.phases.map(ph=>({label:ph.title,pct:ph.pct,sub:`${ph.done}/${ph.total}`}));
292
- box.append(ocard('Phase progress', bars(rows)));
290
+ // Per-phase progress bars — only phases that actually hold tasks (headings with no checkbox tasks
291
+ // are noise, not phases), and cap the list height with an internal scroll so a big project with
292
+ // dozens of phases can't blow up the overview.
293
+ const phaseRows=s.phases.filter(ph=>ph.total>0).map(ph=>({label:ph.title,pct:ph.pct,sub:`${ph.done}/${ph.total}`}));
294
+ if(phaseRows.length){
295
+ const barsEl=bars(phaseRows);
296
+ if(phaseRows.length>8) barsEl.classList.add('scroll-cap');
297
+ box.append(ocard(`Phase progress (${phaseRows.length})`, barsEl));
298
+ }
293
299
  }
294
300
 
295
301
  function taskMatches(t){
@@ -821,3 +821,6 @@ body.booting .wf-step2 { opacity:0; animation:rise .4s cubic-bezier(.2,.8,.2,1)
821
821
  .mini-btn:hover { color:var(--ink); border-color:var(--cool); }
822
822
  .main:has(.board.is-kanban) #phaseToggleAll { display:none; } /* phases are a List concept */
823
823
  .kanban-col-body { max-height:64vh; overflow-y:auto; } /* keep columns compact on a big project */
824
+
825
+ /* Phase progress: cap the list so a big project (many phases) doesn't dominate the overview */
826
+ .bars-block.scroll-cap { max-height:340px; overflow-y:auto; padding-right:6px; }