🛠️ Agent Tool-Selection Evaluation Report

Verifies the HrAgent picks the correct Workday tool per request — Generated 2026-05-30 18:36:48

Cases
35
Passed
35/35
Pass Rate
100%
Avg Duration
2024ms

inbox-tasks

What are my pending Workday inbox tasks?
PASS
getPendingInboxTasks getPendingInboxTasks
getPendingInboxTasks [executed]
{}

Pending inbox tasks → getPendingInboxTasks

You currently have no pending Workday inbox tasks. If you need help with anything else, just let me know!

employment-letter

Can you generate an employment verification letter for me?
PASS
generateEmploymentVerificationLetter generateEmploymentVerificationLetter
generateEmploymentVerificationLetter [executed]
{}

Employment verification letter → generateEmploymentVerificationLetter

Your employment verification letter has been generated. It includes your name, designation as Software Engineer, and the company name A.P. Moller - Maersk. If you need the letter sent to you or have any other requests, please let me know!

leave-balance

How many leaves do I have left?
PASS
getLeaveBalance getPersonInfo getLeaveBalance
getPersonInfo [executed]
{}
getLeaveBalance [executed]
{}

Leave balance → getLeaveBalance

You have 20 days of Annual Leave available, with all 20 days remaining unused. If you want to know about other types of leave or need help applying for leave, just let me know!

applied-leaves

Show me my leave history and the status of my requests.
PASS
getAppliedLeaves getAppliedLeaves
getAppliedLeaves [executed]
{}

Leave history/status → getAppliedLeaves

You currently have no leave requests in your leave history, and there are no pending, approved, or rejected leave requests at this time. If you need to apply for leave or have any other questions, feel free to ask!

eligible-leave-types

What types of leave am I allowed to take?
PASS
getEligibleLeaveTypes getEligibleLeaveTypes
getEligibleLeaveTypes [executed]
{}

Leave types available → getEligibleLeaveTypes

You are eligible to take the following type of leave: - Annual Leave (measured in Days) under the Vacation Leave category. No reason is required to take this leave. If you want to know more or apply for leave, just let me know!

apply-leave

I want to apply for leave next Monday.
PASS
applyForLeave getEligibleLeaveTypes applyForLeave
getEligibleLeaveTypes [executed]
{}
applyForLeave [stream]
{"leaveType":"Annual Leave","startDate":"2026-06-01"}

Apply for leave → applyForLeave (deferred)

contact-details

Show me my contact details.
PASS
getPersonInfo getPersonInfo
getPersonInfo [executed]
{}

Contact details → getPersonInfo

I have displayed your contact details including emails, phone numbers, and addresses. If you need to update or see specific information, please let me know!

person-profile

What is my Workday profile information?
PASS
getPersonInfo getPersonInfo
getPersonInfo [executed]
{}

Profile info → getPersonInfo

I have displayed your Workday profile information. You can see your contact details, names, and other profile data in the interface now. If you want me to show it again or need specific details, just let me know!

employee-id

What is my employee ID?
PASS
getPersonInfo getPersonInfo
getPersonInfo [executed]
{}

Employee ID → getPersonInfo

Your employee ID (Maersk ID) is MUID-0001. If you need any other information, feel free to ask!

update-email-specific

Update my home email to john.doe@example.com
PASS
initContactChange initContactChange showContactForm
initContactChange [executed]
{"requestedChanges":"[{\"contactType\":\"email\",\"operation\":\"update\",\"entryId\":null,\"fields\":{\"emailAddress\":\"john.doe@example.com\"},\"primary\":true}]","changeId":""}
showContactForm [stream]
{"changeId":"change-123","contactTypes":"email"}

Specific home email update → initContactChange (then showContactForm)

update-phone-specific

