171 lines
4.9 KiB
YAML
171 lines
4.9 KiB
YAML
pipelines:
|
|
dnd-session:
|
|
llm_profile: dnd-extraction
|
|
input:
|
|
module: seriatim
|
|
# Stable campaign context is shared by every module that accepts these slots.
|
|
references:
|
|
party:
|
|
path: ../dnd-party.txt
|
|
glossary:
|
|
path: ../dnd-glossary.txt
|
|
chunk:
|
|
module: dnd/scenes
|
|
retries: 2
|
|
output:
|
|
module: json
|
|
options:
|
|
include_chunk_map: true
|
|
evidence_context:
|
|
enabled: true
|
|
window_units: 3
|
|
lanes:
|
|
- item-occurrences
|
|
- item-registry
|
|
- location-registry
|
|
- location-occurrences
|
|
- npc-registry
|
|
- spells
|
|
- combat-turns
|
|
- npc-occurrences
|
|
- enemy-events
|
|
steps:
|
|
# Establish session-wide reference artifacts before their consumers.
|
|
- id: describe-session
|
|
artifacts:
|
|
item-registry:
|
|
extract:
|
|
module: dnd/item-registry
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/item-registry
|
|
npc-registry:
|
|
extract:
|
|
module: dnd/npc-registry
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/npc-registry
|
|
retries: 2
|
|
location-registry:
|
|
extract:
|
|
module: dnd/location-registry
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/location-registry
|
|
retries: 2
|
|
scene-descriptions:
|
|
extract:
|
|
module: dnd/scene-descriptions
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/scene-descriptions
|
|
- id: extract-events
|
|
# Accepted registry artifacts and scene-description eligibility artifacts
|
|
# are supplied in memory to their compatible consumers in this step.
|
|
references:
|
|
location_registry:
|
|
artifact:
|
|
step: describe-session
|
|
lane: location-registry
|
|
npc_registry:
|
|
artifact:
|
|
step: describe-session
|
|
lane: npc-registry
|
|
scene_descriptions:
|
|
artifact:
|
|
step: describe-session
|
|
lane: scene-descriptions
|
|
item_registry:
|
|
artifact:
|
|
step: describe-session
|
|
lane: item-registry
|
|
artifacts:
|
|
item-occurrences:
|
|
extract:
|
|
module: dnd/item-occurrences
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/item-occurrences
|
|
spells:
|
|
extract:
|
|
module: dnd/spells
|
|
retries: 2
|
|
references:
|
|
spell_catalog:
|
|
path: ../dnd-spell-catalog.json
|
|
merge:
|
|
module: appendorder
|
|
# Stage-local file references are intentionally bound at each stage.
|
|
normalize:
|
|
module: dnd/spells
|
|
references:
|
|
spell_catalog:
|
|
path: ../dnd-spell-catalog.json
|
|
combat-turns:
|
|
extract:
|
|
module: dnd/combat-turns
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/combat-turns
|
|
npc-occurrences:
|
|
extract:
|
|
module: dnd/npc-occurrences
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/npc-occurrences
|
|
location-occurrences:
|
|
extract:
|
|
module: dnd/location-occurrences
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/location-occurrences
|
|
- id: track-enemies
|
|
references:
|
|
npc_registry:
|
|
artifact:
|
|
step: describe-session
|
|
lane: npc-registry
|
|
scene_descriptions:
|
|
artifact:
|
|
step: describe-session
|
|
lane: scene-descriptions
|
|
combat_turns:
|
|
artifact:
|
|
step: extract-events
|
|
lane: combat-turns
|
|
npc_occurrences:
|
|
artifact:
|
|
step: extract-events
|
|
lane: npc-occurrences
|
|
artifacts:
|
|
enemy-events:
|
|
extract:
|
|
module: dnd/enemy-events
|
|
retries: 2
|
|
merge:
|
|
module: appendorder
|
|
normalize:
|
|
module: dnd/enemy-events
|
|
|
|
# Development variant: disable PromptKit structural repairs while retaining
|
|
# the inherited steps and configured producer retry budgets.
|
|
dnd-session-development:
|
|
extends: dnd-session
|
|
structured_output_repair_attempts: 0
|