@mmerterden/multi-agent-pipeline 12.1.0 → 12.1.1

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
@@ -14,6 +14,13 @@ Internal file-layout changes that don't affect the slash-command surface are sti
14
14
 
15
15
  ---
16
16
 
17
+ ## [12.1.1] - 2026-07-21
18
+
19
+ ### Changed
20
+ - **Channel outputs no longer carry decorative/emotive emoji or smileys.** Jira/issue comments, Confluence & Wiki pages, and PR bodies are plain technical prose. Added an explicit no-emoji hard-rule to each channel template (`multi-agent-refs/channels/{jira,issue-comment,confluence,wiki}.md`) and an emoji-stripping pattern to the humanizer (`shared/external/humanizer`). Functional status/severity marks a fixed template defines (`✅/⏳` phase ticks, `🔴/🟡` severity labels) are unaffected.
21
+
22
+ ---
23
+
17
24
  ## [12.1.0] - 2026-07-21
18
25
 
19
26
  ### Security
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmerterden/multi-agent-pipeline",
3
- "version": "12.1.0",
3
+ "version": "12.1.1",
4
4
  "description": "8-phase AI development pipeline with full orchestration on Claude Code and Copilot CLI. Analysis, planning, TDD, CLI-aware parallel review with consensus surfacing + Fable triage, default-FAIL evidence gates, secret + intent guards, per-phase cost ledger, persistent learnings memory, wiki generation, commit automation. Token-preserving uninstall.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -149,5 +149,6 @@ Successful POST → URL prepended to `prefs.projects[<project>].confluenceUrls`
149
149
  - Section order is fixed: `overview` → `flow` (cond.) → `technical_details` → `api_contracts` (cond.) → `references` (cond.). Conditional sections may be omitted but never reordered.
150
150
  - Humanizer pass runs **after** body assembly and **before** storage-XML conversion. Tone: formal, stakeholder-readable. No "we are excited", no first-person plural.
151
151
  - Body content language follows `prefs.global.outputLanguage`. Code identifiers, API paths, file paths, type names, JSON keys, and the storage-XML markup stay verbatim. The template (this doc) is English because `promptLanguage="en"` is locked.
152
+ - No decorative/emotive emoji or smileys (😊 🙂 🎉 👍 🚀 ✨) anywhere in the page body. Stakeholder-readable technical prose only.
152
153
  - Adapter failures are non-blocking. 401 / network timeout / parent-not-found → `failed` status, loop continues.
153
154
  - If `--dry-run`, print the assembled storage XML to stdout and return without POST.
@@ -85,6 +85,7 @@ Ref: #<issueNumber>
85
85
 
86
86
  - No "Co-Authored-By: Claude" trailer. No "🤖 Generated with ..." footer. No mention of Claude / Copilot / AI / model names anywhere in the body.
87
87
  - No em-dashes (` - `) in prose. Use ` · ` or `→` per `feedback_no_em_dash.md`.
88
+ - No decorative/emotive emoji or smileys (😊 🙂 🎉 👍 🚀 ✨) in the body prose. Only a fixed-template functional mark (e.g. a `✅/⏳` scope tick) is allowed; free text carries none.
88
89
  - No HTML entities. Use raw markdown.
89
90
  - No links to internal `/tmp/*` or local-machine paths.
90
91
  - No screenshots embedded as base64 - link to wiki / Figma instead.
@@ -124,5 +124,6 @@ When the **Wiki** adapter writes pages on the same run AND `prefs.global.wikiToJ
124
124
  - UTF-8 in, UTF-8 out - the body file is UTF-8 and `--data-binary` ships its bytes verbatim. Never round-trip the body through `unicode_escape`, `latin-1`, or any re-encode step, and never hand-roll a Python/curl helper that re-decodes it: that mangles Turkish chars (ç ş ı ö ü ğ) into mojibake (`Çözüm` → `Ãözüm`). Use the `jq --rawfile` + `--data-binary @file` path above as-is. Same rule for the PR / Confluence / Wiki adapters.
125
125
  - Section order is fixed: `summary` → `test_scenarios` → `context_refs`. Never insert sections between them; never reorder.
126
126
  - Humanizer pass runs **after** body assembly and **before** wiki-markup conversion. Tone target: informal but technical. No marketing voice, no "we are excited", no "I have...".
127
+ - **No decorative/emotive emoji or smileys** (😊 🙂 🎉 👍 🚀 ✨) anywhere in the comment body. The comment is plain technical prose; emoji do not belong in it.
127
128
  - Body content language follows `prefs.global.outputLanguage`. Code identifiers, file paths, type names, branch names, and the wiki-markup syntax stay verbatim. The `promptLanguage="en"` lock means any LLM prompt that produces the body is in English; the body itself is then rendered in the user's language.
128
129
  - Adapter failures are non-blocking - a missing token or 401 returns `skipped`/`failed`, the loop keeps going for PR / Confluence / Wiki.
@@ -63,4 +63,5 @@ Adapter implementation chooses the right git push target + commit message format
63
63
  - Per the `figma-pipeline.md` rules, every component wiki page must include a variant matrix, accessibility identifiers, analytics events, and 3-layer test summary.
64
64
  - Screenshots cover light/dark + LTR/RTL - wiki adapter refuses to commit if any quadrant is missing.
65
65
  - Body content language follows `prefs.global.outputLanguage`. Code identifiers, file paths, type names, design token names, and wiki markup stay verbatim across languages. The template (this doc) is English because `promptLanguage="en"` is locked.
66
+ - No decorative/emotive emoji or smileys (😊 🙂 🎉 👍 🚀 ✨) in the page prose. Only functional/structural marks a fixed template defines are allowed.
66
67
  - Autopilot always pauses at the channels menu (per `phase-7-report.md` autopilot contract) - even in autopilot mode the user gets to confirm wiki scope.
@@ -32,6 +32,17 @@ AI inflates importance. Cut it.
32
32
  | Vague authority | "Experts believe", "Industry observers note" | Name the source or remove |
33
33
  | Formulaic challenges | "Despite challenges... continues to thrive" | State specific challenges |
34
34
 
35
+ ### Emoji & Decorative Marks
36
+
37
+ AI sprinkles friendly/emotive emoji into prose. Strip them.
38
+
39
+ | Pattern | Example | Fix |
40
+ |---------|---------|-----|
41
+ | Emotive / smiley emoji | "Done 🎉", "Hi there 🙂", "😊", "👍 looks good" | Remove the emoji, keep the words |
42
+ | Emoji as decoration/bullet | "✨ Feature:", "🚀 Shipped", "🔥 Fast" | Plain text |
43
+
44
+ Keep ONLY functional status/severity marks that a fixed template explicitly defines (e.g. a `✅/⏳` phase-tick strip, `🔴/🟡` severity labels). Everywhere else in prose — issue/Jira comments, Confluence/Wiki pages, PR bodies, commit messages — carry **no** emoji.
45
+
35
46
  ### AI Vocabulary
36
47
 
37
48
  These words appear far more in AI output than human writing. Replace or remove them.