@yemi33/minions 0.1.353 → 0.1.355

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/CHANGELOG.md CHANGED
@@ -1,8 +1,10 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.353 (2026-04-06)
3
+ ## 0.1.355 (2026-04-06)
4
4
 
5
5
  ### Fixes
6
+ - pipeline plan stage includes only meeting conclusion, not full transcript
7
+ - pipeline plans include full meeting content, conclusion playbook requires concrete details
6
8
  - pipeline template regex now matches hyphenated stage IDs
7
9
  - pipeline Continue button shows immediate feedback
8
10
  - skip meeting modal re-render when data unchanged
@@ -221,11 +221,29 @@ function executePlanStage(stage, stageState, run, config) {
221
221
  content += `**Created by:** Pipeline ${run.pipelineId}\n`;
222
222
  content += `**Date:** ${dateStamp()}\n\n---\n\n`;
223
223
 
224
- // Include output from dependency stages
224
+ // Include output from dependency stages (for meetings, include full transcript)
225
225
  if (stage.dependsOn) {
226
226
  for (const depId of stage.dependsOn) {
227
227
  const depStage = run.stages[depId];
228
- if (depStage?.output) {
228
+ if (!depStage) continue;
229
+
230
+ // If dependency is a meeting, include the conclusion (which should be concrete and actionable)
231
+ const meetingId = depStage.artifacts?.meetings?.[0];
232
+ if (meetingId) {
233
+ try {
234
+ const mtgPath = path.join(__dirname, '..', 'meetings', meetingId + '.json');
235
+ const mtg = safeJson(mtgPath);
236
+ if (mtg) {
237
+ const conclusion = typeof mtg.conclusion === 'string' ? mtg.conclusion : mtg.conclusion?.content || '';
238
+ if (conclusion) {
239
+ content += `## Meeting Conclusion: ${mtg.title || depId}\n\n${conclusion}\n\n`;
240
+ continue;
241
+ }
242
+ }
243
+ } catch { /* fall through to output-only */ }
244
+ }
245
+
246
+ if (depStage.output) {
229
247
  content += `## From: ${depId}\n\n${depStage.output}\n\n`;
230
248
  }
231
249
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.353",
3
+ "version": "0.1.355",
4
4
  "description": "Multi-agent AI dev team that runs from ~/.minions/ — five autonomous agents share a single engine, dashboard, and knowledge base",
5
5
  "bin": {
6
6
  "minions": "bin/minions.js"
@@ -24,14 +24,19 @@ You are {{agent_name}} ({{agent_role}}), synthesizing the team meeting results.
24
24
 
25
25
  ## Your Task
26
26
 
27
- Write a clear meeting conclusion covering:
27
+ Write a clear, **self-contained** meeting conclusion. Someone reading ONLY this conclusion (not the findings or debate) must understand exactly what was decided and what to do next.
28
28
 
29
- 1. **Areas of consensus** — what does the team agree on?
30
- 2. **Unresolved disagreements** where do positions still differ?
31
- 3. **Recommended decision** what should we do?
32
- 4. **Action items** — specific next steps with owners (leave empty if none)
33
- 5. **Open questions** — what still needs human input?
29
+ 1. **Top priorities** — numbered list of the specific items the team agreed to work on. For each:
30
+ - What the problem is (concrete: file names, function names, error messages)
31
+ - What the fix should be (concrete: "change X to Y", "add guard in Z")
32
+ - Estimated complexity (small/medium/large)
34
33
 
35
- Be decisive. If there's a clear best option, say so.
34
+ 2. **Deferred items** what was discussed but explicitly deprioritized, and why
35
+
36
+ 3. **Unresolved disagreements** — where positions still differ (if any)
37
+
38
+ 4. **Open questions for human** — what needs human input before proceeding (if any)
39
+
40
+ **Be concrete, not vague.** Do NOT write "fix 3 bugs" — write which 3 bugs, in which files, with what fix. The conclusion is used as input to create an implementation plan, so it must contain enough detail to act on without re-reading the entire meeting.
36
41
 
37
42
  Do NOT create plan files — plan creation is handled separately (by the pipeline plan stage or the dashboard "Create Plan" button).