Skip to content

I0835 — CI runs the structural performance checks

Add the flatten-once case, the cache-equivalence case and bench --check with the CI profile to validate.yml, with the wall-clock thresholds conservative and the counters exact.

BLOCKED wave 5 · p0 · implementation profile · runs alone

Part of M004 — Performance is executable evidence, and the hot path does no canonical work twice.

Blocked. This issue cannot start until I0822 is done. The status is derived from that, not declared.

Objective

Add the flatten-once case, the cache-equivalence case and bench --check with the CI profile to validate.yml, with the wall-clock thresholds conservative and the counters exact.

Why

A check that nobody runs is documentation.

Current state

CI runs the suite, the generator check and shellcheck.

Desired state

The counters gate strictly; bench --check gates on gross regressions only; results are uploaded as an artifact.

Scope

  • .github/workflows/validate.yml
  • test/cases/26_ci_wiring.sh

Out of scope

  • Latency gates at millisecond precision

Dependencies

What waits on this

Acceptance criteria

  • Case 26 proves the new steps are wired
  • A deliberately regressed baseline fails the workflow step locally

Validation

  • bash test/run.sh 26_ci_wiring

Evidence required

  • regression_refused

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Risk

GitHub runners are slower and noisier than a laptop; the CI profile has more warmup and wider thresholds, declared in the policy.

Timeline

started
verified
completed

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I0835.yaml. Read it back with majordomus plan show I0835.