blob: 860ce7853b24422a8ab7ed47fb5c5937d3c24929 [file] [log] [blame]
include:
- local: ci/install-rkorapclient-ci.yml
build-rkorapclient-on-stable:
extends: .install-rkorapclient
image: rocker/tidyverse
cache:
key: rkorapclient-ubuntu-stable
paths:
- apt-cache/
- ccache/
- rlib/
script:
# The Readme documentation prompting tests query LLMs and are therefore
# neither deterministic nor free. They run in their own job below, so that
# neither a model's mood nor an empty API account can turn this one red.
# Exported here rather than declared under variables:, since a project or
# instance variable of that name would take precedence over the latter.
- export RKORAP_LLM_MODELS=""
- start_section testing "Testing RKorAPClient"
- echo -e "apt-cache\nccache\nrlib" >> .Rbuildignore
- R -q -e "devtools::check(args = c('--no-examples'))"
- R -q -e 'devtools::test()'
- end_section testing
# Prompts LLMs with the Readme, to check that it still enables them to use the
# package. A failure here is a hint that the documentation has become unclear
# (or that a model had a bad day), not a broken build, hence allow_failure.
readme-doc-prompting-tests:
extends: .install-rkorapclient
image: rocker/tidyverse
allow_failure: true
cache:
key: rkorapclient-ubuntu-stable
paths:
- apt-cache/
- ccache/
- rlib/
script:
# GLM-5.3-Flash solves all documentation tasks reliably, while the other
# low cost models are not there yet. Add them back here, comma separated,
# once they are: "gemini-3.5-flash-lite", "claude-sonnet-5", "gpt-5-nano".
# Exported here rather than declared under variables:, since a project or
# instance variable of that name would take precedence over the latter.
# Needs OPENROUTER_API_KEY as a masked project variable.
- export RKORAP_LLM_MODELS="z-ai/glm-5.3-flash"
- start_section docprompting "Prompting LLMs with the Readme"
- echo -e "apt-cache\nccache\nrlib" >> .Rbuildignore
- R -q -e 'devtools::test(filter = "readme-against-llm")'
- end_section docprompting