Skip to content

Avoid report artifact name collisions in CI matrix runs #122

Description

@roark47

Background

The app-upgrade-agents migration kept CI matrix execution so each case could run independently. In that setup, multiple jobs produced files with the same names, such as report.html, and downstream artifact collection could overwrite or obscure results.

This is a common CI integration problem for any skill-up suite that runs cases in parallel matrix jobs.

Why skill-up should change

skill-up owns the report layout and the official CI integration story. A matrix-friendly output layout should make every case/run artifact uniquely addressable without requiring every user to add custom upload reshaping steps.

What to change

  • Support configurable report output naming, for example report.{case_id}.html or an output template.
  • Alternatively, provide an official matrix-safe artifact layout and CI component behavior that uploads the full iteration directory under a unique case/run prefix.
  • Preserve the current default report.html / report.xml behavior for non-matrix local runs.
  • Consider generating an index page when multiple case-scoped HTML reports are collected.

How to verify

  • Run two cases as independent CI-style jobs that write to a shared artifact collection location.
  • Verify both HTML and JUnit reports remain present and traceable to their case IDs.
  • Verify existing local runs still produce the expected default report file names.
  • Add tests for report filename templating or matrix-safe output path generation.

Architecture impact

This affects the report workspace layout and CI integration contract. The change should be backward compatible for existing users who expect report.html and report.xml in the iteration directory.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

Status
Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions