Can LLM Agents Be Forward-Deployed Engineers? Requirement Discovery and Delivery for Enterprise Text-to-SQL
Organizations: Oracle AI
Abstract
LLM coding agents can increasingly automate model post-training, but whether they can act as forward-deployed engineer (FDE) agents, discovering customer requirements and turning them into deployment decisions, remains unclear. We study this on a real enterprise text-to-SQL engagement: a simulated customer, grounded in the real use case's requirements, starts with an ambiguous request. An agent must discover acceptance criteria, data permissions, and hardware constraints in the discovery phase, then plan and execute a post-training recipe in the delivery phase. Across 15 models, the strongest discover over 80% of withheld requirements and open-weight models discover 40-50%; in the delivery phase, only 25% of runs across eight coding-agent configurations pass all acceptance criteria. We identify four bottlenecks in this engagement: (1) incomplete discovery, with 40% of withheld requirements missing or misrepresented; (2) unreliable execution; (3) underused compute budgets and a lack of systematic comparisons across base models and post-training methods; and (4) benchmark accuracy does not guarantee production readiness. We suggest human review of discovered requirements, monitoring of the agent's plan during execution, and an explicit experiment-environment specification covering hardware, budget scope, and production checks.
Figures & tables
| Recovery Rate (%) | Dialogue | |||||
| Model | Low | Mod. | Extr. | Mean | Elicit. | Asks |
| Anthropic | ||||||
| Claude Opus 5.5 | ||||||
| Claude Opus 5 | ||||||
| Claude Fable 5 | ||||||
| Claude Sonnet 5.5 | ||||||
| Quality | Serving | ||||||
|---|---|---|---|---|---|---|---|
| Agent backbone model | Delivery workflow | Fine-tuned model | Spider EX | BIRD EX | Prod. fail (%) | p90 (s) | Pass |
| GPT-5.6 Sol | Decoupled | Ministral 3 8B | 76.11 | 27.92 | 9 | 11.24 | Yes |
| Autonomous | Llama 3.1 8B | 72.63 | 27.72 | 10 | 16.16 | No | |
| GPT-6.1 Sol | Decoupled | Llama 3.1 8B | 55.90 | 20.87 | 5 | 14.78 | No |
| Autonomous | Llama 3.1 8B | 71.57 | 24.53 | 6 | 12.62 | Yes | |
| Grok 4.7 | Decoupled | Ministral 3 8B | 63.64 | 19.44 | 16 | 15.91 | No |
| Harness | Spider | BIRD | Fail (%) | p90 (s) | Pass |
|---|---|---|---|---|---|
| OpenCode | 72.6 | 27.7 | 10 | 16.2 | No |
| Codex | 75.0 | 27.2 | 10 | 10.8 | Yes |
Appendix figures & tables8 assets
Supplementary material from the paper’s appendix.
Appendix
| Level | Stated in the opening | Withheld |
|---|---|---|
| Low | Accuracy ; latency s; conditional CPU preference | 14/17 |
| Moderate | Conditional CPU preference; accuracy and responsiveness only qualitatively | 16/17 |
| Extreme | Broad intent, no scored fact | 17/17 |
| Low | “We’re building a cloud database service and need help turning natural language questions into Oracle SQL. We need at least 60% execution accuracy on our workload, with responses in under fifteen seconds . We’d prefer CPU for inference to keep costs down, but only if it can meet those goals.” |
|---|---|
| Moderate | “We’re building a cloud database service and need help turning customers’ natural-language questions into Oracle SQL. It needs to be accurate and responsive. We would prefer CPU if it can meet our needs, to keep running costs down.” |
| Extreme | “We’re building a cloud database service and want help turning customer questions into Oracle SQL. We’re hoping for something accurate and responsive, and need help figuring out what’s needed.” |
| Core fact | Tier |
| Requirements facts | |
| Single-turn SQL product scope | Hard |
| Spider-dev execution-accuracy acceptance | Hard |
| Production CPU latency and reporting requirements | Hard |
| Conditional preference for CPU serving | Preference |
| Optional A100 80-GB comparison baseline | Preference |
| Level | ||||
|---|---|---|---|---|
| Low | 2,100 | 1,123 | 1,182 | 858 |
| Moderate | 2,400 | 1,342 | 1,434 | 1,060 |
| Extreme | 2,550 | 1,657 | 1,611 | 1,330 |
| All | 7,050 | 4,122 | 4,227 | 3,248 |
| Agreement | / | |||
|---|---|---|---|---|
| Model | Human | Gemini | ||
| GPT-5.6 Sol | 15/17 | 15/17 | 15 / 14 | 13 / 12 |
| GLM-5.3-Flash | 9/17 | 12/17 | 9 / 9 | 11 / 7 |
| Llama 3.3 70B | 12/17 | 15/17 | 8 / 5 | 11 / 6 |
| Pooled | 36/51 | 42/51 | — | — |
| Gap | Verbatim trajectory excerpt | Interpretation and treatment in the finalized requirements |
|---|---|---|
| Compilation semantics | Agent (turn 6): “For the production-style compilation metric, what exact Oracle operation determines success—for example parse-only, EXPLAIN PLAN, or execution—and should timeouts, permission errors, missing objects, and multi-statement/non-SQL output count as compilation errors?” Customer (turn 6): “For the compilation check, things like SQL syntax errors, query timeouts, missing answers, or rejected predictions all count as failures. We haven’t defined the exact Oracle operation for success, or the handling for permission errors, missing objects, and multi-statement/non-SQL output.” | The agent elicited known failure categories while establishing that the success operation and several edge cases remained unresolved. Finalized requirements: Define the exact Oracle operation that constitutes successful compilation and classify the remaining error cases. |
| Database safety and privilege/error policy | Agent (turn 1): Asked “whether generated SQL must be strictly read-only.” Customer (turn 1): “We haven’t decided yet whether the final SQL must be strictly read-only.” Agent (turn 7): “Until the read-only decision is made, should non-SELECT/DML/DDL statements be blocked for safety during all evaluation execution, or is that unresolved too?” Customer (turn 7): “That’s related to the read-only question which we haven’t decided on yet. So, that’s also unresolved for now.” | The agent did not infer authorization from silence. It separated the known need to execute evaluation SQL from the unresolved production safety policy. Finalized requirements: Decide whether SQL must be read-only and whether DML/DDL/non-SELECT statements must be blocked. |
| Latency boundary | Customer (turn 5): “For latency, the p90 response time needs to be under 15 seconds. This is for the 100 production questions, measured one request at a time on a CPU. […] We haven’t decided yet exactly what the timer should include, like whether it covers database execution time.” Agent (turn 6): “For the p90 timer, can you define the start/end boundary, or confirm that it remains explicitly unresolved for this phase?” Customer (turn 6): “The exact start and end points for the latency timer are still unresolved for now.” | The threshold, workload, concurrency, and device were requirements; the measured interval was not. The agent preserved that distinction. Finalized requirements: Define latency timer boundaries, including preprocessing, generation, validation, and database execution. |
| Evaluation protocol | Agent (turn 2): “Should semantically equivalent SQL pass when its returned rows match, and how should row order, numeric tolerances, NULLs, and execution errors be scored?” Customer (turn 2): “For the dev sets, we’ll use execution accuracy. You’ll run the generated SQL and compare its results against the results from the reference SQL. We haven’t pinned down the specific rules for matching, like row order or numeric tolerances.” Customer (turn 11), after an interim rule was proposed: “Regarding the result matching, we haven’t defined those detailed rules yet.” | The customer established the metric but not its equivalence relation. The agent proposed a concrete rule for confirmation, received no authorization, and left it open. Finalized requirements: Define execution-result equivalence: row order, duplicates, numeric tolerance, NULLs, and error handling. |
| Setting | Planner | Executor | Executor effort |
|---|---|---|---|
| Decoupled | GPT-5.6 Sol | GPT-5.6 Sol | Max |
| Decoupled | GPT-6.1 Sol | GPT-6.1 Sol | Max |
| Decoupled | Grok 4.7 | Grok 4.7 | Max |
| Decoupled | GLM 5.3 Flash | GLM 5.3 Flash | Max |
| Autonomous | GPT-5.6 Sol | Same session | Max |
| Autonomous | GPT-6.1 Sol | Same session | Max |
| Delivery workflow | Run | Outcome | Failure reason |
|---|---|---|---|
| Autonomous | 1 | Acceptance failed | Compilation threshold exceeded |
| 2 | Evaluation blocked | Missing database credentials | |
| 3 † | Pass (delivery + targets) | — | |
| Decoupled | 1 | Evaluation blocked | Retrieving Hugging Face credentials failed |
| 2 | Execution terminated | Agent continuation limit | |
| 3 † | Finished delivery execution, Acceptance failed | Spider accuracy missed |
LLM Agents
Large language model agents use language models to plan, use tools, and act across multi-step tasks and environments.
See all 740 papers