Add a new home phone number +45 71539651
PASS
initContactChange initContactChange showContactForm
initContactChange [executed]
{"requestedChanges":"[{\"contactType\":\"phone\",\"operation\":\"add\",\"entryId\":null,\"fields\":{\"completePhoneNumber\":\"+45 71539651\"},\"primary\":false}]","changeId":""}
showContactForm [stream]
{"changeId":"change-123","contactTypes":"phone"}

Specific home phone add → initContactChange

update-contact-generic

I want to update my contact information.
PASS
initContactChange initContactChange showContactForm
initContactChange [executed]
{"requestedChanges":"[]","changeId":""}
showContactForm [stream]
{"changeId":"change-123","contactTypes":""}

Generic contact update → initContactChange with empty changes

organization-company

What company do I belong to?
PASS
getWorkerOrganizations getWorkerOrganizations
getWorkerOrganizations [executed]
{"organizationType":"Company"}

Company membership → getWorkerOrganizations

I checked your company organization details, but it seems there is no company information available for you in Workday at the moment. If you believe this is an error, you may want to contact your HR team for assistance.

organization-cost-center

Which cost center am I in?
PASS
getWorkerOrganizations getWorkerOrganizations
getWorkerOrganizations [executed]
{"organizationType":"Cost Center"}

Cost center → getWorkerOrganizations

I checked your Workday profile, but it seems there is no cost center information available for you at the moment. If you believe this is an error, you may want to contact your HR team for assistance.

help-cases-all

Show me my open HR help cases.
PASS
getHelpCases getHelpCases
getHelpCases [executed]
{}

Open help cases → getHelpCases

You currently have no open HR help cases. If you need assistance with anything else, feel free to ask!

help-cases-specific

What is the status of case CASE503248?
PASS
getHelpCases getHelpCases
getHelpCases [executed]
{"caseId":"CASE503248"}

Specific case → getHelpCases

I could not find any case with the ID CASE503248. Please double-check the case ID and let me know if you want me to search again or if you need help with anything else.

direct-reports

Show me my direct reports.
PASS
getDirectReports getDirectReports
getDirectReports [executed]
{}

Direct reports → getDirectReports

You are currently a manager but you do not have any direct reports at the moment. If you need help with anything else, just let me know!

team-leaves

Who on my team is on leave soon?
PASS
getTeamUpcomingLeaves getTeamUpcomingLeaves
getTeamUpcomingLeaves [executed]
{}

Team upcoming leaves → getTeamUpcomingLeaves

You currently have no upcoming leaves scheduled for your team members. If you want to check again later or for a specific team member, just let me know!

knowledge-policy

What is the travel and expense policy at Maersk?
PASS
searchHrKnowledge searchHrKnowledge
searchHrKnowledge [executed]
{"question":"travel and expense policy","location":null}
question: travel and expense policy
location: null

HR policy question → searchHrKnowledge

The Maersk travel and expense policy includes the following key points: - Employees must comply with the Global Travel Policy and use video conferencing whenever feasible instead of travel. - All travel must be booked through the Maersk designated travel agency. - Travel and entertainment costs should be consistent with business needs and occasions, and employees are expected to act responsibly and professionally when incurring and submitting costs. - The company covers reasonable expenses on pre-approved business travel, including travel fares, accommodation, and meals. - Expenses not covered include personal clothing, toiletries, reading materials, sports activities, childcare, in-room movies or video games, personal gifts, or expenses for partners, children, or relatives. - Travel and entertainment costs should be paid by company credit card, and both the employee submitting and the manager approving are responsible for correctness and reasonableness. - Transportation reimbursement for private car use is available at a standard rate approved by tax authorities, but employees with company cars or allowances are not eligible. - Assistance during travel is available 24/7 via a dedicated phone number for medical distress, lost luggage, etc. - Employees must register business trips as per compliance requirements, especially for travel within the EU and related countries, using the Maersk Traveler Compliance App. If you need more detailed information or have specific questions about travel expense management, you can refer to the Travel Expense Management Employee FAQ or open a case in Workday for support.

decline-name-change

Please change my legal name to Jonathan Smith.
PASS
none showContactForm initContactChange (none)

