Skip to content

feat: Add root-cause-analysis skill - #252

Open
Nayananshu Garai (N-Garai) wants to merge 2 commits into
microsoft:mainfrom
N-Garai:add-skill/root-cause-analysis
Open

feat: Add root-cause-analysis skill#252
Nayananshu Garai (N-Garai) wants to merge 2 commits into
microsoft:mainfrom
N-Garai:add-skill/root-cause-analysis

Conversation

@N-Garai

Copy link
Copy Markdown
Contributor

Adds a new root-cause-analysis skill that guides agents through structured problem diagnosis using 5 Whys, Fishbone diagrams, and contributing factor analysis. Fills a gap in the gallery — no existing skill targets root cause identification for incidents, defects, or post-mortems.

Files added

submissions/root-cause-analysis/
├── metadata.json
├── SKILL.md
├── README.md
├── references/rca-methods.md
└── assets/fishbone-template.html
src/content/skills/root-cause-analysis.md
src/content/guides/root-cause-analysis.md
public/bundles/root-cause-analysis.zip

Validation

  • npm run check:submissions — 78/78 pass
  • npm run import:submissions — generates skill, guide, and bundle
  • npm run build — 330 pages built successfully

Copilot AI lite review requested due to automatic review settings August 4, 2026 06:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new root-cause-analysis submission to the skills gallery, providing a structured, repeatable approach to root cause identification (5 Whys, Fishbone, contributing factors) and generating the corresponding published content and bundle artifacts.

Changes:

  • Added submissions/root-cause-analysis/ with SKILL.md, metadata.json, a human-facing README.md, and bundled references/ + assets/ materials.
  • Generated the published skill page (src/content/skills/root-cause-analysis.md), guide (src/content/guides/root-cause-analysis.md), and downloadable bundle (public/bundles/root-cause-analysis.zip).

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
submissions/root-cause-analysis/SKILL.md New agent-facing RCA playbook and invocation description.
submissions/root-cause-analysis/references/rca-methods.md Added deeper technique reference material (5 Whys, Fishbone, output format).
submissions/root-cause-analysis/README.md Added human-facing overview content for the gallery detail page.
submissions/root-cause-analysis/metadata.json Added gallery metadata (name/description/platforms/tags/author/version/dates).
submissions/root-cause-analysis/assets/fishbone-template.html Added a bundled Fishbone template intended for fill-in use.
src/content/skills/root-cause-analysis.md Generated published skill page for the gallery (CI-owned output).
src/content/guides/root-cause-analysis.md Generated human-facing guide content (CI-owned output).

Comment on lines +10 to +11
## Instructions

Comment on lines +29 to +45
<div class="problem">PROBLEM STATEMENT</div>

<div class="diagram">
<div class="spine"></div>
<div class="head"></div>

<div class="category c1 cat-top"><div class="label">People</div><div class="causes" contenteditable="true">skills, training, staffing</div></div>
<div class="category c2 cat-top"><div class="label">Process</div><div class="causes" contenteditable="true">steps, policies, approvals</div></div>
<div class="category c3 cat-top"><div class="label">Technology</div><div class="causes" contenteditable="true">tools, infra, config</div></div>
<div class="category c4 cat-bottom"><div class="label">Data</div><div class="causes" contenteditable="true">quality, completeness</div></div>
<div class="category c5 cat-bottom"><div class="label">Environment</div><div class="causes" contenteditable="true">external conditions</div></div>
<div class="category c6 cat-bottom"><div class="label">Management</div><div class="causes" contenteditable="true">priorities, resources</div></div>
</div>

<div class="notes">
<label><strong>Notes / Evidence:</strong></label><br>
<textarea placeholder="Add supporting facts, timestamps, logs, or observations for each category..."></textarea>
@N-Garai

Copy link
Copy Markdown
Contributor Author

@microsoft-github-policy-service agree

@adrianatruji

Copy link
Copy Markdown
Collaborator

Thanks for this, Nayananshu Garai (@N-Garai) , like this methodology and the People/Process/Tech/Others framing. A few things to fix before merge after testing in Copilot Studio:

  1. The SKILL.md doesn't reference its assets. It describes building a Fishbone but does not point to assets/fishbone-template.html or references/rca-methods.md. Consequence is the agent skips the diagram unless asked (generates a table), and when asked it tries to build one from scratch (matplotlib) instead of using the template, unless being explicit. Just name the files in the SKILL.md in the steps where you need them.

  2. The template layout has rendering problems. In our test the spine line runs straight through the category text (Environment / Management / People), making it unreadable, and the categories aren't connected to the spine by any branches, they float above and below it. The six categories also end up lopsided (three top-left, three bottom-right) with a lot of empty space. Worth reworking so the labels sit clear of the spine and attach to it.

