--- dnd_pipeline_audita_version: v2.0.1 dnd_pipeline_narratio_version: v3.1.0 dnd_pipeline_notarius_version: v0.8.1 dnd_pipeline_seriatim_version: v1.5.0 dnd_pipeline_scriptorium_version: v0.15.0 dnd_pipeline_manage_build_dependencies: true dnd_pipeline_go_snap_channel: 1.26/stable dnd_pipeline_go_binary: /snap/bin/go dnd_pipeline_runtime_user: narratio dnd_pipeline_runtime_group: narratio dnd_pipeline_operator_users: [] dnd_pipeline_secrets: {} dnd_pipeline_config_directory_mode: "0755" dnd_pipeline_config_file_mode: "0644" dnd_pipeline_campaigns_repository_url: https://gitea.maximumdirect.net/eric/campaigns.git dnd_pipeline_campaigns_revision: main dnd_pipeline_campaigns_root: /usr/local/share/narratio/campaigns dnd_pipeline_prompt_library_repository_url: https://gitea.maximumdirect.net/eric/narratio-prompts.git dnd_pipeline_prompt_library_revision: main dnd_pipeline_prompt_library_root: /usr/local/share/narratio/prompt-library dnd_pipeline_audita_pipeline_modules: - glossary - homophones - glossary - spoken_word - grammar dnd_pipeline_audita_output_schema: audita-v1 dnd_pipeline_audita_backends: dnd: endpoint: https://inference.ai.rakestrawhome.com/v1 credential: AUDITA_LLM_API_KEY concurrency: 4 dnd_pipeline_audita_profiles: dnd-proposal: id: dnd-proposal backend: dnd model: google/gemma-4-31b-it timeout_seconds: 900 dnd-validation: id: dnd-validation backend: dnd model: google/gemma-4-31b-it timeout_seconds: 900 dnd_pipeline_audita_llm_proposal_profile: dnd-proposal dnd_pipeline_audita_llm_validation_profile: dnd-validation dnd_pipeline_audita_llm_transient_retries: null dnd_pipeline_audita_llm_repair_attempts: null dnd_pipeline_audita_llm_operation_timeout: null dnd_pipeline_audita_chunking_target_sections: 8 dnd_pipeline_audita_chunking_max_section_tokens: 6144 dnd_pipeline_audita_chunking_min_section_tokens: 2048 dnd_pipeline_audita_normalization_max_segment_gap: 3.0 dnd_pipeline_audita_normalization_ellipsis_gap: 3.0 dnd_pipeline_audita_normalization_max_segment_duration: 240.0 dnd_pipeline_audita_normalization_max_segment_tokens: 2048 dnd_pipeline_audita_thresholds_glossary: 0.8 dnd_pipeline_audita_thresholds_homophones: 0.8 dnd_pipeline_audita_thresholds_spoken_word: 0.8 dnd_pipeline_audita_thresholds_grammar: 0.8 dnd_pipeline_audita_context_description: >- The following transcript was recorded during a Dungeons & Dragons game session. It may contain some unrelated pre-session or post-session banter, in addition to actual D&D gameplay. dnd_pipeline_audita_diagnostics_work_dir: /tmp/audita dnd_pipeline_notarius_pipelines: dnd-session: llm_profile: gpt-terra-latest input: module: seriatim 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: - 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 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 merge: module: appendorder normalize: module: dnd/spells 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 dnd_pipeline_notarius_cache_root: /var/cache/notarius dnd_pipeline_notarius_cache_chunk_plans_mode: auto dnd_pipeline_notarius_cache_checkpoints_enabled: true dnd_pipeline_notarius_testing_llm_profile: gpt-luna-latest dnd_pipeline_notarius_promptkit_transient_retries: null dnd_pipeline_scriptorium_transient_retries: null dnd_pipeline_narratio_workspace_cleanup_after_publish: true dnd_pipeline_narratio_storage_backend: s3 dnd_pipeline_narratio_storage_s3_bucket: rakestraw-assets dnd_pipeline_narratio_storage_s3_root_prefix: dnd dnd_pipeline_narratio_storage_s3_region: us-east-1 dnd_pipeline_narratio_storage_s3_endpoint: https://s3.us-east-005.backblazeb2.com dnd_pipeline_narratio_storage_s3_force_path_style: true dnd_pipeline_narratio_storage_s3_access_key_id: OBJECT_STORAGE_KEY_ID dnd_pipeline_narratio_storage_s3_secret_access_key: OBJECT_STORAGE_KEY dnd_pipeline_narratio_cache_s3_audio: true dnd_pipeline_narratio_publish_enabled: true dnd_pipeline_narratio_publish_upload_run: true dnd_pipeline_narratio_publish_outputs: - source: narratio.transcript.final required: true - source: narratio.transcript.final_trimmed required: true - source: narratio.transcript.final_markdown required: true - source: narratio.transcript.final_trimmed_markdown required: true - source: narratio.artifact.session_recap required: true - source: narratio.artifact.hostile_rumors required: true - source: narratio.artifact.deranged_rumors required: false dnd_pipeline_narratio_seriatim_output_schema: seriatim-intermediate dnd_pipeline_narratio_normalize_output_path: transcripts/final.json dnd_pipeline_narratio_normalize_output_schema: seriatim-intermediate dnd_pipeline_narratio_trim_enabled: true dnd_pipeline_narratio_trim_output_path: transcripts/final.trimmed.json dnd_pipeline_narratio_trim_bounds_prompt_id: dnd.session_bounds dnd_pipeline_narratio_trim_bounds_transcript_input_name: transcript dnd_pipeline_narratio_trim_bounds_output_path: artifacts/session_bounds.json dnd_pipeline_narratio_notarius_pipeline_id: dnd-session dnd_pipeline_narratio_audita_credentials: - AUDITA_LLM_API_KEY dnd_pipeline_narratio_notarius_credentials: - OPENROUTER_API_KEY dnd_pipeline_narratio_scriptorium_credentials: - OPENROUTER_API_KEY dnd_pipeline_narratio_notarius_resume: true dnd_pipeline_narratio_notarius_references: party: narratio.input.party players: narratio.input.players glossary: narratio.input.glossary dnd_pipeline_narratio_notarius_outputs: item_registry: lane_id: item-registry media_type: application/json schema_id: notarius.dnd.item_registry schema_version: v1 module_key: dnd/item-registry npc_registry: lane_id: npc-registry media_type: application/json schema_id: notarius.dnd.npc_registry schema_version: v1 module_key: dnd/npc-registry location_registry: lane_id: location-registry media_type: application/json schema_id: notarius.dnd.location_registry schema_version: v1 module_key: dnd/location-registry scene_descriptions: lane_id: scene-descriptions media_type: application/json schema_id: notarius.dnd.scene_descriptions schema_version: v1 module_key: dnd/scene-descriptions item_occurrences: lane_id: item-occurrences media_type: application/json schema_id: notarius.dnd.item_occurrences schema_version: v1 module_key: dnd/item-occurrences spells: lane_id: spells media_type: application/json schema_id: notarius.dnd.spells schema_version: v1 module_key: dnd/spells combat_turns: lane_id: combat-turns media_type: application/json schema_id: notarius.dnd.combat_turns schema_version: v1 module_key: dnd/combat-turns npc_occurrences: lane_id: npc-occurrences media_type: application/json schema_id: notarius.dnd.npc_occurrences schema_version: v1 module_key: dnd/npc-occurrences location_occurrences: lane_id: location-occurrences media_type: application/json schema_id: notarius.dnd.location_occurrences schema_version: v1 module_key: dnd/location-occurrences enemy_events: lane_id: enemy-events media_type: application/json schema_id: notarius.dnd.enemy_events schema_version: v1 module_key: dnd/enemy-events dnd_pipeline_narratio_render_enabled: true dnd_pipeline_narratio_render_format: markdown dnd_pipeline_narratio_session_recap_artifact: enabled: true prompt_id: dnd.session_recap output_path: artifacts/session_recap.md inputs: transcript: source: narratio.transcript.final_trimmed required: true recap: source: narratio.previous_session.artifact.session_recap required: false dnd_pipeline_narratio_hostile_rumors_artifact: enabled: true prompt_id: dnd.hostile_rumors output_path: artifacts/hostile_rumors.md inputs: recap: source: narratio.artifact.session_recap required: true dnd_pipeline_narratio_deranged_rumors_artifact: enabled: true prompt_id: dnd.deranged_rumors output_path: artifacts/deranged_rumors.md inputs: recap: source: narratio.artifact.session_recap required: true dnd_pipeline_narratio_scene_map_artifact: enabled: false prompt_id: dnd.scene_map output_path: artifacts/scene_map.json inputs: transcript: source: narratio.transcript.final_trimmed required: true dnd_pipeline_narratio_character_analysis_family: enabled: false for_each: party.characters prompt_id: dnd.character_meta_analysis output_path_pattern: artifacts/character_meta_analysis/{character_id}.md inputs: transcript: source: narratio.transcript.final_trimmed required: true recap: source: narratio.previous_session.artifact.session_recap required: false member_vars: character_name: character.name character_class: character.class_summary dnd_pipeline_narratio_testing_scriptorium_profile: gemini-flash-latest