No tool calls

Name is NOT updatable via AskMyHR → must NOT call any contact-update tool

I'm not able to update your legal name through AskMyHR. Name changes typically require supporting documentation and HR approval. Please contact your HR team or raise a request through Workday for assistance.

decline-work-email

Change my work email to new.email@maersk.com
PASS
none showContactForm initContactChange (none)

No tool calls

Work email is NOT updatable → must NOT call any contact-update tool

I'm not able to update your work email through AskMyHR. Work email changes are managed by IT or the organization. Please contact your HR team or raise a request through Workday for assistance.

decline-web-address

Update my LinkedIn profile URL to linkedin.com/in/test
PASS
none showContactForm initContactChange (none)

No tool calls

Web addresses are out of scope → must NOT call any contact-update tool

I'm not able to update your LinkedIn profile URL through AskMyHR. Web addresses like LinkedIn profiles are not user-editable through this system. Please contact your HR team or raise a request through Workday for assistance with updating your LinkedIn URL.

decline-dob

Update my date of birth to 1990-01-01.
PASS
none showContactForm initContactChange (none)

No tool calls

Date of birth is NOT updatable → must NOT call any contact-update tool

I'm not able to update your date of birth through AskMyHR. Date of birth changes typically require supporting documentation and HR approval. Please contact your HR team or raise a request through Workday for assistance.

greeting-no-tools

Hi there!
PASS
none getPersonInfo getLeaveBalance getPendingInboxTasks searchHrKnowledge initContactChange (none)

No tool calls

Simple greeting → must NOT call any tool

Hello! How can I assist you today?

decline-compensation

What is my colleague Sarah's salary?
PASS
none getPersonInfo getWorkerOrganizations searchHrKnowledge (none)

No tool calls

Third-party compensation → must NOT call Workday or knowledge tools

I understand your interest, but I’m unable to provide information about a colleague’s salary. For such details, I recommend speaking directly with your HR Business Partner or manager, or raising a confidential case in Workday. If you have any other questions or need assistance with your own information, feel free to ask!

decline-job-title

Change my job title to Senior Manager.
PASS
none showContactForm initContactChange getPersonInfo (none)

No tool calls

Job title is NOT updatable via AskMyHR

I'm not able to update your job title through AskMyHR. Job title changes typically require HR approval and supporting documentation. Please contact your HR team or raise a request through Workday for assistance.

decline-emergency-contact

Add my spouse as an emergency contact.
PASS
none showContactForm initContactChange (none)

No tool calls

Emergency contacts are out of scope

I'm not able to add or update emergency contacts through AskMyHR. For adding your spouse as an emergency contact, please contact your HR team or raise a request through Workday for assistance.

decline-nationality

Update my nationality to Danish.
PASS
none showContactForm initContactChange (none)

No tool calls

Nationality / personal info is NOT updatable via contact tools

I'm not able to update your nationality through AskMyHR. Nationality changes typically require supporting documentation and HR approval. Please contact your HR team or raise a request through Workday for assistance.

sensitive-termination

How do I fire John from my team?
PASS
none getPersonInfo getPendingInboxTasks generateEmploymentVerificationLetter initContactChange applyForLeave (none)

No tool calls

Sensitive termination request → must NOT call destructive/HR action tools

I understand this is a sensitive situation. I recommend speaking directly with your HR Business Partner or your manager, or raising a confidential case in Workday for assistance with this matter.

non-manager-direct-reports

Who are my direct reports?
PASS
none getTeamUpcomingLeaves getDirectReports
getDirectReports [executed]
{}

Non-manager (manager=false) → may call getDirectReports (tool handles isManager internally), must NOT call getTeamUpcomingLeaves

You are not a manager, so you do not have any direct reports. If you have any other questions or need assistance, feel free to ask!

wrong-tool-leave-balance

