Phase 2 verifies that agents pass data correctly to one another and that the full sandbox workflow executes without manual intervention. Integration test IDs continue the T sequence from Phase 1. Edge case tests use a separate E sequence.
ID
Scenario
Input
Expected Output
Pass Criteria
T15
Full handoff: Triage Agent to Assignment Agent (P2 Software)
Intake form submission: 'Excel keeps crashing when I open files over 10 MB. Blocking my end-of-month reporting.' Submitted in sandbox.
Triage Agent classifies as Software, P2. Freshdesk ticket created. Assignment Agent picks up ticket, assigns to least-loaded technician, sends both Slack notifications.
Freshdesk sandbox ticket has correct fields. Both Slack messages present. Total elapsed time from trigger to notification under 90 seconds.
T16
Full handoff: Triage Agent to Assignment Agent (P1 Hardware)
Slack slash command: '/itsupport Server down in B3. No one can access shared drives.' Submitted in sandbox.
P1 Hardware ticket created. Assignment Agent assigns immediately. Slack alert to technician flagged urgent. IT Manager notified.
Freshdesk ticket P1. Technician Slack message contains urgent label. IT Manager DM received. All within 60 seconds.
T17
SLA breach handoff: Assignment Agent ticket to Escalation Logger (P1)
P1 ticket in sandbox assigned but not resolved. SLA window (4 hours) manually expired in sandbox environment.
Escalation and Resolution Logger detects breach. PagerDuty sandbox incident fired. Incident linked to Freshdesk ticket ID.
PagerDuty sandbox incident exists. Incident metadata contains correct ticket ID and elapsed time.
T18
Resolution handoff: Freshdesk resolution event to Escalation Logger (Notion write)
Technician resolves P3 Access Request in sandbox Freshdesk. Adds resolution note: 'Granted Marketing Drive access via Google Workspace admin console.'
Notion sandbox page created with all required fields populated from Freshdesk resolution data.
Notion page present. Category: Access Request. Fix Steps field is not empty. Date Resolved matches sandbox resolution timestamp.
T19
P2 ticket breach then resolved: both Escalation Logger actions fire in correct order
P2 ticket breaches SLA. PagerDuty alert fires. Technician then resolves ticket in sandbox.
PagerDuty incident fires first. After resolution, Notion page created. PagerDuty incident updated to resolved state.
Both events logged in automation run history in correct sequence. PagerDuty incident status: Resolved. Notion page present.
T20
Multi-ticket volume: five simultaneous intake submissions
Five intake form submissions sent to sandbox within a 10-second window, each with different categories and priorities.
Five distinct Freshdesk tickets created with correct classifications. Five assignment decisions made independently. Ten Slack messages sent (requester plus technician per ticket).
Exactly five Freshdesk tickets. No duplicate IDs. Ten Slack messages in sandbox workspace. No tickets merged or lost.
T21
P4 ticket does not trigger PagerDuty escalation
P4 General Query ticket open in sandbox beyond P4 SLA window (48 hours, manually expired).
No PagerDuty incident created. No IT Manager alert. Ticket remains open.
PagerDuty sandbox shows zero new incidents. Escalation Logger run log confirms P4 exclusion rule applied.
T22
Notion write failure gracefully handled without blocking Freshdesk state
P3 ticket resolved in sandbox. Notion API returns 500 on write attempt.
Automation retries Notion write twice. If all attempts fail, error logged and Slack alert sent to IT Manager. Freshdesk ticket status remains Resolved.
Freshdesk ticket is Resolved regardless of Notion outcome. Slack error alert sent to IT Manager sandbox user. Run log shows retry attempts.
ID
Scenario
Input
Expected Output
Pass Criteria
E01
Duplicate submission: same request sent twice within 60 seconds
Identical intake form submitted twice by the same requester within 60 seconds (same email, same subject, same body).
Automation detects duplicate via requester email and request hash. Second submission suppressed. Requester receives Slack message: 'Your ticket #X is already logged.'
Only one Freshdesk ticket created. Requester receives deduplication message. Run log shows duplicate suppression event.
E02
Missing requester email in intake submission
Intake form submitted without an email address in the requester field. Slack submission source.
Triage Agent creates ticket using Slack user ID as requester identifier. Priority and category assigned normally. Slack DM sent to Slack user ID.
Freshdesk ticket has Slack user ID in requester field. Slack notification delivered. No hard failure or dropped ticket.
E03
Freshdesk sandbox completely unavailable (connection refused)
Triage Agent attempts to create ticket. Freshdesk returns connection refused.
Automation halts after three retries. Incoming request payload stored in automation platform error queue. FullSpec alert fired to support@gofullspec.com. Requester notified: 'We received your request and are processing it shortly.'
Error queue contains original payload. No data lost. FullSpec alert email received. Requester Slack message sent.
E04
PagerDuty sandbox unavailable during SLA breach event
SLA breach detected for P1 ticket. PagerDuty API returns 503.
Automation retries three times. On final failure, Slack direct message sent to IT Manager as fallback escalation channel. Error logged.
IT Manager receives Slack escalation DM. Run log shows PagerDuty failure and fallback trigger. No silent failure.
E05
Request submitted in a language other than English
Intake form submitted with body entirely in Spanish: 'Mi computadora no enciende. Necesito ayuda urgente.'
Triage Agent assigns category: Hardware (keyword 'computadora' matches hardware dictionary). Priority: P2 (urgency signal detected). Ticket created. Notion knowledge base entry language recorded as non-English.
Freshdesk ticket has Hardware category and P2 priority. Resolution Logger records language flag in Notion page metadata.
E06
Human technician does not resolve ticket within extended SLA window (P2, 8 hours)
P2 ticket assigned. Technician takes no action for 8 hours (manually expired in sandbox).
First PagerDuty alert fires at 4-hour mark. Second escalation Slack message sent to IT Manager at 8-hour mark with elapsed time and ticket link.
Two distinct escalation events in run log. PagerDuty incident exists. IT Manager receives second Slack message at 8-hour timestamp.
E07
Notion database schema mismatch: required field renamed by user
Resolution Logger attempts to write to Notion. The 'Fix Steps' property has been renamed to 'Resolution Steps' in the live database by a team member.
Automation catches property-not-found error. Slack alert sent to IT Manager with field mismatch detail. Freshdesk ticket remains Resolved. Partial Notion page not created.
No corrupted Notion page created. IT Manager Slack alert contains specific field name that caused failure. Run log records schema mismatch error.