Add typed spell validation strategies
This commit is contained in:
@@ -64,10 +64,11 @@ parsing. Production input, chunk, and output modules use strict construction-tim
|
||||
option decoding, and the LLM-backed scene chunker retains the injected shared
|
||||
client. The D&D family registers the canonical `dnd/spell-list` codec and a
|
||||
typed spell extractor. A temporary raw adapter serializes that typed result for
|
||||
the still-raw production validators, merger, normalizer, and runner. Other
|
||||
artifact-lane modules and validators continue through explicitly named legacy
|
||||
raw registrations and temporary zero-argument constructor adapters. The current
|
||||
runner rejects a typed prepared lane instead of routing it through raw execution.
|
||||
the current runner. The D&D family also registers typed spell validators and
|
||||
kind-specific generic merge and normalize strategies; generic JSON validators
|
||||
use the serialized-validation contract. Narrow legacy registrations preserve
|
||||
the existing raw runner path until typed execution lands. The current runner
|
||||
rejects a typed prepared lane instead of routing it through raw execution.
|
||||
|
||||
## Production Extensions
|
||||
|
||||
@@ -96,8 +97,8 @@ helpers. Domain-neutral prompt filesystem composition lives in
|
||||
Generic validators under `internal/modules/generic/validate` provide
|
||||
unconditional test decisions, JSON syntax validation, and JSON Schema
|
||||
validation. D&D spell validators under `internal/modules/dnd/validate/spells`
|
||||
provide shape, source-reference, and source-relatedness decisions, with
|
||||
`spellpayload` holding their shared parser and lookup helpers.
|
||||
consume the canonical spell-list type directly to provide shape,
|
||||
source-reference, and source-relatedness decisions.
|
||||
|
||||
Production composition is grouped behind package-family registrars, and every
|
||||
implemented production extension uses its domain-first tree:
|
||||
|
||||
Reference in New Issue
Block a user