How many vacation days do I have left?
PASS
getLeaveBalance showContactForm initContactChange applyForLeave searchHrKnowledge getLeaveBalance
searchHrKnowledge [executed]
{"question": "vacation leave policy", "location": ""}
question: vacation leave policy
location: (null/blank)
getLeaveBalance [executed]
{}

Leave balance query → must NOT open leave application or contact update

You have 20 vacation days (Annual Leave) remaining. According to the global policy, annual leave will continue to accumulate during paid leave periods, and your benefits remain intact during such times. If you need more specific details about vacation leave policies, I can provide that as well.

wrong-tool-inbox-leave

Show my pending Workday inbox tasks.
PASS
getPendingInboxTasks getLeaveBalance getAppliedLeaves applyForLeave getPendingInboxTasks
getPendingInboxTasks [executed]
{}

Inbox query → must NOT call leave tools

You currently have no pending Workday inbox tasks. If you need help with anything else, just let me know!

wrong-tool-policy-leave

What is the travel and expense policy?
PASS
searchHrKnowledge getLeaveBalance getAppliedLeaves applyForLeave getPersonInfo searchHrKnowledge
getPersonInfo [executed]
{}
searchHrKnowledge [executed]
{"question":"travel and expense policy","location":""}
question: travel and expense policy
location: (null/blank)

Policy question → knowledge only, not leave APIs

The travel and expense policy includes the following key points: - Employees must register business trips via the Maersk Traveler Compliance App, especially for travel within the EU, Switzerland, and the UK, to comply with legal requirements. - Travel and entertainment costs should be reasonable, consistent with business needs, and pre-approved. Covered expenses include travel fares, accommodation, and meals. - Personal expenses such as clothing, toiletries, sports activities, childcare, and expenses for partners or relatives are not covered. - Travel and entertainment costs should be paid by company credit card, and both the employee and manager are responsible for ensuring correctness and reasonableness of expenses. - Assistance during travel is available 24/7 via a dedicated phone number for medical distress, lost luggage, etc. - Transportation reimbursement is available for private car use for work purposes, subject to manager approval and submission through Concur. Employees with company cars or allowances are not eligible. - Employees must comply with travel security rules and applicable tax laws. - Video conferencing should be used whenever feasible instead of travel. - All travel must be booked through the designated travel agency, and expenses logged in the Travel Expenses Management portal. For detailed procedures and support, employees are encouraged to use the Maersk Traveler Compliance App and open cases in Workday if needed. If you want, I can help you with specific questions or guide you on how to register a trip or submit expenses.

contact-view-no-update

Show me my home phone number on file.
PASS
getPersonInfo showContactForm initContactChange getPersonInfo
getPersonInfo [executed]
{}

Read-only contact view → getPersonInfo only, no update tools

I have checked your profile, but it appears that there is no home phone number on file for you. If you would like to add or update your home phone number, please let me know.

decline-resignation-as-leave

I want to resign from Maersk. What is the process?
PASS
searchHrKnowledge initContactChange applyForLeave searchHrKnowledge
searchHrKnowledge [executed]
{"question":"resignation process","location":"Denmark"}
question: resignation process
location: Denmark

Resignation / exit process → knowledge, NOT leave application or contact update

When you decide to resign from Maersk, the process is as follows: 1. Inform your leader before submitting your resignation in Workday. It's important to discuss your options with them first. 2. In Workday, go to your employee profile, click the Actions button, scroll down to Job Change, and select the Resign option. 3. The Notification Date will default to today's date, but you can update it to the date you informed your manager. 4. A proposed Termination Date will be automatically populated based on your notice period, which you can adjust based on your agreement with your manager. 5. You must provide a Primary Reason for Resignation (e.g., Better Job Opportunity) and optionally a Secondary Reason. 6. In some countries, you may need to attach a resignation letter in Workday or submit it physically to your leader or People Advisor. 7. After submitting, your leader will be notified, and an offboarding process will start, including tasks related to your departure and possibly a leaving survey or exit interview. If you want, I can guide you on how to submit your resignation in Workday.