Organize generic and Seriatim modules by domain

This commit is contained in:
2026-07-17 04:57:47 +00:00
parent 0327659355
commit a81b9f1e1f
36 changed files with 83 additions and 78 deletions

View File

@@ -1,8 +1,9 @@
# Module And Validator Internals
Production stage implementations live under `internal/modules`; production
validators live under `internal/validators`. The selectable keys, configuration
options, reference slots, and default validator chain are canonical in the
Production module implementations and generic validators live under
`internal/modules`; the current D&D validators live under `internal/validators`.
The selectable keys, configuration options, reference slots, and default
validator chain are canonical in the
[module](../config.md#implemented-production-modules) and
[validator](../config.md#implemented-production-validators) catalogs in
Configuration.
@@ -36,7 +37,7 @@ evidence. The resolver and materializer behavior is described in
## Input Adapter
### `internal/modules/input/seriatim`
### `internal/modules/seriatim/input/transcript`
The adapter decodes the supported transcript JSON, selects the source identity,
computes the raw-input digest, validates segments, and maps each segment into a
@@ -50,7 +51,7 @@ rules are defined in the
## Chunkers
### `internal/modules/chunk/generic`
### `internal/modules/generic/chunk/units`
The generic chunker validates the source document, walks units in configured
windows, clones each selected unit, and emits deterministic ordered chunk IDs.
@@ -99,14 +100,14 @@ The durable payload and manifest metadata shapes are defined in the
## Merger And Normalizer
### `internal/modules/merge/appendorder`
### `internal/modules/generic/merge/appendorder`
The merger preserves extract-result order. It passes through one JSON result,
concatenates a common top-level array field across multiple JSON objects, and
otherwise emits an array of the decoded values. It rejects invalid JSON and
non-JSON media types, and it preserves compatible schema provenance.
### `internal/modules/normalize/noop`
### `internal/modules/generic/normalize/noop`
The normalizer defensively clones the accepted merge result, including payload
bytes, metadata, warnings, and schema provenance, without changing its logical
@@ -114,7 +115,7 @@ content.
## Output Encoder
### `internal/modules/output/json`
### `internal/modules/generic/output/json`
The JSON encoder sorts normalized results by lane, derives collision-checked
safe logical names, pretty-prints JSON payloads, and assembles the logical index,
@@ -127,6 +128,9 @@ paths and schemas.
## Generic Validators
The generic validator implementations live under
`internal/modules/generic/validate`.
The unconditional accept and reject validators provide deterministic production
registrations used primarily for controlled composition and tests.

View File

@@ -58,27 +58,28 @@ Configuration. The implemented module packages are:
| Package | Implemented responsibility |
| --- | --- |
| `internal/modules/input/seriatim` | Parses the supported Seriatim transcript format into the generic source model. |
| `internal/modules/chunk/generic` | Splits ordered source units by unit count and overlap. |
| `internal/modules/seriatim/input/transcript` | Parses the supported Seriatim transcript format into the generic source model. |
| `internal/modules/generic/chunk/units` | Splits ordered source units by unit count and overlap. |
| `internal/modules/chunk/dnd/scenes` | Produces contiguous D&D scene chunks from structured model output. |
| `internal/modules/extract/dnd/spells` | Produces source-grounded D&D spell-cast raw output. |
| `internal/modules/merge/appendorder` | Combines accepted extraction results in chunk order. |
| `internal/modules/normalize/noop` | Preserves accepted merged output. |
| `internal/modules/output/json` | Encodes manifests, lane payloads, warnings, and rejections as logical JSON files. |
| `internal/modules/generic/merge/appendorder` | Combines accepted extraction results in chunk order. |
| `internal/modules/generic/normalize/noop` | Preserves accepted merged output. |
| `internal/modules/generic/output/json` | Encodes manifests, lane payloads, warnings, and rejections as logical JSON files. |
`internal/modules/sharedassets` composes shared prompt filesystems.
`internal/modules/sharedassets/dnd` owns reusable D&D prompt fragments,
reference declarations, prompt input assembly, and source-unit reference
helpers.
Concrete validators live under `internal/validators`. Generic packages provide
Generic validators under `internal/modules/generic/validate` provide
unconditional test decisions, JSON syntax validation, and JSON Schema
validation. D&D spell packages provide shape, source-reference, and
source-relatedness decisions, with `spellpayload` holding their shared parser
and lookup helpers.
validation. D&D spell validators remain under `internal/validators` and provide
shape, source-reference, and source-relatedness decisions, with `spellpayload`
holding their shared parser and lookup helpers.
Production composition is grouped behind package-family registrars while the
implementations remain in their current stage-oriented packages:
Production composition is grouped behind package-family registrars. Generic
and Seriatim implementations use their domain-first trees; D&D implementations
remain in their current stage-oriented packages:
| Package | Implemented responsibility |
| --- | --- |