Prepare the v0.14.0 release

This commit is contained in:
2026-09-26 18:39:45 +00:00
parent 47c2a711f0
commit e913310615

66
docs/releases/v0.14.0.md Normal file
View File

@@ -0,0 +1,66 @@
# 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](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/docs/cli.md),
[configuration](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/docs/config.md),
[HTTP API](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/docs/api.md),
and [operations](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/docs/operations.md)
references. The repository now includes
[dependency attribution and license texts](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/docs/oss/attribution.md).
[LICENSE](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/LICENSE) | [ATTRIBUTION](https://gitea.maximumdirect.net/eric/scriptorium/src/tag/v0.14.0/docs/oss/attribution.md)