team2027/2027 Evals

Run a 2027.dev eval on a PR's preview deployment and post results back to the PR.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
api-key2027.dev API key (create one at /<orgDomain>/settings)yes
api-base-urlBase URL for the 2027 evals APInohttps://2027.dev/evals
prompt-idPrompt UUID. List available IDs via GET /api/v1/prompts.yes
url-mapJSON object mapping production hostnames to preview URLs (full http(s) URLs required), e.g. {"acme.com":"https://deploy-preview-1.netlify.app"}. Optional when template-vars carries the prompt's variables (e.g. CLI / non-URL evals); pass {} in that case.no{}
template-varsJSON object of values for the prompt's declared template variables, e.g. {"cliInstall":"npm i -g https://pkg.pr.new/org/repo/@scope/cli@abc1234"}. Required when the prompt declares non-empty templateVars; otherwise omit.no""
deployment-urlPreview deployment URL. Required when url-map has more than one entry (validated at runtime).no
wait-timeout-minutesHow long to poll for completion before returning (action exits 0 on timeout)no20
poll-interval-secondsSeconds between status pollsno20
timeout-failsWhen 'true', a polling timeout marks the commit status as failure (blocks merge). Default 'false' marks it success so the check doesn't get stuck pending.nofalse
skip-commentWhen 'true', the action does not post or update the sticky PR comment. Use this if you want to render your own comment from the action's outputs.nofalse
skip-statusWhen 'true', the action does not set the commit status check. Use this if you want to set your own status from the action's outputs.nofalse
github-tokenGitHub token for posting PR comments and commit statuses (defaults to github.token)no${{ github.token }}
namedescription
run-idUUID of the eval run on 2027
status-urlAPI endpoint that reflects the run's current state
final-statusTerminal state observed before the action exited — completed | failed | superseded | running (the last on timeout)
prompt-titleHuman-readable title of the evaluated prompt
report-slugReport slug if the run produced a scorable report, empty string otherwise
report-urlFull URL to the dashboard report page, empty string if no report
failure-reasonServer-provided failure reason if the run failed, empty string otherwise
scoreFinal score (0-100) when the run produced a report, empty string otherwise
gradeFinal letter grade when the run produced a report, empty string otherwise
baseline-scoreScore of the most recent prior published report for the same prompt, empty string if no baseline
report-jsonFull report object as stringified JSON (slug, url, score, grade, metrics, dimensions). Empty string if no report. Forward-compatible — picks up any new fields the API adds without an action release.
baseline-jsonBaseline object as stringified JSON ({ score, grade }). Empty string if no baseline. Sourced from the most recent prior published run for the same prompt.