Skip to content
DarkPrint
Aautogentest-runner1.1.0

Test Runner

Get card

Clone

npx -y darkprint clone test-runner@1.1.0

There is no repository and no history behind a card. Download hands you the document as it stands, and Clone fetches the same document by name.

↓ 0 downloads

Run the suites the review calls for against the PR head and gate on the result: green releases the report to the maintainer, red hands the failing cases back to the drafter for another pass.

used in 1 blueprint

Specification

127 words · handed to the agent

Read the drafted review you are handed, take the test suites it names, and run exactly those against the pull request's head ref, no more, no fewer. Give the whole run thirty minutes; a suite still executing when that expires counts as a failure, not as a pass. Emit green on result when every suite passes and red otherwise, carrying the failing-case count so the branch downstream can read the outcome without opening the write-up. Emit that write-up on report: suite names, durations, every failing case with its assertion and stack trace, and the coverage delta against the base ref. Do not edit the code, do not re-run a failing suite hoping for a different answer, and do not judge whether the change deserves to be merged.

Interfaces

1 in · 2 out

Inputs

1
Inputs declared by this node card
NameData typeRequiredDescription
reviewmarkdown requiredThe drafted review, which names the suites the change is expected to move.

Outputs

2
Outputs declared by this node card
NameData typeDescription
resultstatusGreen or red, plus the failing case count, the signal the red edge branches on.
reportreportThe run write-up a maintainer reads, suites, durations, failures, coverage delta.

Dependencies

1

The upstream nodes this card expects to receive from. Whenever a blueprint pins this card, each name is checked against a real edge in that graph. A name without a link is not a published card; it refers to a node inside some graph.

Card values

19 declared

Who the node is. The id is the key the DOT pins.

id
test-runner
name
Test Runner
type
validation
phases
Testing
Behaviourcard spec →

What it does, and the prose the agent is handed when the graph runs.

action35 words
Run the suites the review calls for against the PR head and gate on the result: green releases the report to the maintainer, red hands the failing cases back to the drafter for another pass.
spec127 words
Read the drafted review you are handed, take the test suites it names, and run exactly those against the pull request's head ref, no more, no fewer. Give the whole run thirty minutes; a suite still executing when that expires counts as a failure, not as a pass. Emit green on result when every suite passes and red otherwise, carrying the failing-case count so the branch downstream can read the outcome without opening the write-up. Emit that write-up on report: suite names, durations, every failing case with its assertion and stack trace, and the coverage delta against the base ref. Do not edit the code, do not re-run a failing suite hoping for a different answer, and do not judge whether the change deserves to be merged.in full above
model
claude-haiku-4-5
agent
Test runner
skill
skills/test-runner.md
tools
CI, Git
mcp
github
params
timeout_s: 1800, max_retries: 3
Interfacescard spec →

What arrives, what leaves, which nodes it expects to hear from, and what may not.

inputs
review : markdown
outputs
result : status, report : report
dependencies
review-drafter
cannot
no type is refused
will_not
edit the code under test, re-run a failing suite hoping for a different answer
Evaluation metadatacard spec →

The keys the static analysis reads. Nothing here instructs the agent.

risk_markers
none
notes84 words
max_retries: 3 bounds the draft/test loop at three attempts beyond the first, four runs of the suites in all. The number crosses over from max_iterations unchanged, and that is the point: nothing on this card promises a count of attempts, so re-reading it as engine spec §2.6's "additional attempts" leaves what a run does exactly where it already was. Drop it and the pair still terminates in practice, but the static analyzer has nothing to read and charges the blueprint for an unbounded loop.
Service fieldscard spec →

The card's own version, and who wrote it.

version
1.1.0
author
autogen
provenance
not stated

Definitions for every card field

Version history

2 versions published
  1. test-runner@1.1.0currentsha256:4c9bb81936d16fdc1b785103bfe78251e6be3ec4d05dcd966ed2d21b4414e139

    pinned byGuarded Merge Botautogen/guarded-merge-bot

    minor1.0.0 → 1.1.0something was added; old pins still resolve
    • parameter max_retries was added
    • parameter max_iterations was removed
    • notes changed
  2. test-runner@1.0.0sha256:408395c666103bd3e2f3cc10ab2e78827d4ddfafb168911a4b756d36df478df1

    No blueprint pins this exact version.

A digest is a fingerprint (SHA-256) of the card's content, computed without the author and provenance fields. The same card from two people gets the same digest; any edit gets a new one.

Community notes (0)

No notes yet.

Nobody has posted about this node card yet.

Sign in to post a note.