Files
scriptorium/docs/releases/v0.14.0.md
Eric Rakestraw 2126864153
All checks were successful
ci/woodpecker/tag/release Pipeline was successful
Prepare the v0.14.0 release
2026-09-26 18:39:45 +00:00

3.9 KiB

Scriptorium v0.14.0

This minor release adopts Promptkit v0.11.0 and ConfigKit v0.4.0, adds application-configuration inspection, and exposes request retry controls, whole-run deadlines, and optional terminal execution reports.

Configuration migration

Scriptorium now uses ConfigKit for application configuration. This intentionally changes accepted input and precedence:

  • An existing empty file is invalid; use {} for an empty mapping. Explicit empty strings and zeroes replace lower values, while null is accepted only for nullable fields. --config '' is invalid. An explicitly empty server address reaches the standard HTTP server rather than restoring :8080.
  • YAML decoding is stricter: unknown fields, additional documents, anchors/aliases, unsupported scalar forms, and other inputs rejected by ConfigKit now fail. The configkit key is reserved, and ConfigKit's source and resource limits apply. Backend parameter integers use its int64 shape.
  • File-backed configurations can explicitly import path or glob fragments and select one named overlay with --config-overlay. These files stay under the selected configuration file's canonical directory. Application path values remain relative to the process working directory. Only explicitly supplied application CLI flags override file or overlay settings.

Use config validate, config show, config sources, and config explain to inspect application settings without creating an engine or contacting a model. Validation is not a provider probe or complete Promptkit definition check; effective output is not guaranteed reloadable. Inspection keeps ordinary extra_params values, including historical values, and api_key_env reference names visible. Keep secrets out of parameters and protect inspection output; actual API-key values remain with Promptkit and are never resolved by ConfigKit. Request retry overrides and Promptkit credential requirements are separate from application configuration.

Promptkit and execution changes

Promptkit v0.11.0 uses its /v2 catalogs. The deepseek-3-2, deepseek-4-flash, and deepseek-4-pro profile IDs are removed without aliases; select an available catalog profile, a maintained Promptkit profile, or a complete application-owned profile.

Promptkit's built-in transient retry default is two additional attempts. This can increase provider calls, latency, and cost; an application or request retry override of zero disables additional attempts. Repair generations have their own retry budgets. Generation timeouts apply per attempt. CLI --run-timeout and HTTP run_timeout_seconds add optional whole-run deadlines; an expired HTTP execution returns 504 deadline_exceeded, caller cancellation returns 408 request_canceled, and a live-context provider-attempt failure remains a 502 response.

CLI --execution-report and HTTP include_execution_report expose optional terminal reports. Reports are absent when no terminal observation exists, can contain sensitive identifiers, and do not replace result usage. CLI report writes are separate and nontransactional; HTTP report bytes count toward the response-size limit.

For complete behavior, see the CLI, configuration, HTTP API, and operations references. The repository now includes dependency attribution and license texts.

LICENSE | ATTRIBUTION