Skip to content

Publish whole-workflow language, job and matrix scope #298

Open

Description

@maximalcode

Parent

#95. Specification: #295 — Spec: per-run analysis scope and honest finding trends.

What to build

The quality workflow publishes one own-run scope artifact and job summary
combining language presence, selection, detector results, all job/matrix-leg
outcomes and the Layer 2 evidence. A detected but deliberately omitted language
is visibly skipped, while an absent language is not applicable. Failed or
missing discovery is never described as absence.

This step delivers run-level job accounting. Known language-tool entries can
still say execution unknown until the dependent tool-instrumentation step;
a successful job must not stand in for missing tool evidence.

Acceptance criteria

  • Presence is observed independently of language selection using the supported project markers. Existing validated target derivation, public detection outputs and refusal behavior remain compatible.
  • A fixture containing TypeScript and Python but selecting only TypeScript names Python as present-and-skipped. An absent supported language is not applicable. A deselected unsupported project does not introduce a new detector failure.
  • A selected malformed/unsupported project retains the detector failure and diagnostic; dependent jobs are skipped for the failed prerequisite. Independent Layer 2 execution remains represented.
  • The collector reconciles expected jobs and matrix legs against received records, including optional test-coverage job state without confusing its percentages with analysis scope.
  • Cross-runner transport preserves leg identity and partial records. One successful and one failed matrix leg remain separately visible; a missing fragment is incomplete evidence, not proof of zero examined files or proof the leg never ran.
  • Failed-jobs-only reruns have separate attempt identities. Earlier successful records are not silently merged or presented as fresh. Unknown current-attempt execution remains explicit.
  • Artifact and summary collection is reachable after ordinary detection, setup and analysis failure. Cancellation metadata is retained when finalization runs; runner loss and forced termination are not promised away.
  • Command fixtures exercise discovery, reconciliation and output rendering. Workflow wiring checks assert all dependencies, finalization conditions, artifact transport and non-gating behavior, without claiming live GitHub execution.
  • No additional analysis is activated and collection failure cannot change existing gate outcomes or required Adopter configuration.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions