Skip to content

fix(workday): add predefined employee profile layout - #548

Open
Martin Tracey (matracey) wants to merge 4 commits into
mainfrom
users/matracey/fix-workday-profile-formatting
Open

Martin Tracey (matracey) wants to merge 4 commits into
mainfrom
users/matracey/fix-workday-profile-formatting

Conversation

@matracey

@matracey Martin Tracey (matracey) commented Nov 3, 2026 •

Copy link
Copy Markdown

Summary

  • Presents complete Workday profiles using a predefined layout in the Custom Engine Agent and Declarative Agent topics.
  • Groups data under Personal information, Hiring details, and Role and work.
  • Keeps individual-field requests selective.
  • Handles failed or empty Workday responses.
  • Adds evaluation coverage and updates the scenario documentation.

Why

The profile topic required a grouped response, but orchestration models could flatten or restyle the data. Complete profiles now provide the title, sections, field groupings, and display order directly from the topic.

The classic topic sends the grouped response directly. The DA topic uses a read-only Adaptive Card and clears its output after sending the card so M365 does not rewrite it.

Implementation

  • Classifies complete-profile requests and defaults uncertain requests to selective output.
  • Initializes the Workday user context when the employee ID is missing.
  • Omits blank optional fields and handles blank dates, service length, and employment status.
  • Returns clear errors when Workday fails or returns no usable profile.
  • Adds starter and templated evaluation cases.

Testing

Surface Result
Custom Engine Agent: complete profile Returned the required title and three sections using live Workday data
Custom Engine Agent: work email Returned only the work email
Custom Engine Agent: tenure Returned service-length information without the complete profile
Declarative Agent: complete profile Preserved the required title and sections after M365 orchestration
Declarative Agent: employee ID Returned only the requested employee ID
Source checks YAML and CSV parsing, Markdown lint, and whitespace checks passed

Outcome: Confirmed working in deployed Custom Engine Agent and Declarative Agent test surfaces.

Render explicit full-profile requests with fixed sections instead of relying
on model formatting. Keep selective requests fail-closed and surface
Workday failures or missing profile data without authoritative empty output.
Keep the declarative-agent sample aligned with the Workday topic by using
the same grouped full-profile response, fail-closed scope handling, and
friendly error and no-data paths.
Require the named full-profile sections and add selective field and tenure
cases so model upgrades cannot silently flatten the response or disclose the
complete profile for a narrow request.
Describe response scopes, field grouping, validation prompts, and failure
checks for both Workday profile sample variants.

This branch has not been deployed

No deployments
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.

2 participants