Files
krkn/CI/tests_v2/lib
augmentcode[bot]andlnx01 5a532190aa test: attach krkn execution logs to HTML report and assert scenario executed (#1395)
* test: attach krkn execution logs to HTML report and assert scenario executed

CI/tests_v2 enhancements for observability and false-positive guarding:

- run_kraken fixture stashes stdout/stderr/returncode on request.node so the
  report hook can attach them.
- conftest pytest_runtest_makereport renders the krkn log as a timestamp/level/
  message table via pytest_html.extras for every test (pass or fail).
- conftest pytest_terminal_summary prints an execution-evidence table and writes
  a markdown summary to $GITHUB_STEP_SUMMARY when running in GitHub Actions.
- utils adds SCENARIO_EXECUTION_MARKERS, an EXECUTION_EVIDENCE registry, and
  assert_scenario_executed() that fails happy-path tests when krkn exits 0 but
  no scenario-specific marker is present. Skipped under KRKN_TEST_DRY_RUN=1.
- pod_disruption, storage_throttle, and application_outage happy-path tests now
  call assert_scenario_executed. Negative tests remain exempt.

Closes #1394

* test: stash krkn logs on timeout and add log-path hint to evidence assert

Address Deep Code Review feedback on PR #1395:
- run_kraken now catches subprocess.TimeoutExpired, stashes partial
  stdout/stderr with a synthetic rc=124 so timed-out runs still attach
  logs to the HTML report.
- assert_scenario_executed failure message now includes the
  'Full logs:' tmp_path hint, matching assert_kraken_success/failure.

---------

Co-authored-by: augmentcode[bot] <185243770+augmentcode[bot]@users.noreply.github.com>
2026-06-11 18:41:12 +05:30
..