image
  1. A few extra files can be dropped. public/bundles/*.zip and src/content/** are generated automatically, submissions are just the submissions/root-cause-analysis/ folder, so you can just keep those!

Nice idea, mostly just wiring the pieces together. Thanks again!

Copilot AI review requested due to automatic review settings August 7, 2026 13:23
@N-Garai
Nayananshu Garai (N-Garai) force-pushed the add-skill/root-cause-analysis branch from e4610bf to d1b15e1 Compare August 7, 2026 13:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

Suppressed comments (1)

submissions/root-cause-analysis/assets/fishbone-template.html:29

  • The fishbone template makes the category branches editable, but the central problem statement is not editable. That forces users/agents to modify raw HTML to set the actual problem, which undermines the template’s intended use as a fill-in diagram.
  <div class="problem">PROBLEM STATEMENT</div>

Copilot AI review requested due to automatic review settings August 7, 2026 13:41
@N-Garai
Nayananshu Garai (N-Garai) force-pushed the add-skill/root-cause-analysis branch from d1b15e1 to 5398d69 Compare August 7, 2026 13:41

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

@N-Garai
Nayananshu Garai (N-Garai) force-pushed the add-skill/root-cause-analysis branch from 5398d69 to 4e8b0b3 Compare August 7, 2026 13:52
Copilot AI review requested due to automatic review settings August 7, 2026 13:52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

Suppressed comments (1)

submissions/root-cause-analysis/SKILL.md:34

  • The Fishbone step is internally contradictory: it says to open and modify assets/fishbone-template.html and present the completed diagram, but also says “Do NOT generate code” and “Use the template as-is.” Since producing a filled-in HTML template necessarily involves emitting/returning HTML, the current wording may cause the agent to refuse or produce inconsistent output. Reword this to forbid creating a new diagram from scratch while explicitly allowing editing and outputting the provided HTML template (and optionally instructing the user to save/open it).
   - Use `assets/fishbone-template.html` to structure the diagram. Open the template, replace the placeholder text in each category branch with the contributing factors identified above, and present the completed diagram.
   - Do NOT generate code, plots, or matplotlib output. Do NOT build the diagram from scratch. Use the template as-is.

Copilot AI review requested due to automatic review settings August 7, 2026 13:58
@N-Garai
Nayananshu Garai (N-Garai) force-pushed the add-skill/root-cause-analysis branch from 4e8b0b3 to 27fdabf Compare August 7, 2026 13:58

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings August 7, 2026 14:09
@N-Garai
Nayananshu Garai (N-Garai) force-pushed the add-skill/root-cause-analysis branch from 27fdabf to 9066ad7 Compare August 7, 2026 14:09

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

@N-Garai

Copy link
Copy Markdown
Contributor Author

Adriana Trujillo (@adrianatruji) thanks for your suggestions.
Here's the fixes that addresses all three feedback points:

  1. SKILL.md now references both assets and prevents matplotlib — Step 3 loads references/rca-methods.md for complex problems; Step 4 uses assets/fishbone-template.html and explicitly instructs the agent to return the filled-in HTML. Added guardrails: "Do NOT build a new diagram from scratch. Do NOT generate matplotlib, code-generated plots, or any output that is not based on the provided template. Editing and returning the provided HTML template is the correct output."

  2. Fixed template layout — Categories moved clear of the spine (top: 40px / 310px vs spine at 210px), six .bone branches connect each category to the spine, and categories are now symmetrically balanced across the diagram (10%/30%/50% for both rows). Also made the central problem statement editable (contenteditable="true") so the template is fully fill-in without touching raw HTML.

  3. Dropped generated files — commit now contains only the 5 source files under submissions/root-cause-analysis/; no public/bundles/, src/content/skills/, or src/content/guides/.

Branch synced to latest upstream/main. All checks pass.

@adrianatruji

Copy link
Copy Markdown
Collaborator

Thanks Nayananshu Garai (@N-Garai) !
Tested the updated skill in Copilot Studio with a sample incident, and the fishbone still struggles to render in a readable way once actual RCA text goes in (full-length factors overlap each other, the spine, and the notes box).

The issue relies on the layout itself: fixed absolute positions + fixed box sizes can't grow with content. I would suggest re-designing the template (which of course you can do with your preferred AI agent) and account for:
A) Long text: cards must auto-size and wrap; no fixed height/width, and set min-width:0 so grid/flex cells don't overflow.
B) Keep text off the spine: make the spine its own row/element, not a line content can grow across.
C) Use all six categories evenly (3 top / 3 bottom), not three crammed left with an empty right half.
D) Test it a few different examples, to validate over different text lengths, etc.
E) If you want to keep the "fish stupe" angled ribs, maybe try to draw them in SVG (scales), not fixed rotated divs.

Happy to review your updates! Thanks again

@N-Garai

Nayananshu Garai (N-Garai) commented Aug 17, 2026

Copy link
Copy Markdown
Contributor Author

Thanks for the suggestion!
I will work on it.

Copilot AI review requested due to automatic review settings August 17, 2026 04:18

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI review requested due to automatic review settings August 17, 2026 04:40

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Addresses maintainer feedback:
- Auto-sizing flex cards with min-width:0 and word-wrap
- Spine as its own row, not crossed by content
- Even 3-top / 3-bottom category layout
- SVG bones drawn from rendered positions, redraw on resize/input
- Fixed infinite loop bug from MutationObserver clearing SVG overlay
- Fixed right-side category bone connections using closest edge to spine center
Copilot AI review requested due to automatic review settings August 17, 2026 05:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants