Skip to content

Split long CI lanes into observable parallel jobs #400

Description

@Anionix

Finding

The latest successful main CI run took 7 minutes in one verify job. Two sequential steps dominate wall time even though one step manually multiplexes several background processes into aggregated logs:

  • Run tests and smoke lanes concurrently: 191 seconds
  • Gate bounded robustness fixture: 131 seconds
  • Synchronize frozen Python environment: 58 seconds

Baseline: https://github.com/Anionix/data-format-lab/actions/runs/29719771846

The workflow currently launches pytest and smoke profiles with shell &/wait inside one step. This hides per-lane queue/run/retry/cache timing and makes a failure harder to attribute. A duration over 60 seconds is an improvement candidate, not itself an error.

Scope

  • replace shell-background multiplexing with independently observable CI jobs or native parallel execution
  • preserve the bounded robustness lane's timeout semantics
  • separate queue, setup, run, cache, and retry timing
  • keep all existing correctness gates and failure logs
  • compare before/after only on matching runner/toolchain fingerprints

Acceptance

  • each pytest/smoke/robustness lane has an independent conclusion and duration
  • a single lane failure does not erase sibling logs
  • no test is skipped and all current gates remain blocking
  • record at least 20 completed runs before deciding whether the split improves p50/p95 wall time
  • feed completed run JSON into Diagnostic Triage Observer docs: publish Linux v0.1 evidence reports #65 without implicit GitHub API access in the tool

Consumer tracker: #393
Standalone Observer: Anionix/diagnostic-triage#65

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions