Skip to content

s360-reporter: auto-fetch prior report via WorkIQ Graph (AB#3683195), Fixes AB#3683195#445

Open
shahzaibj wants to merge 1 commit into
masterfrom
shjameel-microsoft-s360-auto-fetch-prior-report
Open

s360-reporter: auto-fetch prior report via WorkIQ Graph (AB#3683195), Fixes AB#3683195#445
shahzaibj wants to merge 1 commit into
masterfrom
shjameel-microsoft-s360-auto-fetch-prior-report

Conversation

@shahzaibj

@shahzaibj shahzaibj commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Fixes AB#3683195.

Why

Cesar''s star-5 skill-effectiveness survey for s360-reporter flagged the current Step 0b flow — where the user pastes last week''s report into a VS Code text box — as the top pain point. VS Code silently truncates large HTML pastes, which corrupts the previous-report map and causes items that existed last week to be mislabeled as new in this week''s diff.

What

SKILL.md-only change. Flip Step 0b from paste-first to Graph-fetch-first.

  • New default (Method 1): call the WorkIQ MCP''s Graph passthrough (workiq-fetch, runtime tool identifier mcp_workiq_fetch) with:
    GET /me/messages?$search="S360 Weekly Report"&$select=id,subject,body,sentDateTime,receivedDateTime&$top=5
    
    Filter/sort in code — $search can''t be combined with $filter. Drop messages < 3 days old (current cycle), take the most recent remaining, parse body.content with the existing Step 3a rules. Log a one-liner naming the picked email so the choice is auditable.
  • Fallback tier: workiq-fetch -> mcp_workiq_ask_work_iq NL query -> ask_user paste (last resort). Paste stays available for the offline / Purview-blocked case but is never the default.
  • Step 3a is reframed as parser-only, invoked from Step 0b — no fetch logic there anymore. All AB# / Bug / PBI / URL extraction rules preserved verbatim.
  • Prerequisites: WorkIQ MCP promoted from optional to required for default flow.
  • Edge Cases: added the three-tier fallback policy and the $search/$filter incompatibility note.
  • Sweep: replaced remaining "if the user pasted" references in Step 1e / resolved section with "from the fetched prior report".

No JS/parser code changes — parsing was prose-only and the same rules now serve all three sources.

Verification

Skill-doc change; no build/test. Suggested next-OCE dry run:

  1. Run the skill; confirm no paste prompt appears at the top of the flow.
  2. Confirm the log line prints something like Fetched prior report: "S360 Weekly Report — <date>" (sent ...Z) — parsed N items.
  3. Confirm the diff in Step 5 doesn''t mark previously-tracked items as new.
  4. To exercise the fallback, temporarily disable the WorkIQ MCP in .vscode/mcp.json and re-run — the skill should degrade to ask_work_iq, and finally to the paste prompt.

Open item

The user request names the tool workiq-fetch. The @microsoft/workiq MCP is installed but not connected in this session, so I couldn''t live-probe the exact runtime identifier. SKILL.md documents both the raw name (workiq-fetch) and the likely runtime form (mcp_workiq_fetch) — please reconcile on first live run if the identifier differs.

Co-authored-by: Copilot App 223556219+Copilot@users.noreply.github.com

Replace the copy/paste-first Step 0b with a Graph-fetch-first flow that pulls last week's S360 Weekly Report from the user's mailbox via the WorkIQ MCP's workiq-fetch passthrough (GET /me/messages). Skip messages within the current cycle and pick the most recent remaining email, then parse via the existing Step 3a rules.

VS Code's input box was silently truncating large HTML pastes, which corrupted the new-vs-previously-tracked diff in Step 5 (Cesar's survey feedback).

Fallback tier when Graph is unreachable: workiq-fetch -> mcp_workiq_ask_work_iq natural-language query -> �sk_user paste as last resort. Step 3a is reframed as parser-only (invoked from Step 0b); Prerequisites and Edge Cases updated with $search/$filter incompatibility note.

Fixes AB#3683195

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@shahzaibj shahzaibj requested a review from a team as a code owner July 9, 2026 23:00
@github-actions github-actions Bot changed the title s360-reporter: auto-fetch prior report via WorkIQ Graph (AB#3683195) s360-reporter: auto-fetch prior report via WorkIQ Graph (AB#3683195), Fixes AB#3683195 Jul 9, 2026
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

✅ Work item link check complete. Description contains link AB#3683195 to an Azure Boards work item.

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.

1 participant