Qontinuiontinui
← Back to Runner Documentation

Findings & Knowledge

Two complementary systems for tracking issues and accumulating context during workflow execution

Overview

When a unified workflow runs its verification-agentic loop, the runner captures two kinds of structured data: findings and knowledge entries. They serve different audiences and have different lifecycles, but work together to make each iteration smarter than the last.

In short: Findings are for you (the user) to track issues. Knowledge is for the AI to learn from past iterations. Both are visible in the Summary page after a workflow completes.

At a Glance

Findings

For: You

Structured issue tracker with lifecycle management

  • Parsed from AI output markers
  • Has status flow: detected, in progress, resolved
  • Categorized by type: bug, security, performance
  • Severity levels: critical, high, medium, low
  • Deduplicated across sessions
  • Supports user input requests

Knowledge

For: The AI

Cross-iteration context for smarter retries

  • Recorded automatically by the runner
  • Categories: verification feedback, observation, solution
  • Tracks which iteration created each entry
  • Fed back into the AI's prompt on the next iteration
  • Resolved automatically when verification passes
  • Visible in Summary page's Knowledge tab

Findings

Findings are structured issues detected during workflow execution. They work like a built-in issue tracker — each finding has a category, severity, and lifecycle status.

How findings are created

The AI emits findings using special markers in its output:

[FINDING:code_bug:high] Title: Null pointer in login handler Description: The user object is not checked for null before accessing .email File: src/auth/login.ts Line: 42 [/FINDING]

Finding categories

code_bug
security
performance
todo
enhancement
config_issue
test_issue
documentation
runtime_issue
already_fixed
expected_behavior
warning

Status lifecycle

detectedin_progressresolved

Findings can also be marked as wont_fix, deferred, or needs_input (waiting for your decision).

Deduplication

Each finding has a signature hash computed from its category, title, and code location. If the AI reports the same finding across multiple iterations or sessions, it won't create duplicates.

Knowledge Entries

Knowledge entries are the runner's memory system. They accumulate context across iterations of the verification-agentic loop so the AI doesn't repeat mistakes or lose track of what it has learned.

How knowledge is recorded

The runner automatically records knowledge at key points during workflow execution. You don't need to do anything to enable it.

After verification fails

Category: verification_feedback

Records which checks failed and why, so the AI knows exactly what to fix on the next attempt

After agentic phase completes

Category: finding, root_cause, solution, observation

Parses the AI's output for [FINDING:type] markers and stores them as knowledge entries for cross-iteration context

When verification passes

Category: (all categories)

All unresolved knowledge entries are automatically marked as resolved since the issues they describe have been addressed

Knowledge categories

verification_feedbackWhat verification checks failed and detailed failure context
findingA discovered issue in the codebase or configuration
root_causeAn identified root cause of a problem
solutionA fix that was attempted or applied
observationGeneral context about execution progress or outcome
environmentInfrastructure issues (missing tools, disk space, permissions)

How knowledge improves the AI

On iteration 2 and beyond, the runner builds a Previous Iteration Context section from accumulated knowledge and injects it into the AI's prompt. This includes:

  • 1.The most recent verification feedback (what failed and why)
  • 2.Unresolved findings and root causes from earlier iterations
  • 3.Previous solution attempts (so the AI doesn't retry failed approaches)
  • 4.Recent observations about execution state

How They Work Together

Findings and knowledge are complementary. The same information can exist in both systems, serving different purposes:

Example: A bug is found during iteration 1

1

The AI identifies a null pointer bug and outputs a [FINDING:code_bug:high] marker

2

A finding is created in the Findings tab with status "detected" — you can see it, filter it, and track its resolution

3

A knowledge entry is also created with category 'finding' — this feeds into the AI's context on the next iteration

4

When verification runs again and fails, the failure details are recorded as verification_feedback knowledge

5

On iteration 2, the AI receives all of this as context — it knows what it found, what it tried, and what still fails

6

When verification finally passes, all knowledge entries are marked as resolved

Where to See Them

Findings Tab

Shows all findings for a task run, with filters for category, severity, and status. Available in the task run detail view.

Summary page > Findings tab

Knowledge Tab

Shows knowledge entries grouped by iteration, with category labels and resolution status. Appears in the Summary page after workflow completion.

Summary page > Knowledge tab

Runner API

Query findings and knowledge programmatically via the runner's HTTP API for integration with external tools.

http://localhost:9876/task-runs/{id}/knowledge

API Access

Both findings and knowledge entries can be queried via the runner's HTTP API:

GET
/task-runs/{id}/knowledge

All knowledge entries for a task run

GET
/task-runs/{id}/knowledge?category=finding

Only findings/bugs from knowledge

GET
/task-runs/{id}/knowledge?unresolved_only=true

Only unresolved knowledge entries

Detailed Comparison

AspectFindingsKnowledge
Primary audienceYou (the user)The AI agent
PurposeIssue tracking with lifecycleCross-iteration context propagation
Created byParsed from AI output markersRecorded automatically by runner
Status lifecycledetected > in_progress > resolved / wont_fixUnresolved or resolved (binary)
DeduplicationYes (signature hash)No
User interactionSupports needs_input / user_responseNo user interaction
Iteration trackingSession-level onlyExplicit iteration field
Feeds back to AIIncluded in iteration contextPrimary source of iteration context
Auto-resolvedNoYes, when verification passes
Database tabletask_run_findingstask_knowledge

Next Steps

Findings & Knowledge - Qontinui Runner Documentation