Specify the Audita preflight package boundary
This commit is contained in:
@@ -401,6 +401,16 @@ sources, resolve configuration, restore defaults, or change stage inheritance.
|
||||
Keep the nonempty glossary-stage check in Audita preflight rather than ConfigKit's
|
||||
configuration-validation callbacks.
|
||||
|
||||
Implement this phase in an expressly named `internal/framework/preflight`
|
||||
package. Accept fully resolved configuration and the domain inputs needed for
|
||||
readiness checks through ordinary Go functions and concrete inputs. Return
|
||||
errors identifying the affected stage and reason; CLI presentation remains with
|
||||
the caller. Keep the package small and independent of CLI and provider transport.
|
||||
It must not reload or modify configuration or make provider calls. ConfigKit
|
||||
retains configuration resolution, and correction validators retain evaluation of
|
||||
proposed transcript changes. Future execution-readiness checks belong here when
|
||||
they fit this responsibility; no generic check-registration framework is needed.
|
||||
|
||||
Preflight checks every configured glossary-correction stage. Its combined selected
|
||||
collections must supply at least one entry. Empty selections, null selections,
|
||||
and nonempty selections whose collections collectively contain no entries fail
|
||||
@@ -783,6 +793,9 @@ selection, defaulting, and clearing contracts in the
|
||||
consumer internals as the redesign lands, removing obsolete standalone-parser
|
||||
instructions. Document the distinction between configuration identity and derived
|
||||
runtime vocabulary without copying the native ConfigKit reference into Audita.
|
||||
When the package lands, add `internal/framework/preflight` to the
|
||||
[internal overview](../internal/overview.md) and describe its invocation boundary
|
||||
in the [pipeline internals](../internal/pipeline.md).
|
||||
|
||||
Update the [configuration change guide](../internal/cli-config.md) to require
|
||||
classifying each new setting by consumer lifecycle, specifying its inheritance
|
||||
@@ -809,9 +822,10 @@ into feature implementation.
|
||||
collection identities, validate configuration contracts, and deliver final typed
|
||||
definitions and selections before transcript processing. Remove the redundant
|
||||
standalone YAML parser and local composition path.
|
||||
3. Add Audita preflight after configuration handoff. Reject any glossary stage
|
||||
whose selected collections supply no entries before any stage executes.
|
||||
Permit empty collection definitions and preserve inspection access to them.
|
||||
3. Add `internal/framework/preflight` and invoke it after configuration handoff.
|
||||
Reject any glossary stage whose selected collections supply no entries before
|
||||
any stage executes. Return readiness errors for CLI presentation, permit empty
|
||||
collection definitions, and preserve inspection access to them.
|
||||
4. Derive rich LLM inputs, deduplicated protection vocabulary, and glossary-stage
|
||||
exemptions from resolved configuration. Route the appropriate views through
|
||||
proposal generation and validators without mutating configuration or other
|
||||
@@ -924,6 +938,9 @@ several collectively empty collections, and mixed empty/populated collections.
|
||||
Include an empty glossary stage late in the pipeline and verify preflight fails
|
||||
before any stage executes or processing model calls occur. Check useful stage
|
||||
and collection attribution in the readiness error, and no silent stage skipping.
|
||||
Exercise the preflight package directly with resolved inputs and through the
|
||||
processing entry point. Verify it leaves configuration unchanged and returns
|
||||
readiness errors without provider calls or CLI presentation responsibilities.
|
||||
Exercise CLI list assignment through the standard parser and ConfigKit override
|
||||
path, including explicit empty selections and unchanged explicit stage settings.
|
||||
Verify that clearing a validation selection follows the effective proposal
|
||||
|
||||
Reference in New Issue
Block a user