Document and test the D&D Notarius integration
This commit is contained in:
@@ -19,7 +19,7 @@ prompt_library_root=/usr/local/share/narratio/prompt-library
|
||||
campaigns_revision=$(git -C "$campaigns_repository" rev-parse HEAD)
|
||||
prompt_library_revision=$(git -C "$prompt_library_repository" rev-parse HEAD)
|
||||
operator_user="dnd_f0009_${$}"
|
||||
shared_fixture_root="/var/lib/narratio/${operator_user}"
|
||||
shared_fixture_root="/var/cache/notarius/${operator_user}"
|
||||
service_fixture_file="$shared_fixture_root/service.txt"
|
||||
operator_fixture_file="$shared_fixture_root/operator.txt"
|
||||
baseline_args=(
|
||||
@@ -71,13 +71,29 @@ baseline_log="$test_tmp/baseline.log"
|
||||
run_converge "$baseline_log" "${baseline_args[@]}"
|
||||
/usr/local/bin/seriatim --version
|
||||
/usr/local/bin/audita config validate --config /usr/local/etc/audita/config.yml
|
||||
/usr/local/bin/notarius config validate --config /usr/local/etc/notarius/config.yml
|
||||
/usr/local/bin/notarius config validate --config /usr/local/etc/notarius/config.yml \
|
||||
--pipeline dnd-session
|
||||
notarius_effective_config="$test_tmp/notarius-effective.yml"
|
||||
/usr/local/bin/notarius config effective --config /usr/local/etc/notarius/config.yml \
|
||||
> "$notarius_effective_config"
|
||||
grep -Fq 'mode: auto' "$notarius_effective_config"
|
||||
grep -Fq 'step: describe-session' "$notarius_effective_config"
|
||||
/usr/local/bin/scriptorium inspect profile --config /usr/local/etc/scriptorium/config.yml \
|
||||
--profile-dir "$profile_dir" --profile endpoint-profile
|
||||
/usr/bin/sudo -u narratio /usr/local/bin/narratio config validate \
|
||||
--config /usr/local/etc/narratio/pipeline.yml --campaign centaurs
|
||||
/usr/bin/sudo -u narratio /usr/local/bin/narratio config validate \
|
||||
--config /usr/local/etc/narratio/pipeline.yml --campaign dilfs
|
||||
/usr/bin/sudo -u narratio /usr/local/bin/narratio config validate \
|
||||
--config /usr/local/etc/narratio/pipeline.yml --campaign centaurs --profile testing
|
||||
narratio_effective_config="$test_tmp/narratio-effective.yml"
|
||||
/usr/bin/sudo -u narratio /usr/local/bin/narratio config show \
|
||||
--config /usr/local/etc/narratio/pipeline.yml --campaign centaurs \
|
||||
> "$narratio_effective_config"
|
||||
grep -Fq 'enabled: true' "$narratio_effective_config"
|
||||
grep -Fq 'pipeline_id: dnd-session' "$narratio_effective_config"
|
||||
grep -Fq 'party: narratio.input.party' "$narratio_effective_config"
|
||||
grep -Fq 'lane_id: item-registry' "$narratio_effective_config"
|
||||
/usr/bin/sudo -u narratio /usr/local/bin/narratio config artifacts \
|
||||
--config /usr/local/etc/narratio/pipeline.yml --campaign centaurs | \
|
||||
awk -F '\t' '$1 == "session_recap" && $4 == "true" { found = 1 } END { exit !found }'
|
||||
@@ -94,6 +110,8 @@ run_converge "$baseline_log" "${baseline_args[@]}"
|
||||
--shell /usr/sbin/nologin "$operator_user"
|
||||
/usr/bin/sudo -u "$operator_user" /usr/local/bin/narratio config validate \
|
||||
--config /usr/local/etc/narratio/pipeline.yml --campaign centaurs
|
||||
/usr/bin/sudo -u "$operator_user" /usr/local/bin/notarius config validate \
|
||||
--config /usr/local/etc/notarius/config.yml --pipeline dnd-session
|
||||
/usr/bin/sudo -u nobody /bin/cat /usr/local/etc/narratio/pipeline.yml >/dev/null
|
||||
/usr/bin/sudo -u narratio /bin/sh -c \
|
||||
"umask 077; mkdir '$shared_fixture_root'; printf '%s\\n' service-created > '$service_fixture_file'"
|
||||
@@ -150,3 +168,20 @@ selected_version_repeat_log="$test_tmp/selected-version-repeat.log"
|
||||
run_converge "$selected_version_repeat_log" "${baseline_args[@]}" \
|
||||
-e 'dnd_pipeline_seriatim_version=v1.4.0'
|
||||
require_clean_recap "$selected_version_repeat_log"
|
||||
|
||||
pipeline_group_one='{"archive-session":{"llm_profile":"dnd-extraction","input":{"module":"seriatim"},"artifacts":{"spells":{"extract":{"module":"dnd/spells"},"normalize":{"module":"dnd/spells"}}}}}'
|
||||
pipeline_group_two='{"research-session":{"llm_profile":"dnd-extraction","input":{"module":"seriatim"},"artifacts":{"spells":{"extract":{"module":"dnd/spells"},"normalize":{"module":"dnd/spells"}}}}}'
|
||||
alternate_config="{\"notarius_pipeline_group_one\":$pipeline_group_one,\"notarius_pipeline_group_two\":$pipeline_group_two,\"dnd_pipeline_notarius_pipelines\":\"{{ notarius_pipeline_group_one | combine(notarius_pipeline_group_two) }}\",\"dnd_pipeline_narratio_notarius_pipeline_id\":\"archive-session\",\"dnd_pipeline_notarius_cache_chunk_plans_mode\":\"bypass\"}"
|
||||
alternate_log="$test_tmp/alternate.log"
|
||||
run_converge "$alternate_log" "${baseline_args[@]}" -e "$alternate_config"
|
||||
/usr/local/bin/notarius config validate --config /usr/local/etc/notarius/config.yml \
|
||||
--pipeline archive-session
|
||||
alternate_effective_config="$test_tmp/alternate-effective.yml"
|
||||
/usr/local/bin/notarius config effective --config /usr/local/etc/notarius/config.yml \
|
||||
> "$alternate_effective_config"
|
||||
grep -Fq 'archive-session:' "$alternate_effective_config"
|
||||
grep -Fq 'research-session:' "$alternate_effective_config"
|
||||
grep -Fq 'mode: bypass' "$alternate_effective_config"
|
||||
alternate_repeat_log="$test_tmp/alternate-repeat.log"
|
||||
run_converge "$alternate_repeat_log" "${baseline_args[@]}" -e "$alternate_config"
|
||||
require_clean_recap "$alternate_repeat_log"
|
||||
|
||||
Reference in New Issue
Block a user