Document scene-aware combat extraction
This commit is contained in:
@@ -22,9 +22,9 @@ The explicit-path option is defined in the [CLI reference](cli.md).
|
||||
- [Minimal D&D configuration](../examples/dnd-minimal.config.yml) shows the
|
||||
shortest useful single-step, single-lane pipeline.
|
||||
- [Complete D&D configuration](../examples/dnd-complete.config.yml) shows scene
|
||||
chunking, ordered steps, all five D&D artifact lanes, a generated NPC
|
||||
handoff, campaign and spell-catalog references, checkpoint storage, and
|
||||
chunk-map output.
|
||||
chunking, ordered steps, all five D&D artifact lanes, generated NPC and
|
||||
scene-description handoffs, campaign and spell-catalog references, checkpoint
|
||||
storage, and chunk-map output.
|
||||
|
||||
Both are complete version 3 files. The fragments below illustrate individual
|
||||
fields and are not alternate complete configurations.
|
||||
@@ -168,12 +168,19 @@ pipelines:
|
||||
npcs:
|
||||
extract: dnd/npcs
|
||||
normalize: dnd/npcs
|
||||
scene-descriptions:
|
||||
extract: dnd/scene-descriptions
|
||||
normalize: dnd/scene-descriptions
|
||||
- id: grounded-events
|
||||
references:
|
||||
npcs:
|
||||
artifact:
|
||||
step: identify-npcs
|
||||
lane: npcs
|
||||
scene_descriptions:
|
||||
artifact:
|
||||
step: identify-npcs
|
||||
lane: scene-descriptions
|
||||
artifacts:
|
||||
spells:
|
||||
extract: dnd/spells
|
||||
@@ -374,7 +381,7 @@ production validators do not call the LLM and must not set `llm_profile`.
|
||||
| chunk | `dnd/scenes` | Uses an LLM to split transcript source units into D&D scenes. |
|
||||
| extract | `dnd/spells` | Extracts typed D&D spell-list artifacts. |
|
||||
| extract | `dnd/npcs` | Extracts typed D&D NPC-list artifacts. |
|
||||
| extract | `dnd/combat-turns` | Extracts typed D&D combat-turn-list artifacts. |
|
||||
| extract | `dnd/combat-turns` | Extracts typed D&D combat-turn-list artifacts only for exact combat scene matches. |
|
||||
| extract | `dnd/npc-interactions` | Extracts typed D&D NPC-interaction-list artifacts from a supplied NPC registry. |
|
||||
| extract | `dnd/scene-descriptions` | Extracts one typed D&D scene description for each accepted chunk. |
|
||||
| merge | `appendorder` | Combines typed artifacts in chunk order. |
|
||||
@@ -574,14 +581,23 @@ accepts no references. No NPC registry or generated artifact is required. See
|
||||
the [D&D scene-description artifact contract](integrations/dnd-scene-description-artifacts.md)
|
||||
and the copyable [complete D&D configuration](../examples/dnd-complete.config.yml).
|
||||
|
||||
The `dnd/combat-turns` extractor declares the optional campaign slots and the
|
||||
structured `npcs` slot. Campaign references guide only the LLM extraction
|
||||
stage. The deterministic normalizer declares only `npcs`, whose operation-time
|
||||
registry supports the same actor canonicalization. Each `npcs` slot
|
||||
accepts exactly one UTF-8 `application/json` artifact no larger than 1 MiB. The
|
||||
registry's source ranges remain provenance for the reference and never become
|
||||
combat evidence. An ordered step binding fans the same generated NPC artifact
|
||||
out to extraction and normalization:
|
||||
The `dnd/combat-turns` extractor declares the optional campaign slots, the
|
||||
optional structured `npcs` slot, and the required `scene_descriptions` slot.
|
||||
Campaign references guide only the LLM extraction stage. The deterministic
|
||||
normalizer declares only `npcs`, whose operation-time registry supports the
|
||||
same actor canonicalization. Each `npcs` slot accepts exactly one UTF-8
|
||||
`application/json` artifact no larger than 1 MiB. The registry's source ranges
|
||||
remain provenance for the reference and never become combat evidence.
|
||||
|
||||
`scene_descriptions` accepts exactly one approved
|
||||
`dnd/scene-description-list` artifact with media type `application/json`, no
|
||||
larger than 1 MiB (1048576 bytes). Pipeline resolution rejects a combat
|
||||
extractor whose required slot is unbound. The scene artifact is eligibility
|
||||
control context only; it is neither prompt input nor combat evidence, and the
|
||||
combat normalizer does not accept it.
|
||||
|
||||
An ordered step binds the generated NPC artifact to extraction and normalization
|
||||
and the generated scene-description artifact to combat extraction:
|
||||
|
||||
```yaml
|
||||
references:
|
||||
@@ -589,6 +605,10 @@ references:
|
||||
artifact:
|
||||
step: identify-npcs
|
||||
lane: npcs
|
||||
scene_descriptions:
|
||||
artifact:
|
||||
step: identify-npcs
|
||||
lane: scene-descriptions
|
||||
```
|
||||
|
||||
When bound, the combat extractor and normalizer receive the generated registry
|
||||
@@ -597,6 +617,9 @@ kind, schema identity, media type, canonical digest, size, and bounded producer
|
||||
identity; names, content, and paths are not recorded there. When
|
||||
absent, the combat prompt receives the exact empty registry value
|
||||
`{"npcs":[]}` with its projection digest and no registry provenance.
|
||||
The complete example uses the same explicit scene binding; an external approved
|
||||
scene-description artifact may be used instead when the workflow crosses a
|
||||
process or session boundary.
|
||||
|
||||
Both `dnd/npc-interactions` stages require the structured `npcs` slot. Bind one
|
||||
accepted normalized NPC artifact from an earlier ordered step; the interaction
|
||||
|
||||
Reference in New Issue
Block a user