Skip to main content

Crate optimization_job_api

Crate optimization_job_api 

Source
Expand description

§optimization-job-api

Optimization ecosystem · Shared solver-selection and agent guide

Versioned optimization jobs for agents and people: the job envelope optimization.job/0.1, the result contract optimization.result/0.2 with claims and evidence, checked journals, input hashing, worker-declared artifacts and the worker SDK (worker::run, Worker, Prepared).

A worker implements Worker::prepare and returns a Prepared task set; the SDK owns concurrency, journal commits and the final manifest. The runner optimization-runner (optimization-run, optimization-mcp) schedules registered workers on one CPU budget.

Workers built on this crate: the fcmaes worker in fcmaes-rust, the LP/MIP worker in LP-IP-craft and the NLP worker in SQP-craft.

See the guide and the JSON Schemas. Linux only for process supervision. MIT license.

The legacy module keeps compatibility with the earlier fcmaes.job/0.1 format; its numerical semantics are unchanged.

Re-exports§

pub use spec::*;

Modules§

artifact
Artifacts: files of a job attempt that agents may read through the runner (jobs artifact, MCP get_artifact), during the run and after it.
legacy
Compatibility for fcmaes.job/0.1; numerical semantics are unchanged.
process
Shell-free process groups and bounded I/O, extracted/adapted from route_agent.
result
spec
storage
Durable primitives extracted from route_search and route_archive (3ef2673).
worker
Small blocking worker SDK. Solver state is private to each task; results are committed before a completed task is reported. No solver checkpoint is implied.

Structs§

Coded
An error with a stable, machine-readable code. The runner prints the code next to the message; the guide lists every code.

Functions§

coded
An Error carrying code.
error_code
The code of error, runner_error if it has none.
retryable
True for error codes after which the identical command can succeed later without any change: only attempt_active (wait for the processes of the attempt to exit). Every other error needs a different request, a re-registered worker or operator action.

Type Aliases§

Error
Result