Skip to content

Commit 466af3c

Browse files
Regenerate agent-semantic@v2 with tool-only sessions and realistic phase timings.
Keep n_tools>=3 (BFCL+tau2 pad to 200), sample llm_wait longer than tool_loop, and run the full dataset in CI. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent f9c1d2b commit 466af3c

12 files changed

Lines changed: 708 additions & 560 deletions

File tree

.github/workflows/e2e-kind.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ jobs:
7070
# Parallel ablation: one Kind cluster per policy variant (no mid-run POLICY switch).
7171
e2e-eval:
7272
runs-on: ubuntu-latest
73-
timeout-minutes: 90
73+
timeout-minutes: 240
7474
strategy:
7575
fail-fast: false
7676
matrix:
@@ -116,13 +116,13 @@ jobs:
116116
chmod +x hack/*.sh hack/replay-agent-semantic.py
117117
./hack/kind-up.sh
118118
119-
- name: Agent-semantic replay (8 agents / 2 workers)
119+
- name: Agent-semantic replay (full @v2 / 2 workers)
120120
env:
121121
KIND_CLUSTER_NAME: ${{ matrix.cluster }}
122122
E2E_SUITE: agent-semantic
123123
ACTORDOCK_API: http://127.0.0.1:18080
124124
EVAL_OUT_DIR: docs/eval/results
125-
AGENT_SEMANTIC_LIMIT: "8"
125+
AGENT_SEMANTIC_LIMIT: "0"
126126
AGENT_SEMANTIC_INFLIGHT: "8"
127127
AGENT_SEMANTIC_MIN_WORKERS: "2"
128128
AGENT_SEMANTIC_SPEED: "60"

docs/eval/agent-semantic-workload.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Related:
77
- Policy algorithm: [`../architecture/semantic-score.md`](../architecture/semantic-score.md)
88
- Dataset requirements: [`../research/datasets.md`](../research/datasets.md)
99
- Metrics vocabulary: [`../research/metrics.md`](../research/metrics.md)
10-
- CI: `E2E_SUITE=agent-semantic` (8 agents / 2 workers; random / resource-evict / semantic-score-l1 / semantic-score)
10+
- CI: `E2E_SUITE=agent-semantic` (full `@v2` / 2 workers; random / resource-evict / semantic-score-l1 / semantic-score)
1111

1212
## 1. Goal
1313

@@ -28,7 +28,7 @@ There is **no public “sandbox-slot scheduling” benchmark**. We therefore **s
2828
|---------------------------------------------|----------------------------------|
2929
| Use AgentProcessBench task text and tool traces as-is | Hand-write or LLM-write prompts |
3030
| Use Azure Functions 2019 timestamps as-is | Sample Poisson / Zipf arrivals |
31-
| Derive `phase_spans` from tool timestamps with fixed rules | Invent phase labels |
31+
| Derive `phase_spans` from tool turns with **seeded random** durations (llm_wait > tool) | Invent phase labels |
3232
| Run existing HF `classify(task_text)``task_profile` | Invent difficulty tiers |
3333
| Pin `worker_pool` in experiment config | Claim pool size is “from the dataset” |
3434

@@ -42,7 +42,7 @@ The splice script only **joins and renames fields**. Classifier output is a **de
4242
- Paper: [arXiv:2603.14465](https://arxiv.org/abs/2603.14465)
4343
- Contents: 1000 trajectories (250 each: `bfcl`, `gaia_dev`, `hotpotqa`, `tau2`) with multi-turn messages, tools, and tool-use traces
4444

45-
**v2 default (single source):** only APB **`bfcl`** (≤250 trajectories = 50 queries × 5 samples). Select **all `l3_active` first**, then pad to `--target` (default **200**) with tool_dense / other. Tag `eval.cohort` ∈ {`l3_hard`,`l3_mid`,`l3_easy`,`l3_inactive`}.
45+
**v2 default:** APB **`bfcl`** primary + **`tau2`** pad to `--target` (default **200**). Keep only `n_tools≥3` (default `--min-tools 3`). Prefer `l3_active`, tag `eval.cohort` ∈ {`l3_hard`,`l3_mid`,`l3_easy`,`l3_inactive`}. Phase durations: llm_wait ~2–8s, tool_loop ~0.1–1.5s (always shorter; `--seed`).
4646

4747
### 3.2 Arrivals / concurrency — Azure Functions 2019
4848

@@ -113,14 +113,14 @@ Schema version: `agent-semantic.session.v2`.
113113
Pinned by CI / `hack/verify-local.sh` env (example):
114114

115115
```bash
116-
AGENT_SEMANTIC_LIMIT=8
116+
AGENT_SEMANTIC_LIMIT=0
117117
AGENT_SEMANTIC_INFLIGHT=8
118118
AGENT_SEMANTIC_MIN_WORKERS=2
119119
AGENT_SEMANTIC_SPEED=60
120120
AGENT_SEMANTIC_POLICIES=random,resource-evict,semantic-score-l1,semantic-score
121121
```
122122

123-
`semantic-score-l1` sets `SEMANTIC_PRIOR_MIX=0` (L1 lock only); `semantic-score` sets `0.3` (L1+L3).
123+
`semantic-score-l1` sets `SEMANTIC_PRIOR_MIX=0` (L1 lock only); `semantic-score` sets `0.3` (L1+L3). `LIMIT=0` means all `@v2` sessions.
124124

125125
### 5.3 Output — per-policy result records
126126

@@ -198,7 +198,7 @@ Refuse to publish the package if:
198198
|------|------|-----|
199199
| **A. Live Kind replay** | Primary claim for Actordock | Port-forward CP; for each policy, Create/Resume sandboxes on `arrival_ts` schedule; drive agent (or phase-faithful stub) from `tool_trace`; POST L1/L3 signals; collect `/metrics` + victim logs |
200200
| **B. Offline decision replay** | Fast ablation of keepScore | Feed cached signals + arrivals into a Place/Evict simulator that embeds `semantic-score` / baselines; no gVisor |
201-
| **C. CI agent-semantic** | PR / main Kind job | Matrix: one cluster per policy (`random`, `resource-evict`, `semantic-score-l1`, `semantic-score`); merge job builds compare table |
201+
| **C. CI agent-semantic** | PR / main Kind job | Matrix: full `@v2` (200) per policy (`random`, `resource-evict`, `semantic-score-l1`, `semantic-score`); merge job builds compare table |
202202

203203
Primary paper/demo numbers should come from **Mode A** (or A+B agreement).
204204

docs/eval/datasets/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ Place versioned dataset packages here (`<name>@v<N>/...`). Requirements: [../../
66

77
| Package | Builder | Notes |
88
|---------|---------|-------|
9-
| [`agent-semantic@v2`](./agent-semantic@v2/) | `./hack/build-agent-semantic-dataset.py --target 200` | **Preferred.** Single-source BFCL; L3 cohorts + spaced waves |
9+
| [`agent-semantic@v2`](./agent-semantic@v2/) | `./hack/build-agent-semantic-dataset.py --target 200 --min-tools 3` | **Preferred.** BFCL+tau2; all `n_tools≥3`; L3 cohorts + spaced waves |
Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
# agent-semantic@v2
22

3-
Single-source agent workload for **semantic-score**.
3+
Agent workload for **semantic-score** (all sessions have `n_tools≥3`).
44

55
| Source | Role |
66
|--------|------|
7-
| AgentProcessBench **BFCL** | Task text + tool trajectories |
7+
| AgentProcessBench **bfcl** (primary) + **tau2** (pad) | Task text + tool trajectories |
88
| Azure Functions 2019 day01 | Arrival wave spacing only |
99

10+
Phase spans use seeded random durations: llm_wait 2–8s, tool_loop 0.1–1.5s (always shorter).
11+
1012
```bash
11-
./hack/build-agent-semantic-dataset.py --target 200 --classify hf
13+
./hack/build-agent-semantic-dataset.py --target 200 --min-tools 3 --seed 42 --classify hf
1214
```
1315

1416
See `summary.json`. Contract: [`../../agent-semantic-workload.md`](../../agent-semantic-workload.md).

0 commit comments

Comments
 (0)