Skip to main content

hackagent.reporting.attempts

One goal's attempts, paged (/attempts) or in full (/structure).

Attempts are numbered from 1 in created_at, then id, order: the order the conversation happened in, and the one first_jailbreak_attempt of the costs counts in.

attempt_page​

def attempt_page(
rows: Sequence[Attempt],
count: int,
page: int,
page_size: int,
first: Optional[FirstSuccess],
query: Iterable[tuple[str, str]] = ()
) -> dict[str, Any]

GET /run/{id}/attempts: one page of rows (already ordered and cut by the database), with the page of the first jailbreak. query is the request's query parameters, which the page links keep.

attack_structure​

def attack_structure(results: Iterable[StructureResult],
traces: Iterable[StructureTrace]) -> dict[str, Any]

GET /run/{id}/structure: a goal's whole recorded search in one attack run, including work that produced no result.