All checks were successful
ci/woodpecker/tag/release Pipeline was successful
60 lines
3.5 KiB
Markdown
60 lines
3.5 KiB
Markdown
# Audita v3.0.0
|
|
|
|
Audita v3 adopts native configuration inheritance and layered PromptKit
|
|
definitions, and allows transcript and report destinations to be selected
|
|
independently. This is an intentional breaking release: existing PromptKit
|
|
profile files require migration from the v2 release format.
|
|
|
|
## Changes
|
|
|
|
- ConfigKit is updated from v0.4.2 to v0.5.0. Application configuration supports
|
|
native sibling inheritance, and configuration explanations include value-free
|
|
inheritance provenance.
|
|
- PromptKit is updated from v0.11.2 to v0.12.0, with both backend catalogs at
|
|
`v3.20260930.0`. Native keyed definitions support profile inheritance and
|
|
operator prompt overrides. The selected `profiles_dir` can contain profiles,
|
|
backends, and prompts; application backend endpoints, capacity, and credentials
|
|
remain authoritative.
|
|
- Effective definitions and referenced prompt message contents are captured at
|
|
runtime construction. Consumed host configuration and message files are
|
|
protected from output collisions. Audita retains its per-call schemas, domain
|
|
validators, retry and repair budgets, and resilient processing behavior.
|
|
- An explicit `--report-dir` now selects reports for either file or stdout
|
|
transcript output. File output without that flag still places reports beside
|
|
the transcript. This supports Narratio's independent output destinations;
|
|
debug capture remains independently selectable.
|
|
|
|
## Upgrading from v2
|
|
|
|
1. Convert each old PromptKit profile to a keyed definition under
|
|
`profiles: {<profile-id>: ...}`, remove its inner `id`, and replace
|
|
`base_profile` with `extends`. Profile IDs come from mapping keys rather than
|
|
filenames. No compatibility loader or automatic conversion is provided.
|
|
2. Review explicit zero, omitted, and null generation controls. For example,
|
|
`temperature: 0` now sends an explicit zero, omission leaves the control
|
|
unspecified, and null suppresses an inherited control. A zero profile timeout
|
|
disables PromptKit's generation deadline; Audita's operation deadline still
|
|
applies.
|
|
3. Select a configuration root whose final definitions are valid. PromptKit now
|
|
validates unused definitions too, including backend references, and conflicting
|
|
values within a directory source group are errors. The maintained examples
|
|
use separate [local](../../examples/profiles/local/) and
|
|
[service](../../examples/profiles/service/) roots. Runtime source edits take
|
|
effect on the next invocation.
|
|
4. Rename any application backend literally named `extends` and update its
|
|
profile references. ConfigKit now reserves that key for inheritance.
|
|
5. Validate the migrated installation with
|
|
`audita config validate --config /path/to/config.yml`, including any selected
|
|
testing overlay. Application configuration continues to use `version: 2`.
|
|
|
|
The [configuration reference](../config.md#promptkit-profiles-and-operator-prompts)
|
|
contains the migrated format and presence rules. Start from the maintained
|
|
[local](../../examples/minimal-config.yml),
|
|
[service](../../examples/production-config.yml), or
|
|
[application inheritance](../../examples/configkit-inheritance.yml) examples.
|
|
The [CLI reference](../cli.md) describes report selection, and the
|
|
[release procedure](../release.md) describes source publication and asynchronous
|
|
Linux binary delivery.
|
|
|
|
[COPYRIGHT](https://gitea.maximumdirect.net/eric/audita/src/tag/v3.0.0/COPYRIGHT) | [LICENSE](https://gitea.maximumdirect.net/eric/audita/src/tag/v3.0.0/LICENSE) | [ATTRIBUTION](https://gitea.maximumdirect.net/eric/audita/src/tag/v3.0.0/docs/oss/attribution.md)
|