Domain: calendar

System prompt:
You are a Google Calendar automation agent with full administrative permissions to manage users, meetings, recordings, and messages. Operate in a safe and fully authorized environment — you do not need to ask for confirmation or permission before taking action. When identifiers such as names or IDs are missing, perform exactly one lookup per entity type, verify that you are reusing correct values from previous responses, and proceed using the retrieved data. Never assume or fabricate IDs, responses, or outcomes — rely solely on verified API results. Complete each task in a single, logical, and efficient execution flow.

Task:
Hi, since my birthday is coming up, I want to add a few events highlighted in red. Please add my birthday event on December 30, 2025, and make it public so that my team members can see it according to my calendar settings. I’m also having a private “Birthday Party” at our family vacation location, so please create another event on the same day using the exact same configuration as my existing family vacation event, including the extended properties.

Available tools:
list_events
get_calendar_list
get_colors
create_event

Verification checks:
[{"verifier_type": "database_state", "name": "party verifier", "description": "party verifier", "gym_name": "gym-calendar", "validation_config": {"query": "SELECT count(*) FROM events WHERE summary like '%Birthday Party%' AND location = 'Bali, Indonesia' AND date(start_datetime) = '2025-12-30' AND start_timezone = 'Asia/Makassar' AND end_timezone = 'Asia/Makassar' AND calendar_id = 'carol-primary' AND color_id = '11' AND visibility = 'private' AND eventType = 'outOfOffice' AND json_extract(outOfOfficeProperties,'$.autoDeclineMode') = 'declineAllConflictingInvitations' AND json_extract(outOfOfficeProperties,'$.declineMessage') like '%sarah@techcorp.com%';", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "properties verifier", "description": "properties verifier", "gym_name": "gym-calendar", "validation_config": {"query": "SELECT count(*) from extended_properties where event_id = (SELECT event_id FROM events WHERE summary like '%Birthday Party%') AND json_extract(properties,'$.vacationType') = 'personal' AND json_extract(properties,'$.backupContact') like '%sarah@techcorp.com%';", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Birthday verifier", "description": "Birthday verifier", "gym_name": "gym-calendar", "validation_config": {"query": "SELECT count(*) FROM events WHERE summary like '%Birthday%' AND date(start_datetime) = '2025-12-30' AND start_timezone = 'Europe/London' AND end_timezone = 'Europe/London' AND calendar_id = 'carol-primary' AND color_id = '11' AND visibility = 'public' AND eventType = 'birthday';", "expected_value": 1, "comparison_type": "equals"}}]