Skip to content

[Benchmark]: Measure governance approval workflow #75

Description

@rian-be

Summary

Benchmark the governance approval workflow so the cost of assigning, approving, rejecting, and expiring approval requirements stays visible over time.

Goal

Measure the overhead of the approval workflow path that turns governance policy requirements into request-level approval actions and terminal approval outcomes.

Problem

Governance already models approval requirements, approval workflow state, and approval actions, but that path is not benchmarked as a dedicated runtime surface.

Without a benchmark for approval workflow behavior, changes in approval assignment, approval completion, rejection handling, or expiration processing can quietly add overhead without being visible in runtime measurements.

Scope

  • Benchmark approval requirement assignment for governance requests
  • Benchmark approving a pending requirement
  • Benchmark rejecting a pending requirement
  • Benchmark expiring pending approval requirements
  • Keep the benchmark focused on approval workflow behavior rather than request persistence details
  • Reuse existing governance benchmark helpers where they already exist
  • Make scenario names explicit about the approval path being measured

Design Expectations

  • The benchmark should measure a real approval workflow rather than a toy loop.
  • Approval assignment and terminal approval outcomes should stay visible where possible.
  • Helper code should stay local to the benchmark project.
  • Scenario names should make the approval path obvious.

Suggested Measurements

  • request with pending approvals approved successfully
  • request with pending approvals rejected
  • request with pending approvals expired

Acceptance Criteria

  • Approval workflow is benchmarked as a distinct governance scenario
  • Approval assignment cost is visible in the benchmark results
  • Terminal approval outcome 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 approval workflow 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

Fields

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions