Skip to content

[Benchmark]: Measure governance request lifecycle #76

Description

@rian-be

Summary

Benchmark the governance request lifecycle so pending, approved, rejected, expired, and cancelled transitions stay visible over time.

Goal

Measure the overhead of request lifecycle transitions that govern how a mutation request moves through pending and terminal states.

Problem

Governance already models request lifecycle states and transitions, but that path is not benchmarked as a dedicated runtime surface.

Without a benchmark for request lifecycle behavior, changes in submission, transition handling, expiration, cancellation, or terminal state recording can quietly add overhead without being visible in runtime measurements.

Scope

  • Benchmark submitting governance requests into pending state
  • Benchmark transitioning requests through approval-related lifecycle states
  • Benchmark expiring pending requests
  • Benchmark cancelling pending requests
  • Keep the benchmark focused on request lifecycle behavior rather than approval or execution internals
  • Reuse existing governance benchmark helpers where they already exist
  • Make scenario names explicit about the lifecycle transition being measured

Design Expectations

  • The benchmark should measure real request lifecycle behavior rather than a toy loop.
  • Pending and terminal transitions should remain visible where possible.
  • Helper code should stay local to the benchmark project.
  • Scenario names should make the lifecycle path obvious.

Suggested Measurements

  • request submission to pending state
  • request approval-related transition
  • pending request expiration
  • pending request cancellation

Acceptance Criteria

  • Request lifecycle is benchmarked as a distinct governance scenario
  • Pending transition cost is visible in the benchmark results
  • Terminal lifecycle transition cost is visible in the benchmark results
  • The benchmark remains centered on governance runtime behavior

Non-Goals

  • This issue does not change governance runtime behavior
  • This issue does not add provider-specific persistence benchmarks
  • This issue does not optimize lifecycle transitions prematurely
  • This issue does not add full integration or load testing

Notes

This issue is a child of the governance benchmark umbrella #73.

Metadata

Metadata

Assignees

Labels

benchmarkBenchmark coverage and performance measurement changes

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions