Add Handbook.md benchmark tasks
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
FROM handbook_base
|
||||
|
||||
COPY initial_external_services/ /data/
|
||||
COPY initial_external_services/ /initial_data/
|
||||
COPY initial_workspace/ /workdir/
|
||||
|
||||
ENV INPUTDIR=/data OUTPUTDIR=/data WORLDBENCH_TOOL_SETS="syntara_ds_all google_mail_contacts slack_core google_mail_core google_calendar_core jira_core shopify_core"
|
||||
+316
@@ -0,0 +1,316 @@
|
||||
{
|
||||
"events": {
|
||||
"evt-001": {
|
||||
"summary": "Waco Transfer \u2014 Manifest 2026-04-03-001",
|
||||
"start": {
|
||||
"dateTime": "2026-04-03T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-03T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-001"
|
||||
},
|
||||
"evt-002": {
|
||||
"summary": "Weekly Expiry Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-03T08:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-03T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-002"
|
||||
},
|
||||
"evt-003": {
|
||||
"summary": "PKG-01 Gulf Coast Packaging \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-07T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-07T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-003"
|
||||
},
|
||||
"evt-004": {
|
||||
"summary": "Waco Transfer \u2014 Manifest 2026-04-08-001",
|
||||
"start": {
|
||||
"dateTime": "2026-04-08T08:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-08T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-004"
|
||||
},
|
||||
"evt-005": {
|
||||
"summary": "Weekly Claims Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-10T14:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-10T14:30:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-005"
|
||||
},
|
||||
"evt-006": {
|
||||
"summary": "Waco Transfer \u2014 Manifest 2026-04-10-001",
|
||||
"start": {
|
||||
"dateTime": "2026-04-10T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-10T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-006"
|
||||
},
|
||||
"evt-007": {
|
||||
"summary": "Weekly Expiry Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-10T08:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-10T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-007"
|
||||
},
|
||||
"evt-008": {
|
||||
"summary": "Waco Transfer \u2014 Manifest 2026-04-13-001",
|
||||
"start": {
|
||||
"dateTime": "2026-04-13T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-13T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-008"
|
||||
},
|
||||
"evt-009": {
|
||||
"summary": "PKG-01 Gulf Coast Packaging \u2014 PO-54780",
|
||||
"start": {
|
||||
"dateTime": "2026-04-14T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-14T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-009"
|
||||
},
|
||||
"evt-010": {
|
||||
"summary": "DRY-02 Lone Star Toppings \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-15T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-15T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-010"
|
||||
},
|
||||
"evt-011": {
|
||||
"summary": "PAL-01 TexPal Logistics \u2014 Bi-Weekly Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-15T13:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-15T14:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-011"
|
||||
},
|
||||
"evt-012": {
|
||||
"summary": "PKG-02 Southern Wrap Co. \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-16T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-16T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-012"
|
||||
},
|
||||
"evt-013": {
|
||||
"summary": "CLN-01 CleanPro Industrial \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-17T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-17T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-013"
|
||||
},
|
||||
"evt-014": {
|
||||
"summary": "Weekly Claims Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-17T14:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-17T14:30:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-014"
|
||||
},
|
||||
"evt-015": {
|
||||
"summary": "Weekly Expiry Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-17T08:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-17T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-015"
|
||||
},
|
||||
"evt-016": {
|
||||
"summary": "DRY-01 Heartland Bakery Supply \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-20T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-20T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-016"
|
||||
},
|
||||
"evt-017": {
|
||||
"summary": "PKG-01 Gulf Coast Packaging \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-21T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-21T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-017"
|
||||
},
|
||||
"evt-018": {
|
||||
"summary": "DRY-02 Lone Star Toppings \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-22T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-22T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-018"
|
||||
},
|
||||
"evt-019": {
|
||||
"summary": "PKG-02 Southern Wrap Co. \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-23T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-23T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-019"
|
||||
},
|
||||
"evt-020": {
|
||||
"summary": "CLN-01 CleanPro Industrial \u2014 Scheduled Delivery",
|
||||
"start": {
|
||||
"dateTime": "2026-04-24T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-24T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-020"
|
||||
},
|
||||
"evt-021": {
|
||||
"summary": "Weekly Claims Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-24T14:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-24T14:30:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-021"
|
||||
},
|
||||
"evt-022": {
|
||||
"summary": "PKG-01 Gulf Coast Packaging \u2014 PO-54750",
|
||||
"start": {
|
||||
"dateTime": "2026-03-31T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-03-31T11:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-022"
|
||||
},
|
||||
"evt-023": {
|
||||
"summary": "Weekly Expiry Review",
|
||||
"start": {
|
||||
"dateTime": "2026-03-27T08:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-03-27T09:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-023"
|
||||
},
|
||||
"evt-024": {
|
||||
"summary": "Weekly Claims Review",
|
||||
"start": {
|
||||
"dateTime": "2026-04-03T14:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-03T14:30:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-024"
|
||||
},
|
||||
"evt-025": {
|
||||
"summary": "Waco Transfer \u2014 2026-04-15-001",
|
||||
"start": {
|
||||
"dateTime": "2026-04-15T08:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-15T10:00:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-025"
|
||||
},
|
||||
"evt-026": {
|
||||
"summary": "Waco Transfer \u2014 2026-04-15-002",
|
||||
"start": {
|
||||
"dateTime": "2026-04-15T10:30:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"end": {
|
||||
"dateTime": "2026-04-15T12:30:00-05:00",
|
||||
"timeZone": "America/Chicago"
|
||||
},
|
||||
"id": "evt-026"
|
||||
}
|
||||
}
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"mailbox": {
|
||||
"email": "michael.andrews@prairiestar.com",
|
||||
"name": "Michael Andrews"
|
||||
},
|
||||
"contacts": [
|
||||
{"email": "daniel.reyes@prairiestar.com", "name": "Daniel Reyes"},
|
||||
{"email": "emily.carter@prairiestar.com", "name": "Emily Carter"},
|
||||
{"email": "marcus.liu@prairiestar.com", "name": "Marcus Liu"},
|
||||
{"email": "hannah.brooks@prairiestar.com", "name": "Hannah Brooks"},
|
||||
{"email": "jacob.patel@prairiestar.com", "name": "Jacob Patel"},
|
||||
{"email": "carlos.mendoza@prairiestar.com", "name": "Carlos Mendoza"},
|
||||
{"email": "alicia.nguyen@prairiestar.com", "name": "Alicia Nguyen"},
|
||||
{"email": "sarah.kim@prairiestar.com", "name": "Sarah Kim"},
|
||||
{"email": "kevin.white@prairiestar.com", "name": "Kevin White"},
|
||||
{"email": "brandon.keller@prairiestar.com", "name": "Brandon Keller"},
|
||||
{"email": "luis.ramirez@prairiestar.com", "name": "Luis Ramirez"},
|
||||
{"email": "renee.dubois@prairiestar.com", "name": "Renee Dubois"},
|
||||
{"email": "wyatt.green@prairiestar.com", "name": "Wyatt Green"},
|
||||
{"email": "olivia.bennett@prairiestar.com", "name": "Olivia Bennett"},
|
||||
{"email": "dylan.harper@prairiestar.com", "name": "Dylan Harper"},
|
||||
{"email": "mtorres@gulfcoastpkg.com", "name": "Maria Torres"},
|
||||
{"email": "dchen@southernwrap.com", "name": "David Chen"},
|
||||
{"email": "padams@heartlandbakery.com", "name": "Peggy Adams"},
|
||||
{"email": "fgutierrez@lonestartoppings.com", "name": "Frank Gutierrez"},
|
||||
{"email": "jsimmons@cleanproindustrial.com", "name": "Janet Simmons"},
|
||||
{"email": "treddick@arcticexpress.com", "name": "Tom Reddick"},
|
||||
{"email": "bkowalski@texpal.com", "name": "Brenda Kowalski"}
|
||||
],
|
||||
"folders": [],
|
||||
"emails": [],
|
||||
"next_email_id": 1
|
||||
}
|
||||
+556
@@ -0,0 +1,556 @@
|
||||
{
|
||||
"users": {
|
||||
"U001": {
|
||||
"id": "U001",
|
||||
"team_id": "T001",
|
||||
"name": "m.andrews",
|
||||
"deleted": false,
|
||||
"real_name": "Michael Andrews",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Michael Andrews",
|
||||
"display_name": "m.andrews",
|
||||
"email": "michael.andrews@prairiestar.com",
|
||||
"title": "Inventory Operations Analyst"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U002": {
|
||||
"id": "U002",
|
||||
"team_id": "T001",
|
||||
"name": "d.reyes",
|
||||
"deleted": false,
|
||||
"real_name": "Daniel Reyes",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Daniel Reyes",
|
||||
"display_name": "d.reyes",
|
||||
"email": "daniel.reyes@prairiestar.com",
|
||||
"title": "Director of Supply Chain"
|
||||
},
|
||||
"is_admin": true,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U003": {
|
||||
"id": "U003",
|
||||
"team_id": "T001",
|
||||
"name": "e.carter",
|
||||
"deleted": false,
|
||||
"real_name": "Emily Carter",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Emily Carter",
|
||||
"display_name": "e.carter",
|
||||
"email": "emily.carter@prairiestar.com",
|
||||
"title": "Demand Planning Manager"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U004": {
|
||||
"id": "U004",
|
||||
"team_id": "T001",
|
||||
"name": "m.liu",
|
||||
"deleted": false,
|
||||
"real_name": "Marcus Liu",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Marcus Liu",
|
||||
"display_name": "m.liu",
|
||||
"email": "marcus.liu@prairiestar.com",
|
||||
"title": "Procurement Specialist"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U005": {
|
||||
"id": "U005",
|
||||
"team_id": "T001",
|
||||
"name": "h.brooks",
|
||||
"deleted": false,
|
||||
"real_name": "Hannah Brooks",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Hannah Brooks",
|
||||
"display_name": "h.brooks",
|
||||
"email": "hannah.brooks@prairiestar.com",
|
||||
"title": "Inventory Analyst"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U006": {
|
||||
"id": "U006",
|
||||
"team_id": "T001",
|
||||
"name": "j.patel",
|
||||
"deleted": false,
|
||||
"real_name": "Jacob Patel",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Jacob Patel",
|
||||
"display_name": "j.patel",
|
||||
"email": "jacob.patel@prairiestar.com",
|
||||
"title": "Production Planner"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U007": {
|
||||
"id": "U007",
|
||||
"team_id": "T001",
|
||||
"name": "c.mendoza",
|
||||
"deleted": false,
|
||||
"real_name": "Carlos Mendoza",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Carlos Mendoza",
|
||||
"display_name": "c.mendoza",
|
||||
"email": "carlos.mendoza@prairiestar.com",
|
||||
"title": "DC Manager — Houston"
|
||||
},
|
||||
"is_admin": true,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U008": {
|
||||
"id": "U008",
|
||||
"team_id": "T001",
|
||||
"name": "a.nguyen",
|
||||
"deleted": false,
|
||||
"real_name": "Alicia Nguyen",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Alicia Nguyen",
|
||||
"display_name": "a.nguyen",
|
||||
"email": "alicia.nguyen@prairiestar.com",
|
||||
"title": "Inventory & Receiving Coordinator — Houston"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U009": {
|
||||
"id": "U009",
|
||||
"team_id": "T001",
|
||||
"name": "s.kim",
|
||||
"deleted": false,
|
||||
"real_name": "Sarah Kim",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Sarah Kim",
|
||||
"display_name": "s.kim",
|
||||
"email": "sarah.kim@prairiestar.com",
|
||||
"title": "Warehouse Associate (Senior) — Houston"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U010": {
|
||||
"id": "U010",
|
||||
"team_id": "T001",
|
||||
"name": "k.white",
|
||||
"deleted": false,
|
||||
"real_name": "Kevin White",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Kevin White",
|
||||
"display_name": "k.white",
|
||||
"email": "kevin.white@prairiestar.com",
|
||||
"title": "Warehouse Associate — Houston"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U011": {
|
||||
"id": "U011",
|
||||
"team_id": "T001",
|
||||
"name": "b.keller",
|
||||
"deleted": false,
|
||||
"real_name": "Brandon Keller",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Brandon Keller",
|
||||
"display_name": "b.keller",
|
||||
"email": "brandon.keller@prairiestar.com",
|
||||
"title": "Dispatcher / Route Planner — Houston"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U012": {
|
||||
"id": "U012",
|
||||
"team_id": "T001",
|
||||
"name": "l.ramirez",
|
||||
"deleted": false,
|
||||
"real_name": "Luis Ramirez",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Luis Ramirez",
|
||||
"display_name": "l.ramirez",
|
||||
"email": "luis.ramirez@prairiestar.com",
|
||||
"title": "Lead Driver — Houston"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U013": {
|
||||
"id": "U013",
|
||||
"team_id": "T001",
|
||||
"name": "r.dubois",
|
||||
"deleted": false,
|
||||
"real_name": "Renee Dubois",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Renee Dubois",
|
||||
"display_name": "r.dubois",
|
||||
"email": "renee.dubois@prairiestar.com",
|
||||
"title": "DC Manager — Shreveport"
|
||||
},
|
||||
"is_admin": true,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U014": {
|
||||
"id": "U014",
|
||||
"team_id": "T001",
|
||||
"name": "w.green",
|
||||
"deleted": false,
|
||||
"real_name": "Wyatt Green",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Wyatt Green",
|
||||
"display_name": "w.green",
|
||||
"email": "wyatt.green@prairiestar.com",
|
||||
"title": "Inventory & Receiving Coordinator — Shreveport"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U015": {
|
||||
"id": "U015",
|
||||
"team_id": "T001",
|
||||
"name": "o.bennett",
|
||||
"deleted": false,
|
||||
"real_name": "Olivia Bennett",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Olivia Bennett",
|
||||
"display_name": "o.bennett",
|
||||
"email": "olivia.bennett@prairiestar.com",
|
||||
"title": "Warehouse Associate (Senior) — Shreveport"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
},
|
||||
"U016": {
|
||||
"id": "U016",
|
||||
"team_id": "T001",
|
||||
"name": "d.harper",
|
||||
"deleted": false,
|
||||
"real_name": "Dylan Harper",
|
||||
"tz": "America/Chicago",
|
||||
"tz_label": "Central Daylight Time",
|
||||
"tz_offset": -18000,
|
||||
"profile": {
|
||||
"real_name": "Dylan Harper",
|
||||
"display_name": "d.harper",
|
||||
"email": "dylan.harper@prairiestar.com",
|
||||
"title": "Dispatcher / Route Planner — Shreveport"
|
||||
},
|
||||
"is_admin": false,
|
||||
"is_owner": false,
|
||||
"is_bot": false
|
||||
}
|
||||
},
|
||||
"channels": {
|
||||
"C001": {
|
||||
"id": "C001",
|
||||
"name": "receiving-houston",
|
||||
"is_channel": true,
|
||||
"is_group": false,
|
||||
"is_im": false,
|
||||
"is_mpim": false,
|
||||
"is_private": false,
|
||||
"created": 1704067200,
|
||||
"is_archived": false,
|
||||
"is_general": false,
|
||||
"unlinked": 0,
|
||||
"name_normalized": "receiving-houston",
|
||||
"is_shared": false,
|
||||
"is_org_shared": false,
|
||||
"is_ext_shared": false,
|
||||
"is_pending_ext_shared": false,
|
||||
"pending_shared": [],
|
||||
"pending_connected_team_ids": [],
|
||||
"context_team_id": "T001",
|
||||
"updated": 1704067200,
|
||||
"creator": "U007",
|
||||
"shared_team_ids": ["T001"],
|
||||
"is_member": true,
|
||||
"topic": {
|
||||
"value": "Houston inbound receiving: arrivals, counts, temperatures, completions, flags",
|
||||
"creator": "U007",
|
||||
"last_set": 1704067200
|
||||
},
|
||||
"purpose": {
|
||||
"value": "Real-time receiving updates for Houston DC",
|
||||
"creator": "U007",
|
||||
"last_set": 1704067200
|
||||
}
|
||||
},
|
||||
"C002": {
|
||||
"id": "C002",
|
||||
"name": "receiving-shreveport",
|
||||
"is_channel": true,
|
||||
"is_group": false,
|
||||
"is_im": false,
|
||||
"is_mpim": false,
|
||||
"is_private": false,
|
||||
"created": 1704067200,
|
||||
"is_archived": false,
|
||||
"is_general": false,
|
||||
"unlinked": 0,
|
||||
"name_normalized": "receiving-shreveport",
|
||||
"is_shared": false,
|
||||
"is_org_shared": false,
|
||||
"is_ext_shared": false,
|
||||
"is_pending_ext_shared": false,
|
||||
"pending_shared": [],
|
||||
"pending_connected_team_ids": [],
|
||||
"context_team_id": "T001",
|
||||
"updated": 1704067200,
|
||||
"creator": "U013",
|
||||
"shared_team_ids": ["T001"],
|
||||
"is_member": true,
|
||||
"topic": {
|
||||
"value": "Shreveport inbound receiving: arrivals, counts, temperatures, completions, flags",
|
||||
"creator": "U013",
|
||||
"last_set": 1704067200
|
||||
},
|
||||
"purpose": {
|
||||
"value": "Real-time receiving updates for Shreveport DC",
|
||||
"creator": "U013",
|
||||
"last_set": 1704067200
|
||||
}
|
||||
},
|
||||
"C003": {
|
||||
"id": "C003",
|
||||
"name": "cold-chain-alerts",
|
||||
"is_channel": true,
|
||||
"is_group": false,
|
||||
"is_im": false,
|
||||
"is_mpim": false,
|
||||
"is_private": false,
|
||||
"created": 1704067200,
|
||||
"is_archived": false,
|
||||
"is_general": false,
|
||||
"unlinked": 0,
|
||||
"name_normalized": "cold-chain-alerts",
|
||||
"is_shared": false,
|
||||
"is_org_shared": false,
|
||||
"is_ext_shared": false,
|
||||
"is_pending_ext_shared": false,
|
||||
"pending_shared": [],
|
||||
"pending_connected_team_ids": [],
|
||||
"context_team_id": "T001",
|
||||
"updated": 1704067200,
|
||||
"creator": "U002",
|
||||
"shared_team_ids": ["T001"],
|
||||
"is_member": true,
|
||||
"topic": {
|
||||
"value": "Temperature excursions, freezer zone alarms, cold chain breaches",
|
||||
"creator": "U002",
|
||||
"last_set": 1704067200
|
||||
},
|
||||
"purpose": {
|
||||
"value": "Cold chain alerts for both DCs",
|
||||
"creator": "U002",
|
||||
"last_set": 1704067200
|
||||
}
|
||||
},
|
||||
"C004": {
|
||||
"id": "C004",
|
||||
"name": "waco-production-coord",
|
||||
"is_channel": true,
|
||||
"is_group": false,
|
||||
"is_im": false,
|
||||
"is_mpim": false,
|
||||
"is_private": false,
|
||||
"created": 1704067200,
|
||||
"is_archived": false,
|
||||
"is_general": false,
|
||||
"unlinked": 0,
|
||||
"name_normalized": "waco-production-coord",
|
||||
"is_shared": false,
|
||||
"is_org_shared": false,
|
||||
"is_ext_shared": false,
|
||||
"is_pending_ext_shared": false,
|
||||
"pending_shared": [],
|
||||
"pending_connected_team_ids": [],
|
||||
"context_team_id": "T001",
|
||||
"updated": 1704067200,
|
||||
"creator": "U006",
|
||||
"shared_team_ids": ["T001"],
|
||||
"is_member": true,
|
||||
"topic": {
|
||||
"value": "Variance issues, manifest questions, Waco production coordination",
|
||||
"creator": "U006",
|
||||
"last_set": 1704067200
|
||||
},
|
||||
"purpose": {
|
||||
"value": "Communication with Waco production team",
|
||||
"creator": "U006",
|
||||
"last_set": 1704067200
|
||||
}
|
||||
},
|
||||
"C005": {
|
||||
"id": "C005",
|
||||
"name": "inventory-ops",
|
||||
"is_channel": true,
|
||||
"is_group": false,
|
||||
"is_im": false,
|
||||
"is_mpim": false,
|
||||
"is_private": false,
|
||||
"created": 1704067200,
|
||||
"is_archived": false,
|
||||
"is_general": false,
|
||||
"unlinked": 0,
|
||||
"name_normalized": "inventory-ops",
|
||||
"is_shared": false,
|
||||
"is_org_shared": false,
|
||||
"is_ext_shared": false,
|
||||
"is_pending_ext_shared": false,
|
||||
"pending_shared": [],
|
||||
"pending_connected_team_ids": [],
|
||||
"context_team_id": "T001",
|
||||
"updated": 1704067200,
|
||||
"creator": "U002",
|
||||
"shared_team_ids": ["T001"],
|
||||
"is_member": true,
|
||||
"topic": {
|
||||
"value": "Cycle count results, expiry flags, inventory adjustments",
|
||||
"creator": "U002",
|
||||
"last_set": 1704067200
|
||||
},
|
||||
"purpose": {
|
||||
"value": "Inventory operations coordination",
|
||||
"creator": "U002",
|
||||
"last_set": 1704067200
|
||||
}
|
||||
},
|
||||
"C006": {
|
||||
"id": "C006",
|
||||
"name": "dc-escalations",
|
||||
"is_channel": true,
|
||||
"is_group": false,
|
||||
"is_im": false,
|
||||
"is_mpim": false,
|
||||
"is_private": false,
|
||||
"created": 1704067200,
|
||||
"is_archived": false,
|
||||
"is_general": false,
|
||||
"unlinked": 0,
|
||||
"name_normalized": "dc-escalations",
|
||||
"is_shared": false,
|
||||
"is_org_shared": false,
|
||||
"is_ext_shared": false,
|
||||
"is_pending_ext_shared": false,
|
||||
"pending_shared": [],
|
||||
"pending_connected_team_ids": [],
|
||||
"context_team_id": "T001",
|
||||
"updated": 1704067200,
|
||||
"creator": "U002",
|
||||
"shared_team_ids": ["T001"],
|
||||
"is_member": true,
|
||||
"topic": {
|
||||
"value": "P1 and P2 priority events, escalations requiring Director attention",
|
||||
"creator": "U002",
|
||||
"last_set": 1704067200
|
||||
},
|
||||
"purpose": {
|
||||
"value": "Escalation channel for critical DC events",
|
||||
"creator": "U002",
|
||||
"last_set": 1704067200
|
||||
}
|
||||
}
|
||||
},
|
||||
"messages": {
|
||||
"C001": [
|
||||
{
|
||||
"client_msg_id": "msg-1000000",
|
||||
"type": "message",
|
||||
"text": "Waco transfer 2026-04-15-001 expected at 08:00. Pallets: 10, Cases: 210. Dock crew standing by.",
|
||||
"user": "U001",
|
||||
"ts": "1776254400.000000",
|
||||
"team": "T001",
|
||||
"channel": "C001"
|
||||
},
|
||||
{
|
||||
"client_msg_id": "msg-1000001",
|
||||
"type": "message",
|
||||
"text": "Waco transfer 2026-04-15-002 expected at 10:30. Pallets: 6, Cases: 80. Dock crew standing by.",
|
||||
"user": "U001",
|
||||
"ts": "1776254520.000000",
|
||||
"team": "T001",
|
||||
"channel": "C001"
|
||||
},
|
||||
{
|
||||
"client_msg_id": "msg-1000002",
|
||||
"type": "message",
|
||||
"text": "Manifest 2026-04-15-001 dock 3 receiving complete. Seal: intact. Temps: -10.2, -10.2, -18.7 (avg -12.37). Pallets: 10. Lot codes: A-20260410-01 (100 cases), A-20260411-01 (80 cases), B-20260408-01 (30 cases). No damage. Wrap and pallets intact.",
|
||||
"user": "U008",
|
||||
"ts": "1776264300.000000",
|
||||
"team": "T001",
|
||||
"channel": "C001"
|
||||
}
|
||||
|
||||
|
||||
]
|
||||
},
|
||||
"counters": {
|
||||
"messageId": 1000000
|
||||
}
|
||||
}
|
||||
+111
@@ -0,0 +1,111 @@
|
||||
%PDF-1.4
|
||||
%“Œ‹ž ReportLab Generated PDF document (opensource)
|
||||
1 0 obj
|
||||
<<
|
||||
/F1 2 0 R /F2 3 0 R /F3 4 0 R /F4 5 0 R /F5 7 0 R
|
||||
>>
|
||||
endobj
|
||||
2 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
3 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica-Bold /Encoding /WinAnsiEncoding /Name /F2 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
4 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica-Oblique /Encoding /WinAnsiEncoding /Name /F3 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
5 0 obj
|
||||
<<
|
||||
/BaseFont /Courier-Bold /Encoding /WinAnsiEncoding /Name /F4 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
6 0 obj
|
||||
<<
|
||||
/Contents 12 0 R /MediaBox [ 0 0 612 792 ] /Parent 11 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
7 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica-BoldOblique /Encoding /WinAnsiEncoding /Name /F5 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
8 0 obj
|
||||
<<
|
||||
/Contents 13 0 R /MediaBox [ 0 0 612 792 ] /Parent 11 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
9 0 obj
|
||||
<<
|
||||
/PageMode /UseNone /Pages 11 0 R /Type /Catalog
|
||||
>>
|
||||
endobj
|
||||
10 0 obj
|
||||
<<
|
||||
/Author (\(anonymous\)) /CreationDate (D:20260418124525+01'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260418124525+01'00') /Producer (ReportLab PDF Library - \(opensource\))
|
||||
/Subject (\(unspecified\)) /Title (\(anonymous\)) /Trapped /False
|
||||
>>
|
||||
endobj
|
||||
11 0 obj
|
||||
<<
|
||||
/Count 2 /Kids [ 6 0 R 8 0 R ] /Type /Pages
|
||||
>>
|
||||
endobj
|
||||
12 0 obj
|
||||
<<
|
||||
/Filter [ /ASCII85Decode /FlateDecode ] /Length 2042
|
||||
>>
|
||||
stream
|
||||
Gatm;d;mu"&:F4Rge8dSA1X%B85[N&X#`l=9N!s817_1hl+eQT+X$k$+>)pJ])X;%U2@nFD0nqa!HGTXH[A:K5/%-n4"Z8;RF@48!t%A`0.;XhM!"/?1-bX0-tmcN6V@7fS$D)ZIP;ZCe:-\`,9.EacL0Z$!XFK?dN'=]@ui:?j0S"'KP'iGPYS-?nV>6Yc^-Kg6M"8:kXU"B"<Iu,:#Nb_U@to6\;:SYriN\Cns[a"kma2e\7VR6da7/29^#09>YCC3n#@'Nn'8leTtQnRl3p$`A,Y59-(=gZ,i*5>7I^B(S7_Ku)%>s:#q6o)l6*fFX$O3l*g#M_S32e:4_(rO2a;fj?qoYEH\8]h)<X$99@4U#CeWN$op_sTW?f/;`TKNRZ_cg9I&1qAV$F@!WBY]h9"^^dJ*<uQGD9h^iYMA$9X60TTI_,A_VdGi]c#-DS`%4<9Uk72(-*r)KL.mCFA_`OTVdp^h1RorUtRckm.[**eFWXs:<8K?gH6P6D0*<MnDYdoG\\Z/qit"Tq)CHmPGCCI]cN/VOWFfnkjOBKgql;QoZOkgl25\kUnXLiX\t`jRa\07`_,)En+eim=iKV7cNX='cs)duC>Jco+so+YIAn]aD/4>XjXD"t6=/&dF[`VLH^N*3ENRXMdS]RGA?k$$2R^[.c]:Ftl1l77PuKb#)'O9X*(VZ[>k1YIU=o>G#t&F'2)aP8]&XXT9(NeH36NLQ$b5*UDY!Q\?JgZq/hR^%>$P)dY`LK1j@n$s.T'UbdG8!BR4LeC:Y_k%X)&fTjoY-+>r$[/1(]fI@_pM+1`QW-]\tP>m(>eq;%u,+!1[si]#ZlfS2=jr!W\=`7A&SD7?mtA"i=:jr.P9X<Cl1VV0+YWpdS8P1+'56Xn5[uBN6#T5;#sU2Er%a70Wh,#2NTEd6YBEL/!T5Sr[ZP.!hV(mPg]Pl]?E/T)NoQ5;msT^/)1D0M7M(<mTG#9Mq\8YMd^NaX&ai)OL58qhn\SJPc_,>_4/0<R&U\9;j1]RWE=;fbTJ2jn4dhArW@2YZ)Y4(a=E:04p5Cc(nKMUV^>Z9N<!nEHI;dY[Wo-AVXK<VVtQB1s6cBblmSf+_tRA!NB&j1\9[-[6`r?Z-#Q66iH@?&+L@8I+\73XTs;Rld9*"5kOa`[?d-+hLM>L8.k8p:us3OcK"[+nS;5?eDCo"mafF/g](!p3#AQ%2>Fp?lG\@m0j`L9?(BB%^M+.[p.PH$rFL?Rn(KE\-0g;q_fAO"F(F`5ZmOV(;s$-&;C*,G(M$-=<lRUtbf;s,N2X'biDu<XeN\7I6a?kVE]Eshe^6F32$F$8JI,IsC="kSA,0JrNU/hNqh*M7O+.uL1&dipq<+(c)Fn_BB+KR]5_HJSIa>_5nNof_>-L+ZW!*A:\^sW#-)b3@c@!?*fp,L*XWFKA\I\Bb.n_s2Cjr,>`R\]GaIZT-l82@I,u]p6kO?Q:`gs_mB<R@q3sumamZ-u?j]19<s3r39^KZEKG4O)?`-&B@O'QGb<97+'Bd-3n72Of7MRM3o@p#E0@&)(/6u?(R$[W^!jJ5<\(hhOVlI]JuEg\hLVohEL0#:;>KiBQ)QW)uYs",qlO_>Y,FNsBVR>4\B>E^a7_V!P!k5SIK2q)uQ&DC1$q4r@K?d[oR/-"#O6N31L/+4fD2pKW"b2_;G]fe.<8?AX;q+]>eX7FWuPl0ZG6o4;-&Q8T!3%ZriJ#p21_[:1m\DD[eCd3C>II"VXAVZO^b"\p9o5ujpN#Q1XR1ls'D/k$B;I$([*Bk<(0s,CrQDf5JDo-^QMt]1)Vn"'\f>ftfY;,Y8KM5A[9V_1hX&</7`_EJ,NnTAZpX>WMa?<V(o;E>S)NYShpA$#nnB+]]pH[ug*U?@lSZh](=g*sYXgDs::8nEqs!b?Y,;in1b(sulm"=5aPkGDP<K_9=n@*<Gke>%QPfu'6FNLWWWHo[Df6B5<GAfDDlP/CC\[4=k;ndiG\q26G4XnWlBg(nfMcs\lmjZ^T$>HZ%<@#49_j-fo'o(q@TfVC2@8(fF-?Sl%[d680~>endstream
|
||||
endobj
|
||||
13 0 obj
|
||||
<<
|
||||
/Filter [ /ASCII85Decode /FlateDecode ] /Length 864
|
||||
>>
|
||||
stream
|
||||
Gatn#d<:sD&;KY%MZ;,u-t*]a0AE;2l"LeE^$NuZ#2Kt/Z7NDtI:kuC@]`AN;8>3-0]1/?1FqDT+ZB?l!PG&b@NlorbVP(%$Sh[5&+e(V7r1>D,7OO$Sb\[$HngWb%]rlU37.)O^^#WF3,f/^DZU.rD"k@^r<DiubhkJ$*?QponL3+3Js_$T*83V:@ET6Ec=Zn.HV-h/(90jG8FIf[*h=Ud]1*^<XjWH*`'rZ:.8EU*2MoD9ne=^V;u[?(_2Jh9S1;4&XD=j%K![Zm^`Yat!;H+NM>]s<@X+4*-V^2EF=V(,Ou^a@Xif+hN^e"]ItllskR_4]!aeV*(cr5R6$o%(\lU2"C!kF`bRjG!rNc2INKOcSHaqA*/fR>KBQW(7=Y3XZA=pLXaK!AteNK^maX4L$,rWrZQp`OnBe]5gkX+PK8^<Q:NKpeBLG66Lgh#.:.^`NC3M#_[m-SC7_MV]KmWbM/jp1VZ@n1IO/.b9*gDmP0&VE"$iU\bUP?ud1^+8Zqi^U'T_Mc;ci)7g$kg#O5W[CH=(KA;p*sB_AXu00U:s'NGI-lL@cr;IOV3p(6H`TGG*rigFP]%7[Mpb12Wm\*^V!FT\G"Fd_r!cAL07WQI)Hgb]DQCpE$)LnQI>O<=3Tr=A)lbjIGJhIP:lq1GJpKs[D'cB)>;*Xh:1A<M<BpJ$<=_LRDnW#bfBmn>^2RgUiE2V*4>g"S7@74lE+qiYAC`-M__^EPXthKi/Yg@W(;qS_dGUu$@2'[k:V7^:"8f[g$,cNTA\S>fB[=Top:K8H.6U^G0FD+KVLK0qhh#6lCMh1,mcL"eWe>>>ds#j)I:'>k04emj9t<WYbX3Rt](MZt[j%R<)nHsh$3~>endstream
|
||||
endobj
|
||||
xref
|
||||
0 14
|
||||
0000000000 65535 f
|
||||
0000000061 00000 n
|
||||
0000000132 00000 n
|
||||
0000000239 00000 n
|
||||
0000000351 00000 n
|
||||
0000000466 00000 n
|
||||
0000000576 00000 n
|
||||
0000000771 00000 n
|
||||
0000000890 00000 n
|
||||
0000001085 00000 n
|
||||
0000001154 00000 n
|
||||
0000001435 00000 n
|
||||
0000001501 00000 n
|
||||
0000003635 00000 n
|
||||
trailer
|
||||
<<
|
||||
/ID
|
||||
[<1aa07c40c21187ab5d698a6eaba1f1cf><1aa07c40c21187ab5d698a6eaba1f1cf>]
|
||||
% ReportLab generated PDF document -- digest (opensource)
|
||||
|
||||
/Info 10 0 R
|
||||
/Root 9 0 R
|
||||
/Size 14
|
||||
>>
|
||||
startxref
|
||||
4590
|
||||
%%EOF
|
||||
+1940
File diff suppressed because it is too large
Load Diff
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -0,0 +1 @@
|
||||
I'm way behind. i ended up getting tied up for a few hours while i was in the middle of processing this mornings expected arrivals. can you finish processing anything remaining for today and handle any msgs that came in while i was away? thanks
|
||||
@@ -0,0 +1 @@
|
||||
Today's date is, April, 15, 1pm. You are an office assistant with access to the user's filesystem (/workdir), email (google_mail_*), slack (slack_*), calendar (google_calendar_*), jira (jira_*), and shopify (shopify_*) tools. The workspace directory /workdir contains files for the task. Do NOT ask the user for more information — use your tools to discover what you need. Begin by listing /workdir and reading relevant files.
|
||||
@@ -0,0 +1,23 @@
|
||||
schema_version = "1.1"
|
||||
|
||||
[task]
|
||||
name = "sop-tasks/logistics_prairie_star_creamery_4a2f4b1a"
|
||||
description = "SOP task from CSV row 4a2f4b1a"
|
||||
|
||||
[agent]
|
||||
timeout_sec = 3600.0
|
||||
|
||||
[verifier]
|
||||
timeout_sec = 3600.0
|
||||
|
||||
[environment]
|
||||
os = "linux"
|
||||
cpus = 2
|
||||
memory_mb = 4096
|
||||
env = { INPUTDIR = "/data", OUTPUTDIR = "/data", WORLDBENCH_TOOL_SETS = "syntara_ds_all google_mail_contacts slack_core google_mail_core google_calendar_core jira_core shopify_core" }
|
||||
|
||||
[[environment.mcp_servers]]
|
||||
name = "mcp-proxy"
|
||||
transport = "streamable-http"
|
||||
url = "http://localhost:8000/mcp"
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,135 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Run bundled SOP Python verifiers inside a Harbor task container."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import json
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
import traceback
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
WORKDIR = Path("/workdir")
|
||||
DATA_DIR = Path("/data")
|
||||
INITIAL_DATA_DIR = Path("/initial_data")
|
||||
TESTS_DIR = Path("/tests")
|
||||
VERIFIER_DIR = Path("/logs/verifier")
|
||||
|
||||
SERVICE_COMPAT_FILES: dict[str, tuple[str, tuple[str, ...]]] = {
|
||||
"slack": ("slack.json", ("slack.json", "slack_data.json")),
|
||||
"google_mail": ("inbox.json", ("inbox.json", "mailbox.json")),
|
||||
"google_calendar": ("calendar_data.json", ("calendar_data.json", "calendar.json")),
|
||||
"jira": ("jira_state.json", ("jira_state.json", "jira_data.json")),
|
||||
"shopify": ("shopify_data.json", ("shopify_data.json",)),
|
||||
}
|
||||
|
||||
|
||||
def _state_path(service: str, seed_name: str) -> Path | None:
|
||||
candidates = [
|
||||
DATA_DIR / service / "final.json",
|
||||
DATA_DIR / service / seed_name,
|
||||
INITIAL_DATA_DIR / service / seed_name,
|
||||
]
|
||||
return next((p for p in candidates if p.is_file()), None)
|
||||
|
||||
|
||||
def _build_compat_external_services(dest: Path) -> None:
|
||||
dest.mkdir(parents=True, exist_ok=True)
|
||||
for service, (seed_name, compat_names) in SERVICE_COMPAT_FILES.items():
|
||||
src = _state_path(service, seed_name)
|
||||
if src is not None:
|
||||
for compat_name in compat_names:
|
||||
shutil.copy2(src, dest / compat_name)
|
||||
|
||||
|
||||
def _coerce_result(raw: Any) -> dict[str, Any]:
|
||||
if isinstance(raw, dict):
|
||||
passed = bool(raw.get("pass", raw.get("passed", False)))
|
||||
score = raw.get("score", 1.0 if passed else 0.0)
|
||||
try:
|
||||
score = float(score)
|
||||
except (TypeError, ValueError):
|
||||
score = 1.0 if passed else 0.0
|
||||
return {
|
||||
"pass": passed,
|
||||
"score": max(0.0, min(1.0, score)),
|
||||
"feedback": str(raw.get("feedback", "")),
|
||||
}
|
||||
passed = bool(raw)
|
||||
return {"pass": passed, "score": 1.0 if passed else 0.0, "feedback": str(raw)}
|
||||
|
||||
|
||||
def _run_one(rubric: dict[str, Any], external_services_path: Path) -> dict[str, Any]:
|
||||
rubric_id = str(rubric.get("id") or "rubric")
|
||||
code = rubric.get("verifier_code")
|
||||
if not isinstance(code, str) or not code.strip():
|
||||
return {
|
||||
"id": rubric_id,
|
||||
"pass": False,
|
||||
"score": 0.0,
|
||||
"feedback": "rubric has no verifier_code",
|
||||
}
|
||||
|
||||
namespace: dict[str, Any] = {"__builtins__": __builtins__}
|
||||
try:
|
||||
exec(compile(code, f"<{rubric_id}>", "exec"), namespace)
|
||||
verify = namespace.get("verify")
|
||||
if not callable(verify):
|
||||
raise RuntimeError("verifier_code did not define verify()")
|
||||
result = _coerce_result(verify(str(WORKDIR), str(external_services_path)))
|
||||
return {"id": rubric_id, **result}
|
||||
except Exception:
|
||||
return {
|
||||
"id": rubric_id,
|
||||
"pass": False,
|
||||
"score": 0.0,
|
||||
"feedback": traceback.format_exc(),
|
||||
}
|
||||
|
||||
|
||||
def main() -> None:
|
||||
rubrics_path = TESTS_DIR / "rubrics.json"
|
||||
if not rubrics_path.is_file():
|
||||
print("[sop-verifier] ERROR: rubrics.json not found", file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
rubrics = json.loads(rubrics_path.read_text())
|
||||
if not isinstance(rubrics, list):
|
||||
print("[sop-verifier] ERROR: rubrics.json must be a list", file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
with tempfile.TemporaryDirectory(prefix="sop-external-services-") as tmp:
|
||||
compat_dir = Path(tmp)
|
||||
_build_compat_external_services(compat_dir)
|
||||
results = [_run_one(r, compat_dir) for r in rubrics]
|
||||
|
||||
total = len(results)
|
||||
passed = sum(1 for r in results if r.get("pass"))
|
||||
average_score = round(
|
||||
sum(float(r.get("score", 0.0)) for r in results) / total,
|
||||
4,
|
||||
) if total else 0.0
|
||||
|
||||
print(f"[sop-verifier] {passed}/{total} rubrics passed; score={average_score:.2f}")
|
||||
for result in results:
|
||||
status = "PASS" if result.get("pass") else "FAIL"
|
||||
feedback = str(result.get("feedback", "")).replace("\n", " ")[:500]
|
||||
print(f" [{status}] {result.get('id')}: {feedback}")
|
||||
|
||||
output = {
|
||||
"passed": passed == total,
|
||||
"rubrics_passed": passed,
|
||||
"rubrics_total": total,
|
||||
"score": average_score,
|
||||
"rubric_results": results,
|
||||
}
|
||||
(TESTS_DIR / "results.json").write_text(json.dumps(output, indent=2) + "\n")
|
||||
|
||||
VERIFIER_DIR.mkdir(parents=True, exist_ok=True)
|
||||
(VERIFIER_DIR / "reward.txt").write_text(str(average_score))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1 @@
|
||||
today is april 15, it's 1pm and now i'm way behind. i ended up getting tied up for a few hours while i was in the middle of processing this mornings expected arrivals. can you finish processing anything remaining for today and handle any msgs that came in while i was away? thanks
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
pip install openpyxl pdfplumber python-docx 2>/dev/null
|
||||
python /tests/sop_verifier.py
|
||||
Reference in New Issue
Block a user