Introduce typed D&D spell artifacts
This commit is contained in:
@@ -73,9 +73,11 @@ separate target namespaces; serialized registrations declare whether they
|
||||
support chunks, artifacts, or both. Duplicate variants and exact Go-type
|
||||
mismatches are rejected deterministically.
|
||||
|
||||
Production composition initializes the artifact codec registry without adding
|
||||
codec entries, and production artifact-lane modules use the explicitly named
|
||||
legacy raw registration APIs. A raw registration cannot satisfy a typed lane.
|
||||
Production composition registers the D&D spell-list codec. The typed spell
|
||||
extractor also registers a temporary raw adapter, which resolution selects
|
||||
until its downstream production lane is typed. Other production artifact-lane
|
||||
modules use the explicitly named legacy raw registration APIs. A standalone raw
|
||||
registration cannot satisfy a typed lane.
|
||||
|
||||
A `ModuleSpec` declares its stage plus required and provided capabilities.
|
||||
Chunk, extract, merge, and normalize specs may also declare reference slots.
|
||||
@@ -84,8 +86,10 @@ and verify that a constructed implementation reports the registered key.
|
||||
Builder registrations accept `ModuleDependencies` and cloned raw options through
|
||||
one `BuildRequest`. Production input, chunk, and output builders decode those
|
||||
options and retain typed values or injected dependencies in the constructed
|
||||
implementation. Remaining production raw-stage registrations are adapted from
|
||||
their zero-argument constructors during migration.
|
||||
implementation. A typed extractor registration may explicitly supply a raw
|
||||
adapter builder for a still-raw downstream lane; the adapter is selected as one
|
||||
unit and does not expose the typed value to raw consumers. Remaining production
|
||||
raw-stage registrations are adapted from their zero-argument constructors.
|
||||
|
||||
A `ValidatorSpec` declares a validator key and execution class. Resolution uses
|
||||
the execution class to reject incompatible profile bindings before execution.
|
||||
|
||||
Reference in New Issue
Block a user