Skip to main content
Glama

diana_solve

Prepares an open DianaIE model and solver settings for human-reviewed validation, baseline, or parameter-study gates, then executes approved solver jobs.

Instructions

Submit the open DianaIE model through the mandatory development/baseline/parameter-study gate.

With no authorization id this does not start a solver: it prepares the complete model and solver settings, fits the model in the DianaIE 3D view and opens the native human-review panel. After the user clicks a decision, call again with review_id. A review approved as a baseline becomes trusted only after this validation run passes post-solve quality checks. Later calls may use that baseline_id or an approved campaign_id; campaign variants are compared with the baseline snapshot and need no per-case human review while they stay in the approved parameter envelope and pass self-checks.

Args: analysis: name of an analysis of the open project (see diana_model_summary). job_dir: folder for the job files; default /jobs/. threads: threads for element loops (diana.exe -n); the sparse solver's threads are set in the .dcf (SOLVE PARDIS ... MAXTHR, manual H.6.1). keep_ff: keep the FILOS database (.ff, often hundreds of MB) after the run, e.g. to restart from it. tb_no_paging: write TABULA (.tb) output without page layout (LINPAG 0): no page headers and no column headers repeated every 66 lines. Only the job's copy of the .dcf is changed. tb_digits: significant digits of results in the .tb (1-10; DIANA's default is 4, e.g. 2.385E+01). review_id: GUI-approved development review for exactly one validation/debug run. baseline_id: trusted baseline produced by a human-reviewed validation run. campaign_id: one-time GUI-approved parameter-study plan for this variant. case_parameters: complete name/value map required by the approved campaign.

Input Schema

NameRequiredDescriptionDefault
job_dirNo
keep_ffNo
threadsNo
analysisYes
review_idNo
tb_digitsNo
baseline_idNo
campaign_idNo
tb_no_pagingNo
case_parametersNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.10.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it discloses that the first call does not launch the solver but prepares settings, fits the 3D view, and opens a GUI review panel; that keep_ff retains a potentially hundreds-of-MB FILOS database; that tb_no_paging only mutates the job's copy of the .dcf; and that a baseline is trusted only after post-solve quality checks pass. It omits whether the run is synchronous or queued and what failure/permission behavior looks like, which is why it is not a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and the critical 'does not start a solver' caveat are front-loaded, and the Args block is dense but every entry adds real information. Some sentences are long and run together (the baseline/campaign paragraph), and inline backticks and parenthetical citations like 'manual H.6.1' add visual noise, but there is little outright waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a ten-parameter tool with zero annotation coverage, the description supplies the gating workflow, per-parameter semantics, and the review/baseline/campaign lifecycle that an agent needs to sequence calls correctly. An output schema exists so return values need not be explained; the remaining gap is the absence of any statement about execution mode or error handling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description documents all ten parameters with meaning the schema does not carry: job_dir default path pattern, threads vs. the sparse solver's separate .dcf MAXTHR setting, keep_ff's disk cost and restart purpose, tb_no_paging's LINPAG 0 effect on headers, and tb_digits' 1-10 range against DIANA's default of 4. The three authorization ids are distinguished by lifetime (one validation run / trusted baseline / one-time campaign plan) and case_parameters is tied to the approved campaign.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Submit the open DianaIE model') and immediately qualifies the scope with the 'development/baseline/parameter-study gate' and the crucial caveat that without an authorization id it does not start a solver. That caveat is what separates it from diana_run_solver, though the sibling is never named explicitly, leaving the agent to infer the contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit multi-step usage path: call with no auth id to prepare the model and open the human-review panel, wait for the user's decision, then call again with review_id; later calls may instead carry baseline_id or campaign_id. It also states when per-case human review is NOT needed (campaign variants inside the approved envelope). No explicit exclusions naming sibling tools such as diana_run_solver or diana_review_prepare.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.